superun-ai-cli 0.1.14 → 0.1.15

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 (47) hide show
  1. package/README.en.md +78 -36
  2. package/README.md +65 -38
  3. package/dist/api/agent-command-api.d.ts +2 -0
  4. package/dist/api/agent-command-api.js +6 -0
  5. package/dist/api/agent-command-api.js.map +1 -1
  6. package/dist/api/agent-query-api.d.ts +5 -4
  7. package/dist/api/agent-query-api.js +13 -2
  8. package/dist/api/agent-query-api.js.map +1 -1
  9. package/dist/commands/chat/index.js +2 -0
  10. package/dist/commands/chat/index.js.map +1 -1
  11. package/dist/commands/chat/retry.d.ts +4 -0
  12. package/dist/commands/chat/retry.js +24 -0
  13. package/dist/commands/chat/retry.js.map +1 -0
  14. package/dist/commands/chat/style.js +27 -9
  15. package/dist/commands/chat/style.js.map +1 -1
  16. package/dist/commands/shared.js +8 -0
  17. package/dist/commands/shared.js.map +1 -1
  18. package/dist/contracts/cli-output.d.ts +8 -0
  19. package/dist/conversation/insufficient-credits.d.ts +14 -0
  20. package/dist/conversation/insufficient-credits.js +92 -0
  21. package/dist/conversation/insufficient-credits.js.map +1 -0
  22. package/dist/conversation/next-actions.d.ts +1 -1
  23. package/dist/conversation/next-actions.js +27 -50
  24. package/dist/conversation/next-actions.js.map +1 -1
  25. package/dist/conversation/state-resolver.js +24 -14
  26. package/dist/conversation/state-resolver.js.map +1 -1
  27. package/dist/conversation/style-generation.d.ts +13 -0
  28. package/dist/conversation/style-generation.js +177 -0
  29. package/dist/conversation/style-generation.js.map +1 -0
  30. package/dist/conversation/style-guidance.d.ts +5 -0
  31. package/dist/conversation/style-guidance.js +88 -0
  32. package/dist/conversation/style-guidance.js.map +1 -0
  33. package/dist/interactions/handlers/index.js +1 -1
  34. package/dist/interactions/handlers/index.js.map +1 -1
  35. package/dist/interactions/handlers/reply-prd.js +28 -5
  36. package/dist/interactions/handlers/reply-prd.js.map +1 -1
  37. package/dist/interactions/parsers/style-selection.js +12 -4
  38. package/dist/interactions/parsers/style-selection.js.map +1 -1
  39. package/dist/interactions/questions.d.ts +0 -5
  40. package/dist/interactions/questions.js +0 -1
  41. package/dist/interactions/questions.js.map +1 -1
  42. package/dist/output/writer.js +2 -0
  43. package/dist/output/writer.js.map +1 -1
  44. package/dist/runtime.d.ts +3 -1
  45. package/dist/runtime.js +64 -29
  46. package/dist/runtime.js.map +1 -1
  47. package/package.json +4 -2
package/README.en.md CHANGED
@@ -68,45 +68,54 @@ superun-ai chat style generate --help
68
68
 
69
69
  ## Command tree
70
70
 
71
+ This reference is for developers and integrating agents, not a user-facing menu. Execute `nextActions.command` / `input` internally and show users only status, results, and necessary questions. After style selection, keep demo transitions, version preservation, development entry, and initial plan approval silent. Credit errors, execution failures, and real business questions must still be shown.
72
+
71
73
  The tree below lists command groups, positional arguments, and their purpose. Replace required arguments written as `<...>` with actual values. Use each command's `--help` to see its options and requirements.
72
74
 
73
75
  ```text
74
76
  superun-ai
75
- ├── auth # Manage PAT login
76
- │ ├── login # Sign in and save a PAT
77
- │ ├── status # Check local PAT configuration
78
- │ └── logout # Remove the locally saved PAT
79
- ├── session # Query projects
80
- │ ├── list # List projects
81
- │ └── get <sessionId> # Get project details
82
- ├── chat # Conversational creation
83
- │ ├── create # Create a project and send a request
84
- │ ├── send <sessionId> # Continue the conversation
85
- │ ├── state <sessionId> # Inspect the task and interactions
86
- │ ├── wait <sessionId> # Wait for input or a task result
87
- │ ├── stop <sessionId> # Stop the remote task
88
- │ ├── style # Manage creative styles
89
- │ │ ├── generate <sessionId> # Generate style candidates
90
- │ │ ├── list <sessionId> # List style batches
91
- │ │ └── select <sessionId> <choiceId> # Choose a style and generate the development plan
92
- │ ├── demo <sessionId> # View the demo and record it as viewed
93
- │ ├── develop <sessionId> # Keep the demo and plan development
94
- │ ├── interaction # Answer or skip interactions
95
- │ │ ├── reply <sessionId> <interactionId> # Submit an answer
96
- │ │ └── skip <sessionId> <interactionId> # Skip an eligible interaction
97
- │ ├── plugin # Query, enable, and disable plugins
98
- │ │ ├── list <sessionId> # List available plugins
99
- │ │ ├── status <sessionId> <pluginId> # Inspect a plugin
100
- │ │ ├── enable <sessionId> <pluginId> # Enable a plugin
101
- │ │ └── disable <sessionId> <pluginId> # Disable a plugin
102
- │ └── publish # Publish applications and manage visibility
103
- │ ├── status <sessionId> # Query versions and deployment progress
104
- │ ├── start <sessionId> <encryptedId> # Publish a specific version
105
- │ └── visibility <sessionId> <visibility> # Make the site public or private
106
- ├── update # Check and install the required version
107
- └── version # Show local and output-schema versions
77
+ ├── auth # Manage PAT login
78
+ │ ├── login # Sign in and save a PAT
79
+ │ ├── status # Check local PAT configuration
80
+ │ └── logout # Remove the locally saved PAT
81
+ ├── session # Query projects
82
+ │ ├── list # List projects
83
+ │ └── get <sessionId> # Get project details
84
+ ├── chat # Conversational creation
85
+ │ ├── create # Create a project and send a request
86
+ │ ├── send <sessionId> # Continue the conversation
87
+ │ ├── test <sessionId> # Test existing functionality and repair identified issues
88
+ │ ├── review <sessionId> # Review existing code and repair identified issues
89
+ │ ├── state <sessionId> # Inspect the task and interactions
90
+ │ ├── wait <sessionId> # Wait for input or a task result
91
+ │ ├── stop <sessionId> # Stop the remote task
92
+ │ ├── retry <sessionId> <messageId> # Retry the original failed task after recharging
93
+ │ ├── style # Manage creative styles
94
+ │ │ ├── generate <sessionId> # Generate style candidates
95
+ │ │ ├── list <sessionId> # List style batches
96
+ │ │ ├── append <sessionId> # Generate one additional design from existing requirements
97
+ │ │ ├── retry <sessionId> <choiceId> # Retry the original failed style task
98
+ │ │ └── select <sessionId> <choiceId> # Choose a style and show the development feature list
99
+ │ ├── demo <sessionId> # View the demo and record it as viewed
100
+ │ ├── develop <sessionId> # Keep the demo and plan development
101
+ │ ├── interaction # Answer or skip interactions
102
+ │ │ ├── reply <sessionId> <interactionId> # Submit an answer
103
+ │ │ └── skip <sessionId> <interactionId> # Skip an eligible interaction
104
+ │ ├── plugin # Query, enable, and disable plugins
105
+ │ │ ├── list <sessionId> # List available plugins
106
+ │ │ ├── status <sessionId> <pluginId> # Inspect a plugin
107
+ │ │ ├── enable <sessionId> <pluginId> # Enable a plugin
108
+ │ │ └── disable <sessionId> <pluginId> # Disable a plugin
109
+ │ └── publish # Publish applications and manage visibility
110
+ │ ├── status <sessionId> # Query versions and deployment progress
111
+ │ ├── start <sessionId> <encryptedId> # Publish a specific version
112
+ │ └── visibility <sessionId> <visibility> # Make the site public or private
113
+ ├── update # Check and update to the latest CLI version
114
+ └── version # Show local and output-schema versions
108
115
  ```
109
116
 
117
+ Run `npm run docs:sync` after changing command registration to update both command trees. `npm run docs:check` validates their completeness; `prepack` also checks them before packaging.
118
+
110
119
  ## PAT login
111
120
 
112
121
  ```bash
@@ -193,14 +202,47 @@ For secret input, submit `{"values":{"requested-key":"secret-value"}}` with only
193
202
 
194
203
  `chat interaction reply --no-wait` controls waiting for subsequent creation after the reply has been processed. Some plugin configuration steps must finish in the foreground before submitting their interaction result; this option does not skip those steps. After an interruption, check the plugin and conversation states first.
195
204
 
205
+ ## Automatic testing and code review
206
+
207
+ ```bash
208
+ superun-ai chat test <sessionId>
209
+ superun-ai chat test <sessionId> --message "Verify login and logout"
210
+ superun-ai chat review <sessionId>
211
+ superun-ai chat review <sessionId> --message "Review capacity updates and cancellation handling"
212
+ superun-ai chat send <sessionId> --test-followup <sourceMessageId> --message "Fix issue 2"
213
+ superun-ai chat send <sessionId> --review-followup <sourceMessageId> --message "Fix issue 2"
214
+ ```
215
+
216
+ Use the actual report `sourceMessageId` for follow-ups. Display the returned findings and follow the current `nextActions`; do not invent test results or approve unresolved business decisions.
217
+
218
+ ## Insufficient credits and retrying
219
+
220
+ When a request or running task fails because of insufficient credits, open [superun.ai](https://superun.ai) to recharge, then reply “Retry”. The CLI does not retry automatically while waiting for the user.
221
+
222
+ - A rejected request: repeat the original operation with its original input after recharging; do not retry an earlier completed message.
223
+ - A failed running task: use the returned `RECHARGE_AND_RETRY` command. It checks the balance and calls Glow's existing retry API for the current failed message. Completed, running, or stale messages are rejected.
224
+ - Owner or team balance failures require funding the corresponding account. Member monthly/total quota failures require an administrator to adjust the quota.
225
+
226
+ ```bash
227
+ superun-ai chat retry <sessionId> <messageId>
228
+ superun-ai chat retry <sessionId> <messageId> --no-wait
229
+ superun-ai chat retry <sessionId> <messageId> --timeout 120
230
+ ```
231
+
232
+ Use the actual failed agent message ID from `nextActions.command`, not a user message ID or a style `choiceId`. Retry waits for the result by default. With `--no-wait`, follow the returned guidance to check progress after the request is accepted. Failed style candidates use `chat style retry <sessionId> <choiceId>` instead.
233
+
196
234
  ## Styles, plugins, and publishing
197
235
 
198
236
  Interactions, styles, plugins, and publishing belong under `chat`. Use `chat interaction`, `chat style`, `chat plugin`, and `chat publish`; they are not top-level commands.
199
237
 
200
238
  ```bash
201
- superun-ai chat style generate <sessionId> --content "Create a clean brand style" --count 2
239
+ superun-ai chat style generate <sessionId> --content "Create a clean brand style"
202
240
  superun-ai chat style list <sessionId>
241
+ superun-ai chat style append <sessionId> --anchor <branchAnchor>
242
+ superun-ai chat style retry <sessionId> <choiceId>
203
243
  superun-ai chat style select <sessionId> <choiceId>
244
+ superun-ai chat demo <sessionId>
245
+ superun-ai chat develop <sessionId>
204
246
 
205
247
  superun-ai chat plugin list <sessionId>
206
248
  superun-ai chat plugin status <sessionId> <pluginId>
@@ -213,13 +255,13 @@ superun-ai chat publish visibility <sessionId> public
213
255
  superun-ai chat publish visibility <sessionId> private
214
256
  ```
215
257
 
216
- Style generation defaults to two candidates and supports one to four. Use the returned `choiceId` to select a style. Publishing uses the returned `encryptedId` and tracks the selected version's deployment. Plugin IDs come from `chat plugin list`.
258
+ 首次固定生成一个方案,已移除 `--count` / `styleCount`;`chat style append <sessionId> --anchor <branchAnchor>` 每次基于已有需求追加一版,不接受额外要求或参考文件。`chat style retry <sessionId> <choiceId>` 重试原失败任务。展示 `styleGeneration.notice`,按 `nextActions` 引导用户采用已有方案或再设计一版;费用以服务端实际结果为准。 Use the returned `choiceId` to select a style. Publishing uses the returned `encryptedId` and tracks the selected version's deployment. Plugin IDs come from `chat plugin list`.
217
259
 
218
260
  Style waiting returns progress as soon as one candidate succeeds and its preview page is ready, while the batch remains `RUNNING`. Each candidate exposes `previewUrl`, the same interactive page used by Glow's branch preview. Screenshot URLs are not returned, and screenshot generation does not delay readiness. Show that candidate and its page link immediately, then follow `QUERY_STYLES` to keep checking the remaining candidates. For example: “Style B is ready; waiting for style A.” Labels A/B/C/D correspond to the original `index` 0/1/2/3, regardless of completion order. Announce each `choiceId` only once and wait for the user's selection after the batch finishes.
219
261
 
220
262
  After development completes, the preview link is returned in `development.previewUrl` as `https://id--<sessionId>.<hosting-domain>`, matching Glow's stable development-mainline address and updating with mainline builds. Development no longer looks up or waits for snapshots. Style candidates and saved demo versions retain their own snapshot pages, while launch operations return the published domain.
221
263
 
222
- After the user selects a style, `chat style select` waits for its demo, completes the demo transition and preserves the version internally, then generates the development plan. Show only that the selected style is being used to prepare the plan, without demo-stage prompts or additional questions. Keep the existing plan content and confirmation/adjustment guidance unchanged; the feature-selection step follows plan approval. After `--no-wait` or a local timeout, follow `CONTINUE_STYLE_PLANNING` with `chat wait` to check the current state and resume the transition. `chat state` remains read-only, and existing projects can still use `chat demo` and `chat develop`.
264
+ After the user selects a style, `chat style select` waits for its demo, completes the demo transition and preserves the version internally, then generates the development plan. Show only that the selected style is being used to prepare the plan, without demo-stage prompts or additional questions. The CLI silently generates and confirms the initial plan, then displays the actual feature list for the user to choose what to develop. Real business questions still require user input. After `--no-wait` or a local timeout, follow `CONTINUE_STYLE_PLANNING` with `chat wait` to check the current state and resume the transition. `chat state` remains read-only, and existing projects can still use `chat demo` and `chat develop`.
223
265
 
224
266
  After the user explicitly asks to launch the site, use `chat publish status <sessionId> --for-launch` to get the latest pending version from the publishing panel. Show its `changeLog` unchanged, then follow the returned publishing command without a second confirmation. For a deployment already in progress, only track progress. If deployment is complete but the site is not public, finish the visibility step and return the public URL. `status` is always read-only; an ordinary status query does not grant publishing authorization.
225
267
 
package/README.md CHANGED
@@ -70,47 +70,54 @@ superun-ai chat style generate --help
70
70
 
71
71
  ## 命令树
72
72
 
73
+ 本节供开发者和接入 Agent 查阅,不作为面向用户的操作菜单。`nextActions.command` / `input` 由 Agent 内部执行;用户只看到当前状态、最终结果及必要问题。选定风格后的演示衔接、版本保留、进入研发和初始规划确认静默完成,不逐步展示或确认;欠费、执行错误和真实业务问题仍须展示。
74
+
73
75
  下面列出完整命令层级、位置参数和用途。`<...>` 表示需要替换的必填位置参数;选项参数及其要求可通过各命令的 `--help` 查看。
74
76
 
75
77
  ```text
76
78
  superun-ai
77
- ├── auth # 管理 PAT 登录
78
- │ ├── login # 登录 Superun 并保存 PAT
79
- │ ├── status # 查看本地 PAT 配置状态
80
- │ └── logout # 清除本地 PAT
81
- ├── session # 查询项目
82
- │ ├── list # 查询项目列表
83
- │ └── get <sessionId> # 查询项目详情
84
- ├── chat # 对话创作
85
- │ ├── create # 新建项目并发送需求
86
- │ ├── send <sessionId> # 继续项目创作
87
- │ ├── test <sessionId> # 自动测试已有功能并修复确认的问题
88
- │ ├── review <sessionId> # 审查已有代码并修复确认的问题
89
- │ ├── state <sessionId> # 查询当前任务和交互
90
- │ ├── wait <sessionId> # 等待当前交互或任务结果
91
- │ ├── stop <sessionId> # 停止远端任务
92
- │ ├── style # 管理创作风格
93
- │ │ ├── generate <sessionId> # 生成风格候选
94
- │ │ ├── list <sessionId> # 查询全部风格批次
95
- │ │ └── select <sessionId> <choiceId> # 选择风格并自动生成研发规划
96
- │ ├── demo <sessionId> # 查看演示快照并记录已查看状态
97
- │ ├── develop <sessionId> # 保留演示,进入研发并生成规划
98
- │ ├── interaction # 回答或跳过交互
99
- │ │ ├── reply <sessionId> <interactionId> # 提交回答
100
- │ │ └── skip <sessionId> <interactionId> # 跳过当前交互
101
- │ ├── plugin # 查询、启用和禁用插件
102
- │ │ ├── list <sessionId> # 查询可用插件
103
- │ │ ├── status <sessionId> <pluginId> # 查询插件状态
104
- │ │ ├── enable <sessionId> <pluginId> # 启用插件
105
- │ │ └── disable <sessionId> <pluginId> # 禁用插件
106
- │ └── publish # 发布应用和管理站点状态
107
- │ ├── status <sessionId> # 查询发布版本与部署进度
108
- │ ├── start <sessionId> <encryptedId> # 发布指定版本
109
- │ └── visibility <sessionId> <visibility> # 设置站点上线或下线状态
110
- ├── update # 检查并安装指定版本
111
- └── version # 显示本地版本与输出协议版本
79
+ ├── auth # 管理 PAT 登录
80
+ │ ├── login # 登录 Superun 并保存 PAT
81
+ │ ├── status # 查看本地 PAT 配置状态
82
+ │ └── logout # 清除本地 PAT
83
+ ├── session # 查询项目
84
+ │ ├── list # 查询项目列表
85
+ │ └── get <sessionId> # 查询项目详情
86
+ ├── chat # 对话创作
87
+ │ ├── create # 新建项目并发送需求
88
+ │ ├── send <sessionId> # 继续项目创作
89
+ │ ├── test <sessionId> # 自动测试指定功能,告知发现的问题后自动修复;默认测试刚才完成的功能
90
+ │ ├── review <sessionId> # 代码审查,告知发现的问题后自动修复;默认审查刚才改动的代码
91
+ │ ├── state <sessionId> # 查询当前任务和交互
92
+ │ ├── wait <sessionId> # 等待当前交互或任务结果,期间持续展示任务进度
93
+ │ ├── stop <sessionId> # 停止远端任务
94
+ │ ├── retry <sessionId> <messageId> # 充值或处理异常后重试原失败任务
95
+ │ ├── style # 管理创作风格
96
+ │ │ ├── generate <sessionId> # 生成风格候选
97
+ │ │ ├── list <sessionId> # 查询全部风格批次
98
+ │ │ ├── append <sessionId> # 再设计一版,每版预计消耗 50~100 算力值,按实际用量扣费
99
+ │ │ ├── retry <sessionId> <choiceId> # 重试失败的原方案任务
100
+ │ │ └── select <sessionId> <choiceId> # 选择风格并展示开发功能清单
101
+ │ ├── demo <sessionId> # 查看演示快照并记录已查看状态
102
+ │ ├── develop <sessionId> # 保留演示,进入研发并生成规划
103
+ │ ├── interaction # 回答或跳过交互
104
+ │ │ ├── reply <sessionId> <interactionId> # 提交回答
105
+ │ │ └── skip <sessionId> <interactionId> # 跳过当前交互
106
+ │ ├── plugin # 查询、启用和禁用插件
107
+ │ │ ├── list <sessionId> # 查询可用插件
108
+ │ │ ├── status <sessionId> <pluginId> # 查询插件状态
109
+ │ │ ├── enable <sessionId> <pluginId> # 启用插件
110
+ │ │ └── disable <sessionId> <pluginId> # 禁用插件
111
+ │ └── publish # 发布应用和管理站点状态
112
+ │ ├── status <sessionId> # 查询发布版本与部署进度
113
+ │ ├── start <sessionId> <encryptedId> # 发布指定版本
114
+ │ └── visibility <sessionId> <visibility> # 设置站点上线或下线状态
115
+ ├── update # 检查并将本机 CLI 更新到最新版本
116
+ └── version # 显示本地版本与输出协议版本
112
117
  ```
113
118
 
119
+ 命令树以源码注册为准。新增或调整命令后执行 `npm run docs:sync` 同步中英文命令树;`npm run docs:check` 校验完整性。发包前的 `prepack` 同样执行校验,发现遗漏或过期参数时停止发包准备。
120
+
114
121
  ## PAT 登录
115
122
 
116
123
  ```bash
@@ -317,14 +324,34 @@ superun-ai chat send <sessionId> --review-followup <sourceMessageId> --message "
317
324
 
318
325
  不增加“暂不需要”步骤。用户明确要求“审查完再自动测试”时,在审查及修复有效完成且无遗留问题后沿用已有授权衔接,否则等待用户选择。选择自动测试后沿用自动测试的结果规则;选择上线运营后沿用现有发布流程。当前审查流程不会在修复后自动重复审查同一范围。
319
326
 
327
+ ## 余额不足与充值后重试
328
+
329
+ 创建请求或对话执行中余额不足时,CLI 返回充值引导:前往 [superun.ai](https://superun.ai) 充值,完成后回复“重试”。用户确认前不自动重试,也不展示继续创作或上线运营菜单。
330
+
331
+ - 请求直接被拒绝:宿主保留原命令与输入,充值后重新执行原操作;没有失败任务 ID 时不调用任务重试。
332
+ - 执行中失败:使用返回的 `RECHARGE_AND_RETRY` 命令 `chat retry <sessionId> <messageId>`,先调用 Glow 同源的余额校验,再通过 `AgentCommand/retry` 重试真实主链异常消息。已完成、运行中或过期消息不会被重试;风格分支继续使用 `chat style retry`。
333
+ - 项目所有者余额不足时联系所有者充值;团队余额不足时为对应团队充值;成员月度/总额度不足时联系管理员调整额度,不能用个人充值代替。
334
+
335
+ ```bash
336
+ superun-ai chat retry <sessionId> <messageId>
337
+ superun-ai chat retry <sessionId> <messageId> --no-wait
338
+ superun-ai chat retry <sessionId> <messageId> --timeout 120
339
+ ```
340
+
341
+ `messageId` 使用欠费结果中 `nextActions.command` 指定的真实失败消息 ID,不使用用户消息 ID、风格 `choiceId` 或自行猜测的 ID。默认等待重试结果;`--no-wait` 在重试请求被接受后返回,后续按返回的引导查询进度。
342
+
320
343
  ## 风格、插件和发布
321
344
 
322
345
  交互、风格、插件和发布均归属对话创作,统一使用 `chat interaction`、`chat style`、`chat plugin` 和 `chat publish`,不提供对应顶层入口。
323
346
 
324
347
  ```bash
325
- superun-ai chat style generate <sessionId> --content "生成简洁的品牌风格" --count 2
348
+ superun-ai chat style generate <sessionId> --content "生成简洁的品牌风格"
326
349
  superun-ai chat style list <sessionId>
350
+ superun-ai chat style append <sessionId> --anchor <branchAnchor>
351
+ superun-ai chat style retry <sessionId> <choiceId>
327
352
  superun-ai chat style select <sessionId> <choiceId>
353
+ superun-ai chat demo <sessionId>
354
+ superun-ai chat develop <sessionId>
328
355
 
329
356
  superun-ai chat plugin list <sessionId>
330
357
  superun-ai chat plugin status <sessionId> <pluginId>
@@ -337,9 +364,9 @@ superun-ai chat publish visibility <sessionId> public
337
364
  superun-ai chat publish visibility <sessionId> private
338
365
  ```
339
366
 
340
- 风格默认生成 2 个,支持 1~4 个;使用查询结果中的 `choiceId`。发布使用查询结果中的 `encryptedId`,按目标版本跟踪部署状态。插件 ID 以 `chat plugin list` 返回值为准。
367
+ 首次固定生成 1 个方案,不再支持 `--count` 或问卷 `styleCount`。用户选择“再设计一版”后,通过 `chat style append <sessionId> --anchor <branchAnchor>` 每次基于已有需求追加 1 个,不接受额外要求或参考文件。失败方案使用 `chat style retry <sessionId> <choiceId>` 重试原任务。选择使用查询结果中的 `choiceId`。发布使用查询结果中的 `encryptedId`,按目标版本跟踪部署状态。插件 ID 以 `chat plugin list` 返回值为准。
341
368
 
342
- 风格等待会在单个方案成功且预览页面就绪时提前返回进度,整批状态仍为 `RUNNING`。候选通过 `previewUrl` 返回与 Glow 分支预览相同的可交互页面,不返回截图链接,也不等待截图生成。调用方应立即提示该方案及页面链接,再按 `QUERY_STYLES` 继续查询剩余方案,例如“方案 B 已生成,继续等待方案 A”。方案 A/B/C/D 固定对应原始 `index` 0/1/2/3,同一 `choiceId` 只提示一次;全部结束后再等待用户选择。
369
+ 风格等待会在单个方案成功且预览页面就绪时提前返回进度,整批状态仍为 `RUNNING`。结果的 `styleGeneration.notice` 为实际状态对应的展示文案,`nextActions` 提供采用、追加和重试命令;`choices` 保留同一轮全部方案,不能只展示最新批次。候选通过 `previewUrl` 返回与 Glow 分支预览相同的可交互页面,不返回截图链接,也不等待截图生成。调用方应立即提示该方案及页面链接,再按 `QUERY_STYLES` 继续查询剩余方案,例如“方案 B 已生成,继续等待方案 A”。方案 A/B/C/D 固定对应原始 `index` 0/1/2/3,同一 `choiceId` 只提示一次;已有可用方案时用户可以提前选择;追加生成不会隐藏旧方案。
343
370
 
344
371
  研发完成后的“查看预览”使用 `development.previewUrl`,返回与 Glow 研发主线一致的稳定地址 `https://id--<sessionId>.<托管域名>`,随主线构建结果更新。研发主线不再查找或等待快照;风格候选和独立演示版本继续使用各自的快照页面。上线运营返回正式发布域名。
345
372
 
@@ -23,6 +23,8 @@ export declare class AgentCommandApi {
23
23
  constructor(client: ApiClient);
24
24
  chat(input: ChatInput): Promise<JsonObject>;
25
25
  parallel(input: JsonObject): Promise<JsonObject>;
26
+ checkBalance(sessionId: string): Promise<void>;
27
+ retry(sessionId: string, messageId: string, replyMessageId?: string): Promise<JsonObject>;
26
28
  viewDemo(sessionId: string, planningChoiceId?: string): Promise<JsonObject>;
27
29
  stop(sessionId: string, scope: 'own' | 'all', messageId?: string): Promise<void>;
28
30
  reply(sessionId: string, toolId: string, toolResult?: unknown): Promise<JsonObject>;
@@ -36,6 +36,12 @@ export class AgentCommandApi {
36
36
  async parallel(input) {
37
37
  return object(await this.client.call(`${PREFIX}/glowParallelChat`, input, true));
38
38
  }
39
+ async checkBalance(sessionId) {
40
+ await this.client.call('/api/uxa-center/agent/AgentToken/checkSessionTokenBalance', { sessionId });
41
+ }
42
+ async retry(sessionId, messageId, replyMessageId) {
43
+ return object(await this.client.call(`${PREFIX}/retry`, { sessionId, messageId, replyMessageId }, true));
44
+ }
39
45
  async viewDemo(sessionId, planningChoiceId) {
40
46
  return object(await this.client.call(`${PREFIX}/fakeGlowChat`, {
41
47
  sessionId,
@@ -1 +1 @@
1
- {"version":3,"file":"agent-command-api.js","sourceRoot":"","sources":["../../src/api/agent-command-api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-command-api.js","sourceRoot":"","sources":["../../src/api/agent-command-api.ts"],"names":[],"mappings":"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"}
@@ -5,15 +5,15 @@ export declare class AgentQueryApi {
5
5
  private readonly client;
6
6
  constructor(client: ApiClient);
7
7
  messageContext(sessionId: string, messageId: string): Promise<{
8
- sessionId: string;
9
- messageId: string;
10
8
  role: 1;
9
+ messageId: string;
10
+ sessionId: string;
11
11
  roundExtra: Record<string, unknown>;
12
12
  preMessageId?: string | null | undefined;
13
13
  }>;
14
14
  messageReferenceSource(sessionId: string, messageId: string): Promise<{
15
- messageId: string;
16
15
  role: number;
16
+ messageId: string;
17
17
  roundExtra: Record<string, unknown>;
18
18
  parsedContents: string[];
19
19
  }>;
@@ -21,7 +21,8 @@ export declare class AgentQueryApi {
21
21
  extra(sessionId: string): Promise<JsonObject>;
22
22
  snapshots(sessionId: string): Promise<unknown>;
23
23
  developmentSnapshots(sessionId: string, page: number): Promise<unknown>;
24
- parallel(sessionId: string, preReplyMessageId: string): Promise<JsonObject>;
24
+ parallel(sessionId: string, preReplyMessageId: string, withStartMessage?: boolean): Promise<JsonObject>;
25
+ designerFreeRemaining(sessionId: string): Promise<number>;
25
26
  attachments(sessionId: string, names?: Array<string>): Promise<Array<JsonObject>>;
26
27
  features(sessionId: string, replyMessageId?: string): Promise<Array<JsonObject>>;
27
28
  }
@@ -61,8 +61,19 @@ export class AgentQueryApi {
61
61
  pageSize: 50,
62
62
  });
63
63
  }
64
- async parallel(sessionId, preReplyMessageId) {
65
- return object(await this.client.call(`${PREFIX}/queryAllParallelInfos`, { sessionId, preReplyMessageId }));
64
+ async parallel(sessionId, preReplyMessageId, withStartMessage = false) {
65
+ return object(await this.client.call(`${PREFIX}/queryAllParallelInfos`, {
66
+ sessionId,
67
+ preReplyMessageId,
68
+ withStartMessage,
69
+ }));
70
+ }
71
+ async designerFreeRemaining(sessionId) {
72
+ const response = object(await this.client.call(`${PREFIX}/querySessionFreeQuota`, { sessionId }));
73
+ const item = list(response.items)
74
+ .map(object)
75
+ .find((item) => item.quotaKey === 'free_round:stage2_designer');
76
+ return typeof item?.remaining === 'number' ? Math.max(0, item.remaining) : 0;
66
77
  }
67
78
  async attachments(sessionId, names = []) {
68
79
  const response = await this.client.call(`${PREFIX}/querySessionAttachmentsExcludeInternalAndCompiled`, {
@@ -1 +1 @@
1
- {"version":3,"file":"agent-query-api.js","sourceRoot":"","sources":["../../src/api/agent-query-api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-query-api.js","sourceRoot":"","sources":["../../src/api/agent-query-api.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@ import { registerReview } from './review.js';
5
5
  import { registerState } from './state.js';
6
6
  import { registerWait } from './wait.js';
7
7
  import { registerStop } from './stop.js';
8
+ import { registerRetry } from './retry.js';
8
9
  import { registerStyle } from './style.js';
9
10
  import { registerDemo } from './demo.js';
10
11
  import { registerDevelop } from './develop.js';
@@ -20,6 +21,7 @@ export function registerChat(program, context) {
20
21
  registerState(chat, context);
21
22
  registerWait(chat, context);
22
23
  registerStop(chat, context);
24
+ registerRetry(chat, context);
23
25
  registerStyle(chat, context);
24
26
  registerDemo(chat, context);
25
27
  registerDevelop(chat, context);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/chat/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/C,MAAM,UAAU,YAAY,CAAC,OAAgB,EAAE,OAAuB;IACpE,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IACzD,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC9B,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC5B,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC5B,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC9B,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC7B,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC5B,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC5B,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC7B,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC5B,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC/B,mBAAmB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACnC,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC9B,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AACjC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/chat/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/C,MAAM,UAAU,YAAY,CAAC,OAAgB,EAAE,OAAuB;IACpE,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IACzD,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC9B,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC5B,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC5B,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC9B,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC7B,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC5B,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC5B,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC7B,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC7B,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC5B,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC/B,mBAAmB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACnC,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC9B,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AACjC,CAAC"}
@@ -0,0 +1,4 @@
1
+ /** 充值后按 Glow 的精确消息 ID 重试原任务。@author xiuyu.yi */
2
+ import type { Command } from 'commander';
3
+ import type { CommandContext } from '../shared.js';
4
+ export declare function registerRetry(chat: Command, context: CommandContext): void;
@@ -0,0 +1,24 @@
1
+ import { runtime, businessWrite, withWait, waitOptions } from '../shared.js';
2
+ import { object } from '../../contracts/value.js';
3
+ import { CliError } from '../../output/exit-codes.js';
4
+ import { retryableMainMessage } from '../../conversation/insufficient-credits.js';
5
+ export function registerRetry(chat, context) {
6
+ withWait(chat.command('retry <sessionId> <messageId>').description('充值或处理异常后重试原失败任务')).action(async (sessionId, messageId, _options, command) => {
7
+ const service = await runtime(context, command);
8
+ const validate = async () => {
9
+ if (retryableMainMessage(await service.load(sessionId)) !== messageId)
10
+ throw new CliError('STALE_INTERACTION', '该消息已不是当前失败任务,请重新查询状态,不重复重试', {
11
+ sessionId,
12
+ });
13
+ };
14
+ const response = await businessWrite(context, service, sessionId, async () => {
15
+ await validate();
16
+ await service.command.checkBalance(sessionId);
17
+ await validate();
18
+ return service.command.retry(sessionId, messageId);
19
+ });
20
+ context.output.log('正在重试刚才的任务。');
21
+ context.output.write(await service.accepted(object(response), sessionId, object(command.opts()).wait !== false, waitOptions(command)));
22
+ });
23
+ }
24
+ //# sourceMappingURL=retry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"retry.js","sourceRoot":"","sources":["../../../src/commands/chat/retry.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC7E,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AAElF,MAAM,UAAU,aAAa,CAAC,IAAa,EAAE,OAAuB;IAClE,QAAQ,CACN,IAAI,CAAC,OAAO,CAAC,+BAA+B,CAAC,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAC7E,CAAC,MAAM,CAAC,KAAK,EAAE,SAAiB,EAAE,SAAiB,EAAE,QAAiB,EAAE,OAAgB,EAAE,EAAE;QAC3F,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAChD,MAAM,QAAQ,GAAG,KAAK,IAAI,EAAE;YAC1B,IAAI,oBAAoB,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,KAAK,SAAS;gBACnE,MAAM,IAAI,QAAQ,CAAC,mBAAmB,EAAE,4BAA4B,EAAE;oBACpE,SAAS;iBACV,CAAC,CAAC;QACP,CAAC,CAAC;QACF,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,IAAI,EAAE;YAC3E,MAAM,QAAQ,EAAE,CAAC;YACjB,MAAM,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;YAC9C,MAAM,QAAQ,EAAE,CAAC;YACjB,OAAO,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QACrD,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QACjC,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,MAAM,OAAO,CAAC,QAAQ,CACpB,MAAM,CAAC,QAAQ,CAAC,EAChB,SAAS,EACT,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,KAAK,KAAK,EACrC,WAAW,CAAC,OAAO,CAAC,CACrB,CACF,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -1,19 +1,14 @@
1
1
  import { object, requiredText, text } from '../../contracts/value.js';
2
- import { CliError } from '../../output/exit-codes.js';
3
- import { runtime, positive, withWait, waitOptions, businessWrite } from '../shared.js';
2
+ import { runtime, withWait, waitOptions, businessWrite } from '../shared.js';
4
3
  import { latestStyleChoices, styleBatchState, styleBranchAnchor, } from '../../interactions/parsers/style-selection.js';
5
4
  export function registerStyle(chat, context) {
6
5
  const style = chat.command('style').description('管理创作风格');
7
6
  withWait(style
8
7
  .command('generate <sessionId>')
9
8
  .description('生成风格候选')
10
- .requiredOption('--content <text>', '风格需求')
11
- .option('--count <count>', '候选数量,1~4', positive, 2)).action(async (sessionId, _options, command) => {
9
+ .requiredOption('--content <text>', '风格需求')).action(async (sessionId, _options, command) => {
12
10
  const service = await runtime(context, command), options = object(command.opts());
13
- const count = Number(options.count);
14
- if (count > 4)
15
- throw new CliError('INVALID_ARGUMENT', '最多生成 4 个风格');
16
- const response = await businessWrite(context, service, sessionId, () => service.generateStyles(sessionId, requiredText(options.content, 'content'), count));
11
+ const response = await businessWrite(context, service, sessionId, () => service.generateStyles(sessionId, requiredText(options.content, 'content')));
17
12
  context.output.write(await service.accepted(object(response), sessionId, options.wait !== false, waitOptions(command)));
18
13
  });
19
14
  style
@@ -26,14 +21,23 @@ export function registerStyle(chat, context) {
26
21
  const taskProgress = await service.taskProgress.read(view, choices);
27
22
  taskProgress.changed = taskProgress.revision !== object(command.opts()).progressRevision;
28
23
  const result = service.withGuidance({
29
- state: choices.length ? styleBatchState(latestStyleChoices(choices)) : 'COMPLETED',
24
+ state: choices.length
25
+ ? styleBatchState(choices)
26
+ : anchor && view.session.pendingBranch?.preReplyMessageId === anchor
27
+ ? 'RUNNING'
28
+ : 'COMPLETED',
30
29
  sessionId,
31
30
  choices,
31
+ styleGeneration: {
32
+ choiceIds: latestStyleChoices(choices).map((choice) => choice.choiceId),
33
+ phase: choices.some((choice) => choice.index > 0) ? 'append' : 'initial',
34
+ },
32
35
  taskProgress,
33
36
  cursor: { branchAnchor: anchor },
34
37
  });
35
38
  context.output.write({
36
39
  state: result.state,
40
+ styleGeneration: result.styleGeneration,
37
41
  sessionId,
38
42
  choices,
39
43
  taskProgress,
@@ -42,6 +46,20 @@ export function registerStyle(chat, context) {
42
46
  nextActions: anchor === currentAnchor ? result.nextActions : [],
43
47
  });
44
48
  });
49
+ withWait(style
50
+ .command('append <sessionId>')
51
+ .description('再设计一版,每版预计消耗 50~100 算力值,按实际用量扣费')
52
+ .requiredOption('--anchor <preReplyMessageId>', '当前风格轮次,使用查询结果中的 branchAnchor')).action(async (sessionId, _options, command) => {
53
+ const options = object(command.opts());
54
+ const service = await runtime(context, command);
55
+ const response = await businessWrite(context, service, sessionId, () => service.appendStyle(sessionId, requiredText(options.anchor, 'anchor')));
56
+ context.output.write(await service.accepted(object(response), sessionId, options.wait !== false, waitOptions(command)));
57
+ });
58
+ withWait(style.command('retry <sessionId> <choiceId>').description('重试失败的原方案任务')).action(async (sessionId, choiceId, _options, command) => {
59
+ const service = await runtime(context, command);
60
+ const response = await businessWrite(context, service, sessionId, () => service.retryStyle(sessionId, choiceId));
61
+ context.output.write(await service.accepted(object(response), sessionId, object(command.opts()).wait !== false, waitOptions(command)));
62
+ });
45
63
  withWait(style.command('select <sessionId> <choiceId>').description('选择风格并展示开发功能清单')).action(async (sessionId, choiceId, _options, command) => {
46
64
  const service = await runtime(context, command);
47
65
  const response = await businessWrite(context, service, sessionId, () => service.selectStyle(sessionId, choiceId));
@@ -1 +1 @@
1
- {"version":3,"file":"style.js","sourceRoot":"","sources":["../../../src/commands/chat/style.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAEtD,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AACvF,OAAO,EACL,kBAAkB,EAClB,eAAe,EACf,iBAAiB,GAClB,MAAM,+CAA+C,CAAC;AAEvD,MAAM,UAAU,aAAa,CAAC,IAAa,EAAE,OAAuB;IAClE,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC1D,QAAQ,CACN,KAAK;SACF,OAAO,CAAC,sBAAsB,CAAC;SAC/B,WAAW,CAAC,QAAQ,CAAC;SACrB,cAAc,CAAC,kBAAkB,EAAE,MAAM,CAAC;SAC1C,MAAM,CAAC,iBAAiB,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC,CACtD,CAAC,MAAM,CAAC,KAAK,EAAE,SAAiB,EAAE,QAAiB,EAAE,OAAgB,EAAE,EAAE;QACxE,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,EAC7C,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QACnC,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACpC,IAAI,KAAK,GAAG,CAAC;YAAE,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,YAAY,CAAC,CAAC;QACpE,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,CACrE,OAAO,CAAC,cAAc,CAAC,SAAS,EAAE,YAAY,CAAC,OAAO,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE,KAAK,CAAC,CACnF,CAAC;QACF,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,MAAM,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,IAAI,KAAK,KAAK,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAClG,CAAC;IACJ,CAAC,CAAC,CAAC;IACH,KAAK;SACF,OAAO,CAAC,kBAAkB,CAAC;SAC3B,WAAW,CAAC,UAAU,CAAC;SACvB,MAAM,CAAC,8BAA8B,EAAE,QAAQ,CAAC;SAChD,MAAM,CAAC,gCAAgC,EAAE,cAAc,CAAC;SACxD,MAAM,CAAC,KAAK,EAAE,SAAiB,EAAE,QAAiB,EAAE,OAAgB,EAAE,EAAE;QACvE,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,EAC7C,IAAI,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,EACpC,aAAa,GAAG,iBAAiB,CAAC,IAAI,CAAC,EACvC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,aAAa,EAC7D,OAAO,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;QAC3D,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACpE,YAAY,CAAC,OAAO,GAAG,YAAY,CAAC,QAAQ,KAAK,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,gBAAgB,CAAC;QACzF,MAAM,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;YAClC,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW;YAClF,SAAS;YACT,OAAO;YACP,YAAY;YACZ,MAAM,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE;SACjC,CAAC,CAAC;QACH,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;YACnB,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,SAAS;YACT,OAAO;YACP,YAAY;YACZ,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,0BAA0B;YAC1B,WAAW,EAAE,MAAM,KAAK,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE;SAChE,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IACL,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,+BAA+B,CAAC,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC,CAAC,MAAM,CAC1F,KAAK,EAAE,SAAiB,EAAE,QAAgB,EAAE,QAAiB,EAAE,OAAgB,EAAE,EAAE;QACjF,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAChD,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,CACrE,OAAO,CAAC,WAAW,CAAC,SAAS,EAAE,QAAQ,CAAC,CACzC,CAAC;QACF,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,MAAM,OAAO,CAAC,QAAQ,CACpB,MAAM,CAAC,QAAQ,CAAC,EAChB,SAAS,EACT,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,KAAK,KAAK,EACrC,WAAW,CAAC,OAAO,CAAC,CACrB,CACF,CAAC;IACJ,CAAC,CACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"style.js","sourceRoot":"","sources":["../../../src/commands/chat/style.ts"],"names":[],"mappings":"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"}