@agent_forge/forge-linux-arm64 1.42.1 → 1.43.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/bin/README.md +13 -10
- package/bin/forge +0 -0
- package/package.json +1 -1
package/bin/README.md
CHANGED
|
@@ -144,7 +144,7 @@ Forge 退出码三态(`BLOCKED` 硬阻断 / `ADVISORY` 软信号)即这一
|
|
|
144
144
|
每个开发任务自动走 3 道门禁:
|
|
145
145
|
|
|
146
146
|
```bash
|
|
147
|
-
forge task start --ref feat/add-login --branch --accept "go test -v ./... :: PASS" # 创建任务+分支+登记验收标准(--accept 可重复;Expected
|
|
147
|
+
forge task start --ref feat/add-login --branch --accept "go test -v ./... :: PASS" # 创建任务+分支+登记验收标准(--accept 可重复;Expected 是输出子串匹配;go test 带 Expected 忘加 -v 时 start 自动补——无 -v 无 PASS 行永不匹配)
|
|
148
148
|
forge task start --ref feat/add-login --scope "internal/auth/*.go" # 声明计划改动白名单(规划前置→可度量契约,advisory 检测 scope-drift)
|
|
149
149
|
forge task start --ref feat/frontend --assignee kimi --role frontend --depends-on feat/api # 创建即分派给 kimi(offered),声明上游依赖 feat/api(DAG 环检测;task-verify/task-complete 在 feat/api 交付前阻断)
|
|
150
150
|
forge task start --ref feat/hotfix --assignee kimi --ttl 24h # per-task TTL 覆盖全局 7d 僵尸窗口:短时效分派 24h 无活动即标僵尸(offered/claimed/input-required 通用;0=用全局默认)
|
|
@@ -203,7 +203,7 @@ Agent 无法通过 `node -e "fs.writeFileSync()"`、`cat > file`、直接编辑
|
|
|
203
203
|
| **auto-compile** | Write/Edit 后 | advisory 提醒用对应技术栈编译命令自检(go build / cargo check / mvn / tsc 等),不强制编译 |
|
|
204
204
|
| **workflow-test-guard** | Write/Edit 后 | 改 `.github/workflows/*.yml` 后自动跑 `internal/ci` 守护测试,把"沙盒异常"即时反馈给 agent(不依赖 CI 兜底),是 release.yml test→goreleaser→npm needs 链的实时守护层 |
|
|
205
205
|
| **file-sentinel** | Bash 后 | 监控文件变更,未授权修改隔离到 DataDir/quarantine/(`forge data-dir` 查看路径,可恢复,不删除) |
|
|
206
|
-
| **tool-track** | Read/Skill/Agent/Bash 后 | 静默记录工具调用到 toollog(Read/Skill/Agent 记名称、Bash
|
|
206
|
+
| **tool-track** | Read/Skill/Agent/Grep/Glob/Bash 后 | 静默记录工具调用到 toollog(Read/Skill/Agent 记名称、Bash 记截断命令、Grep/Glob 记截断 input——探索调用也计入 work-activity),供 read-before-edit 门禁与 efficiency 维度评分判断(agent 是否先读代码再改、质量 skill 是否被驱动) |
|
|
207
207
|
| **failure-track** | 命令失败后(PostToolUseFailure) | 记录 CheckToolFailure 观察;失败文本命中编译/测试类指纹(`undefined:`/`error TS`/`error[E`/`--- FAIL` 等)时注入 compile-fix-loop skill 事实性指针(advisory 不阻断——失败已发生) |
|
|
208
208
|
| **subagent-track** | 子 agent 结束(SubagentStop) | 记录 agent_id/agent_type/交付长度+首行摘要到 checklog(归因数据——此前子 agent 活动 forge 侧零记录);纯观察,无输出无阻断 |
|
|
209
209
|
| **test-nudge** | Write/Edit 后(活跃任务内) | 事中测试提醒:连写 ≥3 个源码文件且无配对测试写入时注入一次 test-discipline skill 事实性提示(advisory,每连写只提示一次);测试写入重置计数;无任务静默;执法仍在 task-verify 门禁 |
|
|
@@ -231,7 +231,7 @@ Agent 无法通过 `node -e "fs.writeFileSync()"`、`cat > file`、直接编辑
|
|
|
231
231
|
| `forge verify` | 项目完整性检查 + 回归测试 |
|
|
232
232
|
| `forge update [--plugin]` | 检查并更新到最新版本(按安装通道分流:npm 安装自动检测包管理器 npm/pnpm/yarn,查 npm registry 并打印对应更新命令——npm 包不可变,原地替换会被下次 install 还原,故不代下载,可用 `FORGE_NPM_REGISTRY` 覆盖 registry;GitHub Release/手动安装从 GitHub 下载自替换);加 `--plugin` 在更新后打印 plugin marketplace 重装指引(marketplace 镜像同步 hook 时建议重装) |
|
|
233
233
|
| `forge suggest decline/status/reset` | 管理 init-suggest hook 的项目 init 提示状态(decline 永久静默当前项目 / status 查看 / reset 清除重新提示) |
|
|
234
|
-
| `forge uninstall [--restore]` | 一键反装:剥除全部用户级 hooks(claude/codex/cursor/windsurf/opencode/kimi/reasonix/cline)+ 用户级指令段(CLAUDE.md/AGENTS.md/global_rules.md)+ forge-quality skill + 清 npm global `@agent_forge/forge` + 删 init-suggest 标记(默认 `~/.forge/.init-suggested/`,设 `FORGE_DATA_HOME` 时落该根下);`--restore` 把用户级文件回滚到 forge 修改前字节(备份在 `~/.forge/backups/`);plugin 卸载须在 agent CLI 内交互运行(不可脚本化) |
|
|
234
|
+
| `forge uninstall [--restore]` | 一键反装:剥除全部用户级 hooks(claude/codex/cursor/windsurf/opencode/kimi/reasonix/cline/codebuddy/zcode;dsh 无用户级 hook 文件可剥——其 translator 是刻意 no-op,卸载即移除 plugin)+ 用户级指令段(CLAUDE.md/AGENTS.md/global_rules.md)+ forge-quality skill + 清 npm global `@agent_forge/forge` + 删 init-suggest 标记(默认 `~/.forge/.init-suggested/`,设 `FORGE_DATA_HOME` 时落该根下);`--restore` 把用户级文件回滚到 forge 修改前字节(备份在 `~/.forge/backups/`);plugin 卸载须在 agent CLI 内交互运行(不可脚本化) |
|
|
235
235
|
| `forge migrate [--dry-run] [--force]` | 把旧 `.forge/` runtime state(tasks/gates/checklog/toollog/act/sessions/quarantine/active-task-ref 等)迁到用户级 DataDir(`~/.forge/projects/<key>/`)——升级到 runtime state 外迁版本后的迁移路径;未改过的 `.forge/protocol.yml` 由 autoSync 自动迁 DataDir,用户改过的保留为团队共享覆盖层;迁移的 task 文件落地即剥离外来门禁信号(review/验收/评分/完成/逃生舱/generic 须本机重挣,验收命令带外来标记);幂等,`--dry-run` 预览,`--force` 覆盖 DataDir 已有同名 |
|
|
236
236
|
| `forge registry prune` | 精简全局注册表 `~/.forge/projects.json`——移除项目目录已不存在的死路径与重复条目(项目移走/删除/测试残留),原子写回。registry.List 读时惰性精简但只在 `forge dashboard` 启动时触发(启 web 阻塞),本命令给不启 web 的主动清理入口 |
|
|
237
237
|
| `forge registry audit [--json]` | 只读一致性审计:key-drift(注册表 key ≠ 当前派生 key 且旧数据目录有载荷,提示 `forge project adopt` 迁移)/ orphan-datadir(数据目录有载荷但注册表无条目,备份壳除外)/ id-collision(两个路径派生同一 key——复制粘贴共享 `.forge-project-id` 的检出器)/ invalid-id(ID 文件格式非法,Key() fail-open 回落的唯一暴露面) |
|
|
@@ -255,10 +255,12 @@ Agent 无法通过 `node -e "fs.writeFileSync()"`、`cat > file`、直接编辑
|
|
|
255
255
|
| `forge task list` | 列出所有任务 |
|
|
256
256
|
| `forge task mine [--agent <agent>] [--role <role>] [--all-projects] [--blocked] [--json]` | 列出分派给当前/指定 agent 的任务(`--all-projects` 全仓扫描按项目分组;`--blocked` 仅被依赖阻塞的,标注卡在哪环 [status, gate 进度 passed/total]) |
|
|
257
257
|
| `forge task gate <gate-id>` | 验证单道任务门禁 |
|
|
258
|
-
| `forge task verify-acceptance [--trust-foreign]` | 实跑验收标准(task start --accept 登记),记 deterministic 证据;验收命令来自 task import / .forge migrate(外来标记)时首跑须 `--trust-foreign`(人工审阅命令清单后显式受信,防外来命令串直接执行) |
|
|
259
|
-
| `forge task
|
|
258
|
+
| `forge task verify-acceptance [--ref <ref>] [--trust-foreign]` | 实跑验收标准(task start --accept 登记),记 deterministic 证据;验收命令来自 task import / .forge migrate(外来标记)时首跑须 `--trust-foreign`(人工审阅命令清单后显式受信,防外来命令串直接执行) |
|
|
259
|
+
| `forge task doc-review --passed <pass\|fail> --score <N> [--round <R>] [--reviewer <id>] [--critical <发现>]` | 记录 L2 文档回检证据(输出→回检循环):按 `code-review-gate/references/rubric-docs.md` 四维评审后落档(产出者不能自检);`--score` 为 0-100 总分、`--round` 轮次(≥3 轮未过升级人工确认)、`--critical` 落 Critical findings(未决阻断 complete)。task-complete 的 doc gate 消费该证据 |
|
|
260
|
+
| `forge docs lint [paths...] [--base <rev>]` | 文档产物 L1 确定性 lint(D1-D7:禁令短语/无证据结论/复述 diff/通过断言无证据/必填章节/结论枚举/篇幅);`--base` 改扫该基线以来变更的 .md。exit code:0=通过 2=硬失败。禁令清单单一真相源在 `internal/doclint`,同步渲染进 forge-quality skill |
|
|
261
|
+
| `forge task scope add <glob> [--ref <ref>]` | 追加计划改动文件到白名单(支持中途迭代;--ref 指定任务,不依赖活跃任务检测) |
|
|
260
262
|
| `forge task scope show` | 查看声明的白名单 + 实时 scope-drift(advisory,不阻塞) |
|
|
261
|
-
| `forge task override [--work-activity\|--test-coverage\|--acceptance-gate\|--skill-decisions] disable` | per-task 逃生舱:关闭指定门禁检查(如批量重构时关 read-before-edit);使用落 checklog 审计。验证类(test-coverage/acceptance-gate/skill-decisions)evidence 强度 cap 到 Weak(重证据任务按证据缩放豁免);work-activity
|
|
263
|
+
| `forge task override [--work-activity\|--test-coverage\|--acceptance-gate\|--skill-decisions\|--doc-gate] disable` | per-task 逃生舱:关闭指定门禁检查(如批量重构时关 read-before-edit);使用落 checklog 审计。验证类(test-coverage/acceptance-gate/skill-decisions/doc-gate)evidence 强度 cap 到 Weak(重证据任务按证据缩放豁免);work-activity 是节奏门禁,只审计不降强度。doc-gate 的放行须在 doc-review 轮次上限后经人工确认再走 |
|
|
262
264
|
| `forge task complete` | 标记任务完成(自动评分) |
|
|
263
265
|
| `forge task abort [--ref <ref>] [--cascade\|--detach-deps]` | 中止并删除任务(清理 ghost/卡住任务,不评分;存在反向依赖时默认仅提示,`--cascade` 递归中止所有依赖它的任务,`--detach-deps` 从依赖它的任务移除该依赖边) |
|
|
264
266
|
| `forge task score` | 查看任务质量评分 |
|
|
@@ -271,7 +273,7 @@ Agent 无法通过 `node -e "fs.writeFileSync()"`、`cat > file`、直接编辑
|
|
|
271
273
|
| `forge task attach --ref --tool` | 锚定 session+工具到 task(跨工具多向锚定:pi 起、claude-code 接) |
|
|
272
274
|
| `forge task assign --ref <ref> --to <agent> [--role] [--by]` | 把任务分派给指定 agent(offered 起步,编排器侧;未知 agent 警告但接受) |
|
|
273
275
|
| `forge task claim --ref <ref> [--as <agent>]` | 工作方认领分派给自己的任务(offered→claimed,自动锚定 session) |
|
|
274
|
-
| `forge task deliver --ref <ref
|
|
276
|
+
| `forge task deliver --ref <ref> [--as <agent>]` | 工作方交付任务(claimed→delivered,交回编排器;--as 与 claim 对齐,与分派 agent 不符仅提醒不阻断) |
|
|
275
277
|
| `forge task question --ref <ref> --content <text>` | 工作方回抛问题(claimed→input-required,暂停等编排器/人答复) |
|
|
276
278
|
| `forge task answer --ref <ref> [--content <text>]` | 编排器答复回抛(input-required→claimed,答复记入 Decisions;空答复仅恢复 claimed) |
|
|
277
279
|
| `forge task fail --ref <ref> --reason <text>` | 工作方标记任务失败(claimed→failed,记录原因) |
|
|
@@ -291,7 +293,7 @@ Agent 无法通过 `node -e "fs.writeFileSync()"`、`cat > file`、直接编辑
|
|
|
291
293
|
|
|
292
294
|
| 命令 | 说明 |
|
|
293
295
|
|------|------|
|
|
294
|
-
| `forge review pass` | 标记当前变更已通过 code-review-gate(task 模式写任务状态,否则写分支 stamp
|
|
296
|
+
| `forge review pass [--ref <ref>] [--note <文本>] [--acknowledge-changes]` | 标记当前变更已通过 code-review-gate(task 模式写任务状态,否则写分支 stamp);--note 审查结论文本记入 ReviewRound/stamp 与 checklog 审计留痕;距上次基线有源码变更时裸 pass 会被拒——须 --note 记复审结论,或 --acknowledge-changes 显式自我承担(记 WARN 级 self-refresh 审计) |
|
|
295
297
|
| `forge review gate` | 判定当前是否需要审查(Stop hook 调用;exit 0=放行,1=需审 block) |
|
|
296
298
|
| `forge review status` | 显示当前审查状态 |
|
|
297
299
|
|
|
@@ -299,7 +301,8 @@ Agent 无法通过 `node -e "fs.writeFileSync()"`、`cat > file`、直接编辑
|
|
|
299
301
|
|
|
300
302
|
| 命令 | 说明 |
|
|
301
303
|
|------|------|
|
|
302
|
-
| `forge hazard confirm
|
|
304
|
+
| `forge hazard confirm --last` | 确认最近一条被拦命令(从事件日志取指纹,零复制转写,推荐) |
|
|
305
|
+
| `forge hazard confirm <命令> [--fingerprint <hex>]` | 登记一次高危命令确认(5min 内同命令重试放行;`--fingerprint` 回传 hook 输出的 hex 指纹) |
|
|
303
306
|
| `forge hazard status` | 列出当前有效确认及剩余时间 |
|
|
304
307
|
|
|
305
308
|
**写入范围冻结**:`forge freeze` 把 on-demand-guards 的 /freeze 目录锁定从「agent 每回合自检」的 prompt 型护栏落地为真 hook——激活后 freeze-guard hook(PreToolUse Write|Edit,排在 task-guard 之前优先判定)硬阻断所有冻结路径之外的写入,长会话/压缩后不漂移。支持多路径、相对路径(相对当前目录归一化)、Windows 大小写不敏感比较。
|
|
@@ -350,7 +353,7 @@ Agent 无法通过 `node -e "fs.writeFileSync()"`、`cat > file`、直接编辑
|
|
|
350
353
|
| `forge skills mutex-record --from <file/->` | 回填一次互斥集 run(actual==Positive 才 pass;`--agent-model`/`--forge-version` 盖章防跨模型/版本假回归) |
|
|
351
354
|
| `forge skills mutex-report [--gate] [--json]` | 互斥集混淆矩阵(actual==Negative 为头号混淆行;`--gate` 任一混淆即 BLOCKED(stderr)+exit 4) |
|
|
352
355
|
| `forge skills analyze [--json]` | 弱点挖掘报告(只读):低分维度聚簇/验证盲区率/从未触发 skill/低成效 skill + 数据 caveat,供人选题 |
|
|
353
|
-
| `forge skills decide --prediction <p>` | 记录 skill
|
|
356
|
+
| `forge skills decide [<skill>] --diagnosis ... --prediction <p>` | 记录 skill 决策四元组(skill 名可用位置参数或 --skill;在带 skills/ 树的仓库内默认写仓库 canonical 而非 embed 缓存);`--prediction` 声明可检验预测(哪个可观测信号应改善),供验证闭环回扣 |
|
|
354
357
|
| `forge skills verify --skill X --decision <id> --result <r>` | 回填决策验证结果(预测→验证闭环第二步;`--at` 指定时间、`--history`/`--history-json` 查全量可证伪台账) |
|
|
355
358
|
| `forge skills revert --skill X --decision <id> [--edit] [--dry-run]` | Scoped revert:按 decisions.md 的 CommitHash 撤销某条决策关联的 commit(决策闭环的撤销臂) |
|
|
356
359
|
|
package/bin/forge
CHANGED
|
Binary file
|
package/package.json
CHANGED