alanbox 0.1.2 → 0.1.3

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 (82) hide show
  1. package/0boxer/AGENTS.md +25 -0
  2. package/0boxer/src/AGENTS.md +16 -0
  3. package/0boxer/src/cli.js +53 -0
  4. package/0boxer/src/commands/AGENTS.md +15 -0
  5. package/{0commondflowv1 → 0boxer}/src/commands/install.js +9 -0
  6. package/{0commondflowv1 → 1swarmer}/AGENTS.md +11 -12
  7. package/{0commondflowv1 → 1swarmer}/src/AGENTS.md +6 -5
  8. package/{0commondflowv1 → 1swarmer}/src/args.js +1 -1
  9. package/{0commondflowv1 → 1swarmer}/src/cli.js +5 -21
  10. package/{0commondflowv1 → 1swarmer}/src/commands/AGENTS.md +7 -8
  11. package/{0commondflowv1 → 1swarmer}/src/commands/doctor.js +2 -2
  12. package/{0commondflowv1 → 1swarmer}/src/core/AGENTS.md +2 -2
  13. package/{0commondflowv1 → 1swarmer}/src/core/prompt-templates.js +1 -1
  14. package/{0commondflowv1 → 1swarmer}/src/core/storage.js +1 -1
  15. package/{0commondflowv1 → 1swarmer}/src/prompt/AGENTS.md +1 -1
  16. package/{0commondflowv1 → 1swarmer}/src/prompt/default.md +1 -1
  17. package/{0commondflowv1 → 1swarmer}/src/prompt/synthesizer.md +1 -1
  18. package/{0commondflowv1 → 1swarmer}/src/prompt/verifier.md +1 -1
  19. package/{0commondflowv1 → 1swarmer}/src/runner/AGENTS.md +3 -3
  20. package/2designer/LICENSE +21 -0
  21. package/2designer/README.md +39 -0
  22. package/2designer/dist/cdp-engine-A5WTMTVF.js +10 -0
  23. package/2designer/dist/cdp-engine-A5WTMTVF.js.map +1 -0
  24. package/2designer/dist/cdp-engine-JK2XVDHK.js +314 -0
  25. package/2designer/dist/cdp-engine-JK2XVDHK.js.map +1 -0
  26. package/2designer/dist/chunk-JVF26NXD.js +313 -0
  27. package/2designer/dist/chunk-JVF26NXD.js.map +1 -0
  28. package/2designer/dist/chunk-NLYFLQ3C.js +74 -0
  29. package/2designer/dist/chunk-NLYFLQ3C.js.map +1 -0
  30. package/2designer/dist/chunk-NQ3ASZUE.js +185 -0
  31. package/2designer/dist/chunk-NQ3ASZUE.js.map +1 -0
  32. package/2designer/dist/chunk-SKEIVBOU.js +58 -0
  33. package/2designer/dist/chunk-SKEIVBOU.js.map +1 -0
  34. package/2designer/dist/chunk-UVKSRKXR.js +71 -0
  35. package/2designer/dist/chunk-UVKSRKXR.js.map +1 -0
  36. package/2designer/dist/cli.js +498 -0
  37. package/2designer/dist/cli.js.map +1 -0
  38. package/2designer/dist/index.d.ts +129 -0
  39. package/2designer/dist/index.js +230 -0
  40. package/2designer/dist/index.js.map +1 -0
  41. package/2designer/dist/playwright-engine-3YKJOUNU.js +8 -0
  42. package/2designer/dist/playwright-engine-3YKJOUNU.js.map +1 -0
  43. package/2designer/dist/playwright-engine-YBRDIUHF.js +186 -0
  44. package/2designer/dist/playwright-engine-YBRDIUHF.js.map +1 -0
  45. package/2designer/dist/tint-I3FTT23O.js +60 -0
  46. package/2designer/dist/tint-I3FTT23O.js.map +1 -0
  47. package/2designer/dist/tint-RUSSUAWA.js +7 -0
  48. package/2designer/dist/tint-RUSSUAWA.js.map +1 -0
  49. package/2designer/package.json +56 -0
  50. package/README.md +11 -8
  51. package/bin/alanbox.js +11 -0
  52. package/bin/designer.js +10 -0
  53. package/bin/swarmer.js +11 -0
  54. package/cli.js +153 -0
  55. package/hooks/hooks.json +1 -1
  56. package/package.json +24 -11
  57. package/plugin/AGENTS.md +2 -2
  58. package/plugin/plugin.json +7 -7
  59. package/shared/AGENTS.md +15 -0
  60. package/shared/package-args.js +68 -0
  61. package/skills/AGENTS.md +9 -5
  62. package/skills/aitool/SKILL.md +36 -0
  63. package/skills/desginer/SKILL.md +122 -0
  64. package/skills/swarmer/SKILL.md +109 -0
  65. package/bin/multirunagent.js +0 -15
  66. package/skills/aibox-swam/SKILL.md +0 -77
  67. package/skills/sub-codex-doctor/SKILL.md +0 -27
  68. package/skills/sub-codex-swarm/SKILL.md +0 -56
  69. /package/{0commondflowv1 → 1swarmer}/res/three-lens-review.js +0 -0
  70. /package/{0commondflowv1 → 1swarmer}/src/commands/info.js +0 -0
  71. /package/{0commondflowv1 → 1swarmer}/src/commands/swarm/auto.js +0 -0
  72. /package/{0commondflowv1 → 1swarmer}/src/commands/swarm/custom.js +0 -0
  73. /package/{0commondflowv1 → 1swarmer}/src/commands/swarm/index.js +0 -0
  74. /package/{0commondflowv1 → 1swarmer}/src/core/handoff.js +0 -0
  75. /package/{0commondflowv1 → 1swarmer}/src/core/prompt-builder.js +0 -0
  76. /package/{0commondflowv1 → 1swarmer}/src/core/swarm-executor.js +0 -0
  77. /package/{0commondflowv1 → 1swarmer}/src/core/workers.js +0 -0
  78. /package/{0commondflowv1 → 1swarmer}/src/core/workflow-planner.js +0 -0
  79. /package/{0commondflowv1 → 1swarmer}/src/core/workflow-storage.js +0 -0
  80. /package/{0commondflowv1 → 1swarmer}/src/prompt/reviewer.md +0 -0
  81. /package/{0commondflowv1 → 1swarmer}/src/runner/codex-runner.js +0 -0
  82. /package/{0commondflowv1 → 1swarmer}/src/runner/config.json +0 -0
@@ -0,0 +1,25 @@
1
+ ## 0boxer
2
+
3
+ `C:\Users\lenovo\Desktop\my-project\101my-aitool\aibox\0boxer` 是 `alanbox` 的包级资源命令层,负责 aibox 自身资源安装、初始化和更新。`1swarmer` 负责 worker/swarm 执行和 provider 诊断;不要把 `init`、`update`、`install` 这类 aibox 资源命令写回 `1swarmer`。
4
+
5
+ **Important:** `install`、`init`、`update` 会真实复制 Codex/Claude skills、hooks、mcp、scripts 和 Codex plugin manifest。修改或验证前确认目标目录,避免误写用户环境。
6
+
7
+ ### Important files
8
+
9
+ - `src/cli.js` — 0boxer 命令分发器;当前只处理 `install`、`init`、`update`。
10
+ - `../shared/package-args.js` — 包级资源命令参数解析器;只解析安装 target 相关选项,不依赖 `1swarmer/src/args.js`。
11
+ - `src/commands/install.js` — 安装或更新 Codex/Claude 资源;Codex 额外维护 plugin manifest 和 marketplace entry。
12
+
13
+ ### Implementation notes
14
+
15
+ - `init` 和 `update` 当前是 `install` 的别名,用来安装或刷新 bundled skills/hooks/mcp/scripts。
16
+ - `--target codex|claude|both` 可跳过询问;未传 target 且在交互终端运行时会询问安装到 Codex、Claude 还是两者,非交互模式必须显式传 target。
17
+ - `0boxer` 不复用 `1swarmer` 的参数解析;新增资源命令选项时维护 `../shared/package-args.js`,避免把 worker/swarm 参数带进包级安装命令。
18
+ - 重命名或合并 skill 时,同步维护 `install.js` 的废弃 skill 清理名单,避免用户目录残留重复入口。
19
+ - aibox 资源命令优先挂在 `0boxer/src/cli.js` 和根 `cli.js`;worker/provider 命令归 `1swarmer`。
20
+
21
+ ### Verification
22
+
23
+ - 从包根目录运行:`npm test`
24
+ - 轻量检查包级帮助:`node bin/alanbox.js init --help`
25
+ - 安装命令需要真实复制资源:`node bin/alanbox.js install --target codex`、`--target claude` 或 `--target both`
@@ -0,0 +1,16 @@
1
+ ## 0boxer src
2
+
3
+ `0boxer/src` 是 `alanbox` 包级资源命令源码目录。这里维护 aibox 自身的资源安装、初始化和更新;worker 执行、provider 诊断、handoff、storage、runner 配置仍归 `1swarmer/src`。
4
+
5
+ **Important:** 这里通过 `../../shared/package-args.js` 使用包级资源命令参数解析,不要依赖 `1swarmer` 的参数解析或 runner;provider 诊断命令归 `1swarmer`。
6
+
7
+ ### Important files
8
+
9
+ - `cli.js` — 包级资源命令分发器;只处理 `install`、`init`、`update`。
10
+ - `commands/install.js` — 复制 bundled resources 到 Codex/Claude 用户目录。
11
+
12
+ ### Implementation notes
13
+
14
+ - 安装命令必须显式触发;不要让 `npm install`、`npx` 或普通 require 隐式写用户目录。
15
+ - 不要从 `1swarmer/src/args.js` 引入 worker 参数解析;`0boxer` 只使用 `shared/package-args.js` 的包级资源命令选项集。
16
+ - 新增 aibox 包级资源命令时,同步更新根 `cli.js`、README、skills 和 `0boxer/AGENTS.md`。
@@ -0,0 +1,53 @@
1
+ /**
2
+ * aibox 包级命令分发器。
3
+ * 负责 install/init/update 资源安装更新。
4
+ */
5
+
6
+ const { parsePackageArgs } = require('../../shared/package-args');
7
+ const { runInstall } = require('./commands/install');
8
+
9
+ async function main(argv = process.argv.slice(2)) {
10
+ if (argv.includes('-h') || argv.includes('--help') || argv[0] === 'help') {
11
+ printUsage();
12
+ return;
13
+ }
14
+
15
+ const command = argv[0] && !argv[0].startsWith('-') ? argv.shift() : '';
16
+ if (!command) {
17
+ printUsage();
18
+ return;
19
+ }
20
+
21
+ const args = parsePackageArgs(argv, command);
22
+ const context = { args };
23
+
24
+ if (command === 'install' || command === 'init' || command === 'update') {
25
+ await runInstall(context);
26
+ return;
27
+ }
28
+
29
+ throw new Error(`unknown aibox command: ${command}`);
30
+ }
31
+
32
+ function printUsage() {
33
+ console.log(`
34
+ aibox package commands
35
+
36
+ Usage:
37
+ alanbox install --target codex|claude|both
38
+ alanbox init
39
+ alanbox update
40
+
41
+ Install options:
42
+ --target <target> codex | claude | both. If omitted, install asks interactively.
43
+ --codex Install only Codex resources
44
+ --claude Install only Claude resources
45
+ --both Install Codex and Claude resources
46
+ init/update Aliases of install; use them when you want an interactive target choice.
47
+ `);
48
+ }
49
+
50
+ module.exports = {
51
+ main,
52
+ printUsage,
53
+ };
@@ -0,0 +1,15 @@
1
+ ## 0boxer commands
2
+
3
+ `0boxer/src/commands` 存放 `alanbox` 包级资源命令处理器。这里的命令面向 aibox 自身资源安装和更新,不直接执行 swarm worker,也不做 provider 诊断。
4
+
5
+ **Important:** `install` 会写入用户 Codex/Claude 目录;新增验证命令时不要默认运行真实安装,除非用户明确要求或已确认目标。
6
+
7
+ ### Important files
8
+
9
+ - `install.js` — 安装或更新 Codex/Claude skills、hooks、mcp、scripts;Codex 额外安装 plugin manifest 和 marketplace entry。
10
+
11
+ ### Implementation notes
12
+
13
+ - `init`、`update` 通过 `0boxer/src/cli.js` 进入 `install.js`,语义是安装或刷新 aibox bundled resources。
14
+ - 安装 target 必须是 `codex`、`claude` 或 `both`;非交互模式必须显式传 target。
15
+ - 废弃 skill 名清理名单和 `skills/AGENTS.md` 要保持同步。
@@ -3,6 +3,7 @@ const path = require('path');
3
3
  const readline = require('readline');
4
4
 
5
5
  const INSTALL_TARGETS = new Set(['codex', 'claude', 'both']);
6
+ const DEPRECATED_SKILL_NAMES = ['aibox-swarmer', 'sub-codex-doctor', 'sub-codex-swarmer'];
6
7
 
7
8
  async function runInstall(context = {}) {
8
9
  const packageRoot = path.resolve(__dirname, '..', '..', '..');
@@ -51,6 +52,7 @@ function installCodex({ home, packageRoot }) {
51
52
  replaceDir(packageScriptsRoot, path.join(pluginRoot, 'scripts'));
52
53
  replaceDir(packageMcpRoot, path.join(pluginRoot, 'mcp'));
53
54
  copyOptionalFile(path.join(packageRoot, 'README.md'), path.join(pluginRoot, 'README.md'));
55
+ pruneDeprecatedSkills(codexSkillsRoot);
54
56
  installSkills(packageSkillsRoot, codexSkillsRoot);
55
57
  installResourceDir(packageHooksRoot, path.join(codexHome, 'hooks', pluginName));
56
58
  installResourceDir(packageMcpRoot, path.join(codexHome, 'mcp', pluginName));
@@ -83,6 +85,7 @@ function installClaude({ home, packageRoot }) {
83
85
  replaceDir(packageScriptsRoot, path.join(pluginRoot, 'scripts'));
84
86
  replaceDir(packageMcpRoot, path.join(pluginRoot, 'mcp'));
85
87
  copyOptionalFile(path.join(packageRoot, 'README.md'), path.join(pluginRoot, 'README.md'));
88
+ pruneDeprecatedSkills(claudeSkillsRoot);
86
89
  installSkills(packageSkillsRoot, claudeSkillsRoot);
87
90
  installResourceDir(packageHooksRoot, path.join(claudeHome, 'hooks', pluginName));
88
91
  installResourceDir(packageMcpRoot, path.join(claudeHome, 'mcp', pluginName));
@@ -196,6 +199,12 @@ function installSkills(srcRoot, dstRoot) {
196
199
  }
197
200
  }
198
201
 
202
+ function pruneDeprecatedSkills(dstRoot) {
203
+ for (const name of DEPRECATED_SKILL_NAMES) {
204
+ removeDir(path.join(dstRoot, name));
205
+ }
206
+ }
207
+
199
208
  function removeDir(target) {
200
209
  if (!fs.existsSync(target)) return;
201
210
  fs.rmSync(target, { recursive: true, force: true });
@@ -1,21 +1,20 @@
1
- ## 0commondflowv1
1
+ ## 1swarmer
2
2
 
3
- `C:\Users\lenovo\Desktop\my-project\101my-aitool\aibox\0commondflowv1` 是 `alanbox` 当前主实现层,承接 CLI 命令、参数解析、Codex/Claude 子进程 runner、worker 编排、handoff、用户级 `.multirunagent` 存储、prompt 构造和 Codex/Claude 资源安装。根目录 `bin/multirunagent.js` 和 `index.js` 只负责转发到 `0commondflowv1/src/cli.js`。
3
+ `C:\Users\lenovo\Desktop\my-project\101my-aitool\aibox\1swarmer` 是 `alanbox` worker flow 实现层,承接 `swarmer` / `swarm`、`doctor`、`info`、参数解析、Codex/Claude 子进程 runner、worker 编排、handoff、用户级 `.multirunagent` 存储和 prompt 构造。包根 `cli.js` 负责流程级路由,`bin/alanbox.js` 和 `bin/swarmer.js` 转发到包根 `cli.js`,再由包根转入本目录。
4
4
 
5
- **Important:** `0commondflowv1` 是当前稳定入口;npm 包名是 `alanbox`,CLI bin 暴露 `alanbox`、裸 `swam` 和兼容名 `multirunagent`。不要在没有迁移计划的情况下重命名用户级 `.multirunagent` 存储目录。
5
+ **Important:** `1swarmer` worker 编排和 provider 诊断稳定入口,不是包级资源安装入口。`install`、`init`、`update` `0boxer`;新增 `2designer` / `3apiflower` 这类流程时挂到包根 `cli.js`,不要把非 worker flow 的参数解析塞进这里。
6
6
 
7
7
  **Important:** `src/runner/config.json` 默认 provider 是系统 `codex` CLI;Claude CLI 只能作为可选 provider/worker 配置启用。不要把个人 Antigravity cockpit 路径、全局 npm 安装路径或私有 home 写成通用默认配置。
8
8
 
9
9
  ### Important files
10
10
 
11
- - `src/cli.js` — 0commondflowv1 主命令分发器;加载配置、解析运行上下文,并路由到 `doctor`、`info`、`install/init/update`、`swarm`;`swam` 是 `swarm` 的兼容别名,也作为 npm 独立 bin 暴露。
11
+ - `src/cli.js` — 1swarmer worker 命令分发器;加载配置、解析运行上下文,并路由到 `doctor`、`info`、`swarm`;`swarmer` 是 `swarm` 的兼容别名,也作为 npm 独立 bin 暴露。
12
12
  - `src/args.js` — CLI 参数解析器;新增 flag 或命令参数时优先在这里统一处理。
13
13
  - `src/commands/swarm/index.js` — `swarm` 命令入口与路由;`cli.js` 通过 `require('./commands/swarm')` 解析到此,`--auto` / `--resume` 委托 `swarm/auto.js`,否则走 `swarm/custom.js`。
14
14
  - `src/commands/swarm/custom.js` — 多 worker 编排主流程;负责 worker spec 执行。
15
15
  - `src/commands/swarm/auto.js` — auto workflow 状态机;负责 GOAP 推荐、确认门、pending/resume、执行、失败重规划。
16
- - `src/commands/doctor.js` — 子 Codex 环境和账号健康检查。
17
16
  - `src/commands/info.js` — 输出当前配置、worker 和命令信息。
18
- - `src/commands/install.js` — 显式安装 Codex/Claude skills、hooks、mcp、scripts;Codex 额外安装 plugin manifest 和 marketplace entry。
17
+ - `src/commands/doctor.js` — swarm/provider 健康检查。
19
18
  - `src/runner/codex-runner.js` — Codex 子进程执行层;负责读取配置、设置 `CODEX_HOME`、spawn `codex exec/login/doctor`。
20
19
  - `src/runner/config.json` — 当前内置最小配置来源;默认只声明 `providers.codex`、可选 `providers.claude` 和 `timeoutMs`,不预设 worker/account,默认使用各 CLI 的原生 home 和登录态。
21
20
  - `src/core/workers.js` — worker spec 解析、分组并行阶段解析、worker 名称归一化和依赖层构建。
@@ -29,11 +28,12 @@
29
28
 
30
29
  ### Implementation notes
31
30
 
32
- - `swam`/`swarm` 是 worker 执行的唯一业务入口;单 worker 使用一个 `--worker`,需要全并行时使用 `swarm --parallel-workers`,需要混合串行/并行时用 `--worker "[spec1,spec2]"` 表示同一阶段并行。不要恢复独立 `exec` 或 `parallel` 命令。
31
+ - `swarmer`/`swarm` 是 worker 执行的唯一业务入口;单 worker 使用一个 `--worker`,需要全并行时使用 `swarm --parallel-workers`,需要混合串行/并行时用 `--worker "[spec1,spec2]"` 表示同一阶段并行。不要恢复独立 `exec` 或 `parallel` 命令。
32
+ - `1swarmer/src/cli.js` 只维护 worker/common 命令;包级命令组、`designer`、未来 `3apiflower` 入口应维护在 `aibox/cli.js` 和专用 `bin/*.js`。
33
33
  - CLI 的 `--worker` 输入和未来 workflow JSON 最终都应转换为统一 task 数组,再交给同一个执行器处理。
34
34
  - 调整参数解析时,同步检查 `src/cli.js` 的 usage 文案、README 命令示例和相关 skills。
35
- - 调整 worker/handoff/storage 协议时,同步检查根目录 `skills/aibox-swam` 和 `skills/sub-codex-*` 的说明,避免 skill 仍指导旧参数或旧输出格式。
36
- - `install`、`init`、`update` 都会安装或更新 agent 资源;`--target codex|claude|both` 可跳过询问,未传 target 时只在交互终端询问,非交互模式必须显式传 target,避免误写用户目录。
35
+ - 调整 worker/handoff/storage 协议时,同步检查根目录 `skills/swarmer` 的说明,避免 skill 仍指导旧参数或旧输出格式。
36
+ - `install`、`init`、`update` 都是 aibox 包级资源命令,归 `0boxer` 维护;不要在本目录重新接回这些命令。`doctor` provider 诊断命令,归本目录。
37
37
  - `%USERPROFILE%\.multirunagent\<namespace>` 是运行结果和 handoff 的持久化位置;改写存储格式前要考虑旧 run 的读取兼容。项目内 `.sub-codex` 是旧位置,不应再作为默认输出目录。
38
38
  - scheduler、retry、resume、workflow JSON 等能力如果新增,应先复用现有 `swarm` 执行链路,再扩展状态机;当前 `swarm --auto` 已通过 `swarm/auto.js` + `swarm-executor.js` 复用普通 swarm 执行链路。
39
39
  - 默认不隔离 CLI home:不设置 `CODEX_HOME` / `CLAUDE_CONFIG_DIR`,让 Codex/Claude 使用原生登录态;只有显式配置 `accountsDir`、worker account 或 home 时才启用隔离。
@@ -45,7 +45,6 @@
45
45
 
46
46
  - 从包根目录运行烟雾检查:`npm test`
47
47
  - 从包根目录运行轻量验证:`npm run validate`
48
- - 直接查看信息:`node bin/multirunagent.js info`
49
- - 直接检查环境:`node bin/multirunagent.js doctor`
50
- - 检查安装参数解析:`node bin/multirunagent.js install --target codex` 或 `--target claude`(会真实复制资源,确认目标目录后再运行)
48
+ - 直接查看信息:`node bin/swarmer.js info`
49
+ - 直接检查 provider 环境:`node bin/alanbox.js doctor` 或 `node bin/swarmer.js doctor`
51
50
  - 注意:`--dry-run` 已移除,swarm/auto 不再有离线预览,运行即调用真实 provider;确认参数与命令构造请用 `info`。
@@ -1,12 +1,12 @@
1
- ## 0commondflowv1 src
1
+ ## 1swarmer src
2
2
 
3
- `0commondflowv1/src` 是 `alanbox` 的当前主源码目录,负责 CLI 参数解析、命令分发、worker 编排、runner 执行、handoff、存储和 prompt 构造。入口由包根 `bin/multirunagent.js` / `index.js` 转发到 `cli.js`,npm 发布后同时暴露 `alanbox` 和兼容 bin `multirunagent`。
3
+ `1swarmer/src` 是 `alanbox` worker flow 源码目录,负责 `swarmer` / `swarm`、`doctor`、`info`、worker 编排、runner 执行、handoff、存储和 prompt 构造。入口由包根 `cli.js` 做流程级路由后进入这里,npm 发布后暴露 `alanbox`、裸 `swarmer` 和裸 `designer`。
4
4
 
5
- **Important:** 这里是 0commondflowv1 的稳定实现层。新增命令、flag、provider、worker 协议或存储行为时,要同步检查 `0commondflowv1/AGENTS.md`、README、skills 说明和 `alanbox info` / `--help` 输出;本地源码验证仍可用 `node bin/multirunagent.js ...`。
5
+ **Important:** 这里是 1swarmer 的稳定实现层。新增命令、flag、provider、worker 协议或存储行为时,要同步检查 `1swarmer/AGENTS.md`、README、skills 说明和 `swarmer info` / `--help` 输出;本地源码验证使用 `node bin/alanbox.js ...` 或 `node bin/swarmer.js ...`。
6
6
 
7
7
  ### Important files
8
8
 
9
- - `cli.js` — CLI 主分发器;命令入口和 usage 文案在这里维护。
9
+ - `cli.js` — 1swarmer worker CLI 分发器;`swarm`、`doctor`、`info` 的入口和 usage 文案在这里维护。aibox 包级 `install/init/update` 归 `0boxer`。
10
10
  - `args.js` — 通用参数解析;新增 flag 时优先在这里统一处理。
11
11
  - `commands/` — 具体 CLI 命令实现;`swarm` 拆分为 `commands/swarm/`(`index.js` 路由、`custom.js` 手动 worker、`auto.js` 推荐/确认/恢复流程),修改前先读 `commands/AGENTS.md`。
12
12
  - `core/` — worker、handoff、storage、prompt 构造等核心协议;修改前先读 `core/AGENTS.md`。
@@ -16,6 +16,7 @@
16
16
  ### Implementation notes
17
17
 
18
18
  - `swarm` 是 worker 执行的唯一业务入口;单 worker 使用一个 `--worker`,全并行多 worker 走 `swarm --parallel-workers`,混合串行/并行用 `--worker "[spec1,spec2]"` 表达同一阶段并行,不要复制出独立 `exec` 或 `parallel` 命令。
19
+ - 包级流程路由不在本目录维护;`install/init/update` 归 `0boxer`,`designer` 和未来其他 flow 入口应挂在 `aibox/cli.js`,避免本文件重新变成所有流程混杂的总入口。
19
20
  - 默认使用原生 CLI 登录态;只有显式配置隔离 home 时才设置 `CODEX_HOME` 或 `CLAUDE_CONFIG_DIR`。
20
21
  - 多 worker 输出默认写入 `%USERPROFILE%\.multirunagent\<namespace>`,不要重新写回项目内 `.sub-codex`。
21
22
  - Windows 兼容是长期约束;路径拼接使用 Node `path`,命令文案和示例要考虑 PowerShell。
@@ -23,4 +24,4 @@
23
24
  ### Verification
24
25
 
25
26
  - 从包根目录运行:`npm run validate`
26
- - 直接检查配置与参数解析:`node bin/multirunagent.js info`
27
+ - 直接检查配置与参数解析:`node bin/swarmer.js info`
@@ -1,5 +1,5 @@
1
1
  /**
2
- * multirunagent 的 CLI 参数解析器。
2
+ * alanbox common flow 的 CLI 参数解析器。
3
3
  * 统一处理 flag、位置 prompt 和多 worker 任务规格。
4
4
  */
5
5
 
@@ -7,7 +7,6 @@ const { loadConfig } = require('./runner/codex-runner');
7
7
  const { parseArgs } = require('./args');
8
8
  const { runDoctor } = require('./commands/doctor');
9
9
  const { runInfo } = require('./commands/info');
10
- const { runInstall } = require('./commands/install');
11
10
  const { runSwarm } = require('./commands/swarm');
12
11
 
13
12
  async function main(argv = process.argv.slice(2)) {
@@ -17,9 +16,9 @@ async function main(argv = process.argv.slice(2)) {
17
16
  }
18
17
 
19
18
  let command = argv[0] && !argv[0].startsWith('-') ? argv.shift() : 'swarm';
20
- if (command === 'swam') {
19
+ if (command === 'swarmer') {
21
20
  command = 'swarm';
22
- console.error('[alanbox] `swam` 已按 `swarm` 兼容处理。');
21
+ console.error('[alanbox] `swarmer` 已按 `swarm` 兼容处理。');
23
22
  }
24
23
 
25
24
  if (command === 'help') {
@@ -46,11 +45,6 @@ async function main(argv = process.argv.slice(2)) {
46
45
  return;
47
46
  }
48
47
 
49
- if (command === 'install' || command === 'init' || command === 'update') {
50
- await runInstall(context);
51
- return;
52
- }
53
-
54
48
  if (command === 'swarm') {
55
49
  await runSwarm(context);
56
50
  return;
@@ -64,16 +58,13 @@ function printUsage() {
64
58
  alanbox CLI runner
65
59
 
66
60
  Usage:
67
- node index.js info [--account 30428]
68
61
  node index.js doctor [--account 30428]
69
- node index.js install [--target codex|claude|both]
70
- node index.js init
71
- node index.js update
62
+ node index.js info [--account 30428]
72
63
  node index.js swarm [options] --worker "codex:<role>:<prompt>" --worker "claude:<role>:<prompt>"
73
- node index.js swam [options] --worker "codex:<role>:<prompt>"
64
+ node index.js swarmer [options] --worker "codex:<role>:<prompt>"
74
65
  node index.js swarm --worker "codex:a:先做 A" --worker "[codex:c:并行 C,codex:d:并行 D]" --worker "codex:e:最后汇总"
75
66
  node index.js swarm --auto "<goal>" -a "codex:reviewer:复核代码" -p "最好每个子文件夹一个子agent并行"
76
- node index.js swam --auto "<goal>" -a "codex:reviewer:复核代码"
67
+ node index.js swarmer --auto "<goal>" -a "codex:reviewer:复核代码"
77
68
  node index.js swarm --resume <runId> --namespace <name> -y
78
69
 
79
70
  Options:
@@ -96,13 +87,6 @@ Options:
96
87
  --task <spec> Backward-compatible alias for --worker in swarm mode
97
88
  --parallel-workers Run swarm workers in parallel instead of dependency order
98
89
 
99
- Install options:
100
- --target <target> codex | claude | both. If omitted, install asks interactively.
101
- --codex Install only Codex resources
102
- --claude Install only Claude resources
103
- --both Install Codex and Claude resources
104
- init/update Aliases of install; use them when you want an interactive target choice.
105
-
106
90
  Auto workflow options:
107
91
  --auto Let GOAP planner recommend workflow before execution
108
92
  --agent, -a <spec> Repeatable auto agent spec. Example: codex:reviewer:复核 src 代码
@@ -1,6 +1,6 @@
1
1
  ## commands
2
2
 
3
- `0commondflowv1/src/commands` 存放 `alanbox` 的具体 CLI 命令处理器。每个文件只负责一个命令的行为编排,底层 worker 解析、runner 执行、handoff 和 storage 应复用 `core/`、`runner/`、`prompt/`。
3
+ `1swarmer/src/commands` 存放 `alanbox` worker provider 诊断命令处理器。每个文件只负责本 flow 相关命令的行为编排,底层 worker 解析、runner 执行、handoff 和 storage 应复用 `core/`、`runner/`、`prompt/`。
4
4
 
5
5
  **Important:** 新增或修改命令参数时,必须同步检查 `src/args.js`、`src/cli.js` usage 文案、README 和相关 skills,避免 CLI 行为和说明不一致。
6
6
 
@@ -9,21 +9,20 @@
9
9
  - `swarm/index.js` — `swarm` 命令入口与路由;`--auto` / `--resume` 委托 `swarm/auto.js`,否则走 `swarm/custom.js`。`cli.js` 通过 `require('./commands/swarm')` 解析到此目录。
10
10
  - `swarm/custom.js` — 多 worker 串行/依赖层编排;解析 worker specs 后复用共享 executor。
11
11
  - `swarm/auto.js` — `swarm --auto` 状态机;负责 GOAP workflow 推荐、确认门、pending/resume、执行和失败重规划。
12
- - `doctor.js` — 环境和 provider 健康检查;用于诊断 CLI 命令、home、认证和 dry-run。
13
12
  - `info.js` — 输出当前配置和运行信息;应避免泄露 secret 或本机敏感路径之外的无关细节。
14
- - `install.js` — 显式安装或更新 Codex/Claude skills、hooks、mcp 和 scripts;`install`、`init`、`update` 都会进入这里,Codex 额外维护 plugin manifest 与 marketplace。不要让普通包加载隐式安装资源。
13
+ - `doctor.js` — provider 健康检查;用于诊断 CLI 命令、home、认证和运行环境。
15
14
 
16
15
  ### Implementation notes
17
16
 
18
17
  - `swarm` 的 runDir 应来自 `core/storage.js`,默认在 `%USERPROFILE%\.multirunagent\<namespace>`;auto workflow run 使用 `%USERPROFILE%\.multirunagent\<namespace>\runs\<runId>`。
19
18
  - `swarm --auto` 中 `-a` 表示 repeatable agent spec、`-p` 表示 plan hint;非 auto 命令仍保持旧 account/profile 语义,文档和 usage 必须同步说明。
20
- - worker 执行统一通过 `swam`/`swarm` 开启;单 worker 使用一个 `--worker`,全并行多 worker 使用 `swarm --parallel-workers`,混合串行/并行用 `--worker "[spec1,spec2]"` 表达同一阶段并行。不要恢复独立 `exec` / `parallel` 命令或复制执行链路。
21
- - `install`、`init`、`update` 支持 `--target codex|claude|both`、`--codex`、`--claude`、`--both`;未传目标时只在交互终端询问,脚本/CI 中必须显式传目标。
22
- - `alanbox info` 输出解析后的 provider、command、env 和 worker 配置,是用户排查的重要依据;改动 provider、env、args 解析时要实际运行 `info` 检查(本地源码可用 `node bin/multirunagent.js info`,`--dry-run` 预览已移除)。
19
+ - worker 执行统一通过 `swarmer`/`swarm` 开启;单 worker 使用一个 `--worker`,全并行多 worker 使用 `swarm --parallel-workers`,混合串行/并行用 `--worker "[spec1,spec2]"` 表达同一阶段并行。不要恢复独立 `exec` / `parallel` 命令或复制执行链路。
20
+ - `install`、`init`、`update` `0boxer/src/commands`;不要在本目录新增或恢复这些包级资源命令。
21
+ - `swarmer info` 输出解析后的 provider、command、env 和 worker 配置,是用户排查的重要依据;改动 provider、env、args 解析时要实际运行 `info` 检查(本地源码可用 `node bin/swarmer.js info`,`--dry-run` 预览已移除)。
23
22
 
24
23
  ### Verification
25
24
 
26
25
  - 从包根目录运行:`npm run validate`
27
- - 修改命令参数或 provider/env 展示后:`node bin/multirunagent.js info`
26
+ - 修改命令参数或 provider/env 展示后:`node bin/swarmer.js info`
27
+ - 修改 provider 诊断后:`node bin/swarmer.js doctor`
28
28
  - 修改 auto workflow、planner 或模板后,需实际运行一次 `swarm --auto`(已无 dry-run/JSON 离线预览)验证。
29
- - 修改安装命令后额外检查:`node bin/multirunagent.js install --target codex`、`--target claude` 或 `--target both`(会真实复制资源,确认目标目录后再运行)。
@@ -1,6 +1,6 @@
1
1
  /**
2
- * doctor 命令处理器。
3
- * 把环境和 Codex CLI 诊断委托给 0commondflowv1/src/runner/codex-runner。
2
+ * swarm doctor 命令处理器。
3
+ * 把环境和 provider 诊断委托给 1swarmer/src/runner/codex-runner。
4
4
  */
5
5
 
6
6
  const { doctor } = require('../runner/codex-runner');
@@ -1,6 +1,6 @@
1
1
  ## core
2
2
 
3
- `0commondflowv1/src/core` 存放 worker 编排协议、handoff 协议、prompt 构造和本地结果存储辅助函数,是 `swarm` 使用的核心逻辑。
3
+ `1swarmer/src/core` 存放 worker 编排协议、handoff 协议、prompt 构造和本地结果存储辅助函数,是 `swarm` 使用的核心逻辑。
4
4
 
5
5
  **Important:** 这里的输出格式、prompt 协议和路径会被命令、skills、README 和用户历史 run 依赖。改协议或存储结构前,要考虑旧结果读取兼容,并同步更新说明文档。
6
6
 
@@ -10,7 +10,7 @@
10
10
  - `swarm-executor.js` — 普通 swarm 和 auto workflow 共用的 task graph 执行器;负责 runner 调用、结果写入和 handoff 汇总,`swarm --parallel-workers` 也走这里。
11
11
  - `workflow-planner.js` — 本地最小 GOAP planner;把自然语言目标、`-a` agent spec 和 `-p` plan hint 转成 phases/actions/dependencies。
12
12
  - `workflow-storage.js` — auto workflow 的 AgentDB-lite 文件存储;写入 run/plan/state/steps JSON,不替代旧 swarm results/memory。
13
- - `prompt-templates.js` — 从 `0commondflowv1/src/prompt/<role>.md` 读取 auto workflow role 模板并安全 fallback。
13
+ - `prompt-templates.js` — 从 `1swarmer/src/prompt/<role>.md` 读取 auto workflow role 模板并安全 fallback。
14
14
  - `handoff.js` — 构造 prior results context,并解析 / 生成 `HANDOFF_JSON`。
15
15
  - `prompt-builder.js` — 构造 role、worker、platform、namespace、context、skill 和 task 的最终 prompt。
16
16
  - `storage.js` — 写入 worker markdown 输出和 memory JSON;默认根目录是 `%USERPROFILE%\.multirunagent`。
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Auto workflow prompt 模板辅助函数。
3
- * 模板位于 0commondflowv1/src/prompt/<role>.md,role 会先清洗,找不到时回退到 default.md 或内联模板。
3
+ * 模板位于 1swarmer/src/prompt/<role>.md,role 会先清洗,找不到时回退到 default.md 或内联模板。
4
4
  */
5
5
 
6
6
  const fs = require('fs');
@@ -73,7 +73,7 @@ function updateMemoryIndex(memoryDir, entry) {
73
73
  function getUserStateRoot() {
74
74
  const homeDir = process.env.USERPROFILE || process.env.HOME;
75
75
  if (!homeDir) {
76
- throw new Error('cannot resolve user home directory for multirunagent state');
76
+ throw new Error('cannot resolve user home directory for alanbox state');
77
77
  }
78
78
  return path.join(homeDir, '.multirunagent');
79
79
  }
@@ -1,6 +1,6 @@
1
1
  ## prompt
2
2
 
3
- `0commondflowv1/src/prompt` 存放随源码维护的可复用提示词模板
3
+ `1swarmer/src/prompt` 存放随源码维护的可复用提示词模板
4
4
 
5
5
  ### Important files
6
6
 
@@ -1,6 +1,6 @@
1
1
  # Default Agent Prompt
2
2
 
3
- 你是 multirunagent auto workflow 中的 {{role}} agent。
3
+ 你是 alanbox auto workflow 中的 {{role}} agent。
4
4
 
5
5
  ## 目标
6
6
 
@@ -1,6 +1,6 @@
1
1
  # Synthesizer Prompt
2
2
 
3
- 你是 multirunagent auto workflow 的汇总 agent。
3
+ 你是 alanbox auto workflow 的汇总 agent。
4
4
 
5
5
  ## 总目标
6
6
 
@@ -1,6 +1,6 @@
1
1
  # Verifier Prompt
2
2
 
3
- 你是 multirunagent auto workflow 的验证 agent。
3
+ 你是 alanbox auto workflow 的验证 agent。
4
4
 
5
5
  ## 总目标
6
6
 
@@ -1,6 +1,6 @@
1
1
  ## runner
2
2
 
3
- `0commondflowv1/src/runner` 负责读取 provider 配置、解析 CLI 命令参数,并通过子进程启动 Codex 或 Claude。这里决定是否使用原生 CLI home,或在显式配置时启用隔离 home。
3
+ `1swarmer/src/runner` 负责读取 provider 配置、解析 CLI 命令参数,并通过子进程启动 Codex 或 Claude。这里决定是否使用原生 CLI home,或在显式配置时启用隔离 home。
4
4
 
5
5
  **Important:** 默认必须使用原生 Codex / Claude CLI 登录态,不设置 `CODEX_HOME` 或 `CLAUDE_CONFIG_DIR`。只有显式配置 `accountsDir`、worker account 或 home 时才启用隔离。
6
6
 
@@ -19,6 +19,6 @@
19
19
 
20
20
  ### Verification
21
21
 
22
- - 从包根目录运行:`node bin/multirunagent.js doctor`
23
- - 检查默认 provider:`node bin/multirunagent.js info`
22
+ - 从包根目录运行:`node bin/alanbox.js doctor` 或 `node bin/swarmer.js doctor`
23
+ - 检查默认 provider:`node bin/swarmer.js info`
24
24
  - 注意:`--dry-run` 已移除,检查子 worker 命令构造请用 `info`(已无 swarm dry-run 预览)。
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Zhiyu Fang
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,39 @@
1
+ # designer
2
+
3
+ Runtime UI measurement CLI for AI agents. The active command surface is intentionally small:
4
+
5
+ - `measure` — read element bbox, computed CSS, and optional child layout as JSON.
6
+ - `screenshot` — capture a full page or selected element as PNG.
7
+ - `overlay` — tint a design screenshot magenta and composite it over the runtime page.
8
+
9
+ The CLI is bundled through `alanbox` as both `designer` and `alanbox designer ...`.
10
+
11
+ ## Commands
12
+
13
+ ```bash
14
+ designer measure --url "http://localhost:3000" --selector ".dialog"
15
+ designer screenshot --url "http://localhost:3000" --selector ".dialog" --output runtime.png
16
+ designer overlay --design design.png --url "http://localhost:3000" --selector ".dialog" --output overlay.png
17
+ ```
18
+
19
+ For Axure or iframe-based designs:
20
+
21
+ ```bash
22
+ designer measure --url "http://127.0.0.1:32767/start.html" --frame "#mainFrame" --selector "#u0" --depth 0 --cdp 127.0.0.1:8000
23
+ ```
24
+
25
+ ## Structure
26
+
27
+ - `src/` — active implementation.
28
+ - `dist/` — built runtime shipped by `alanbox`.
29
+ - `res/designer-main-legacy/` — archived old commands and references, not part of the active CLI.
30
+
31
+ ## Development
32
+
33
+ ```bash
34
+ pnpm install
35
+ pnpm build
36
+ pnpm test
37
+ ```
38
+
39
+ The active workflow is guided by `../skills/desginer/SKILL.md`; keep command options there in sync with `src/cli.ts`.
@@ -0,0 +1,10 @@
1
+ import {
2
+ CdpEngine,
3
+ buildClip
4
+ } from "./chunk-JVF26NXD.js";
5
+ import "./chunk-UVKSRKXR.js";
6
+ export {
7
+ CdpEngine,
8
+ buildClip
9
+ };
10
+ //# sourceMappingURL=cdp-engine-A5WTMTVF.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}