@yuku123/z-team-component 0.2.56 → 0.2.57

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. package/dist/{ChangeLogView-R6boINWk.js → ChangeLogView-Cstbioyw.js} +137 -137
  2. package/dist/{ComponentDoc-CXivBlKo.js → ComponentDoc-0L_mpFyu.js} +121 -121
  3. package/dist/{InvitationManagementPage-B2Kow6-8.js → InvitationManagementPage-Ba5yy-Hl.js} +1 -1
  4. package/dist/{OnboardingPage-DbK9iTSY.js → OnboardingPage-rEAorVv0.js} +2 -2
  5. package/dist/{ScheduledTasks-DcM_HA5v.js → ScheduledTasks-Db5a-nxu.js} +2992 -2957
  6. package/dist/{SystemShell-BDSLyt15.js → SystemShell-BbREgRq8.js} +1 -1
  7. package/dist/{admin-logs-DMF0dtG1.js → admin-logs-B9KS6VJz.js} +2 -2
  8. package/dist/{api-BPJ4ZHcq.js → api-B4-sB0Pv.js} +1 -1
  9. package/dist/{api-DhuqONeb.js → api-CALqShkO.js} +228 -210
  10. package/dist/createWorkspaceWsHandler-DP30xvug.js +13035 -0
  11. package/dist/{index-CZ9xxAL0.js → index-4YxdJwFm.js} +3 -3
  12. package/dist/{index-DnXcckr9.js → index-8gCovDDT.js} +6 -6
  13. package/dist/{index-2xlHrS59.js → index-9w4zGIUG.js} +1121 -1123
  14. package/dist/{index-vy0cRfLN.js → index-BVYQ8p6A.js} +5 -5
  15. package/dist/{index-B8eiFO_f.js → index-C2Wkg1b5.js} +3 -3
  16. package/dist/{index-BOcKPM37.js → index-C3B7CbHo.js} +1 -1
  17. package/dist/{index-BkX0I2aB.js → index-C6S3MIu4.js} +56 -56
  18. package/dist/index-C88kp8U2.js +1143 -0
  19. package/dist/{index-DdRJhUqt.js → index-C90C1lUS.js} +3 -3
  20. package/dist/{index-CzePRAbT.js → index-CGWttFLb.js} +4 -4
  21. package/dist/{index-B-XDBODG.js → index-CHb5cxi8.js} +1 -1
  22. package/dist/{index-Ct9MzvZV.js → index-CLWgeKwr.js} +2 -2
  23. package/dist/{index-JMzBzwiO.js → index-CinRd7Nz.js} +618 -617
  24. package/dist/index-CmToF3CG.js +9257 -0
  25. package/dist/{index-BKVWW3ba.js → index-DET70T3j.js} +1 -1
  26. package/dist/{index-D9UhloUj.js → index-DJGEEIGt.js} +2 -2
  27. package/dist/{index-Otx98G8z.js → index-DJOyOVn_.js} +87 -74
  28. package/dist/{index-CbUsvCMy.js → index-DKeYG0Fu.js} +4 -4
  29. package/dist/{index-DactZGbw.js → index-DRQFmqYV.js} +2 -2
  30. package/dist/index-DTGL9OWw.js +1195 -0
  31. package/dist/index-DWsfQMp8.js +208 -0
  32. package/dist/{index-BV5g5lsS.js → index-JpY3wmeg.js} +3 -3
  33. package/dist/index-WIsi8fln.js +339 -0
  34. package/dist/{index-BM6XpIcw.js → index-aw72ID7y.js} +1 -1
  35. package/dist/{index-BP97Ev-W.js → index-lftFkqfI.js} +4 -4
  36. package/dist/{index-CZxihNo5.js → index-m8V5TniT.js} +7 -7
  37. package/dist/index.js +1 -1
  38. package/dist/{instance-Cr4_XM2r.js → instance-f3C-1qYl.js} +1 -1
  39. package/dist/pages.js +1 -1
  40. package/dist/{schedule-BNLns-p4.js → schedule-DfkgwPdE.js} +1 -1
  41. package/dist/{send-default-agent-team-message-C9VWSWKJ.js → send-default-agent-team-message-d_ECdczr.js} +1 -1
  42. package/dist/{sso-user-Cme2tmGq.js → sso-user-HcsSzg8P.js} +1 -1
  43. package/dist/{training-SjRAdtNQ.js → training-DnNQN0An.js} +1 -1
  44. package/dist/{useAppStore-C63xiq3-.js → useAppStore-kRZEA5WZ.js} +1 -1
  45. package/dist/webide-BcRzJX-h.js +8255 -0
  46. package/dist/z-team-component.css +2 -2
  47. package/package.json +1 -1
  48. package/dist/createWorkspaceWsHandler-BJhBWCRa.js +0 -13035
  49. package/dist/index-B30K72xQ.js +0 -1330
  50. package/dist/index-BWgbbHyC.js +0 -8977
  51. package/dist/index-Ba9q3egm.js +0 -1182
  52. package/dist/webide-DDFxSedU.js +0 -7845
@@ -0,0 +1,1195 @@
1
+ import { jsxs as t, jsx as a } from "react/jsx-runtime";
2
+ import { useState as u, useEffect as I, useMemo as x, useCallback as A, useLayoutEffect as W } from "react";
3
+ import { h as f } from "./history-BlrA1eaW.js";
4
+ import { f as P, p as M, L as l, a as V, b as H, M as Z, A as F } from "./index-DWsfQMp8.js";
5
+ const q = "_welcome_1b2hj_11", J = "_bgWash_1b2hj_57", K = "_bgGrid_1b2hj_68", U = "_container_1b2hj_82", Q = "_navbar_1b2hj_99", Y = "_navInner_1b2hj_109", X = "_navBrand_1b2hj_119", ee = "_navMark_1b2hj_127", ae = "_navBrandText_1b2hj_142", ne = "_navLinks_1b2hj_149", te = "_navLink_1b2hj_149", ce = "_navLinkActive_1b2hj_172", se = "_navMenuBtn_1b2hj_177", oe = "_navMenuIcon_1b2hj_197", ie = "_navMenuIconOpen_1b2hj_214", le = "_navMenuPanel_1b2hj_226", re = "_menuIn_1b2hj_1", de = "_navMenuItem_1b2hj_255", he = "_navMenuCta_1b2hj_273", me = "_navActions_1b2hj_294", _e = "_navGhost_1b2hj_301", be = "_navPrimary_1b2hj_302", pe = "_hero_1b2hj_342", ve = "_heroInner_1b2hj_348", Ne = "_eyebrow_1b2hj_357", ue = "_eyebrowDot_1b2hj_373", fe = "_heroTitle_1b2hj_381", we = "_heroTitleAccent_1b2hj_391", je = "_heroLead_1b2hj_404", ge = "_heroActions_1b2hj_412", Te = "_btnPrimary_1b2hj_419", Ae = "_btnSecondary_1b2hj_420", Ce = "_heroStats_1b2hj_461", Ie = "_heroStat_1b2hj_461", Me = "_heroStatNum_1b2hj_474", ye = "_heroStatLabel_1b2hj_482", ke = "_heroVisual_1b2hj_488", Se = "_chatCard_1b2hj_504", Le = "_chatHead_1b2hj_515", ze = "_chatHeadLeft_1b2hj_525", Re = "_chatLiveDot_1b2hj_532", Pe = "_chatRoom_1b2hj_541", Be = "_chatMeta_1b2hj_550", $e = "_chatBody_1b2hj_557", Ee = "_chatRow_1b2hj_565", De = "_chatRowHuman_1b2hj_572", Oe = "_chatRowAgent_1b2hj_577", Ge = "_chatRowSub_1b2hj_578", xe = "_chatWho_1b2hj_582", We = "_chatName_1b2hj_590", Ve = "_chatTag_1b2hj_596", He = "_chatTagPrimary_1b2hj_597", Ze = "_chatTime_1b2hj_617", Fe = "_chatBubble_1b2hj_621", qe = "_chatMentions_1b2hj_642", Je = "_chatMention_1b2hj_642", Ke = "_section_1b2hj_662", Ue = "_sectionHead_1b2hj_669", Qe = "_sectionEyebrow_1b2hj_674", Ye = "_sectionTitle_1b2hj_683", Xe = "_sectionLead_1b2hj_692", ea = "_capGrid_1b2hj_702", aa = "_capCard_1b2hj_708", na = "_capIcon_1b2hj_726", ta = "_capTitle_1b2hj_739", ca = "_capDesc_1b2hj_747", sa = "_capTag_1b2hj_755", oa = "_archList_1b2hj_768", ia = "_archRow_1b2hj_772", la = "_archRail_1b2hj_780", ra = "_archIndex_1b2hj_786", da = "_archRailText_1b2hj_793", ha = "_archLabel_1b2hj_799", ma = "_archEn_1b2hj_806", _a = "_tone_blue_1b2hj_813", ba = "_tone_cyan_1b2hj_817", pa = "_tone_purple_1b2hj_821", va = "_tone_gold_1b2hj_825", Na = "_tone_green_1b2hj_829", ua = "_archModules_1b2hj_833", fa = "_archModule_1b2hj_833", wa = "_archModuleName_1b2hj_849", ja = "_archModuleDesc_1b2hj_855", ga = "_showcaseGrid_1b2hj_864", Ta = "_flowList_1b2hj_871", Aa = "_flowItem_1b2hj_880", Ca = "_flowNum_1b2hj_891", Ia = "_flowTitle_1b2hj_907", Ma = "_flowDesc_1b2hj_914", ya = "_scnGrid_1b2hj_924", ka = "_scnCard_1b2hj_930", Sa = "_scnIcon_1b2hj_947", La = "_scnTitle_1b2hj_960", za = "_scnDesc_1b2hj_967", Ra = "_valList_1b2hj_977", Pa = "_valItem_1b2hj_983", Ba = "_valNum_1b2hj_999", $a = "_valTitle_1b2hj_1009", Ea = "_valDesc_1b2hj_1016", Da = "_valCta_1b2hj_1024", Oa = "_valCtaTitle_1b2hj_1036", Ga = "_valCtaDesc_1b2hj_1044", xa = "_valCtaActions_1b2hj_1051", Wa = "_valCtaPrimary_1b2hj_1057", Va = "_valCtaGhost_1b2hj_1058", Ha = "_cliGrid_1b2hj_1097", Za = "_cliCard_1b2hj_1103", Fa = "_cliTop_1b2hj_1120", qa = "_cliIcon_1b2hj_1128", Ja = "_cliState_1b2hj_1140", Ka = "_state_ready_1b2hj_1149", Ua = "_state_beta_1b2hj_1155", Qa = "_state_soon_1b2hj_1161", Ya = "_state_free_1b2hj_1167", Xa = "_state_instant_1b2hj_1173", en = "_cliName_1b2hj_1179", an = "_cliEn_1b2hj_1187", nn = "_cliDesc_1b2hj_1193", tn = "_cliMeta_1b2hj_1201", cn = "_cliMetaNote_1b2hj_1218", sn = "_cliAction_1b2hj_1225", on = "_cliBtnPrimary_1b2hj_1229", ln = "_cliBtnGhost_1b2hj_1230", rn = "_cliMore_1b2hj_1273", dn = "_cliMoreSub_1b2hj_1288", hn = "_cliMoreBtn_1b2hj_1292", mn = "_toTop_1b2hj_1320", _n = "_toTopVisible_1b2hj_1343", bn = "_toTopIcon_1b2hj_1354", pn = "_footer_1b2hj_1358", vn = "_footerInner_1b2hj_1366", Nn = "_footerBrand_1b2hj_1376", un = "_footerBrandName_1b2hj_1383", fn = "_footerBrandDesc_1b2hj_1389", wn = "_footerLinks_1b2hj_1396", jn = "_footerCol_1b2hj_1401", gn = "_footerColTitle_1b2hj_1407", Tn = "_footerLink_1b2hj_1396", An = "_footerBottom_1b2hj_1432", Cn = "_fadeIn_1b2hj_1449", In = "_revealRoot_1b2hj_7", Mn = "_fadeInVisible_1b2hj_1464", e = {
6
+ welcome: q,
7
+ bgWash: J,
8
+ bgGrid: K,
9
+ container: U,
10
+ navbar: Q,
11
+ navInner: Y,
12
+ navBrand: X,
13
+ navMark: ee,
14
+ navBrandText: ae,
15
+ navLinks: ne,
16
+ navLink: te,
17
+ navLinkActive: ce,
18
+ navMenuBtn: se,
19
+ navMenuIcon: oe,
20
+ navMenuIconOpen: ie,
21
+ navMenuPanel: le,
22
+ menuIn: re,
23
+ navMenuItem: de,
24
+ navMenuCta: he,
25
+ navActions: me,
26
+ navGhost: _e,
27
+ navPrimary: be,
28
+ hero: pe,
29
+ heroInner: ve,
30
+ eyebrow: Ne,
31
+ eyebrowDot: ue,
32
+ heroTitle: fe,
33
+ heroTitleAccent: we,
34
+ heroLead: je,
35
+ heroActions: ge,
36
+ btnPrimary: Te,
37
+ btnSecondary: Ae,
38
+ heroStats: Ce,
39
+ heroStat: Ie,
40
+ heroStatNum: Me,
41
+ heroStatLabel: ye,
42
+ heroVisual: ke,
43
+ chatCard: Se,
44
+ chatHead: Le,
45
+ chatHeadLeft: ze,
46
+ chatLiveDot: Re,
47
+ chatRoom: Pe,
48
+ chatMeta: Be,
49
+ chatBody: $e,
50
+ chatRow: Ee,
51
+ chatRowHuman: De,
52
+ chatRowAgent: Oe,
53
+ chatRowSub: Ge,
54
+ chatWho: xe,
55
+ chatName: We,
56
+ chatTag: Ve,
57
+ chatTagPrimary: He,
58
+ chatTime: Ze,
59
+ chatBubble: Fe,
60
+ chatMentions: qe,
61
+ chatMention: Je,
62
+ section: Ke,
63
+ sectionHead: Ue,
64
+ sectionEyebrow: Qe,
65
+ sectionTitle: Ye,
66
+ sectionLead: Xe,
67
+ capGrid: ea,
68
+ capCard: aa,
69
+ capIcon: na,
70
+ capTitle: ta,
71
+ capDesc: ca,
72
+ capTag: sa,
73
+ archList: oa,
74
+ archRow: ia,
75
+ archRail: la,
76
+ archIndex: ra,
77
+ archRailText: da,
78
+ archLabel: ha,
79
+ archEn: ma,
80
+ tone_blue: _a,
81
+ tone_cyan: ba,
82
+ tone_purple: pa,
83
+ tone_gold: va,
84
+ tone_green: Na,
85
+ archModules: ua,
86
+ archModule: fa,
87
+ archModuleName: wa,
88
+ archModuleDesc: ja,
89
+ showcaseGrid: ga,
90
+ flowList: Ta,
91
+ flowItem: Aa,
92
+ flowNum: Ca,
93
+ flowTitle: Ia,
94
+ flowDesc: Ma,
95
+ scnGrid: ya,
96
+ scnCard: ka,
97
+ scnIcon: Sa,
98
+ scnTitle: La,
99
+ scnDesc: za,
100
+ valList: Ra,
101
+ valItem: Pa,
102
+ valNum: Ba,
103
+ valTitle: $a,
104
+ valDesc: Ea,
105
+ valCta: Da,
106
+ valCtaTitle: Oa,
107
+ valCtaDesc: Ga,
108
+ valCtaActions: xa,
109
+ valCtaPrimary: Wa,
110
+ valCtaGhost: Va,
111
+ cliGrid: Ha,
112
+ cliCard: Za,
113
+ cliTop: Fa,
114
+ cliIcon: qa,
115
+ cliState: Ja,
116
+ state_ready: Ka,
117
+ state_beta: Ua,
118
+ state_soon: Qa,
119
+ state_free: Ya,
120
+ state_instant: Xa,
121
+ cliName: en,
122
+ cliEn: an,
123
+ cliDesc: nn,
124
+ cliMeta: tn,
125
+ cliMetaNote: cn,
126
+ cliAction: sn,
127
+ cliBtnPrimary: on,
128
+ cliBtnGhost: ln,
129
+ cliMore: rn,
130
+ cliMoreSub: dn,
131
+ cliMoreBtn: hn,
132
+ toTop: mn,
133
+ toTopVisible: _n,
134
+ toTopIcon: bn,
135
+ footer: pn,
136
+ footerInner: vn,
137
+ footerBrand: Nn,
138
+ footerBrandName: un,
139
+ footerBrandDesc: fn,
140
+ footerLinks: wn,
141
+ footerCol: jn,
142
+ footerColTitle: gn,
143
+ footerLink: Tn,
144
+ footerBottom: An,
145
+ fadeIn: Cn,
146
+ revealRoot: In,
147
+ fadeInVisible: Mn
148
+ }, y = [
149
+ { id: "panorama", label: "平台全景" },
150
+ { id: "account", label: "一个账号" },
151
+ { id: "architecture", label: "平台架构" },
152
+ { id: "middleware", label: "自研中间件" },
153
+ { id: "zteam", label: "数字员工" }
154
+ ], B = [
155
+ {
156
+ icon: "message",
157
+ name: "协作",
158
+ en: "Collaboration",
159
+ desc: "群聊为入口:多 Agent 协作、知识库、订阅与项目、工作流编排。Z Team 就在这里。",
160
+ tag: "z-team · z-lc"
161
+ },
162
+ {
163
+ icon: "sparkle",
164
+ name: "智能",
165
+ en: "Intelligence",
166
+ desc: "模型管理、模型对话、AK 管理、Agent 应用、MCP 服务、技能市场与模型监控。",
167
+ tag: "z-llm-gateway · z-agent"
168
+ },
169
+ {
170
+ icon: "book",
171
+ name: "产品",
172
+ en: "Product",
173
+ desc: "需求、设计、特性、书稿与业务理解,产品工作台承载组织对产品的统一认知。",
174
+ tag: "z-product"
175
+ },
176
+ {
177
+ icon: "branch",
178
+ name: "研发",
179
+ en: "Engineering",
180
+ desc: "应用与 Schema 建模、数据字典与 Pipeline、WebIDE、脚本治理、权限矩阵与部署记录。",
181
+ tag: "z-lc · z-webide · z-script"
182
+ },
183
+ {
184
+ icon: "check",
185
+ name: "测试",
186
+ en: "Quality",
187
+ desc: "测试总览、用例与套件编排、执行与定时调度、E2E 浏览器自动化。",
188
+ tag: "z-qa"
189
+ },
190
+ {
191
+ icon: "server",
192
+ name: "运维",
193
+ en: "Operations",
194
+ desc: "运维总览、节点 / Pod / HPA、镜像仓库、流水线、发布、监控告警、日志与 DBA 工单。",
195
+ tag: "z-ops"
196
+ },
197
+ {
198
+ icon: "layers",
199
+ name: "中间件",
200
+ en: "Middleware",
201
+ desc: "配置、密钥、元数据、消息、RPC、向量、图、网关、缓存、MQ、知识库、对象存储。",
202
+ tag: "13 组控制台"
203
+ },
204
+ {
205
+ icon: "shield",
206
+ name: "系统",
207
+ en: "System",
208
+ desc: "认证与权限、开发与工具、产品认知、业务流程——平台自身的设置面。",
209
+ tag: "4A · 管理面"
210
+ },
211
+ {
212
+ icon: "bot",
213
+ name: "RPA",
214
+ en: "Automation",
215
+ desc: "RPA 市场与需求,应用与运行、触发器等自动化执行链。",
216
+ tag: "z-rpa · z-script · z-schedule"
217
+ }
218
+ ], yn = [
219
+ {
220
+ icon: "shield",
221
+ title: "统一认证",
222
+ desc: "SSO 拦截器把登录态跨子域共享给前端 SPA 与后端服务,登录一次即可进出各工作台。"
223
+ },
224
+ {
225
+ icon: "network",
226
+ title: "统一授权",
227
+ desc: "应用与角色的权限矩阵,菜单入口与接口鉴权读同一份授权数据。"
228
+ },
229
+ {
230
+ icon: "users",
231
+ title: "统一账号",
232
+ desc: "组织、角色与成员统一在 4A 维护,业务面不再各自建一套账号体系。"
233
+ },
234
+ {
235
+ icon: "search",
236
+ title: "登录审计",
237
+ desc: "登录与授权操作日志集中落库,入口、时间与结果可回查。"
238
+ }
239
+ ], kn = [
240
+ {
241
+ label: "统一前端",
242
+ en: "Web Shell",
243
+ tone: "blue",
244
+ modules: [
245
+ { name: "工作台外壳", desc: "React 19 · Vite 6 · 按业务面分包加载" },
246
+ {
247
+ name: "九个工作台",
248
+ desc: "协作 / 智能 / 产品 / 研发 / 测试 / 运维 / 中间件 / 系统 / RPA"
249
+ },
250
+ { name: "中间件控制台", desc: "12 个自研中间件的统一代管台" },
251
+ { name: "4A 入口", desc: "登录态跨子域共享,菜单与鉴权同源" }
252
+ ]
253
+ },
254
+ {
255
+ label: "单一 JVM",
256
+ en: "z-opc-main-starter :8888",
257
+ tone: "purple",
258
+ modules: [
259
+ { name: "Spring Boot 2.7.18", desc: "Java 8 · 单个启动器承载全部业务域" },
260
+ { name: "自动装配", desc: "各域经 spring.factories 装配进主进程" },
261
+ { name: "28 条兄弟仓依赖", desc: "4A / Agent / 交易 / 资产 / RPA 以 jar 引入" },
262
+ { name: "一套数据库", desc: "oc 库承接全部业务表" }
263
+ ]
264
+ },
265
+ {
266
+ label: "同进程中间件",
267
+ en: "Embedded Middleware",
268
+ tone: "cyan",
269
+ modules: [
270
+ { name: "z-cache :6379", desc: "Redis 协议缓存,Netty 内嵌" },
271
+ { name: "z-graph :8091", desc: "图数据库,留空即纯内存" },
272
+ { name: "z-vector :6334", desc: "向量检索 gRPC 内嵌" },
273
+ { name: "z-oss :12888", desc: "对象存储 Netty 内嵌" },
274
+ { name: "z-gw :9090", desc: "网关路由与代理 Controller" }
275
+ ]
276
+ },
277
+ {
278
+ label: "独立进程",
279
+ en: "Separate Processes",
280
+ tone: "gold",
281
+ modules: [
282
+ { name: "z-mq", desc: "NameServer / Broker 以子进程拉起" },
283
+ { name: "z-bot", desc: "终端 Bot 自带 main,独立 fat jar" }
284
+ ]
285
+ }
286
+ ], Sn = [
287
+ { name: "配置中心", en: "z-config", desc: "配置项查询、编辑与发布,变更历史可回溯" },
288
+ { name: "密钥中心", en: "z-mist", desc: "密钥台账、应用接入与授权校验" },
289
+ { name: "元数据中心", en: "z-meta", desc: "应用、租户与数据字典的统一台账" },
290
+ { name: "消息中心", en: "z-msg", desc: "收件箱与会话消息的统一入口" },
291
+ { name: "服务注册", en: "z-rpc", port: ":20880", desc: "RPC 服务注册与调用" },
292
+ { name: "向量检索", en: "z-vector", port: ":6334", desc: "集合管理与相似检索" },
293
+ { name: "图数据库", en: "z-graph", port: ":8091", desc: "图查询与版本链" },
294
+ { name: "网关", en: "z-gw", port: ":9090", desc: "路由配置与代理转发" },
295
+ { name: "缓存", en: "z-cache", port: ":6379", desc: "Redis 协议缓存" },
296
+ { name: "消息队列", en: "z-mq", port: ":9877", desc: "Topic 与订阅,NameServer 独立进程" },
297
+ { name: "知识库", en: "z-kb", desc: "工作空间、文档与检索" },
298
+ { name: "对象存储", en: "z-oss", port: ":12888", desc: "桶、对象与预签名" }
299
+ ], Ln = [
300
+ { name: "z-cache", port: ":6379" },
301
+ { name: "z-graph", port: ":8091" },
302
+ { name: "z-vector", port: ":6334" },
303
+ { name: "z-oss", port: ":12888" },
304
+ { name: "z-gw", port: ":9090" }
305
+ ], zn = [
306
+ {
307
+ icon: "message",
308
+ title: "消息中枢 · IM 驱动",
309
+ desc: "消息总线做中枢,WebSocket 穿透受限网络。人发消息即触发 Agent 拉起任务,结论回到同一个群里。",
310
+ tag: "MsgHub"
311
+ },
312
+ {
313
+ icon: "network",
314
+ title: "星型多 Agent 协作",
315
+ desc: "TeamAgent 主控拆解需求,群内 @子 Agent 即可联合多方 Agent,无需显式调用与编排。",
316
+ tag: "TeamAgent"
317
+ },
318
+ {
319
+ icon: "branch",
320
+ title: "学习子系统",
321
+ desc: "旁路 Pipeline 从对话中提取经验,版本化回写 Skill。进化覆盖天生,用得越久越准。",
322
+ tag: "Evolution"
323
+ },
324
+ {
325
+ icon: "shield",
326
+ title: "评测子系统",
327
+ desc: "AI 置信度门控 + 去重 + 冲突检测。低质量沉淀自动拒绝,不给团队灌噪声。",
328
+ tag: "Evaluation"
329
+ },
330
+ {
331
+ icon: "swap",
332
+ title: "本地 × 生产无缝衔接",
333
+ desc: "Tauri 本地沙箱与云端 Agent 集群双向打通。敏感操作本地隔离,高并发交给生产。",
334
+ tag: "Hybrid Runtime"
335
+ },
336
+ {
337
+ icon: "users",
338
+ title: "群聊内多方 Agent 联合",
339
+ desc: "一个群聊就是一个协作空间。拆解、调度、执行、汇总,全在群内闭环完成。",
340
+ tag: "Collaboration"
341
+ },
342
+ {
343
+ icon: "book",
344
+ title: "知识案例沉淀",
345
+ desc: "把排查过程沉淀成「问题-根因-方案-证据」结构化案例,可检索、可复用、不再流失。",
346
+ tag: "Knowledge"
347
+ },
348
+ {
349
+ icon: "layers",
350
+ title: "双层消息净化",
351
+ desc: "对外交付只有结论,对内保留完整推理轨迹。交付干净利落,调试有迹可循。",
352
+ tag: "Message Hygiene"
353
+ }
354
+ ], Rn = [
355
+ {
356
+ role: "human",
357
+ name: "张工",
358
+ text: "排查一下预发环境订单费用不等的问题,最近用户反馈很多",
359
+ time: "10:32"
360
+ },
361
+ {
362
+ role: "agent",
363
+ name: "TeamAgent",
364
+ text: "收到,我来协调排查。先拉起信号采集和代码分析两个子 Agent。",
365
+ time: "10:32",
366
+ mentions: ["@信号采集Agent", "@代码分析Agent"]
367
+ },
368
+ {
369
+ role: "subagent",
370
+ name: "信号采集Agent",
371
+ text: "已采集到 3 条异常链路,traceId 为 trace_a1b2c3、trace_d4e5f6、trace_g7h8i9,差异集中在 FeeCalcService.calculate(),差值 0.01–0.03 元。",
372
+ time: "10:34"
373
+ },
374
+ {
375
+ role: "subagent",
376
+ name: "代码分析Agent",
377
+ text: "根因定位:FeeCalcService.calculate() 第 87 行用 double 计算,存在浮点精度丢失,建议改 BigDecimal。",
378
+ time: "10:35"
379
+ },
380
+ {
381
+ role: "agent",
382
+ name: "TeamAgent",
383
+ text: "综合诊断:费用计算浮点精度问题。根因已定位,修复方案已生成,请确认是否提交工单。",
384
+ time: "10:36"
385
+ }
386
+ ], Pn = {
387
+ ready: "可下载",
388
+ beta: "内测中",
389
+ soon: "即将发布",
390
+ free: "免安装",
391
+ instant: "即刻可用"
392
+ }, Bn = [
393
+ {
394
+ key: "macos",
395
+ icon: "laptop",
396
+ name: "macOS 桌面端",
397
+ en: "ZTeamAgent · Apple Silicon",
398
+ state: "ready",
399
+ desc: "本地 Agent 沙箱、火箭跳转、自动更新。与生产 Agent 集群双向打通。"
400
+ },
401
+ {
402
+ key: "windows",
403
+ icon: "windows",
404
+ name: "Windows 桌面端",
405
+ en: "ZTeamAgent · x64",
406
+ state: "ready",
407
+ desc: "与 macOS 同源交付,安装包为 x64 setup 格式,功能一套不打折。"
408
+ },
409
+ {
410
+ key: "ios",
411
+ icon: "phone",
412
+ name: "iOS App",
413
+ en: "Z-Team · iPhone / iPad",
414
+ state: "beta",
415
+ desc: "通过 TestFlight 分发内测版本,测试通过后上架 App Store。"
416
+ },
417
+ {
418
+ key: "android",
419
+ icon: "bot",
420
+ name: "Android App",
421
+ en: "Z-Team · APK 直装",
422
+ state: "soon",
423
+ desc: "APK 直装包,支持浏览器直接下载安装与版本提示。"
424
+ },
425
+ {
426
+ key: "web",
427
+ icon: "globe",
428
+ name: "Web 版",
429
+ en: "浏览器 · 全平台",
430
+ state: "free",
431
+ desc: "无需安装,浏览器直接进入完整工作台,手机浏览器自动切换移动版界面。"
432
+ },
433
+ {
434
+ key: "cli",
435
+ icon: "terminal",
436
+ name: "CLI Agent",
437
+ en: "claude-code 等多运行时",
438
+ state: "instant",
439
+ desc: "接入既有 CLI 运行时,在命令行里把任务交给 Agent,结论回到会话。"
440
+ }
441
+ ];
442
+ function $n() {
443
+ const [s, w] = u(!1), [m, C] = u(/* @__PURE__ */ new Set());
444
+ W(() => {
445
+ if (typeof IntersectionObserver > "u") {
446
+ w(!0);
447
+ return;
448
+ }
449
+ const i = new IntersectionObserver(
450
+ (b) => {
451
+ C((p) => {
452
+ let r = null;
453
+ return b.forEach((v) => {
454
+ if (!v.isIntersecting) return;
455
+ const j = v.target.dataset.revealId;
456
+ !j || p.has(j) || (r = r ?? new Set(p), r.add(j));
457
+ }), r ?? p;
458
+ });
459
+ },
460
+ { threshold: 0.08, rootMargin: "0px 0px -8% 0px" }
461
+ );
462
+ document.querySelectorAll("[data-reveal-id]").forEach((b) => i.observe(b));
463
+ const S = window.setTimeout(() => {
464
+ C((b) => {
465
+ const p = new Set(b);
466
+ return document.querySelectorAll("[data-reveal-id]").forEach((r) => {
467
+ const v = r.dataset.revealId;
468
+ v && p.add(v);
469
+ }), p;
470
+ });
471
+ }, 2400);
472
+ return w(!0), () => {
473
+ i.disconnect(), window.clearTimeout(S);
474
+ };
475
+ }, []);
476
+ const _ = A(
477
+ (i) => m.has(i),
478
+ [m]
479
+ );
480
+ return { revealReady: s, isRevealed: _ };
481
+ }
482
+ function En() {
483
+ return /* @__PURE__ */ t("div", { className: e.platCard, children: [
484
+ /* @__PURE__ */ t("div", { className: e.platHead, children: [
485
+ /* @__PURE__ */ a("span", { className: e.platLiveDot }),
486
+ /* @__PURE__ */ a("span", { className: e.platTitle, children: "z-opc-main-starter" }),
487
+ /* @__PURE__ */ a("span", { className: e.platPort, children: ":8888" })
488
+ ] }),
489
+ /* @__PURE__ */ a("div", { className: e.platSub, children: "单一 JVM · 业务域自动装配 · 一套数据库" }),
490
+ /* @__PURE__ */ a("div", { className: e.platFaces, children: B.map((s) => /* @__PURE__ */ t("div", { className: e.platFace, children: [
491
+ /* @__PURE__ */ a("span", { className: e.platFaceName, children: s.name }),
492
+ /* @__PURE__ */ a("span", { className: e.platFaceEn, children: s.en }),
493
+ s.name === "协作" && /* @__PURE__ */ a("span", { className: e.platFaceTag, children: "Z Team" })
494
+ ] }, s.name)) }),
495
+ /* @__PURE__ */ t("div", { className: e.platEmbed, children: [
496
+ /* @__PURE__ */ a("span", { className: e.platEmbedTitle, children: "同进程中间件" }),
497
+ /* @__PURE__ */ a("div", { className: e.platChips, children: Ln.map((s) => /* @__PURE__ */ t("span", { className: e.platChip, children: [
498
+ s.name,
499
+ /* @__PURE__ */ a("em", { children: s.port })
500
+ ] }, s.name)) })
501
+ ] }),
502
+ /* @__PURE__ */ t("div", { className: e.platFoot, children: [
503
+ /* @__PURE__ */ a("span", { children: "独立进程:z-mq · z-bot" }),
504
+ /* @__PURE__ */ a("span", { className: e.platFootOk, children: "运行中" })
505
+ ] })
506
+ ] });
507
+ }
508
+ function Dn() {
509
+ return /* @__PURE__ */ t("div", { className: e.chatCard, children: [
510
+ /* @__PURE__ */ t("div", { className: e.chatHead, children: [
511
+ /* @__PURE__ */ t("div", { className: e.chatHeadLeft, children: [
512
+ /* @__PURE__ */ a("span", { className: e.chatLiveDot }),
513
+ /* @__PURE__ */ a("span", { className: e.chatRoom, children: "故障排查协作群" })
514
+ ] }),
515
+ /* @__PURE__ */ a("span", { className: e.chatMeta, children: "7 人 · 4 Agent 在线" })
516
+ ] }),
517
+ /* @__PURE__ */ a("div", { className: e.chatBody, children: Rn.map((s, w) => /* @__PURE__ */ t(
518
+ "div",
519
+ {
520
+ className: `${e.chatRow} ${s.role === "human" ? e.chatRowHuman : s.role === "subagent" ? e.chatRowSub : e.chatRowAgent}`,
521
+ children: [
522
+ /* @__PURE__ */ t("div", { className: e.chatWho, children: [
523
+ /* @__PURE__ */ a("span", { className: e.chatName, children: s.name }),
524
+ s.role === "agent" && /* @__PURE__ */ a("span", { className: e.chatTagPrimary, children: "主控" }),
525
+ s.role === "subagent" && /* @__PURE__ */ a("span", { className: e.chatTag, children: "子 Agent" }),
526
+ /* @__PURE__ */ a("span", { className: e.chatTime, children: s.time })
527
+ ] }),
528
+ /* @__PURE__ */ a("div", { className: e.chatBubble, children: s.text }),
529
+ s.mentions && /* @__PURE__ */ a("div", { className: e.chatMentions, children: s.mentions.map((m) => /* @__PURE__ */ a("span", { className: e.chatMention, children: m }, m)) })
530
+ ]
531
+ },
532
+ w
533
+ )) })
534
+ ] });
535
+ }
536
+ function Vn() {
537
+ const [s, w] = u(null), [m, C] = u(null), [_, i] = u(!1), [k, S] = u(""), [b, p] = u(!1), [r, v] = u(!1), { revealReady: j, isRevealed: d } = $n();
538
+ I(() => {
539
+ let n = !0;
540
+ return P(Z).then((c) => {
541
+ n && w(c);
542
+ }), P(F).then((c) => {
543
+ n && C(c);
544
+ }), () => {
545
+ n = !1;
546
+ };
547
+ }, []), I(() => {
548
+ const n = document.title;
549
+ document.title = "Z OPC · 组织级统一服务平台";
550
+ let c = document.head.querySelector(
551
+ 'meta[name="description"]'
552
+ );
553
+ const o = !c, h = (c == null ? void 0 : c.content) ?? "";
554
+ return c || (c = document.createElement("meta"), c.name = "description", document.head.appendChild(c)), c.content = "Z OPC 以单个 Spring Boot JVM 承载协作、智能、产品、研发、测试、运维、中间件、系统与 RPA 九个工作台,自研中间件同进程运行,一套 4A 账号打通全部入口。", () => {
555
+ document.title = n, c && (o ? c.remove() : c.content = h);
556
+ };
557
+ }, []), I(() => {
558
+ if (!_) return;
559
+ const n = (h) => {
560
+ h.key === "Escape" && i(!1);
561
+ }, c = (h) => {
562
+ const g = h.target;
563
+ g != null && g.closest("[data-welcome-menu]") || i(!1);
564
+ }, o = () => {
565
+ window.innerWidth > 900 && i(!1);
566
+ };
567
+ return window.addEventListener("keydown", n), document.addEventListener("pointerdown", c), window.addEventListener("resize", o), () => {
568
+ window.removeEventListener("keydown", n), document.removeEventListener("pointerdown", c), window.removeEventListener("resize", o);
569
+ };
570
+ }, [_]), I(() => {
571
+ let n = 0;
572
+ const c = () => {
573
+ n || (n = window.requestAnimationFrame(() => {
574
+ n = 0, p(window.scrollY > 880);
575
+ let o = "";
576
+ for (const h of y) {
577
+ const g = document.getElementById(h.id);
578
+ g && g.getBoundingClientRect().top <= 140 && (o = h.id);
579
+ }
580
+ S(o);
581
+ }));
582
+ };
583
+ return c(), window.addEventListener("scroll", c, { passive: !0 }), () => {
584
+ window.removeEventListener("scroll", c), n && window.cancelAnimationFrame(n);
585
+ };
586
+ }, []);
587
+ const $ = x(
588
+ () => `${e.welcome} ${j ? e.revealRoot : ""}`,
589
+ [j]
590
+ ), N = A((n) => {
591
+ var c;
592
+ (c = document.getElementById(n)) == null || c.scrollIntoView({ behavior: "smooth", block: "start" });
593
+ }, []), L = A(
594
+ (n) => {
595
+ i(!1), N(n);
596
+ },
597
+ [N]
598
+ ), T = A(() => f.push("/workspace"), []), E = A(() => {
599
+ v(!0), N("zteam");
600
+ }, [N]), z = M(s, "macos"), R = M(s, "windows"), D = z ? `macOS v${z.version}` : "macOS", O = R ? `Windows v${R.version}` : "Windows", G = m ? `Android v${m.version}` : "Android";
601
+ return /* @__PURE__ */ t("div", { className: $, children: [
602
+ /* @__PURE__ */ a("div", { className: e.bgWash }),
603
+ /* @__PURE__ */ a("div", { className: e.bgGrid }),
604
+ /* @__PURE__ */ t("nav", { className: e.navbar, children: [
605
+ /* @__PURE__ */ t("div", { className: e.navInner, children: [
606
+ /* @__PURE__ */ t(
607
+ "div",
608
+ {
609
+ className: e.navBrand,
610
+ onClick: () => N("top"),
611
+ onKeyDown: (n) => {
612
+ (n.key === "Enter" || n.key === " ") && (n.preventDefault(), N("top"));
613
+ },
614
+ role: "button",
615
+ tabIndex: 0,
616
+ "aria-label": "Z OPC · 回到顶部",
617
+ children: [
618
+ /* @__PURE__ */ a("span", { className: e.navMark, children: "OPC" }),
619
+ /* @__PURE__ */ a("span", { className: e.navBrandText, children: "Z OPC" })
620
+ ]
621
+ }
622
+ ),
623
+ /* @__PURE__ */ t("div", { className: e.navLinks, children: [
624
+ y.map((n) => /* @__PURE__ */ a(
625
+ "button",
626
+ {
627
+ className: `${e.navLink} ${k === n.id ? e.navLinkActive : ""}`,
628
+ "aria-current": k === n.id ? "true" : void 0,
629
+ onClick: () => L(n.id),
630
+ children: n.label
631
+ },
632
+ n.id
633
+ )),
634
+ /* @__PURE__ */ a(
635
+ "button",
636
+ {
637
+ className: e.navLink,
638
+ onClick: () => f.push("/docs"),
639
+ children: "操作手册"
640
+ }
641
+ )
642
+ ] }),
643
+ /* @__PURE__ */ t("div", { className: e.navActions, children: [
644
+ /* @__PURE__ */ t("button", { className: e.navPrimary, onClick: T, children: [
645
+ "进入工作台",
646
+ /* @__PURE__ */ a(l, { name: "arrow", size: 15, strokeWidth: 2 })
647
+ ] }),
648
+ /* @__PURE__ */ a(
649
+ "button",
650
+ {
651
+ className: e.navMenuBtn,
652
+ "aria-label": _ ? "关闭导航菜单" : "打开导航菜单",
653
+ "aria-expanded": _,
654
+ "aria-controls": "welcome-mobile-menu",
655
+ "data-welcome-menu": !0,
656
+ onClick: () => i((n) => !n),
657
+ children: /* @__PURE__ */ t(
658
+ "span",
659
+ {
660
+ className: `${e.navMenuIcon} ${_ ? e.navMenuIconOpen : ""}`,
661
+ "aria-hidden": "true",
662
+ children: [
663
+ /* @__PURE__ */ a("span", {}),
664
+ /* @__PURE__ */ a("span", {}),
665
+ /* @__PURE__ */ a("span", {})
666
+ ]
667
+ }
668
+ )
669
+ }
670
+ )
671
+ ] })
672
+ ] }),
673
+ _ && /* @__PURE__ */ t(
674
+ "div",
675
+ {
676
+ className: e.navMenuPanel,
677
+ id: "welcome-mobile-menu",
678
+ "data-welcome-menu": !0,
679
+ children: [
680
+ y.map((n) => /* @__PURE__ */ a(
681
+ "button",
682
+ {
683
+ className: e.navMenuItem,
684
+ onClick: () => L(n.id),
685
+ children: n.label
686
+ },
687
+ n.id
688
+ )),
689
+ /* @__PURE__ */ a(
690
+ "button",
691
+ {
692
+ className: e.navMenuItem,
693
+ onClick: () => {
694
+ i(!1), f.push("/docs");
695
+ },
696
+ children: "操作手册"
697
+ }
698
+ ),
699
+ /* @__PURE__ */ t(
700
+ "button",
701
+ {
702
+ className: e.navMenuCta,
703
+ onClick: () => {
704
+ i(!1), T();
705
+ },
706
+ children: [
707
+ "进入工作台",
708
+ /* @__PURE__ */ a(l, { name: "arrow", size: 15, strokeWidth: 2 })
709
+ ]
710
+ }
711
+ )
712
+ ]
713
+ }
714
+ )
715
+ ] }),
716
+ /* @__PURE__ */ a("section", { className: e.hero, id: "top", children: /* @__PURE__ */ t("div", { className: e.heroInner, children: [
717
+ /* @__PURE__ */ t("div", { className: e.heroCopy, children: [
718
+ /* @__PURE__ */ t("span", { className: e.eyebrow, children: [
719
+ /* @__PURE__ */ a("span", { className: e.eyebrowDot }),
720
+ "One Company Unified Service"
721
+ ] }),
722
+ /* @__PURE__ */ t("h1", { className: e.heroTitle, children: [
723
+ "九个工作台",
724
+ /* @__PURE__ */ a("br", {}),
725
+ /* @__PURE__ */ a("span", { className: e.heroTitleAccent, children: "跑在同一个进程里" })
726
+ ] }),
727
+ /* @__PURE__ */ a("p", { className: e.heroLead, children: "Z OPC 把协作、智能、产品、研发、测试、运维、中间件、系统与 RPA 收进同一个平台:一个 Spring Boot JVM 承载全部业务域, 自研中间件同进程运行,一套 4A 账号打通所有入口。" }),
728
+ /* @__PURE__ */ t("div", { className: e.heroActions, children: [
729
+ /* @__PURE__ */ t("button", { className: e.btnPrimary, onClick: T, children: [
730
+ "进入工作台",
731
+ /* @__PURE__ */ a(l, { name: "arrow", size: 17, strokeWidth: 2 })
732
+ ] }),
733
+ /* @__PURE__ */ a(
734
+ "button",
735
+ {
736
+ className: e.btnSecondary,
737
+ onClick: () => N("panorama"),
738
+ children: "查看平台全景"
739
+ }
740
+ )
741
+ ] }),
742
+ /* @__PURE__ */ a("dl", { className: e.heroStats, children: [
743
+ { n: "9", l: "工作台" },
744
+ { n: "12", l: "自研中间件" },
745
+ { n: "1", l: "套 4A 账号" },
746
+ { n: "1", l: "个 JVM" }
747
+ ].map((n) => /* @__PURE__ */ t("div", { className: e.heroStat, children: [
748
+ /* @__PURE__ */ a("dt", { className: e.heroStatNum, children: n.n }),
749
+ /* @__PURE__ */ a("dd", { className: e.heroStatLabel, children: n.l })
750
+ ] }, n.l)) })
751
+ ] }),
752
+ /* @__PURE__ */ a("div", { className: e.heroVisual, children: /* @__PURE__ */ a(En, {}) })
753
+ ] }) }),
754
+ /* @__PURE__ */ a("section", { className: e.section, id: "panorama", children: /* @__PURE__ */ t("div", { className: e.container, children: [
755
+ /* @__PURE__ */ t(
756
+ "div",
757
+ {
758
+ className: `${e.sectionHead} ${e.fadeIn} ${d("pano-head") ? e.fadeInVisible : ""}`,
759
+ "data-reveal-id": "pano-head",
760
+ children: [
761
+ /* @__PURE__ */ a("span", { className: e.sectionEyebrow, children: "Platform Panorama" }),
762
+ /* @__PURE__ */ a("h2", { className: e.sectionTitle, children: "平台全景" }),
763
+ /* @__PURE__ */ a("p", { className: e.sectionLead, children: "协作、智能、产品、研发、测试、运维、中间件、系统、RPA—— 九个工作台共用同一套账号、权限与部署单元。" })
764
+ ]
765
+ }
766
+ ),
767
+ /* @__PURE__ */ a("div", { className: e.faceGrid, children: B.map((n, c) => /* @__PURE__ */ t(
768
+ "article",
769
+ {
770
+ className: `${e.capCard} ${e.fadeIn} ${d(`face-${c}`) ? e.fadeInVisible : ""}`,
771
+ "data-reveal-id": `face-${c}`,
772
+ style: { transitionDelay: `${c % 3 * 60}ms` },
773
+ children: [
774
+ /* @__PURE__ */ a("div", { className: e.capIcon, children: /* @__PURE__ */ a(
775
+ l,
776
+ {
777
+ name: n.icon,
778
+ size: 19,
779
+ strokeWidth: 1.8
780
+ }
781
+ ) }),
782
+ /* @__PURE__ */ t("h3", { className: e.capTitle, children: [
783
+ n.name,
784
+ /* @__PURE__ */ a("span", { className: e.faceEn, children: n.en })
785
+ ] }),
786
+ /* @__PURE__ */ a("p", { className: e.capDesc, children: n.desc }),
787
+ /* @__PURE__ */ a("span", { className: e.capTag, children: n.tag })
788
+ ]
789
+ },
790
+ n.name
791
+ )) }),
792
+ /* @__PURE__ */ a("p", { className: e.gridNote, children: "「协作」只是其中一块:Z Team 的能力、协作实景与客户端, 收在下方「数字员工」里。" })
793
+ ] }) }),
794
+ /* @__PURE__ */ a("section", { className: e.section, id: "account", children: /* @__PURE__ */ t("div", { className: e.container, children: [
795
+ /* @__PURE__ */ t(
796
+ "div",
797
+ {
798
+ className: `${e.sectionHead} ${e.fadeIn} ${d("acct-head") ? e.fadeInVisible : ""}`,
799
+ "data-reveal-id": "acct-head",
800
+ children: [
801
+ /* @__PURE__ */ a("span", { className: e.sectionEyebrow, children: "One Account" }),
802
+ /* @__PURE__ */ a("h2", { className: e.sectionTitle, children: "一个账号,打通所有工作台" }),
803
+ /* @__PURE__ */ a("p", { className: e.sectionLead, children: "4A 身份中心(z-ctc)承担认证、授权、账号与审计: 登录一次,业务面、中间件台与运维台都认这一个身份。" })
804
+ ]
805
+ }
806
+ ),
807
+ /* @__PURE__ */ a("div", { className: e.scnGrid, children: yn.map((n, c) => /* @__PURE__ */ t(
808
+ "article",
809
+ {
810
+ className: `${e.scnCard} ${e.fadeIn} ${d(`acct-${c}`) ? e.fadeInVisible : ""}`,
811
+ "data-reveal-id": `acct-${c}`,
812
+ style: { transitionDelay: `${c % 2 * 60}ms` },
813
+ children: [
814
+ /* @__PURE__ */ a("div", { className: e.scnIcon, children: /* @__PURE__ */ a(
815
+ l,
816
+ {
817
+ name: n.icon,
818
+ size: 19,
819
+ strokeWidth: 1.8
820
+ }
821
+ ) }),
822
+ /* @__PURE__ */ a("h3", { className: e.scnTitle, children: n.title }),
823
+ /* @__PURE__ */ a("p", { className: e.scnDesc, children: n.desc })
824
+ ]
825
+ },
826
+ n.title
827
+ )) })
828
+ ] }) }),
829
+ /* @__PURE__ */ a("section", { className: e.section, id: "architecture", children: /* @__PURE__ */ t("div", { className: e.container, children: [
830
+ /* @__PURE__ */ t(
831
+ "div",
832
+ {
833
+ className: `${e.sectionHead} ${e.fadeIn} ${d("arch-head") ? e.fadeInVisible : ""}`,
834
+ "data-reveal-id": "arch-head",
835
+ children: [
836
+ /* @__PURE__ */ a("span", { className: e.sectionEyebrow, children: "Architecture" }),
837
+ /* @__PURE__ */ a("h2", { className: e.sectionTitle, children: "单进程承载,中间件同进程" }),
838
+ /* @__PURE__ */ a("p", { className: e.sectionLead, children: "不再为每个业务域拆微服务:一个 z-opc-main-starter 进程 加一个 oc 库,兄弟仓能力以 jar 形式装配进来。" })
839
+ ]
840
+ }
841
+ ),
842
+ /* @__PURE__ */ a("div", { className: e.archList, children: kn.map((n, c) => /* @__PURE__ */ t(
843
+ "div",
844
+ {
845
+ className: `${e.archRow} ${e.fadeIn} ${d(`arch-${c}`) ? e.fadeInVisible : ""}`,
846
+ "data-reveal-id": `arch-${c}`,
847
+ children: [
848
+ /* @__PURE__ */ t("div", { className: e.archRail, children: [
849
+ /* @__PURE__ */ a("span", { className: e.archIndex, children: String(c + 1).padStart(2, "0") }),
850
+ /* @__PURE__ */ t("div", { className: e.archRailText, children: [
851
+ /* @__PURE__ */ a(
852
+ "span",
853
+ {
854
+ className: `${e.archLabel} ${e[`tone_${n.tone}`]}`,
855
+ children: n.label
856
+ }
857
+ ),
858
+ /* @__PURE__ */ a("span", { className: e.archEn, children: n.en })
859
+ ] })
860
+ ] }),
861
+ /* @__PURE__ */ a("div", { className: e.archModules, children: n.modules.map((o) => /* @__PURE__ */ t("div", { className: e.archModule, children: [
862
+ /* @__PURE__ */ a("span", { className: e.archModuleName, children: o.name }),
863
+ /* @__PURE__ */ a("span", { className: e.archModuleDesc, children: o.desc })
864
+ ] }, o.name)) })
865
+ ]
866
+ },
867
+ n.label
868
+ )) })
869
+ ] }) }),
870
+ /* @__PURE__ */ a("section", { className: e.section, id: "middleware", children: /* @__PURE__ */ t("div", { className: e.container, children: [
871
+ /* @__PURE__ */ t(
872
+ "div",
873
+ {
874
+ className: `${e.sectionHead} ${e.fadeIn} ${d("mw-head") ? e.fadeInVisible : ""}`,
875
+ "data-reveal-id": "mw-head",
876
+ children: [
877
+ /* @__PURE__ */ a("span", { className: e.sectionEyebrow, children: "Middleware" }),
878
+ /* @__PURE__ */ a("h2", { className: e.sectionTitle, children: "12 个自研中间件" }),
879
+ /* @__PURE__ */ a("p", { className: e.sectionLead, children: "配置、密钥、元数据、消息、RPC、向量、图、网关、缓存、MQ、 知识库、对象存储——统一在「中间件」工作台里代管。" })
880
+ ]
881
+ }
882
+ ),
883
+ /* @__PURE__ */ a("div", { className: e.mwGrid, children: Sn.map((n, c) => /* @__PURE__ */ t(
884
+ "article",
885
+ {
886
+ className: `${e.mwCard} ${e.fadeIn} ${d(`mw-${c}`) ? e.fadeInVisible : ""}`,
887
+ "data-reveal-id": `mw-${c}`,
888
+ style: { transitionDelay: `${c % 4 * 50}ms` },
889
+ children: [
890
+ /* @__PURE__ */ a("div", { className: e.mwName, children: n.name }),
891
+ /* @__PURE__ */ t("div", { className: e.mwMeta, children: [
892
+ /* @__PURE__ */ a("span", { children: n.en }),
893
+ n.port && /* @__PURE__ */ a("span", { children: n.port })
894
+ ] }),
895
+ /* @__PURE__ */ a("p", { className: e.mwDesc, children: n.desc })
896
+ ]
897
+ },
898
+ n.en
899
+ )) })
900
+ ] }) }),
901
+ /* @__PURE__ */ a("section", { className: e.section, id: "zteam", children: /* @__PURE__ */ t("div", { className: e.container, children: [
902
+ /* @__PURE__ */ t(
903
+ "div",
904
+ {
905
+ className: `${e.sectionHead} ${e.fadeIn} ${d("zt-head") ? e.fadeInVisible : ""}`,
906
+ "data-reveal-id": "zt-head",
907
+ children: [
908
+ /* @__PURE__ */ a("span", { className: e.sectionEyebrow, children: "Platform Spotlight" }),
909
+ /* @__PURE__ */ a("h2", { className: e.sectionTitle, children: "数字员工 · Z Team" }),
910
+ /* @__PURE__ */ a("p", { className: e.sectionLead, children: "平台上的一块:以群聊为入口的多 Agent 协作。 默认收起,需要时展开看能力、协作实景与客户端。" })
911
+ ]
912
+ }
913
+ ),
914
+ /* @__PURE__ */ t(
915
+ "div",
916
+ {
917
+ className: `${e.zteamFold} ${e.fadeIn} ${d("zt-fold") ? e.fadeInVisible : ""}`,
918
+ "data-reveal-id": "zt-fold",
919
+ children: [
920
+ /* @__PURE__ */ t("div", { className: e.zteamFoldMain, children: [
921
+ /* @__PURE__ */ a("span", { className: e.navMark, children: "ZT" }),
922
+ /* @__PURE__ */ t("div", { children: [
923
+ /* @__PURE__ */ a("div", { className: e.zteamFoldTitle, children: "Z Team · 组织级 AI 协同" }),
924
+ /* @__PURE__ */ a("div", { className: e.zteamFoldDesc, children: "消息中枢 · 星型多 Agent · 学习子系统 · 六端客户端" })
925
+ ] })
926
+ ] }),
927
+ /* @__PURE__ */ t(
928
+ "button",
929
+ {
930
+ className: e.zteamToggle,
931
+ "aria-expanded": r,
932
+ "aria-controls": "zteam-panel",
933
+ onClick: () => v((n) => !n),
934
+ children: [
935
+ r ? "收起详情" : "展开详情",
936
+ /* @__PURE__ */ a(
937
+ l,
938
+ {
939
+ name: "arrow",
940
+ size: 15,
941
+ strokeWidth: 2,
942
+ className: r ? e.zteamToggleIconOpen : e.zteamToggleIcon
943
+ }
944
+ )
945
+ ]
946
+ }
947
+ )
948
+ ]
949
+ }
950
+ ),
951
+ r && /* @__PURE__ */ t("div", { className: e.zteamPanel, id: "zteam-panel", children: [
952
+ /* @__PURE__ */ a("h3", { className: e.subTitle, children: "八项核心能力" }),
953
+ /* @__PURE__ */ a("div", { className: e.capGrid, children: zn.map((n) => /* @__PURE__ */ t("article", { className: e.capCard, children: [
954
+ /* @__PURE__ */ a("div", { className: e.capIcon, children: /* @__PURE__ */ a(
955
+ l,
956
+ {
957
+ name: n.icon,
958
+ size: 19,
959
+ strokeWidth: 1.8
960
+ }
961
+ ) }),
962
+ /* @__PURE__ */ a("h4", { className: e.capTitle, children: n.title }),
963
+ /* @__PURE__ */ a("p", { className: e.capDesc, children: n.desc }),
964
+ /* @__PURE__ */ a("span", { className: e.capTag, children: n.tag })
965
+ ] }, n.title)) }),
966
+ /* @__PURE__ */ a("h3", { className: e.subTitle, children: "一次协作的完整链路" }),
967
+ /* @__PURE__ */ t("div", { className: e.showcaseGrid, children: [
968
+ /* @__PURE__ */ a(Dn, {}),
969
+ /* @__PURE__ */ a("ol", { className: e.flowList, children: [
970
+ {
971
+ t: "人类发起",
972
+ d: "在群里用自然语言描述需求,无需学习新工具"
973
+ },
974
+ {
975
+ t: "主控拆解",
976
+ d: "TeamAgent 分析意图,@调度合适的子 Agent"
977
+ },
978
+ {
979
+ t: "多方执行",
980
+ d: "子 Agent 各自推理执行,工具链路安全隔离"
981
+ },
982
+ {
983
+ t: "结果回灌",
984
+ d: "汇总诊断结论,生成修复建议,全在群聊完成"
985
+ }
986
+ ].map((n, c) => /* @__PURE__ */ t("li", { className: e.flowItem, children: [
987
+ /* @__PURE__ */ a("span", { className: e.flowNum, children: String(c + 1).padStart(2, "0") }),
988
+ /* @__PURE__ */ t("div", { children: [
989
+ /* @__PURE__ */ a("strong", { className: e.flowTitle, children: n.t }),
990
+ /* @__PURE__ */ a("p", { className: e.flowDesc, children: n.d })
991
+ ] })
992
+ ] }, n.t)) })
993
+ ] }),
994
+ /* @__PURE__ */ a("h3", { className: e.subTitle, children: "全平台客户端" }),
995
+ /* @__PURE__ */ a("div", { className: e.cliGrid, children: Bn.map((n) => {
996
+ const c = n.key === "macos" ? M(s, "macos") : n.key === "windows" ? M(s, "windows") : n.key === "android" ? m : null, o = c && c.releaseType === "beta" ? "beta" : n.state, h = c && c.releaseType === "beta" ? "内测中" : Pn[n.state];
997
+ return /* @__PURE__ */ t("article", { className: e.cliCard, children: [
998
+ /* @__PURE__ */ t("div", { className: e.cliTop, children: [
999
+ /* @__PURE__ */ a("span", { className: e.cliIcon, children: /* @__PURE__ */ a(
1000
+ l,
1001
+ {
1002
+ name: n.icon,
1003
+ size: 20,
1004
+ strokeWidth: 1.8
1005
+ }
1006
+ ) }),
1007
+ /* @__PURE__ */ a(
1008
+ "span",
1009
+ {
1010
+ className: `${e.cliState} ${e[`state_${o}`]}`,
1011
+ children: h
1012
+ }
1013
+ )
1014
+ ] }),
1015
+ /* @__PURE__ */ a("h4", { className: e.cliName, children: n.name }),
1016
+ /* @__PURE__ */ a("div", { className: e.cliEn, children: c ? `${n.en} · v${c.version}` : n.en }),
1017
+ /* @__PURE__ */ a("p", { className: e.cliDesc, children: n.desc }),
1018
+ c && /* @__PURE__ */ t("div", { className: e.cliMeta, children: [
1019
+ c.fileSize > 0 && /* @__PURE__ */ a("span", { children: V(c.fileSize) }),
1020
+ c.releaseTime && /* @__PURE__ */ a("span", { children: H(
1021
+ c.releaseTime
1022
+ ) }),
1023
+ c.changelog && /* @__PURE__ */ a(
1024
+ "span",
1025
+ {
1026
+ className: e.cliMetaNote,
1027
+ children: c.changelog
1028
+ }
1029
+ )
1030
+ ] }),
1031
+ /* @__PURE__ */ a("div", { className: e.cliAction, children: c ? /* @__PURE__ */ t(
1032
+ "a",
1033
+ {
1034
+ className: e.cliBtnPrimary,
1035
+ href: c.downloadUrl,
1036
+ target: "_blank",
1037
+ rel: "noreferrer",
1038
+ children: [
1039
+ /* @__PURE__ */ a(
1040
+ l,
1041
+ {
1042
+ name: "download",
1043
+ size: 15,
1044
+ strokeWidth: 2
1045
+ }
1046
+ ),
1047
+ "下载 v",
1048
+ c.version
1049
+ ]
1050
+ }
1051
+ ) : n.key === "web" ? /* @__PURE__ */ t(
1052
+ "button",
1053
+ {
1054
+ className: e.cliBtnPrimary,
1055
+ onClick: T,
1056
+ children: [
1057
+ "立即使用",
1058
+ /* @__PURE__ */ a(
1059
+ l,
1060
+ {
1061
+ name: "arrow",
1062
+ size: 15,
1063
+ strokeWidth: 2
1064
+ }
1065
+ )
1066
+ ]
1067
+ }
1068
+ ) : n.key === "cli" ? /* @__PURE__ */ a(
1069
+ "button",
1070
+ {
1071
+ className: e.cliBtnGhost,
1072
+ onClick: () => f.push("/docs"),
1073
+ children: "查看接入方式"
1074
+ }
1075
+ ) : (
1076
+ /* 无发布清单时不放假下载入口,只如实标注状态 */
1077
+ /* @__PURE__ */ a(
1078
+ "button",
1079
+ {
1080
+ className: e.cliBtnGhost,
1081
+ disabled: !0,
1082
+ children: n.key === "ios" ? "内测中" : "发布后在此提供"
1083
+ }
1084
+ )
1085
+ ) })
1086
+ ] }, n.key);
1087
+ }) }),
1088
+ /* @__PURE__ */ t("div", { className: e.cliMore, children: [
1089
+ /* @__PURE__ */ t("span", { children: [
1090
+ "需要完整版本信息、校验与历史版本?",
1091
+ /* @__PURE__ */ t("span", { className: e.cliMoreSub, children: [
1092
+ " ",
1093
+ D,
1094
+ " · ",
1095
+ O,
1096
+ " · iOS 内测 ·",
1097
+ " ",
1098
+ G,
1099
+ " · Web 免安装"
1100
+ ] })
1101
+ ] }),
1102
+ /* @__PURE__ */ t(
1103
+ "button",
1104
+ {
1105
+ className: e.cliMoreBtn,
1106
+ onClick: () => f.push("/docs#changelog"),
1107
+ children: [
1108
+ "查看发布说明",
1109
+ /* @__PURE__ */ a(
1110
+ l,
1111
+ {
1112
+ name: "arrow",
1113
+ size: 15,
1114
+ strokeWidth: 2
1115
+ }
1116
+ )
1117
+ ]
1118
+ }
1119
+ )
1120
+ ] })
1121
+ ] })
1122
+ ] }) }),
1123
+ /* @__PURE__ */ t("footer", { className: e.footer, children: [
1124
+ /* @__PURE__ */ t("div", { className: e.footerInner, children: [
1125
+ /* @__PURE__ */ t("div", { className: e.footerBrand, children: [
1126
+ /* @__PURE__ */ a("span", { className: e.navMark, children: "OPC" }),
1127
+ /* @__PURE__ */ t("div", { children: [
1128
+ /* @__PURE__ */ a("div", { className: e.footerBrandName, children: "Z OPC" }),
1129
+ /* @__PURE__ */ a("div", { className: e.footerBrandDesc, children: "One Company Unified Service · 一个进程装下整家公司" })
1130
+ ] })
1131
+ ] }),
1132
+ /* @__PURE__ */ t("nav", { className: e.footerLinks, children: [
1133
+ /* @__PURE__ */ t("div", { className: e.footerCol, children: [
1134
+ /* @__PURE__ */ a("span", { className: e.footerColTitle, children: "平台" }),
1135
+ y.map((n) => /* @__PURE__ */ a(
1136
+ "button",
1137
+ {
1138
+ className: e.footerLink,
1139
+ onClick: () => N(n.id),
1140
+ children: n.label
1141
+ },
1142
+ n.id
1143
+ ))
1144
+ ] }),
1145
+ /* @__PURE__ */ t("div", { className: e.footerCol, children: [
1146
+ /* @__PURE__ */ a("span", { className: e.footerColTitle, children: "资源" }),
1147
+ /* @__PURE__ */ a("button", { className: e.footerLink, onClick: E, children: "客户端下载" }),
1148
+ /* @__PURE__ */ a(
1149
+ "button",
1150
+ {
1151
+ className: e.footerLink,
1152
+ onClick: () => f.push("/docs"),
1153
+ children: "操作手册"
1154
+ }
1155
+ ),
1156
+ /* @__PURE__ */ a(
1157
+ "button",
1158
+ {
1159
+ className: e.footerLink,
1160
+ onClick: () => f.push("/docs#changelog"),
1161
+ children: "迭代日志"
1162
+ }
1163
+ ),
1164
+ /* @__PURE__ */ a("button", { className: e.footerLink, onClick: T, children: "进入工作台" })
1165
+ ] })
1166
+ ] })
1167
+ ] }),
1168
+ /* @__PURE__ */ t("div", { className: e.footerBottom, children: [
1169
+ /* @__PURE__ */ a("span", { children: "Spring Boot 2.7 · React 19 · 单一 JVM · 12 自研中间件" }),
1170
+ /* @__PURE__ */ a("span", { children: "© 2026 Z OPC" })
1171
+ ] })
1172
+ ] }),
1173
+ /* @__PURE__ */ a(
1174
+ "button",
1175
+ {
1176
+ className: `${e.toTop} ${b ? e.toTopVisible : ""}`,
1177
+ onClick: () => window.scrollTo({ top: 0, behavior: "smooth" }),
1178
+ "aria-label": "回到顶部",
1179
+ tabIndex: b ? 0 : -1,
1180
+ children: /* @__PURE__ */ a(
1181
+ l,
1182
+ {
1183
+ name: "arrow",
1184
+ size: 18,
1185
+ strokeWidth: 2,
1186
+ className: e.toTopIcon
1187
+ }
1188
+ )
1189
+ }
1190
+ )
1191
+ ] });
1192
+ }
1193
+ export {
1194
+ Vn as default
1195
+ };