@bryanhu/codexly 0.12.0 → 0.13.0
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.
- package/CHANGELOG.md +12 -0
- package/README.md +6 -4
- package/README.zh-CN.md +6 -4
- package/dist/{chunk-RGRRUTMD.js → chunk-G4BIMVEW.js} +67 -1
- package/dist/{chunk-7C6JMXNO.js → chunk-HHFZB7H6.js} +210 -17
- package/dist/{chunk-PBPNBQQH.js → chunk-OVQSIEIK.js} +1 -1
- package/dist/{chunk-LZVKMW5Y.js → chunk-TVRHN6RY.js} +165 -2
- package/dist/cli.js +49 -9
- package/dist/client/index.js +36 -2
- package/dist/protocol/index.js +1 -1
- package/dist/providers/codex/index.js +2 -2
- package/dist/server/index.js +4 -4
- package/dist/sqlite-state-worker.js +22 -5
- package/dist/web/.vite/manifest.json +184 -100
- package/dist/web/.vite/manifest.json.br +0 -0
- package/dist/web/.vite/manifest.json.gz +0 -0
- package/dist/web/assets/{button-group-C4BuwxSd.js → button-group-CaIXhcq-.js} +1 -1
- package/dist/web/assets/button-group-CaIXhcq-.js.br +0 -0
- package/dist/web/assets/button-group-CaIXhcq-.js.gz +0 -0
- package/dist/web/assets/context-menu-C6o4ShKC.js +1 -0
- package/dist/web/assets/context-menu-C6o4ShKC.js.br +0 -0
- package/dist/web/assets/context-menu-C6o4ShKC.js.gz +0 -0
- package/dist/web/assets/dist-Czw-hil0.js +1 -0
- package/dist/web/assets/dist-Czw-hil0.js.br +0 -0
- package/dist/web/assets/dist-Czw-hil0.js.gz +0 -0
- package/dist/web/assets/file-review-dialog-Cd_FWDJj.js +2 -0
- package/dist/web/assets/file-review-dialog-Cd_FWDJj.js.br +0 -0
- package/dist/web/assets/file-review-dialog-Cd_FWDJj.js.gz +0 -0
- package/dist/web/assets/git-history-panel-CkQhJ-Tz.js +2 -0
- package/dist/web/assets/git-history-panel-CkQhJ-Tz.js.br +0 -0
- package/dist/web/assets/git-history-panel-CkQhJ-Tz.js.gz +0 -0
- package/dist/web/assets/global-settings-dialog-B9ACq0CT.js +1 -0
- package/dist/web/assets/global-settings-dialog-B9ACq0CT.js.br +0 -0
- package/dist/web/assets/global-settings-dialog-B9ACq0CT.js.gz +0 -0
- package/dist/web/assets/index-CergXz2m.js +4 -0
- package/dist/web/assets/index-CergXz2m.js.br +0 -0
- package/dist/web/assets/index-CergXz2m.js.gz +0 -0
- package/dist/web/assets/index-jg-dNJI1.css +2 -0
- package/dist/web/assets/index-jg-dNJI1.css.br +0 -0
- package/dist/web/assets/index-jg-dNJI1.css.gz +0 -0
- package/dist/web/assets/info-whxTXvIJ.js +1 -0
- package/dist/web/assets/info-whxTXvIJ.js.br +0 -0
- package/dist/web/assets/info-whxTXvIJ.js.gz +0 -0
- package/dist/web/assets/initial-deps-CQxWMuPh.js +1 -0
- package/dist/web/assets/initial-deps-CQxWMuPh.js.br +0 -0
- package/dist/web/assets/initial-deps-CQxWMuPh.js.gz +0 -0
- package/dist/web/assets/initial-deps-Ds-edw-P.js +1 -0
- package/dist/web/assets/initial-deps-Ds-edw-P.js.br +0 -0
- package/dist/web/assets/initial-deps-Ds-edw-P.js.gz +0 -0
- package/dist/web/assets/installed-skills-pane-BmjTd0Qn.js +1 -0
- package/dist/web/assets/installed-skills-pane-BmjTd0Qn.js.br +0 -0
- package/dist/web/assets/installed-skills-pane-BmjTd0Qn.js.gz +0 -0
- package/dist/web/assets/{lazy-message-response-SxI8Oz6v.js → lazy-message-response-Cnc-bbSf.js} +2 -2
- package/dist/web/assets/lazy-message-response-Cnc-bbSf.js.br +0 -0
- package/dist/web/assets/lazy-message-response-Cnc-bbSf.js.gz +0 -0
- package/dist/web/assets/mcp-management-pane-CQPXfAO3.js +1 -0
- package/dist/web/assets/mcp-management-pane-CQPXfAO3.js.br +0 -0
- package/dist/web/assets/mcp-management-pane-CQPXfAO3.js.gz +0 -0
- package/dist/web/assets/{message-response-CTSQq8Ae.js → message-response-CamC0ebm.js} +1 -1
- package/dist/web/assets/message-response-CamC0ebm.js.br +0 -0
- package/dist/web/assets/message-response-CamC0ebm.js.gz +0 -0
- package/dist/web/assets/official-plugins-pane-BCxHJLaj.css +1 -0
- package/dist/web/assets/official-plugins-pane-BCxHJLaj.css.br +0 -0
- package/dist/web/assets/official-plugins-pane-BCxHJLaj.css.gz +0 -0
- package/dist/web/assets/official-plugins-pane-BqGBX0cD.js +1 -0
- package/dist/web/assets/official-plugins-pane-BqGBX0cD.js.br +0 -0
- package/dist/web/assets/official-plugins-pane-BqGBX0cD.js.gz +0 -0
- package/dist/web/assets/{project-file-popup-page-DX-AlvxF.js → project-file-popup-page-DCct78Pu.js} +1 -1
- package/dist/web/assets/project-file-popup-page-DCct78Pu.js.br +0 -0
- package/dist/web/assets/project-file-popup-page-DCct78Pu.js.gz +0 -0
- package/dist/web/assets/{project-source-panel-i4xpffAa.js → project-source-panel-BC6YVLSp.js} +2 -2
- package/dist/web/assets/project-source-panel-BC6YVLSp.js.br +0 -0
- package/dist/web/assets/project-source-panel-BC6YVLSp.js.gz +0 -0
- package/dist/web/assets/{prompt-input-CL1AA6_U.js → prompt-input-FNZNBIXc.js} +1 -1
- package/dist/web/assets/prompt-input-FNZNBIXc.js.br +0 -0
- package/dist/web/assets/prompt-input-FNZNBIXc.js.gz +0 -0
- package/dist/web/assets/{prompt-input-controls-Qsp2rk3i.js → prompt-input-controls-BTOpD8Y-.js} +1 -1
- package/dist/web/assets/prompt-input-controls-BTOpD8Y-.js.br +0 -0
- package/dist/web/assets/prompt-input-controls-BTOpD8Y-.js.gz +0 -0
- package/dist/web/assets/scheduled-task-date-time-picker-CL9Xb-R5.js +1 -0
- package/dist/web/assets/scheduled-task-date-time-picker-CL9Xb-R5.js.br +0 -0
- package/dist/web/assets/scheduled-task-date-time-picker-CL9Xb-R5.js.gz +0 -0
- package/dist/web/assets/{scheduled-task-floating-ui~scheduled-task-date-time-picker-BQ-Lfxrf.js → scheduled-task-floating-ui~scheduled-task-date-time-picker-BischM2-.js} +1 -1
- package/dist/web/assets/scheduled-task-floating-ui~scheduled-task-date-time-picker-BischM2-.js.br +0 -0
- package/dist/web/assets/scheduled-task-floating-ui~scheduled-task-date-time-picker-BischM2-.js.gz +0 -0
- package/dist/web/assets/scheduled-task-schedule-DfXHCkgb.js +1 -0
- package/dist/web/assets/scheduled-task-schedule-DfXHCkgb.js.br +0 -0
- package/dist/web/assets/scheduled-task-schedule-DfXHCkgb.js.gz +0 -0
- package/dist/web/assets/scheduled-tasks-container-Bn6tqtCc.js +2 -0
- package/dist/web/assets/scheduled-tasks-container-Bn6tqtCc.js.br +0 -0
- package/dist/web/assets/scheduled-tasks-container-Bn6tqtCc.js.gz +0 -0
- package/dist/web/assets/sheet-CJD6cMoi.js +1 -0
- package/dist/web/assets/sheet-CJD6cMoi.js.br +0 -0
- package/dist/web/assets/sheet-CJD6cMoi.js.gz +0 -0
- package/dist/web/assets/skills-market-container-B8Mss3fh.js +2 -0
- package/dist/web/assets/skills-market-container-B8Mss3fh.js.br +0 -0
- package/dist/web/assets/skills-market-container-B8Mss3fh.js.gz +0 -0
- package/dist/web/assets/skills-market-container-C8okZy75.css +1 -0
- package/dist/web/assets/skills-market-container-C8okZy75.css.br +0 -0
- package/dist/web/assets/skills-market-container-C8okZy75.css.gz +0 -0
- package/dist/web/assets/third-party-marketplace-pane-BsSxaqQR.js +1 -0
- package/dist/web/assets/third-party-marketplace-pane-BsSxaqQR.js.br +0 -0
- package/dist/web/assets/third-party-marketplace-pane-BsSxaqQR.js.gz +0 -0
- package/dist/web/assets/workbench-composer-Co9mAWP_.js +10 -0
- package/dist/web/assets/workbench-composer-Co9mAWP_.js.br +0 -0
- package/dist/web/assets/workbench-composer-Co9mAWP_.js.gz +0 -0
- package/dist/web/assets/workbench-inspector-changes-DcJkQFAH.js +2 -0
- package/dist/web/assets/workbench-inspector-changes-DcJkQFAH.js.br +0 -0
- package/dist/web/assets/workbench-inspector-changes-DcJkQFAH.js.gz +0 -0
- package/dist/web/assets/workbench-pet-canvas-BR5AhUVL.js +1 -0
- package/dist/web/assets/workbench-pet-canvas-BR5AhUVL.js.br +0 -0
- package/dist/web/assets/workbench-pet-canvas-BR5AhUVL.js.gz +0 -0
- package/dist/web/assets/workbench-shell-5F-GWLMO.js +8 -0
- package/dist/web/assets/workbench-shell-5F-GWLMO.js.br +0 -0
- package/dist/web/assets/workbench-shell-5F-GWLMO.js.gz +0 -0
- package/dist/web/index.html +5 -5
- package/dist/web/index.html.br +0 -0
- package/dist/web/index.html.gz +0 -0
- package/package.json +1 -1
- package/dist/web/assets/button-group-C4BuwxSd.js.br +0 -0
- package/dist/web/assets/button-group-C4BuwxSd.js.gz +0 -0
- package/dist/web/assets/context-menu-DBdIkdO8.js +0 -1
- package/dist/web/assets/context-menu-DBdIkdO8.js.br +0 -0
- package/dist/web/assets/context-menu-DBdIkdO8.js.gz +0 -0
- package/dist/web/assets/dist-B5i0uBCy.js +0 -1
- package/dist/web/assets/dist-B5i0uBCy.js.br +0 -0
- package/dist/web/assets/dist-B5i0uBCy.js.gz +0 -0
- package/dist/web/assets/file-review-dialog-CfW8qcnH.js +0 -2
- package/dist/web/assets/file-review-dialog-CfW8qcnH.js.br +0 -0
- package/dist/web/assets/file-review-dialog-CfW8qcnH.js.gz +0 -0
- package/dist/web/assets/git-history-panel-DDCwLZ_v.js +0 -2
- package/dist/web/assets/git-history-panel-DDCwLZ_v.js.br +0 -0
- package/dist/web/assets/git-history-panel-DDCwLZ_v.js.gz +0 -0
- package/dist/web/assets/global-settings-dialog-Cw-2IvEc.js +0 -1
- package/dist/web/assets/global-settings-dialog-Cw-2IvEc.js.br +0 -0
- package/dist/web/assets/global-settings-dialog-Cw-2IvEc.js.gz +0 -0
- package/dist/web/assets/index-DZEhkOZz.js +0 -4
- package/dist/web/assets/index-DZEhkOZz.js.br +0 -0
- package/dist/web/assets/index-DZEhkOZz.js.gz +0 -0
- package/dist/web/assets/index-mb9dY6_F.css +0 -2
- package/dist/web/assets/index-mb9dY6_F.css.br +0 -0
- package/dist/web/assets/index-mb9dY6_F.css.gz +0 -0
- package/dist/web/assets/initial-deps-Ccn2HMTB.js +0 -1
- package/dist/web/assets/initial-deps-Ccn2HMTB.js.br +0 -0
- package/dist/web/assets/initial-deps-Ccn2HMTB.js.gz +0 -0
- package/dist/web/assets/initial-deps-D1tR2tqv.js +0 -1
- package/dist/web/assets/initial-deps-D1tR2tqv.js.br +0 -0
- package/dist/web/assets/initial-deps-D1tR2tqv.js.gz +0 -0
- package/dist/web/assets/lazy-message-response-SxI8Oz6v.js.br +0 -0
- package/dist/web/assets/lazy-message-response-SxI8Oz6v.js.gz +0 -0
- package/dist/web/assets/message-response-CTSQq8Ae.js.br +0 -0
- package/dist/web/assets/message-response-CTSQq8Ae.js.gz +0 -0
- package/dist/web/assets/project-file-popup-page-DX-AlvxF.js.br +0 -0
- package/dist/web/assets/project-file-popup-page-DX-AlvxF.js.gz +0 -0
- package/dist/web/assets/project-source-panel-i4xpffAa.js.br +0 -0
- package/dist/web/assets/project-source-panel-i4xpffAa.js.gz +0 -0
- package/dist/web/assets/prompt-input-CL1AA6_U.js.br +0 -0
- package/dist/web/assets/prompt-input-CL1AA6_U.js.gz +0 -0
- package/dist/web/assets/prompt-input-controls-Qsp2rk3i.js.br +0 -0
- package/dist/web/assets/prompt-input-controls-Qsp2rk3i.js.gz +0 -0
- package/dist/web/assets/scheduled-task-date-time-picker-B2_XJQa7.js +0 -1
- package/dist/web/assets/scheduled-task-date-time-picker-B2_XJQa7.js.br +0 -0
- package/dist/web/assets/scheduled-task-date-time-picker-B2_XJQa7.js.gz +0 -0
- package/dist/web/assets/scheduled-task-floating-ui~scheduled-task-date-time-picker-BQ-Lfxrf.js.br +0 -0
- package/dist/web/assets/scheduled-task-floating-ui~scheduled-task-date-time-picker-BQ-Lfxrf.js.gz +0 -0
- package/dist/web/assets/scheduled-task-schedule-DVyf2brf.js +0 -1
- package/dist/web/assets/scheduled-task-schedule-DVyf2brf.js.br +0 -0
- package/dist/web/assets/scheduled-task-schedule-DVyf2brf.js.gz +0 -0
- package/dist/web/assets/scheduled-tasks-container-DWk8eU-x.js +0 -2
- package/dist/web/assets/scheduled-tasks-container-DWk8eU-x.js.br +0 -0
- package/dist/web/assets/scheduled-tasks-container-DWk8eU-x.js.gz +0 -0
- package/dist/web/assets/skills-market-container-C9djEXQt.css +0 -1
- package/dist/web/assets/skills-market-container-C9djEXQt.css.br +0 -0
- package/dist/web/assets/skills-market-container-C9djEXQt.css.gz +0 -0
- package/dist/web/assets/skills-market-container-DGLB9mLM.js +0 -1
- package/dist/web/assets/skills-market-container-DGLB9mLM.js.br +0 -0
- package/dist/web/assets/skills-market-container-DGLB9mLM.js.gz +0 -0
- package/dist/web/assets/workbench-composer-BD9Ki4HB.js +0 -10
- package/dist/web/assets/workbench-composer-BD9Ki4HB.js.br +0 -0
- package/dist/web/assets/workbench-composer-BD9Ki4HB.js.gz +0 -0
- package/dist/web/assets/workbench-inspector-changes-DAh6jOqk.js +0 -2
- package/dist/web/assets/workbench-inspector-changes-DAh6jOqk.js.br +0 -0
- package/dist/web/assets/workbench-inspector-changes-DAh6jOqk.js.gz +0 -0
- package/dist/web/assets/workbench-pet-canvas-BDehkHlv.js +0 -1
- package/dist/web/assets/workbench-pet-canvas-BDehkHlv.js.br +0 -0
- package/dist/web/assets/workbench-pet-canvas-BDehkHlv.js.gz +0 -0
- package/dist/web/assets/workbench-shell-3eEtoMzo.js +0 -8
- package/dist/web/assets/workbench-shell-3eEtoMzo.js.br +0 -0
- package/dist/web/assets/workbench-shell-3eEtoMzo.js.gz +0 -0
- /package/dist/web/assets/{scheduled-task-floating-ui~index~workbench-shell~skills-market-container~workbench-inspecto~y5cwo2qi-DAfditVv.js → scheduled-task-floating-ui~index~workbench-shell~workbench-inspector-changes~project-file-p~olri0nvu-DAfditVv.js} +0 -0
- /package/dist/web/assets/{scheduled-task-floating-ui~index~workbench-shell~skills-market-container~workbench-inspecto~y5cwo2qi-DAfditVv.js.br → scheduled-task-floating-ui~index~workbench-shell~workbench-inspector-changes~project-file-p~olri0nvu-DAfditVv.js.br} +0 -0
- /package/dist/web/assets/{scheduled-task-floating-ui~index~workbench-shell~skills-market-container~workbench-inspecto~y5cwo2qi-DAfditVv.js.gz → scheduled-task-floating-ui~index~workbench-shell~workbench-inspector-changes~project-file-p~olri0nvu-DAfditVv.js.gz} +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,18 @@
|
|
|
4
4
|
|
|
5
5
|
## [Unreleased]
|
|
6
6
|
|
|
7
|
+
## [0.13.0] - 2026-09-07
|
|
8
|
+
|
|
9
|
+
### 新增
|
|
10
|
+
|
|
11
|
+
- 重构扩展中心,支持统一管理已安装 Skills、官方 Plugins、MCP Servers 和 ClawHub 第三方市场。
|
|
12
|
+
- 完善定时任务调度持久化与队列恢复,支持应用重启后继续执行待处理任务。
|
|
13
|
+
- 为应用更新添加 npm 镜像源回退,提高版本检查、下载与安装的可用性。
|
|
14
|
+
|
|
15
|
+
### 优化
|
|
16
|
+
|
|
17
|
+
- 优化工作台侧栏的项目搜索与导航布局,提升项目切换和常用入口的可发现性。
|
|
18
|
+
|
|
7
19
|
## [0.12.0] - 2026-09-05
|
|
8
20
|
|
|
9
21
|
### 新增
|
package/README.md
CHANGED
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
- Track active work on a task board, maintain project to-dos, and schedule persistent one-time or recurring tasks
|
|
42
42
|
- Attach files and images, reference project files with `@`, answer MCP input requests, and ask asynchronous questions while a task runs
|
|
43
43
|
- Choose the model, reasoning effort, Fast mode, approval behavior, and file access level for each task
|
|
44
|
-
-
|
|
44
|
+
- Manage installed Skills, official Plugins, MCP servers, and compatible third-party Skills from ClawHub in one extension center
|
|
45
45
|
- Organize ordered multi-root projects, archive project or temporary tasks, and permanently delete tasks when needed
|
|
46
46
|
- Inspect, preview, rename, and delete project files; review diffs; manage branches and worktrees; and commit or push changes
|
|
47
47
|
- Fork a task from an AI response and continue it in a new Git worktree
|
|
@@ -71,10 +71,12 @@ On first launch, sign in with ChatGPT or configure an OpenAI-compatible service
|
|
|
71
71
|
For regular use, install Codexly globally:
|
|
72
72
|
|
|
73
73
|
```bash
|
|
74
|
-
npm install --global @bryanhu/codexly
|
|
74
|
+
npm install --global @bryanhu/codexly@latest --registry=https://registry.npmmirror.com --prefer-offline || npm install --global @bryanhu/codexly@latest --registry=https://registry.npmjs.org --prefer-offline
|
|
75
75
|
codexly
|
|
76
76
|
```
|
|
77
77
|
|
|
78
|
+
The installation command tries the China mirror first, falls back to the official registry on failure, and reuses the npm cache. `||` works in Bash, Zsh, cmd, and PowerShell 7+. In Windows PowerShell 5.1, run the command to the right of `||` separately if the first command fails.
|
|
79
|
+
|
|
78
80
|
## Usage
|
|
79
81
|
|
|
80
82
|
Select **New task** for work that does not need a project. For repository work, add one or more host directories as ordered project roots, create a task, and submit your request with any required files, images, project references, or Skills. Archived tasks can be restored or permanently deleted from the project task list.
|
|
@@ -104,10 +106,10 @@ Quote passwords containing shell-special characters. LAN mode uses unencrypted H
|
|
|
104
106
|
|
|
105
107
|
Run `codexly doctor` when startup, Codex, or local data checks fail. Run `codexly --help` for the current command and option reference.
|
|
106
108
|
|
|
107
|
-
Interactive startup and **Settings > About** check for new releases. A global installation can also be updated with:
|
|
109
|
+
Interactive startup and **Settings > About** check for new releases. Built-in updates try the China mirror first for version checks, package downloads, and dependency installation, falling back to the official registry on failure and reusing your npm cache. New releases may appear later while the mirror synchronizes. A global installation can also be updated with:
|
|
108
110
|
|
|
109
111
|
```bash
|
|
110
|
-
npm install --global @bryanhu/codexly@latest
|
|
112
|
+
npm install --global @bryanhu/codexly@latest --registry=https://registry.npmmirror.com --prefer-offline || npm install --global @bryanhu/codexly@latest --registry=https://registry.npmjs.org --prefer-offline
|
|
111
113
|
```
|
|
112
114
|
|
|
113
115
|
## Help
|
package/README.zh-CN.md
CHANGED
|
@@ -11,7 +11,7 @@ Codexly 是一个在浏览器中使用 Codex 的本地 AI 编程工作台。它
|
|
|
11
11
|
- 使用任务看板跟踪进行中的工作、维护项目待办,并创建持久化的一次性或周期定时任务
|
|
12
12
|
- 添加文件与图片、使用 `@` 引用项目文件、回答 MCP 补充输入请求,并在任务执行期间异步提问
|
|
13
13
|
- 为每个任务选择模型、思考量、快速模式、审批方式和文件访问范围
|
|
14
|
-
-
|
|
14
|
+
- 在扩展中心统一管理已安装 Skills、官方 Plugins、MCP Servers,以及来自 ClawHub 的兼容第三方 Skills
|
|
15
15
|
- 组织有序的多根项目、归档项目或临时任务,并按需永久删除任务
|
|
16
16
|
- 查看、预览、重命名和删除项目文件,审查差异,管理分支与 worktree,并提交或推送变更
|
|
17
17
|
- 从 AI 回复处分叉任务,在新的 Git worktree 中继续工作
|
|
@@ -41,10 +41,12 @@ Codexly 会自动打开浏览器。若未打开,请访问终端输出的地址
|
|
|
41
41
|
经常使用时可以全局安装:
|
|
42
42
|
|
|
43
43
|
```bash
|
|
44
|
-
npm install --global @bryanhu/codexly
|
|
44
|
+
npm install --global @bryanhu/codexly@latest --registry=https://registry.npmmirror.com --prefer-offline || npm install --global @bryanhu/codexly@latest --registry=https://registry.npmjs.org --prefer-offline
|
|
45
45
|
codexly
|
|
46
46
|
```
|
|
47
47
|
|
|
48
|
+
安装命令优先使用国内镜像,失败后回退官方源,并复用 npm 缓存。`||` 适用于 Bash、Zsh、cmd 和 PowerShell 7+;Windows PowerShell 5.1 请在第一条命令失败后单独执行 `||` 右侧的命令。
|
|
49
|
+
|
|
48
50
|
## 使用方式
|
|
49
51
|
|
|
50
52
|
不依赖项目时,直接选择“新建任务”。处理仓库时,先添加一个或多个运行端目录作为有序的项目根,再创建任务,并按需附加文件、图片、项目引用或 Skills 后提交需求。归档的任务可以从项目任务列表中恢复或永久删除。
|
|
@@ -74,10 +76,10 @@ codexly start --lan
|
|
|
74
76
|
|
|
75
77
|
启动、Codex 或本地数据检查失败时运行 `codexly doctor`。使用 `codexly --help` 查看当前命令和选项。
|
|
76
78
|
|
|
77
|
-
交互式启动和“设置 >
|
|
79
|
+
交互式启动和“设置 > 关于”会检查新版本。内置更新的版本查询、包下载和依赖安装优先使用国内镜像,失败后回退官方源;下载和安装复用用户的 npm 缓存。镜像同步期间可能稍晚显示新版本。全局安装也可以通过以下命令更新:
|
|
78
80
|
|
|
79
81
|
```bash
|
|
80
|
-
npm install --global @bryanhu/codexly@latest
|
|
82
|
+
npm install --global @bryanhu/codexly@latest --registry=https://registry.npmmirror.com --prefer-offline || npm install --global @bryanhu/codexly@latest --registry=https://registry.npmjs.org --prefer-offline
|
|
81
83
|
```
|
|
82
84
|
|
|
83
85
|
## 获取帮助
|
|
@@ -2958,6 +2958,72 @@ var OpenSkillDirectoryResponseSchema = Type.Object(
|
|
|
2958
2958
|
{ status: Type.Literal("opened") },
|
|
2959
2959
|
{ additionalProperties: false }
|
|
2960
2960
|
);
|
|
2961
|
+
var OfficialPluginAuthPolicySchema = Type.Union([
|
|
2962
|
+
Type.Literal("ON_INSTALL"),
|
|
2963
|
+
Type.Literal("ON_USE")
|
|
2964
|
+
]);
|
|
2965
|
+
var OfficialPluginSummarySchema = Type.Object(
|
|
2966
|
+
{
|
|
2967
|
+
authPolicy: OfficialPluginAuthPolicySchema,
|
|
2968
|
+
availability: Type.Union([Type.Literal("AVAILABLE"), Type.Literal("DISABLED_BY_ADMIN")]),
|
|
2969
|
+
description: Type.String(),
|
|
2970
|
+
developerName: Type.Union([Type.String(), Type.Null()]),
|
|
2971
|
+
disabledReason: Type.Union([Type.String(), Type.Null()]),
|
|
2972
|
+
displayName: Type.String({ minLength: 1 }),
|
|
2973
|
+
enabled: Type.Boolean(),
|
|
2974
|
+
id: Type.String({ minLength: 1 }),
|
|
2975
|
+
installPolicy: Type.Union([
|
|
2976
|
+
Type.Literal("NOT_AVAILABLE"),
|
|
2977
|
+
Type.Literal("AVAILABLE"),
|
|
2978
|
+
Type.Literal("INSTALLED_BY_DEFAULT")
|
|
2979
|
+
]),
|
|
2980
|
+
installed: Type.Boolean(),
|
|
2981
|
+
localVersion: Type.Union([Type.String(), Type.Null()]),
|
|
2982
|
+
logoUrl: Type.Union([Type.String(), Type.Null()]),
|
|
2983
|
+
marketplaceName: Type.String({ minLength: 1 }),
|
|
2984
|
+
marketplacePath: Type.Union([Type.String(), Type.Null()]),
|
|
2985
|
+
name: Type.String({ minLength: 1 }),
|
|
2986
|
+
pluginName: Type.String({ minLength: 1 }),
|
|
2987
|
+
version: Type.Union([Type.String(), Type.Null()])
|
|
2988
|
+
},
|
|
2989
|
+
{ additionalProperties: false }
|
|
2990
|
+
);
|
|
2991
|
+
var OfficialPluginPageSchema = Type.Object(
|
|
2992
|
+
{ data: Type.Array(OfficialPluginSummarySchema) },
|
|
2993
|
+
{ additionalProperties: false }
|
|
2994
|
+
);
|
|
2995
|
+
var OfficialPluginAssetSchema = Type.Object(
|
|
2996
|
+
{ description: Type.String(), name: Type.String({ minLength: 1 }) },
|
|
2997
|
+
{ additionalProperties: false }
|
|
2998
|
+
);
|
|
2999
|
+
var OfficialPluginAppSchema = Type.Object(
|
|
3000
|
+
{
|
|
3001
|
+
description: Type.String(),
|
|
3002
|
+
id: Type.String({ minLength: 1 }),
|
|
3003
|
+
installUrl: Type.Union([Type.String(), Type.Null()]),
|
|
3004
|
+
name: Type.String({ minLength: 1 })
|
|
3005
|
+
},
|
|
3006
|
+
{ additionalProperties: false }
|
|
3007
|
+
);
|
|
3008
|
+
var OfficialPluginDetailSchema = Type.Object(
|
|
3009
|
+
{
|
|
3010
|
+
...OfficialPluginSummarySchema.properties,
|
|
3011
|
+
apps: Type.Array(OfficialPluginAppSchema),
|
|
3012
|
+
hooks: Type.Array(Type.String()),
|
|
3013
|
+
mcpServers: Type.Array(Type.String()),
|
|
3014
|
+
skills: Type.Array(OfficialPluginAssetSchema),
|
|
3015
|
+
websiteUrl: Type.Union([Type.String(), Type.Null()])
|
|
3016
|
+
},
|
|
3017
|
+
{ additionalProperties: false }
|
|
3018
|
+
);
|
|
3019
|
+
var OfficialPluginInstallResultSchema = Type.Object(
|
|
3020
|
+
{
|
|
3021
|
+
appsNeedingAuth: Type.Array(OfficialPluginAppSchema),
|
|
3022
|
+
authPolicy: OfficialPluginAuthPolicySchema
|
|
3023
|
+
},
|
|
3024
|
+
{ additionalProperties: false }
|
|
3025
|
+
);
|
|
3026
|
+
var OfficialPluginUninstallResultSchema = Type.Object({}, { additionalProperties: false });
|
|
2961
3027
|
|
|
2962
3028
|
// packages/protocol/src/project-root.ts
|
|
2963
3029
|
var ProjectRootPathSchema = Type.String({
|
|
@@ -5625,4 +5691,4 @@ var EventStreamMetricsResponseSchema = Type.Object(
|
|
|
5625
5691
|
{ additionalProperties: false }
|
|
5626
5692
|
);
|
|
5627
5693
|
|
|
5628
|
-
export { AGENT_FILE_ACCEPT, AGENT_FILE_EXTENSIONS, AGENT_FILE_MEDIA_TYPES, AGENT_IMAGE_ACCEPT, AccessModeSchema, AccessStatusResponseSchema, AddAgentQueuedSubmissionRequestSchema, AddAgentQueuedSubmissionResponseSchema, AddProjectRequestSchema, AddProjectResponseSchema, AgentActivityItemSchema, AgentApprovalReviewActionSchema, AgentApprovalReviewItemSchema, AgentApprovalReviewStatusSchema, AgentApprovalsReviewerSchema, AgentAttachmentKindSchema, AgentAttachmentMediaTypeSchema, AgentAttachmentSchema, AgentAttachmentUploadResponseSchema, AgentBackgroundTerminalPageSchema, AgentBackgroundTerminalSchema, AgentCapabilitiesSchema, AgentCommandItemSchema, AgentCommandOutputOmissionSchema, AgentContextUsageSchema, AgentEventSchema, AgentFileChangeItemSchema, AgentFileChangeSchema, AgentGlobalApprovalPolicySchema, AgentGlobalSettingsResponseSchema, AgentGlobalSettingsSchema, AgentGoalSchema, AgentGoalStatusSchema, AgentGranularApprovalConfigSchema, AgentGranularApprovalPolicySchema, AgentImageMediaTypeSchema, AgentItemSchema, AgentItemStatusSchema, AgentMcpServerConnectionStatusSchema, AgentMcpServerFailureReasonSchema, AgentMcpServerPageSchema, AgentMcpServerSchema, AgentMcpServerStartupStatusSchema, AgentMessageAttachmentSchema, AgentMessageItemSchema, AgentMessagePhaseSchema, AgentMessageSkillSchema, AgentModelPageSchema, AgentModelSchema, AgentMutationErrorCodeSchema, AgentMutationErrorSchema, AgentPlanItemSchema, AgentPlanSchema, AgentPlanStepSchema, AgentPlanStepStatusSchema, AgentProjectDefaultsResponseSchema, AgentProjectDefaultsSchema, AgentPromptInputSchema, AgentProviderAccountSchema, AgentProviderConnectionMutationResponseSchema, AgentProviderConnectionRecordSchema, AgentProviderConnectionStateSchema, AgentProviderConnectionStatusSchema, AgentProviderModeSchema, AgentProviderPendingLoginSchema, AgentQueuedSubmissionPageSchema, AgentQueuedSubmissionSchema, AgentQueuedSubmissionStatusSchema, AgentReasoningEffortOptionSchema, AgentReasoningItemSchema, AgentReviewItemSchema, AgentReviewTargetSchema, AgentSandboxModeSchema, AgentSkillPageSchema, AgentSkillReferenceSchema, AgentSkillSchema, AgentSkillScopeSchema, AgentTaskPageSchema, AgentTaskSchema, AgentTaskSettingsResponseSchema, AgentTaskSettingsSchema, AgentTaskSnapshotResponseSchema, AgentTaskSnapshotSchema, AgentToolItemSchema, AgentTurnApprovalPolicySchema, AgentTurnOptionsSchema, AgentTurnSchema, AgentTurnStatusSchema, AppInfoResponseSchema, AppUpdateProgressPhaseSchema, AppUpdateProgressResponseSchema, AppUpdateProgressSchema, AppUpdateStatusSchema, ArchiveAgentTaskRequestSchema, ArchiveAgentTaskResponseSchema, CancelProviderLoginRequestSchema, ClawhubSkillDetailSchema, ClawhubSkillPageSchema, ClawhubSkillSummarySchema, ClawhubSkillVersionSchema, ClearAgentGoalResponseSchema, CommandApprovalPendingRequestSchema, CommandOutputDeltaEventSchema, CommitProjectChangesRequestSchema, CommitProjectChangesResponseSchema, CompactAgentTaskRequestSchema, CompactAgentTaskResponseSchema, ConfigureCustomProviderRequestSchema, ConfigureCustomProviderResponseSchema, ConfiguredMcpServerPageSchema, ConfiguredMcpServerSchema, ConnectionReadySchema, CreateProjectBranchRequestSchema, CreateProjectWorktreeRequestSchema, DEFAULT_AGENT_GRANULAR_APPROVAL_POLICY, DEFAULT_COMMIT_MESSAGE_MODEL, DeleteAgentQueuedSubmissionResponseSchema, DeleteAgentTaskRequestSchema, DeleteAgentTaskResponseSchema, DeleteProjectFileRequestSchema, DeleteProjectFileResponseSchema, DeleteScheduledTaskResponseSchema, EventBatchSchema, EventCheckpointSchema, EventStreamMessageSchema, EventStreamMetricsResponseSchema, EventStreamProjectMetricsSchema, FileChangeApprovalPendingRequestSchema, FileChangeUpdatedEventSchema, FilesystemRootSchema, ForkAgentTaskRequestSchema, ForkAgentTaskResponseSchema, GenerateCommitMessageRequestSchema, GenerateCommitMessageResponseSchema, GoalClearedEventSchema, GoalUpdatedEventSchema, HasPropertyKey2 as HasPropertyKey, HealthResponseSchema, HostFileEntrySchema, HostFileKindSchema, HostFileListingSchema, HostFileQuerySchema, ImportHostAttachmentRequestSchema, IndexFromPropertyKeys, InstallAppUpdateRequestSchema, InstallAppUpdateResponseSchema, InstalledSkillPageSchema, InstalledSkillSchema, InterruptAgentTurnRequestSchema, InterruptAgentTurnResponseSchema, IsArray2 as IsArray, IsAsyncIterator2 as IsAsyncIterator, IsBigInt2 as IsBigInt, IsBoolean2 as IsBoolean, IsDate2 as IsDate, IsFunction2 as IsFunction, IsInteger, IsIterator2 as IsIterator, IsKind, IsMap, IsNull2 as IsNull, IsNumber2 as IsNumber, IsObject2 as IsObject, IsPromise, IsSchema, IsSet, IsStandardObject, IsString2 as IsString, IsSymbol2 as IsSymbol, IsTemplateLiteralFinite, IsTransform, IsTypedArray, IsUint8Array2 as IsUint8Array, IsUndefined2 as IsUndefined, IsUndefined3 as IsUndefined2, IsValueType, ItemCompletedEventSchema, ItemStartedEventSchema, KeyOfPattern, KeyOfPropertyKeys, Kind, Literal, LogoutAccessResponseSchema, MAX_AGENT_ATTACHMENT_BYTES, MAX_AGENT_FILE_BYTES, MAX_AGENT_FILE_TOTAL_BYTES, MAX_AGENT_HISTORY_IMAGES, MAX_AGENT_HISTORY_IMAGE_TOTAL_BYTES, MAX_AGENT_IMAGES, MAX_AGENT_IMAGE_BYTES, MAX_AGENT_IMAGE_TOTAL_BYTES, MAX_AGENT_TEXT_BYTES, MAX_EVENT_BATCH_SIZE, MAX_REALTIME_DIFF_BYTES, MAX_REALTIME_FILE_CHANGES, McpElicitationFieldSchema, McpElicitationOptionSchema, McpElicitationPendingRequestSchema, McpElicitationResolutionSchema, MessageDeltaEventSchema, Never, Object2 as Object, OpenAgentTaskAttachmentRequestSchema, OpenAgentTaskAttachmentResponseSchema, OpenProjectRequestSchema, OpenProjectResponseSchema, OpenSkillDirectoryResponseSchema, PairAccessRequestSchema, PairAccessResponseSchema, PendingApprovalDecisionSchema, PendingPermissionCategorySchema, PendingRequestCreatedEventSchema, PendingRequestExpiredEventSchema, PendingRequestResolvedEventSchema, PendingRequestSchema, PendingRequestStatusSchema, PendingUserInputOptionSchema, PendingUserInputQuestionSchema, PermissionApprovalPendingRequestSchema, PinAgentTaskRequestSchema, PinAgentTaskResponseSchema, PlanUpdatedEventSchema, ProjectDirectoryEntrySchema, ProjectDirectoryListingSchema, ProjectDirectoryPathSchema, ProjectDirectoryQuerySchema, ProjectFileNameSchema, ProjectFileReferencePathSchema, ProjectFileSearchEntrySchema, ProjectFileSearchPageSchema, ProjectFileSearchQuerySchema, ProjectFileSearchSessionIdSchema, ProjectFileTreeEntrySchema, ProjectFileTreeQuerySchema, ProjectFileTreeSchema, ProjectGitCommitFileDiffQuerySchema, ProjectGitCommitFileDiffSchema, ProjectGitCommitFileSchema, ProjectGitCommitFilesPageSchema, ProjectGitCommitFilesQuerySchema, ProjectGitCommitSchema, ProjectGitHistoryPageSchema, ProjectGitHistoryQuerySchema, ProjectGitMetadataChangedEventSchema, ProjectGitStatusQuerySchema, ProjectGitStatusSchema, ProjectGitWorktreePageSchema, ProjectGitWorktreeSchema, ProjectOpenAppIdSchema, ProjectOpenAppKindSchema, ProjectOpenAppSchema, ProjectOpenCapabilitiesResponseSchema, ProjectOpenPlatformSchema, ProjectPageSchema, ProjectRelativePathSchema, ProjectRootIdSchema, ProjectRootInputSchema, ProjectRootInputsSchema, ProjectRootPathSchema, ProjectRootQuerySchema, ProjectRootSchema, ProjectRootsSchema, ProjectSchema, ProjectSourceFileQuerySchema, ProjectSourceFileSchema, ProjectWorktreeMutationResponseSchema, ProviderErrorEventSchema, QueueChangedEventSchema, ReasoningDeltaEventSchema, ReloadAgentMcpServersRequestSchema, ReloadAgentMcpServersResponseSchema, RemoveProjectRequestSchema, RemoveProjectResponseSchema, RenameAgentTaskRequestSchema, RenameAgentTaskResponseSchema, RenameProjectFileRequestSchema, RenameProjectFileResponseSchema, RenameProjectRequestSchema, RenameProjectResponseSchema, ReorderAgentQueuedSubmissionsRequestSchema, ReorderAgentQueuedSubmissionsResponseSchema, ReorderProjectsRequestSchema, ReorderProjectsResponseSchema, ResolvePendingRequestRequestSchema, ResolvePendingRequestResponseSchema, ResyncRequiredSchema, ReviewAgentTaskRequestSchema, ReviewAgentTaskResponseSchema, ScheduledTaskInputSchema, ScheduledTaskMutationResponseSchema, ScheduledTaskPageSchema, ScheduledTaskRunSchema, ScheduledTaskRunStatusSchema, ScheduledTaskScheduleSchema, ScheduledTaskSchema, SetMcpServerEnabledResponseSchema, SetScheduledTaskEnabledRequestSchema, SetSkillEnabledResponseSchema, SkillInstallResultSchema, SkillInstallScopeSchema, SkillsChangedEventSchema, StartAgentQueuedSubmissionRequestSchema, StartAgentQueuedSubmissionResponseSchema, StartAgentTaskRequestSchema, StartAgentTaskResponseSchema, StartAgentTurnRequestSchema, StartAgentTurnResponseSchema, StartOfficialProviderLoginRequestSchema, StartOfficialProviderLoginResponseSchema, SteerAgentTurnRequestSchema, SteerAgentTurnResponseSchema, StopProjectFileSearchRequestSchema, StopProjectFileSearchResponseSchema, String, SwitchProjectBranchRequestSchema, SwitchProjectWorktreeRequestSchema, TEMPORARY_TASK_API_PATH, TEMPORARY_TASK_SCOPE_ID, TaskMetadataChangedEventSchema, TaskRemovedEventSchema, TaskStatusUpdatedEventSchema, TemplateLiteralGenerate, TerminateAgentBackgroundTerminalResponseSchema, TransformKind, TurnCompletedEventSchema, TurnStartedEventSchema, Type, TypeBoxError, TypeSystemPolicy, UnarchiveAgentTaskRequestSchema, UnarchiveAgentTaskResponseSchema, Union, Unknown, UnsubscribeAgentTaskResponseSchema, UpdateAgentGoalRequestSchema, UpdateAgentGoalResponseSchema, UpdateAgentQueuedSubmissionRequestSchema, UpdateAgentQueuedSubmissionResponseSchema, UploadAgentFeedbackRequestSchema, UploadAgentFeedbackResponseSchema, UsageUpdatedEventSchema, UserInputPendingRequestSchema, WorkbenchPetAnimationFrameSchema, WorkbenchPetAnimationSchema, WorkbenchPetCatalogResponseSchema, WorkbenchPetDescriptorSchema, WorkbenchPetDownloadRequestSchema, WorkbenchPetDownloadResponseSchema, WorkbenchPetFrameSchema, WorkbenchPetSettingsSchema, format_exports, isAgentFastModeAvailable, stripLeadingAgentSkillReferences, type_exports2 as type_exports };
|
|
5694
|
+
export { AGENT_FILE_ACCEPT, AGENT_FILE_EXTENSIONS, AGENT_FILE_MEDIA_TYPES, AGENT_IMAGE_ACCEPT, AccessModeSchema, AccessStatusResponseSchema, AddAgentQueuedSubmissionRequestSchema, AddAgentQueuedSubmissionResponseSchema, AddProjectRequestSchema, AddProjectResponseSchema, AgentActivityItemSchema, AgentApprovalReviewActionSchema, AgentApprovalReviewItemSchema, AgentApprovalReviewStatusSchema, AgentApprovalsReviewerSchema, AgentAttachmentKindSchema, AgentAttachmentMediaTypeSchema, AgentAttachmentSchema, AgentAttachmentUploadResponseSchema, AgentBackgroundTerminalPageSchema, AgentBackgroundTerminalSchema, AgentCapabilitiesSchema, AgentCommandItemSchema, AgentCommandOutputOmissionSchema, AgentContextUsageSchema, AgentEventSchema, AgentFileChangeItemSchema, AgentFileChangeSchema, AgentGlobalApprovalPolicySchema, AgentGlobalSettingsResponseSchema, AgentGlobalSettingsSchema, AgentGoalSchema, AgentGoalStatusSchema, AgentGranularApprovalConfigSchema, AgentGranularApprovalPolicySchema, AgentImageMediaTypeSchema, AgentItemSchema, AgentItemStatusSchema, AgentMcpServerConnectionStatusSchema, AgentMcpServerFailureReasonSchema, AgentMcpServerPageSchema, AgentMcpServerSchema, AgentMcpServerStartupStatusSchema, AgentMessageAttachmentSchema, AgentMessageItemSchema, AgentMessagePhaseSchema, AgentMessageSkillSchema, AgentModelPageSchema, AgentModelSchema, AgentMutationErrorCodeSchema, AgentMutationErrorSchema, AgentPlanItemSchema, AgentPlanSchema, AgentPlanStepSchema, AgentPlanStepStatusSchema, AgentProjectDefaultsResponseSchema, AgentProjectDefaultsSchema, AgentPromptInputSchema, AgentProviderAccountSchema, AgentProviderConnectionMutationResponseSchema, AgentProviderConnectionRecordSchema, AgentProviderConnectionStateSchema, AgentProviderConnectionStatusSchema, AgentProviderModeSchema, AgentProviderPendingLoginSchema, AgentQueuedSubmissionPageSchema, AgentQueuedSubmissionSchema, AgentQueuedSubmissionStatusSchema, AgentReasoningEffortOptionSchema, AgentReasoningItemSchema, AgentReviewItemSchema, AgentReviewTargetSchema, AgentSandboxModeSchema, AgentSkillPageSchema, AgentSkillReferenceSchema, AgentSkillSchema, AgentSkillScopeSchema, AgentTaskPageSchema, AgentTaskSchema, AgentTaskSettingsResponseSchema, AgentTaskSettingsSchema, AgentTaskSnapshotResponseSchema, AgentTaskSnapshotSchema, AgentToolItemSchema, AgentTurnApprovalPolicySchema, AgentTurnOptionsSchema, AgentTurnSchema, AgentTurnStatusSchema, AppInfoResponseSchema, AppUpdateProgressPhaseSchema, AppUpdateProgressResponseSchema, AppUpdateProgressSchema, AppUpdateStatusSchema, ArchiveAgentTaskRequestSchema, ArchiveAgentTaskResponseSchema, CancelProviderLoginRequestSchema, ClawhubSkillDetailSchema, ClawhubSkillPageSchema, ClawhubSkillSummarySchema, ClawhubSkillVersionSchema, ClearAgentGoalResponseSchema, CommandApprovalPendingRequestSchema, CommandOutputDeltaEventSchema, CommitProjectChangesRequestSchema, CommitProjectChangesResponseSchema, CompactAgentTaskRequestSchema, CompactAgentTaskResponseSchema, ConfigureCustomProviderRequestSchema, ConfigureCustomProviderResponseSchema, ConfiguredMcpServerPageSchema, ConfiguredMcpServerSchema, ConnectionReadySchema, CreateProjectBranchRequestSchema, CreateProjectWorktreeRequestSchema, DEFAULT_AGENT_GRANULAR_APPROVAL_POLICY, DEFAULT_COMMIT_MESSAGE_MODEL, DeleteAgentQueuedSubmissionResponseSchema, DeleteAgentTaskRequestSchema, DeleteAgentTaskResponseSchema, DeleteProjectFileRequestSchema, DeleteProjectFileResponseSchema, DeleteScheduledTaskResponseSchema, EventBatchSchema, EventCheckpointSchema, EventStreamMessageSchema, EventStreamMetricsResponseSchema, EventStreamProjectMetricsSchema, FileChangeApprovalPendingRequestSchema, FileChangeUpdatedEventSchema, FilesystemRootSchema, ForkAgentTaskRequestSchema, ForkAgentTaskResponseSchema, GenerateCommitMessageRequestSchema, GenerateCommitMessageResponseSchema, GoalClearedEventSchema, GoalUpdatedEventSchema, HasPropertyKey2 as HasPropertyKey, HealthResponseSchema, HostFileEntrySchema, HostFileKindSchema, HostFileListingSchema, HostFileQuerySchema, ImportHostAttachmentRequestSchema, IndexFromPropertyKeys, InstallAppUpdateRequestSchema, InstallAppUpdateResponseSchema, InstalledSkillPageSchema, InstalledSkillSchema, InterruptAgentTurnRequestSchema, InterruptAgentTurnResponseSchema, IsArray2 as IsArray, IsAsyncIterator2 as IsAsyncIterator, IsBigInt2 as IsBigInt, IsBoolean2 as IsBoolean, IsDate2 as IsDate, IsFunction2 as IsFunction, IsInteger, IsIterator2 as IsIterator, IsKind, IsMap, IsNull2 as IsNull, IsNumber2 as IsNumber, IsObject2 as IsObject, IsPromise, IsSchema, IsSet, IsStandardObject, IsString2 as IsString, IsSymbol2 as IsSymbol, IsTemplateLiteralFinite, IsTransform, IsTypedArray, IsUint8Array2 as IsUint8Array, IsUndefined2 as IsUndefined, IsUndefined3 as IsUndefined2, IsValueType, ItemCompletedEventSchema, ItemStartedEventSchema, KeyOfPattern, KeyOfPropertyKeys, Kind, Literal, LogoutAccessResponseSchema, MAX_AGENT_ATTACHMENT_BYTES, MAX_AGENT_FILE_BYTES, MAX_AGENT_FILE_TOTAL_BYTES, MAX_AGENT_HISTORY_IMAGES, MAX_AGENT_HISTORY_IMAGE_TOTAL_BYTES, MAX_AGENT_IMAGES, MAX_AGENT_IMAGE_BYTES, MAX_AGENT_IMAGE_TOTAL_BYTES, MAX_AGENT_TEXT_BYTES, MAX_EVENT_BATCH_SIZE, MAX_REALTIME_DIFF_BYTES, MAX_REALTIME_FILE_CHANGES, McpElicitationFieldSchema, McpElicitationOptionSchema, McpElicitationPendingRequestSchema, McpElicitationResolutionSchema, MessageDeltaEventSchema, Never, Object2 as Object, OfficialPluginAppSchema, OfficialPluginAssetSchema, OfficialPluginAuthPolicySchema, OfficialPluginDetailSchema, OfficialPluginInstallResultSchema, OfficialPluginPageSchema, OfficialPluginSummarySchema, OfficialPluginUninstallResultSchema, OpenAgentTaskAttachmentRequestSchema, OpenAgentTaskAttachmentResponseSchema, OpenProjectRequestSchema, OpenProjectResponseSchema, OpenSkillDirectoryResponseSchema, PairAccessRequestSchema, PairAccessResponseSchema, PendingApprovalDecisionSchema, PendingPermissionCategorySchema, PendingRequestCreatedEventSchema, PendingRequestExpiredEventSchema, PendingRequestResolvedEventSchema, PendingRequestSchema, PendingRequestStatusSchema, PendingUserInputOptionSchema, PendingUserInputQuestionSchema, PermissionApprovalPendingRequestSchema, PinAgentTaskRequestSchema, PinAgentTaskResponseSchema, PlanUpdatedEventSchema, ProjectDirectoryEntrySchema, ProjectDirectoryListingSchema, ProjectDirectoryPathSchema, ProjectDirectoryQuerySchema, ProjectFileNameSchema, ProjectFileReferencePathSchema, ProjectFileSearchEntrySchema, ProjectFileSearchPageSchema, ProjectFileSearchQuerySchema, ProjectFileSearchSessionIdSchema, ProjectFileTreeEntrySchema, ProjectFileTreeQuerySchema, ProjectFileTreeSchema, ProjectGitCommitFileDiffQuerySchema, ProjectGitCommitFileDiffSchema, ProjectGitCommitFileSchema, ProjectGitCommitFilesPageSchema, ProjectGitCommitFilesQuerySchema, ProjectGitCommitSchema, ProjectGitHistoryPageSchema, ProjectGitHistoryQuerySchema, ProjectGitMetadataChangedEventSchema, ProjectGitStatusQuerySchema, ProjectGitStatusSchema, ProjectGitWorktreePageSchema, ProjectGitWorktreeSchema, ProjectOpenAppIdSchema, ProjectOpenAppKindSchema, ProjectOpenAppSchema, ProjectOpenCapabilitiesResponseSchema, ProjectOpenPlatformSchema, ProjectPageSchema, ProjectRelativePathSchema, ProjectRootIdSchema, ProjectRootInputSchema, ProjectRootInputsSchema, ProjectRootPathSchema, ProjectRootQuerySchema, ProjectRootSchema, ProjectRootsSchema, ProjectSchema, ProjectSourceFileQuerySchema, ProjectSourceFileSchema, ProjectWorktreeMutationResponseSchema, ProviderErrorEventSchema, QueueChangedEventSchema, ReasoningDeltaEventSchema, ReloadAgentMcpServersRequestSchema, ReloadAgentMcpServersResponseSchema, RemoveProjectRequestSchema, RemoveProjectResponseSchema, RenameAgentTaskRequestSchema, RenameAgentTaskResponseSchema, RenameProjectFileRequestSchema, RenameProjectFileResponseSchema, RenameProjectRequestSchema, RenameProjectResponseSchema, ReorderAgentQueuedSubmissionsRequestSchema, ReorderAgentQueuedSubmissionsResponseSchema, ReorderProjectsRequestSchema, ReorderProjectsResponseSchema, ResolvePendingRequestRequestSchema, ResolvePendingRequestResponseSchema, ResyncRequiredSchema, ReviewAgentTaskRequestSchema, ReviewAgentTaskResponseSchema, ScheduledTaskInputSchema, ScheduledTaskMutationResponseSchema, ScheduledTaskPageSchema, ScheduledTaskRunSchema, ScheduledTaskRunStatusSchema, ScheduledTaskScheduleSchema, ScheduledTaskSchema, SetMcpServerEnabledResponseSchema, SetScheduledTaskEnabledRequestSchema, SetSkillEnabledResponseSchema, SkillInstallResultSchema, SkillInstallScopeSchema, SkillsChangedEventSchema, StartAgentQueuedSubmissionRequestSchema, StartAgentQueuedSubmissionResponseSchema, StartAgentTaskRequestSchema, StartAgentTaskResponseSchema, StartAgentTurnRequestSchema, StartAgentTurnResponseSchema, StartOfficialProviderLoginRequestSchema, StartOfficialProviderLoginResponseSchema, SteerAgentTurnRequestSchema, SteerAgentTurnResponseSchema, StopProjectFileSearchRequestSchema, StopProjectFileSearchResponseSchema, String, SwitchProjectBranchRequestSchema, SwitchProjectWorktreeRequestSchema, TEMPORARY_TASK_API_PATH, TEMPORARY_TASK_SCOPE_ID, TaskMetadataChangedEventSchema, TaskRemovedEventSchema, TaskStatusUpdatedEventSchema, TemplateLiteralGenerate, TerminateAgentBackgroundTerminalResponseSchema, TransformKind, TurnCompletedEventSchema, TurnStartedEventSchema, Type, TypeBoxError, TypeSystemPolicy, UnarchiveAgentTaskRequestSchema, UnarchiveAgentTaskResponseSchema, Union, Unknown, UnsubscribeAgentTaskResponseSchema, UpdateAgentGoalRequestSchema, UpdateAgentGoalResponseSchema, UpdateAgentQueuedSubmissionRequestSchema, UpdateAgentQueuedSubmissionResponseSchema, UploadAgentFeedbackRequestSchema, UploadAgentFeedbackResponseSchema, UsageUpdatedEventSchema, UserInputPendingRequestSchema, WorkbenchPetAnimationFrameSchema, WorkbenchPetAnimationSchema, WorkbenchPetCatalogResponseSchema, WorkbenchPetDescriptorSchema, WorkbenchPetDownloadRequestSchema, WorkbenchPetDownloadResponseSchema, WorkbenchPetFrameSchema, WorkbenchPetSettingsSchema, format_exports, isAgentFastModeAvailable, stripLeadingAgentSkillReferences, type_exports2 as type_exports };
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { createRequire } from 'node:module';
|
|
2
|
-
import { value_exports } from './chunk-
|
|
3
|
-
import { require_pino, require_safe_stable_stringify, CodexProtocolMappingError, CodexProviderConnectionError, RpcConnectionClosedError, RpcProtocolError, RpcResponseError, RpcTimeoutError } from './chunk-
|
|
2
|
+
import { value_exports } from './chunk-OVQSIEIK.js';
|
|
3
|
+
import { require_pino, require_safe_stable_stringify, CodexProtocolMappingError, CodexProviderConnectionError, RpcConnectionClosedError, RpcProtocolError, RpcResponseError, RpcTimeoutError } from './chunk-TVRHN6RY.js';
|
|
4
4
|
import { WorkbenchPetProviderError, PendingRequestResolutionError } from './chunk-RNTA4MFS.js';
|
|
5
|
-
import { AGENT_FILE_EXTENSIONS, AGENT_FILE_MEDIA_TYPES, Type, SkillInstallScopeSchema, ScheduledTaskSchema, DEFAULT_COMMIT_MESSAGE_MODEL, TEMPORARY_TASK_API_PATH, TEMPORARY_TASK_SCOPE_ID, MAX_AGENT_FILE_BYTES, AccessStatusResponseSchema, PairAccessRequestSchema, HealthResponseSchema, AppInfoResponseSchema, AppUpdateProgressResponseSchema, AgentMutationErrorSchema, InstallAppUpdateResponseSchema, InstallAppUpdateRequestSchema, EventStreamMetricsResponseSchema, AgentCapabilitiesSchema, AgentModelPageSchema, AgentGlobalSettingsResponseSchema, AgentGlobalSettingsSchema, MAX_AGENT_IMAGE_BYTES, MAX_AGENT_TEXT_BYTES, AgentProviderConnectionStatusSchema, StartOfficialProviderLoginResponseSchema, StartOfficialProviderLoginRequestSchema, AgentProviderConnectionMutationResponseSchema, CancelProviderLoginRequestSchema, ConfigureCustomProviderResponseSchema, ConfigureCustomProviderRequestSchema, WorkbenchPetCatalogResponseSchema, WorkbenchPetDownloadResponseSchema, WorkbenchPetDownloadRequestSchema, ProjectPageSchema, HostFileListingSchema, HostFileQuerySchema, ProjectDirectoryListingSchema, ProjectDirectoryQuerySchema, ProjectOpenCapabilitiesResponseSchema, OpenProjectResponseSchema, ProjectRootQuerySchema, OpenProjectRequestSchema, ReorderProjectsResponseSchema, ReorderProjectsRequestSchema, AgentSkillPageSchema, AgentProjectDefaultsResponseSchema, AgentProjectDefaultsSchema, AddProjectResponseSchema, AddProjectRequestSchema, RenameProjectResponseSchema, RenameProjectRequestSchema, RemoveProjectResponseSchema, RemoveProjectRequestSchema, InstalledSkillPageSchema, ClawhubSkillPageSchema, ClawhubSkillDetailSchema, ConfiguredMcpServerPageSchema, OpenSkillDirectoryResponseSchema, SetSkillEnabledResponseSchema, SetMcpServerEnabledResponseSchema, SkillInstallResultSchema, ScheduledTaskPageSchema, ScheduledTaskMutationResponseSchema, ScheduledTaskInputSchema, DeleteScheduledTaskResponseSchema, SetScheduledTaskEnabledRequestSchema, AgentTaskPageSchema, UnsubscribeAgentTaskResponseSchema, AgentTaskSnapshotResponseSchema, AgentMcpServerPageSchema, AgentBackgroundTerminalPageSchema, TerminateAgentBackgroundTerminalResponseSchema, PinAgentTaskResponseSchema, PinAgentTaskRequestSchema, RenameAgentTaskResponseSchema, RenameAgentTaskRequestSchema, ArchiveAgentTaskResponseSchema, ArchiveAgentTaskRequestSchema, UnarchiveAgentTaskResponseSchema, UnarchiveAgentTaskRequestSchema, DeleteAgentTaskResponseSchema, DeleteAgentTaskRequestSchema, StartAgentTaskResponseSchema, StartAgentTaskRequestSchema, StartAgentTurnResponseSchema, StartAgentTurnRequestSchema, SteerAgentTurnResponseSchema, SteerAgentTurnRequestSchema, InterruptAgentTurnResponseSchema, InterruptAgentTurnRequestSchema, ResolvePendingRequestResponseSchema, ResolvePendingRequestRequestSchema, AgentQueuedSubmissionPageSchema, AddAgentQueuedSubmissionResponseSchema, AddAgentQueuedSubmissionRequestSchema, UpdateAgentQueuedSubmissionResponseSchema, UpdateAgentQueuedSubmissionRequestSchema, DeleteAgentQueuedSubmissionResponseSchema, ReorderAgentQueuedSubmissionsResponseSchema, ReorderAgentQueuedSubmissionsRequestSchema, StartAgentQueuedSubmissionResponseSchema, StartAgentQueuedSubmissionRequestSchema, AgentPromptInputSchema, AgentProviderConnectionRecordSchema, MAX_AGENT_IMAGES, MAX_AGENT_IMAGE_TOTAL_BYTES, MAX_AGENT_FILE_TOTAL_BYTES, ProjectGitStatusSchema, ProjectGitStatusQuerySchema, ProjectGitHistoryPageSchema, ProjectGitHistoryQuerySchema, ProjectGitCommitFilesPageSchema, ProjectGitCommitFilesQuerySchema, ProjectGitCommitFileDiffSchema, ProjectGitCommitFileDiffQuerySchema, SwitchProjectBranchRequestSchema, CreateProjectBranchRequestSchema, GenerateCommitMessageResponseSchema, GenerateCommitMessageRequestSchema, CommitProjectChangesResponseSchema, CommitProjectChangesRequestSchema, ProjectFileTreeSchema, ProjectFileTreeQuerySchema, ProjectFileSearchPageSchema, ProjectFileSearchQuerySchema, StopProjectFileSearchResponseSchema, StopProjectFileSearchRequestSchema, ProjectSourceFileQuerySchema, ProjectSourceFileSchema, AgentAttachmentUploadResponseSchema, HostFileKindSchema, ImportHostAttachmentRequestSchema, AgentAttachmentKindSchema, AgentTaskSettingsResponseSchema, AgentTaskSettingsSchema, ReloadAgentMcpServersResponseSchema, ReloadAgentMcpServersRequestSchema, ReviewAgentTaskResponseSchema, ReviewAgentTaskRequestSchema, CompactAgentTaskResponseSchema, CompactAgentTaskRequestSchema, ForkAgentTaskResponseSchema, ForkAgentTaskRequestSchema, UploadAgentFeedbackResponseSchema, UploadAgentFeedbackRequestSchema, OpenAgentTaskAttachmentResponseSchema, OpenAgentTaskAttachmentRequestSchema, UpdateAgentGoalResponseSchema, UpdateAgentGoalRequestSchema, ClearAgentGoalResponseSchema, AgentMessageAttachmentSchema, ProjectGitWorktreePageSchema, ProjectWorktreeMutationResponseSchema, CreateProjectWorktreeRequestSchema, SwitchProjectWorktreeRequestSchema, RenameProjectFileResponseSchema, RenameProjectFileRequestSchema, DeleteProjectFileResponseSchema, DeleteProjectFileRequestSchema, MAX_EVENT_BATCH_SIZE } from './chunk-
|
|
5
|
+
import { AGENT_FILE_EXTENSIONS, AGENT_FILE_MEDIA_TYPES, Type, SkillInstallScopeSchema, ScheduledTaskSchema, AgentTurnSchema, DEFAULT_COMMIT_MESSAGE_MODEL, TEMPORARY_TASK_API_PATH, TEMPORARY_TASK_SCOPE_ID, MAX_AGENT_FILE_BYTES, AccessStatusResponseSchema, PairAccessRequestSchema, HealthResponseSchema, AppInfoResponseSchema, AppUpdateProgressResponseSchema, AgentMutationErrorSchema, InstallAppUpdateResponseSchema, InstallAppUpdateRequestSchema, EventStreamMetricsResponseSchema, AgentCapabilitiesSchema, AgentModelPageSchema, AgentGlobalSettingsResponseSchema, AgentGlobalSettingsSchema, MAX_AGENT_IMAGE_BYTES, MAX_AGENT_TEXT_BYTES, AgentProviderConnectionStatusSchema, StartOfficialProviderLoginResponseSchema, StartOfficialProviderLoginRequestSchema, AgentProviderConnectionMutationResponseSchema, CancelProviderLoginRequestSchema, ConfigureCustomProviderResponseSchema, ConfigureCustomProviderRequestSchema, WorkbenchPetCatalogResponseSchema, WorkbenchPetDownloadResponseSchema, WorkbenchPetDownloadRequestSchema, ProjectPageSchema, HostFileListingSchema, HostFileQuerySchema, ProjectDirectoryListingSchema, ProjectDirectoryQuerySchema, ProjectOpenCapabilitiesResponseSchema, OpenProjectResponseSchema, ProjectRootQuerySchema, OpenProjectRequestSchema, ReorderProjectsResponseSchema, ReorderProjectsRequestSchema, AgentSkillPageSchema, AgentProjectDefaultsResponseSchema, AgentProjectDefaultsSchema, AddProjectResponseSchema, AddProjectRequestSchema, RenameProjectResponseSchema, RenameProjectRequestSchema, RemoveProjectResponseSchema, RemoveProjectRequestSchema, InstalledSkillPageSchema, OfficialPluginPageSchema, OfficialPluginDetailSchema, OfficialPluginInstallResultSchema, OfficialPluginUninstallResultSchema, ClawhubSkillPageSchema, ClawhubSkillDetailSchema, ConfiguredMcpServerPageSchema, OpenSkillDirectoryResponseSchema, SetSkillEnabledResponseSchema, SetMcpServerEnabledResponseSchema, SkillInstallResultSchema, ScheduledTaskPageSchema, ScheduledTaskMutationResponseSchema, ScheduledTaskInputSchema, DeleteScheduledTaskResponseSchema, SetScheduledTaskEnabledRequestSchema, AgentTaskPageSchema, UnsubscribeAgentTaskResponseSchema, AgentTaskSnapshotResponseSchema, AgentMcpServerPageSchema, AgentBackgroundTerminalPageSchema, TerminateAgentBackgroundTerminalResponseSchema, PinAgentTaskResponseSchema, PinAgentTaskRequestSchema, RenameAgentTaskResponseSchema, RenameAgentTaskRequestSchema, ArchiveAgentTaskResponseSchema, ArchiveAgentTaskRequestSchema, UnarchiveAgentTaskResponseSchema, UnarchiveAgentTaskRequestSchema, DeleteAgentTaskResponseSchema, DeleteAgentTaskRequestSchema, StartAgentTaskResponseSchema, StartAgentTaskRequestSchema, StartAgentTurnResponseSchema, StartAgentTurnRequestSchema, SteerAgentTurnResponseSchema, SteerAgentTurnRequestSchema, InterruptAgentTurnResponseSchema, InterruptAgentTurnRequestSchema, ResolvePendingRequestResponseSchema, ResolvePendingRequestRequestSchema, AgentQueuedSubmissionPageSchema, AddAgentQueuedSubmissionResponseSchema, AddAgentQueuedSubmissionRequestSchema, UpdateAgentQueuedSubmissionResponseSchema, UpdateAgentQueuedSubmissionRequestSchema, DeleteAgentQueuedSubmissionResponseSchema, ReorderAgentQueuedSubmissionsResponseSchema, ReorderAgentQueuedSubmissionsRequestSchema, StartAgentQueuedSubmissionResponseSchema, StartAgentQueuedSubmissionRequestSchema, AgentPromptInputSchema, AgentProviderConnectionRecordSchema, MAX_AGENT_IMAGES, MAX_AGENT_IMAGE_TOTAL_BYTES, MAX_AGENT_FILE_TOTAL_BYTES, ProjectGitStatusSchema, ProjectGitStatusQuerySchema, ProjectGitHistoryPageSchema, ProjectGitHistoryQuerySchema, ProjectGitCommitFilesPageSchema, ProjectGitCommitFilesQuerySchema, ProjectGitCommitFileDiffSchema, ProjectGitCommitFileDiffQuerySchema, SwitchProjectBranchRequestSchema, CreateProjectBranchRequestSchema, GenerateCommitMessageResponseSchema, GenerateCommitMessageRequestSchema, CommitProjectChangesResponseSchema, CommitProjectChangesRequestSchema, ProjectFileTreeSchema, ProjectFileTreeQuerySchema, ProjectFileSearchPageSchema, ProjectFileSearchQuerySchema, StopProjectFileSearchResponseSchema, StopProjectFileSearchRequestSchema, ProjectSourceFileQuerySchema, ProjectSourceFileSchema, AgentAttachmentUploadResponseSchema, HostFileKindSchema, ImportHostAttachmentRequestSchema, AgentAttachmentKindSchema, AgentTaskSettingsResponseSchema, AgentTaskSettingsSchema, ReloadAgentMcpServersResponseSchema, ReloadAgentMcpServersRequestSchema, ReviewAgentTaskResponseSchema, ReviewAgentTaskRequestSchema, CompactAgentTaskResponseSchema, CompactAgentTaskRequestSchema, ForkAgentTaskResponseSchema, ForkAgentTaskRequestSchema, UploadAgentFeedbackResponseSchema, UploadAgentFeedbackRequestSchema, OpenAgentTaskAttachmentResponseSchema, OpenAgentTaskAttachmentRequestSchema, UpdateAgentGoalResponseSchema, UpdateAgentGoalRequestSchema, ClearAgentGoalResponseSchema, AgentMessageAttachmentSchema, ProjectGitWorktreePageSchema, ProjectWorktreeMutationResponseSchema, CreateProjectWorktreeRequestSchema, SwitchProjectWorktreeRequestSchema, RenameProjectFileResponseSchema, RenameProjectFileRequestSchema, DeleteProjectFileResponseSchema, DeleteProjectFileRequestSchema, MAX_EVENT_BATCH_SIZE } from './chunk-G4BIMVEW.js';
|
|
6
6
|
import { __commonJS, __require, __toESM } from './chunk-K6J42667.js';
|
|
7
7
|
import { Buffer as Buffer$1 } from 'buffer';
|
|
8
8
|
import { randomBytes, createHash, timingSafeEqual, randomUUID } from 'crypto';
|
|
@@ -65860,6 +65860,7 @@ function createSkillMarketService(options) {
|
|
|
65860
65860
|
};
|
|
65861
65861
|
return {
|
|
65862
65862
|
getSkill: (owner, slug) => options.catalog.getSkill(owner, slug),
|
|
65863
|
+
getOfficialPlugin: (marketplaceName, marketplacePath, pluginName) => options.provider.getOfficialPlugin(marketplaceName, marketplacePath, pluginName),
|
|
65863
65864
|
async installSkill(owner, slug, input) {
|
|
65864
65865
|
const detail = await options.catalog.getSkill(owner, slug);
|
|
65865
65866
|
if (detail.scanStatus !== "clean") {
|
|
@@ -65886,11 +65887,21 @@ function createSkillMarketService(options) {
|
|
|
65886
65887
|
await options.provider.listInstalledSkills(projects, true);
|
|
65887
65888
|
return result;
|
|
65888
65889
|
},
|
|
65890
|
+
installOfficialPlugin: (marketplaceName, marketplacePath, pluginName, installAttemptId) => options.provider.installOfficialPlugin(
|
|
65891
|
+
marketplaceName,
|
|
65892
|
+
marketplacePath,
|
|
65893
|
+
pluginName,
|
|
65894
|
+
installAttemptId
|
|
65895
|
+
),
|
|
65889
65896
|
listConfiguredMcpServers: () => options.provider.listConfiguredMcpServers(),
|
|
65890
65897
|
async listInstalledSkills(forceReload) {
|
|
65891
65898
|
const { page } = await discover(forceReload);
|
|
65892
65899
|
return { ...page, data: await enrichInstalledSkills(page.data) };
|
|
65893
65900
|
},
|
|
65901
|
+
async listOfficialPlugins(forceRefetch) {
|
|
65902
|
+
const projects = await options.projectRepository.list();
|
|
65903
|
+
return options.provider.listOfficialPlugins(projects, forceRefetch);
|
|
65904
|
+
},
|
|
65894
65905
|
listSkills: (query, cursor, sort2) => options.catalog.listSkills(query, cursor, sort2),
|
|
65895
65906
|
async openSkillDirectory(path) {
|
|
65896
65907
|
const { page } = await discover(false);
|
|
@@ -65911,7 +65922,8 @@ function createSkillMarketService(options) {
|
|
|
65911
65922
|
return { status: "opened" };
|
|
65912
65923
|
},
|
|
65913
65924
|
setMcpServerEnabled: (name, enabled) => options.provider.setMcpServerEnabled(name, enabled),
|
|
65914
|
-
setSkillEnabled: (path, enabled) => options.provider.setSkillEnabled(path, enabled)
|
|
65925
|
+
setSkillEnabled: (path, enabled) => options.provider.setSkillEnabled(path, enabled),
|
|
65926
|
+
uninstallOfficialPlugin: (pluginId) => options.provider.uninstallOfficialPlugin(pluginId)
|
|
65915
65927
|
};
|
|
65916
65928
|
}
|
|
65917
65929
|
function createProjectRuntimeContext(options) {
|
|
@@ -66048,7 +66060,7 @@ var ProjectRuntimeLifecycleLock = class {
|
|
|
66048
66060
|
};
|
|
66049
66061
|
var TaskQueueBlockedError = class extends Error {
|
|
66050
66062
|
constructor() {
|
|
66051
|
-
super("Task queue is blocked by an edited submission");
|
|
66063
|
+
super("Task queue is blocked by an edited or unresolved submission");
|
|
66052
66064
|
this.name = "TaskQueueBlockedError";
|
|
66053
66065
|
}
|
|
66054
66066
|
};
|
|
@@ -66061,6 +66073,7 @@ var TaskQueueItemNotFoundError = class extends Error {
|
|
|
66061
66073
|
var PersistentTaskQueue = class {
|
|
66062
66074
|
#attachmentStore;
|
|
66063
66075
|
#locks = /* @__PURE__ */ new Map();
|
|
66076
|
+
#startResults = /* @__PURE__ */ new Map();
|
|
66064
66077
|
#readTaskSettings;
|
|
66065
66078
|
#repository;
|
|
66066
66079
|
#resolveProviderInput;
|
|
@@ -66098,6 +66111,7 @@ var PersistentTaskQueue = class {
|
|
|
66098
66111
|
queuedSubmissionId
|
|
66099
66112
|
);
|
|
66100
66113
|
if (deleted) {
|
|
66114
|
+
this.#startResults.delete(queuedSubmissionId);
|
|
66101
66115
|
await this.#attachmentStore.releaseQueue(runtime.projectId, queuedSubmissionId);
|
|
66102
66116
|
this.#publishChanged(runtime);
|
|
66103
66117
|
}
|
|
@@ -66133,6 +66147,10 @@ var PersistentTaskQueue = class {
|
|
|
66133
66147
|
}
|
|
66134
66148
|
async update(runtime, queuedSubmissionId, input, status2) {
|
|
66135
66149
|
return this.#withTaskLock(runtime, async () => {
|
|
66150
|
+
const current = (await this.#repository.listQueue(runtime.projectId, runtime.taskId)).find(
|
|
66151
|
+
(record4) => record4.id === queuedSubmissionId
|
|
66152
|
+
);
|
|
66153
|
+
if (current?.execution !== void 0) throw new TaskQueueBlockedError();
|
|
66136
66154
|
const { attachmentIds } = await this.#resolveProviderInput(
|
|
66137
66155
|
runtime.projectId,
|
|
66138
66156
|
input,
|
|
@@ -66184,6 +66202,9 @@ var PersistentTaskQueue = class {
|
|
|
66184
66202
|
if (editingIndex >= 0 && selectedIndex >= editingIndex) throw new TaskQueueBlockedError();
|
|
66185
66203
|
const selected = records[selectedIndex];
|
|
66186
66204
|
if (selected?.status !== "queued") throw new TaskQueueBlockedError();
|
|
66205
|
+
const recovered = selected.execution?.state === "started" ? selected.execution.turn : this.#startResults.get(selected.id);
|
|
66206
|
+
if (recovered !== void 0) return this.#finishStart(runtime, selected, recovered);
|
|
66207
|
+
if (selected.execution !== void 0) throw new TaskQueueBlockedError();
|
|
66187
66208
|
const task = await runtime.provider.readTask(runtime.taskId);
|
|
66188
66209
|
if (task?.turns.some((turn2) => turn2.status === "running") === true) {
|
|
66189
66210
|
throw new TaskQueueBlockedError();
|
|
@@ -66195,9 +66216,21 @@ var PersistentTaskQueue = class {
|
|
|
66195
66216
|
runtime.taskId
|
|
66196
66217
|
);
|
|
66197
66218
|
const settings = await this.#readTaskSettings(runtime.projectId, runtime.taskId);
|
|
66219
|
+
if (this.#startResults.size >= 1e3) throw new TaskQueueBlockedError();
|
|
66220
|
+
if (!await this.#repository.setQueueExecution(selected, { state: "starting" })) {
|
|
66221
|
+
throw new TaskQueueBlockedError();
|
|
66222
|
+
}
|
|
66198
66223
|
const turn = await runtime.provider.startTurn(runtime.taskId, providerInput, settings);
|
|
66199
|
-
|
|
66224
|
+
this.#startResults.set(selected.id, turn);
|
|
66225
|
+
return this.#finishStart(runtime, selected, turn);
|
|
66226
|
+
}
|
|
66227
|
+
async #finishStart(runtime, selected, turn) {
|
|
66228
|
+
if (!await this.#repository.setQueueExecution(selected, { state: "started", turn })) {
|
|
66229
|
+
throw new TaskQueueItemNotFoundError();
|
|
66230
|
+
}
|
|
66231
|
+
this.#startResults.delete(selected.id);
|
|
66200
66232
|
await this.#attachmentStore.startQueue(runtime.projectId, selected.id, turn.id);
|
|
66233
|
+
await this.#repository.deleteQueue(runtime.projectId, runtime.taskId, selected.id);
|
|
66201
66234
|
this.#publishChanged(runtime);
|
|
66202
66235
|
return turn;
|
|
66203
66236
|
}
|
|
@@ -66225,6 +66258,15 @@ function createMemoryTaskQueueRepository() {
|
|
|
66225
66258
|
const records = /* @__PURE__ */ new Map();
|
|
66226
66259
|
const key = (projectId, taskId) => `${projectId}\0${taskId}`;
|
|
66227
66260
|
return {
|
|
66261
|
+
setQueueExecution(record3, execution) {
|
|
66262
|
+
const queue = records.get(key(record3.projectId, record3.taskId)) ?? [];
|
|
66263
|
+
const index = queue.findIndex((item) => item.id === record3.id);
|
|
66264
|
+
const current = queue[index];
|
|
66265
|
+
if (current === void 0 || execution.state === "starting" && current.execution !== void 0)
|
|
66266
|
+
return Promise.resolve(false);
|
|
66267
|
+
queue[index] = { ...current, execution };
|
|
66268
|
+
return Promise.resolve(true);
|
|
66269
|
+
},
|
|
66228
66270
|
addQueue(record3) {
|
|
66229
66271
|
const queue = records.get(key(record3.projectId, record3.taskId)) ?? [];
|
|
66230
66272
|
queue.push(record3);
|
|
@@ -66257,7 +66299,8 @@ function createMemoryTaskQueueRepository() {
|
|
|
66257
66299
|
const queue = records.get(key(projectId, taskId)) ?? [];
|
|
66258
66300
|
const index = queue.findIndex((record3) => record3.id === queuedSubmissionId);
|
|
66259
66301
|
const current = queue[index];
|
|
66260
|
-
if (current === void 0
|
|
66302
|
+
if (current === void 0 || current.execution !== void 0)
|
|
66303
|
+
return Promise.resolve(void 0);
|
|
66261
66304
|
const updated = { ...current, input, status: status2 };
|
|
66262
66305
|
queue[index] = updated;
|
|
66263
66306
|
return Promise.resolve(updated);
|
|
@@ -70096,6 +70139,32 @@ var MarketQuerySchema = Type.Object(
|
|
|
70096
70139
|
},
|
|
70097
70140
|
{ additionalProperties: false }
|
|
70098
70141
|
);
|
|
70142
|
+
var OfficialPluginParamsSchema = Type.Object(
|
|
70143
|
+
{
|
|
70144
|
+
marketplaceName: Type.String({ maxLength: 160, minLength: 1 }),
|
|
70145
|
+
pluginName: Type.String({ maxLength: 240, minLength: 1 })
|
|
70146
|
+
},
|
|
70147
|
+
{ additionalProperties: false }
|
|
70148
|
+
);
|
|
70149
|
+
var OfficialPluginQuerySchema = Type.Object(
|
|
70150
|
+
{ marketplacePath: Type.Optional(Type.String({ maxLength: 4096, minLength: 1 })) },
|
|
70151
|
+
{ additionalProperties: false }
|
|
70152
|
+
);
|
|
70153
|
+
var OfficialPluginListQuerySchema = Type.Object(
|
|
70154
|
+
{ forceRefetch: Type.Optional(Type.Boolean()) },
|
|
70155
|
+
{ additionalProperties: false }
|
|
70156
|
+
);
|
|
70157
|
+
var OfficialPluginInstallBodySchema = Type.Object(
|
|
70158
|
+
{
|
|
70159
|
+
installAttemptId: Type.String({ maxLength: 200, minLength: 1 }),
|
|
70160
|
+
marketplacePath: Type.Union([Type.String({ maxLength: 4096, minLength: 1 }), Type.Null()])
|
|
70161
|
+
},
|
|
70162
|
+
{ additionalProperties: false }
|
|
70163
|
+
);
|
|
70164
|
+
var OfficialPluginUninstallBodySchema = Type.Object(
|
|
70165
|
+
{ pluginId: Type.String({ maxLength: 300, minLength: 1 }) },
|
|
70166
|
+
{ additionalProperties: false }
|
|
70167
|
+
);
|
|
70099
70168
|
function toHttpError(error) {
|
|
70100
70169
|
if (!(error instanceof SkillMarketError)) throw error;
|
|
70101
70170
|
const statusByCode = {
|
|
@@ -70131,6 +70200,70 @@ var registerSkillMarketRoutes = (app, context, done) => {
|
|
|
70131
70200
|
{ schema: { response: { 200: InstalledSkillPageSchema } } },
|
|
70132
70201
|
() => skillMarketService.listInstalledSkills(false)
|
|
70133
70202
|
);
|
|
70203
|
+
app.get(
|
|
70204
|
+
"/v1/plugins/official",
|
|
70205
|
+
{
|
|
70206
|
+
schema: {
|
|
70207
|
+
querystring: OfficialPluginListQuerySchema,
|
|
70208
|
+
response: { 200: OfficialPluginPageSchema }
|
|
70209
|
+
}
|
|
70210
|
+
},
|
|
70211
|
+
(request2) => skillMarketService.listOfficialPlugins(request2.query.forceRefetch ?? false)
|
|
70212
|
+
);
|
|
70213
|
+
app.get(
|
|
70214
|
+
"/v1/plugins/official/:marketplaceName/:pluginName",
|
|
70215
|
+
{
|
|
70216
|
+
schema: {
|
|
70217
|
+
params: OfficialPluginParamsSchema,
|
|
70218
|
+
querystring: OfficialPluginQuerySchema,
|
|
70219
|
+
response: { 200: OfficialPluginDetailSchema, ...mutationErrors }
|
|
70220
|
+
}
|
|
70221
|
+
},
|
|
70222
|
+
(request2) => skillMarketService.getOfficialPlugin(
|
|
70223
|
+
request2.params.marketplaceName,
|
|
70224
|
+
request2.query.marketplacePath ?? null,
|
|
70225
|
+
request2.params.pluginName
|
|
70226
|
+
)
|
|
70227
|
+
);
|
|
70228
|
+
app.post(
|
|
70229
|
+
"/v1/plugins/official/:marketplaceName/:pluginName/install",
|
|
70230
|
+
{
|
|
70231
|
+
schema: {
|
|
70232
|
+
body: OfficialPluginInstallBodySchema,
|
|
70233
|
+
headers: IdempotencyHeadersSchema,
|
|
70234
|
+
params: OfficialPluginParamsSchema,
|
|
70235
|
+
response: { 200: OfficialPluginInstallResultSchema, ...mutationErrors }
|
|
70236
|
+
}
|
|
70237
|
+
},
|
|
70238
|
+
(request2) => runIdempotent(
|
|
70239
|
+
["install-official-plugin", request2.params.marketplaceName, request2.params.pluginName],
|
|
70240
|
+
request2.headers["idempotency-key"],
|
|
70241
|
+
request2.body,
|
|
70242
|
+
() => skillMarketService.installOfficialPlugin(
|
|
70243
|
+
request2.params.marketplaceName,
|
|
70244
|
+
request2.body.marketplacePath,
|
|
70245
|
+
request2.params.pluginName,
|
|
70246
|
+
request2.body.installAttemptId
|
|
70247
|
+
)
|
|
70248
|
+
)
|
|
70249
|
+
);
|
|
70250
|
+
app.post(
|
|
70251
|
+
"/v1/plugins/official/:marketplaceName/:pluginName/uninstall",
|
|
70252
|
+
{
|
|
70253
|
+
schema: {
|
|
70254
|
+
body: OfficialPluginUninstallBodySchema,
|
|
70255
|
+
headers: IdempotencyHeadersSchema,
|
|
70256
|
+
params: OfficialPluginParamsSchema,
|
|
70257
|
+
response: { 200: OfficialPluginUninstallResultSchema, ...mutationErrors }
|
|
70258
|
+
}
|
|
70259
|
+
},
|
|
70260
|
+
(request2) => runIdempotent(
|
|
70261
|
+
["uninstall-official-plugin", request2.params.marketplaceName, request2.params.pluginName],
|
|
70262
|
+
request2.headers["idempotency-key"],
|
|
70263
|
+
request2.body,
|
|
70264
|
+
() => skillMarketService.uninstallOfficialPlugin(request2.body.pluginId)
|
|
70265
|
+
)
|
|
70266
|
+
);
|
|
70134
70267
|
app.get(
|
|
70135
70268
|
"/v1/skills/market",
|
|
70136
70269
|
{ schema: { querystring: MarketQuerySchema, response: { 200: ClawhubSkillPageSchema } } },
|
|
@@ -73285,6 +73418,7 @@ var ScheduledTaskService = class {
|
|
|
73285
73418
|
#repository;
|
|
73286
73419
|
#persistTaskResources;
|
|
73287
73420
|
#running = /* @__PURE__ */ new Set();
|
|
73421
|
+
#completions = /* @__PURE__ */ new Map();
|
|
73288
73422
|
#startTask;
|
|
73289
73423
|
#closed = false;
|
|
73290
73424
|
#mutation = Promise.resolve();
|
|
@@ -73383,8 +73517,8 @@ var ScheduledTaskService = class {
|
|
|
73383
73517
|
if (claim === void 0) {
|
|
73384
73518
|
throw new ScheduledTaskServiceError("busy", "Scheduled task is already running");
|
|
73385
73519
|
}
|
|
73386
|
-
this.#running.add(id);
|
|
73387
73520
|
await this.#replace(result.tasks);
|
|
73521
|
+
this.#running.add(id);
|
|
73388
73522
|
this.#launch(claim);
|
|
73389
73523
|
return claim.task;
|
|
73390
73524
|
});
|
|
@@ -73402,14 +73536,41 @@ var ScheduledTaskService = class {
|
|
|
73402
73536
|
return task;
|
|
73403
73537
|
}
|
|
73404
73538
|
#launch(claim) {
|
|
73405
|
-
const launch = this.#startTask(claim.task).then((value) => ({ status: "fulfilled", value })).catch((reason) => ({ reason, status: "rejected" })).then(
|
|
73539
|
+
const launch = Promise.resolve().then(() => this.#startTask(claim.task)).then((value) => ({ status: "fulfilled", value })).catch((reason) => ({ reason, status: "rejected" })).then(
|
|
73406
73540
|
(result) => this.#mutate(async () => {
|
|
73407
|
-
this.#
|
|
73408
|
-
await this.#
|
|
73541
|
+
this.#completions.set(claim.task.id, { claim, finishedAtUnixMs: this.#now(), result });
|
|
73542
|
+
await this.#flushCompletions();
|
|
73409
73543
|
})
|
|
73410
|
-
).
|
|
73544
|
+
).catch(() => {
|
|
73545
|
+
this.#scheduleRetry();
|
|
73546
|
+
}).finally(() => this.#inFlight.delete(launch));
|
|
73411
73547
|
this.#inFlight.add(launch);
|
|
73412
73548
|
}
|
|
73549
|
+
async #flushCompletions() {
|
|
73550
|
+
for (const [id, completion] of this.#completions) {
|
|
73551
|
+
await this.#replace(
|
|
73552
|
+
completeScheduledTaskRun(
|
|
73553
|
+
this.#tasks,
|
|
73554
|
+
completion.claim,
|
|
73555
|
+
completion.finishedAtUnixMs,
|
|
73556
|
+
completion.result
|
|
73557
|
+
)
|
|
73558
|
+
);
|
|
73559
|
+
this.#completions.delete(id);
|
|
73560
|
+
this.#running.delete(id);
|
|
73561
|
+
}
|
|
73562
|
+
}
|
|
73563
|
+
#scheduleRetry() {
|
|
73564
|
+
if (this.#timer !== void 0) clearTimeout(this.#timer);
|
|
73565
|
+
if (this.#closed) return;
|
|
73566
|
+
this.#timer = setTimeout(
|
|
73567
|
+
() => void this.#tick().catch(() => {
|
|
73568
|
+
this.#scheduleRetry();
|
|
73569
|
+
}),
|
|
73570
|
+
1e3
|
|
73571
|
+
);
|
|
73572
|
+
this.#timer.unref();
|
|
73573
|
+
}
|
|
73413
73574
|
#reschedule() {
|
|
73414
73575
|
if (this.#timer !== void 0) clearTimeout(this.#timer);
|
|
73415
73576
|
if (this.#closed) return;
|
|
@@ -73418,14 +73579,21 @@ var ScheduledTaskService = class {
|
|
|
73418
73579
|
void 0
|
|
73419
73580
|
);
|
|
73420
73581
|
const delay2 = next === void 0 ? 24 * 60 * 60 * 1e3 : Math.max(1, next - this.#now());
|
|
73421
|
-
this.#timer = setTimeout(
|
|
73582
|
+
this.#timer = setTimeout(
|
|
73583
|
+
() => void this.#tick().catch(() => {
|
|
73584
|
+
this.#scheduleRetry();
|
|
73585
|
+
}),
|
|
73586
|
+
Math.min(delay2, this.#completions.size > 0 ? 1e3 : 2147483647)
|
|
73587
|
+
);
|
|
73422
73588
|
this.#timer.unref();
|
|
73423
73589
|
}
|
|
73424
73590
|
async #tick() {
|
|
73425
73591
|
await this.#mutate(async () => {
|
|
73592
|
+
if (this.#closed) return;
|
|
73593
|
+
await this.#flushCompletions();
|
|
73426
73594
|
const result = claimScheduledTasks(this.#tasks, this.#running, this.#now());
|
|
73427
|
-
for (const claim of result.claims) this.#running.add(claim.task.id);
|
|
73428
73595
|
await this.#replace(result.tasks);
|
|
73596
|
+
for (const claim of result.claims) this.#running.add(claim.task.id);
|
|
73429
73597
|
for (const claim of result.claims) this.#launch(claim);
|
|
73430
73598
|
});
|
|
73431
73599
|
}
|
|
@@ -74899,6 +75067,11 @@ var SQLITE_MIGRATIONS = [
|
|
|
74899
75067
|
ON scheduled_task_attachments (project_id, attachment_id);
|
|
74900
75068
|
`,
|
|
74901
75069
|
version: 25
|
|
75070
|
+
},
|
|
75071
|
+
{
|
|
75072
|
+
name: "persist_queue_execution",
|
|
75073
|
+
sql: "ALTER TABLE task_queue ADD COLUMN execution_json TEXT;",
|
|
75074
|
+
version: 26
|
|
74902
75075
|
}
|
|
74903
75076
|
];
|
|
74904
75077
|
|
|
@@ -74976,15 +75149,26 @@ var SqliteScheduledTaskRepository = class {
|
|
|
74976
75149
|
}
|
|
74977
75150
|
};
|
|
74978
75151
|
|
|
74979
|
-
// packages/server/src/
|
|
75152
|
+
// packages/server/src/queue-record-persistence.ts
|
|
75153
|
+
var executionSchema = Type.Union([
|
|
75154
|
+
Type.Object({ state: Type.Literal("starting") }),
|
|
75155
|
+
Type.Object({ state: Type.Literal("started"), turn: AgentTurnSchema })
|
|
75156
|
+
]);
|
|
74980
75157
|
function parseQueueWorkerRecord(record3) {
|
|
74981
75158
|
const input = JSON.parse(record3.inputJson);
|
|
74982
75159
|
if (!value_exports.Check(AgentPromptInputSchema, input)) {
|
|
74983
75160
|
throw new Error("Persisted task queue input is invalid");
|
|
74984
75161
|
}
|
|
74985
|
-
const { inputJson: _inputJson, ...identity } = record3;
|
|
74986
|
-
return { ...identity, input };
|
|
75162
|
+
const { inputJson: _inputJson, executionJson, ...identity } = record3;
|
|
75163
|
+
if (executionJson === void 0) return { ...identity, input };
|
|
75164
|
+
const execution = JSON.parse(executionJson);
|
|
75165
|
+
if (!value_exports.Check(executionSchema, execution)) {
|
|
75166
|
+
throw new Error("Persisted task queue execution is invalid");
|
|
75167
|
+
}
|
|
75168
|
+
return { ...identity, execution, input };
|
|
74987
75169
|
}
|
|
75170
|
+
|
|
75171
|
+
// packages/server/src/sqlite-state-repository.ts
|
|
74988
75172
|
var DEFAULT_SQLITE_REQUEST_TIMEOUT_MS = 1e4;
|
|
74989
75173
|
var SqliteStateRepository = class _SqliteStateRepository extends SqliteScheduledTaskRepository {
|
|
74990
75174
|
#databasePath;
|
|
@@ -75166,6 +75350,15 @@ var SqliteStateRepository = class _SqliteStateRepository extends SqliteScheduled
|
|
|
75166
75350
|
})
|
|
75167
75351
|
);
|
|
75168
75352
|
}
|
|
75353
|
+
setQueueExecution(record3, execution) {
|
|
75354
|
+
return this.#call("setTaskQueueExecution", {
|
|
75355
|
+
projectId: record3.projectId,
|
|
75356
|
+
taskId: record3.taskId,
|
|
75357
|
+
id: record3.id,
|
|
75358
|
+
executionJson: JSON.stringify(execution),
|
|
75359
|
+
claim: execution.state === "starting"
|
|
75360
|
+
});
|
|
75361
|
+
}
|
|
75169
75362
|
deleteQueue(projectId, taskId, queuedSubmissionId) {
|
|
75170
75363
|
return this.#call("deleteTaskQueueRecord", { projectId, queuedSubmissionId, taskId });
|
|
75171
75364
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { createRequire } from 'node:module';
|
|
2
|
-
import { IsArray, IsDate, IsTypedArray, IsMap, IsSet, IsObject, IsValueType, TypeBoxError, Object as Object$1, Unknown, String, Literal, Union, IsBoolean, IsBigInt, IsNull, IsNumber, IsString, IsSymbol, IsUint8Array, IsUndefined, Kind, type_exports, IsStandardObject, TypeSystemPolicy, format_exports, IsPromise, IsIterator, KeyOfPattern, IsSchema, IsInteger, IsFunction, IsAsyncIterator, Never, HasPropertyKey, IsTemplateLiteralFinite, TemplateLiteralGenerate, IsKind, KeyOfPropertyKeys, IsTransform, TransformKind, IsUndefined2, IndexFromPropertyKeys } from './chunk-
|
|
2
|
+
import { IsArray, IsDate, IsTypedArray, IsMap, IsSet, IsObject, IsValueType, TypeBoxError, Object as Object$1, Unknown, String, Literal, Union, IsBoolean, IsBigInt, IsNull, IsNumber, IsString, IsSymbol, IsUint8Array, IsUndefined, Kind, type_exports, IsStandardObject, TypeSystemPolicy, format_exports, IsPromise, IsIterator, KeyOfPattern, IsSchema, IsInteger, IsFunction, IsAsyncIterator, Never, HasPropertyKey, IsTemplateLiteralFinite, TemplateLiteralGenerate, IsKind, KeyOfPropertyKeys, IsTransform, TransformKind, IsUndefined2, IndexFromPropertyKeys } from './chunk-G4BIMVEW.js';
|
|
3
3
|
import { __export } from './chunk-K6J42667.js';
|
|
4
4
|
|
|
5
5
|
createRequire(import.meta.url);
|