@agent_forge/forge-darwin-arm64 1.35.0 → 1.37.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 +5 -1
- package/bin/forge +0 -0
- package/package.json +1 -1
package/bin/README.md
CHANGED
|
@@ -167,7 +167,7 @@ forge task score # 查看质量评分
|
|
|
167
167
|
|
|
168
168
|
**PlanScope 白名单(规划前置)**:`task start --scope <glob>`(可重复,或中途 `forge task scope add <glob>` 追加)声明"打算改哪些文件"。`task-verify` 比对实改源码与声明的差集,记一条 `scope-drift` 证据(deterministic,`forge trace` 可见)并 stderr 提醒。全程 **advisory 不阻塞**——变更影响分析召回率仅 ~44%,scope 是 prediction 非 contract,偏差是常态信号而非异常;它把"规划前置"变成可度量、可回顾的契约,正堵在 review 反复出问题的根因上。
|
|
169
169
|
|
|
170
|
-
**Cheat-scan(机械作弊模式扫描)**:`task-verify` 扫任务新增行(`+` 行),机械检测
|
|
170
|
+
**Cheat-scan(机械作弊模式扫描)**:`task-verify` 扫任务新增行(`+` 行),机械检测 7 类 AI 作弊模式——`type-suppression`(`@ts-ignore`/`eslint-disable`/`#[allow]`/`type: ignore`)、`error-swallow`(空 `catch{}`/`except:pass`)、`dead-branch`(`if(false)`/`if(1===2)`)、`comment-only-fix`(某文件新增行全注释零逻辑)、`comment-as-debt`(新增债务注释标记不解决)、`phantom-import`(相对 import 解析不到磁盘文件)、`path-assumption`(OS 路径分隔符被当内容匹配器,如 `HasPrefix(line, string(filepath.Separator))`——跨平台崩溃指纹)——记一条 `cheat-scan` 证据(deterministic,`forge trace` 可见)并 stderr 列出命中。全程 **advisory 不阻塞**:这些模式此前全靠 code-review-gate 的 LLM 子 agent 判断,LLM 每轮对同一 diff 重新采样抓不同子集,是"每轮 review 冒新问题"的体感来源;抽到 deterministic 后,机械模式一次判准,LLM-reviewer 退到只做语义判断(设计/架构/mock 是否幻觉)。`comment-only-fix` 是启发式(severity=low,纯文档任务可能误报)。
|
|
171
171
|
|
|
172
172
|
</details>
|
|
173
173
|
|
|
@@ -230,6 +230,10 @@ Agent 无法通过 `node -e "fs.writeFileSync()"`、`cat > file`、直接编辑
|
|
|
230
230
|
| `forge uninstall [--restore]` | 一键反装:剥除全部用户级 hooks(claude/codex/cursor/windsurf/opencode/kimi/reasonix)+ 用户级指令段(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 内交互运行(不可脚本化) |
|
|
231
231
|
| `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 已有同名 |
|
|
232
232
|
| `forge registry prune` | 精简全局注册表 `~/.forge/projects.json`——移除项目目录已不存在的死路径与重复条目(项目移走/删除/测试残留),原子写回。registry.List 读时惰性精简但只在 `forge dashboard` 启动时触发(启 web 阻塞),本命令给不启 web 的主动清理入口 |
|
|
233
|
+
| `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 回落的唯一暴露面) |
|
|
234
|
+
| `forge project adopt [--dry-run] [--regenerate]` | 采纳 repo-born 项目 ID:在主 worktree 根生成 `.forge-project-id`(`fpid_<32hex>`,建议 commit 进 git),并把本机数据从路径 key 迁到 ID key(先迁数据再翻身份,复用 rekey 合并语义)+ 注册表同步。另一台机器 `git pull` 拿到 ID 后跑一次 adopt 即对齐——两台机器对同一 clone 推导同一 key,跨机器同步免重映射;`--regenerate` 给共享/污染 ID 换新(其他机器需重跑 adopt 处理 key 不匹配) |
|
|
235
|
+
| `forge project export [--out <file>] [--include quarantine,hazards]` | 把项目记录打包为跨机器 bundle(tar.gz + 逐文件 sha256 的 manifest):allowlist 默认拒绝——只带 tasks/checklog/toollog/sessions/act/stamps(除 hook-deploy)/protocol.yml,quarantine 源码全文与 hazards 命令行等敏感 store 须 `--include` 显式选入,会话锚/sentinel/freeze 等机器本地文件一律排除;manifest 记录来源身份(key/key_mode/project_id)供导入侧 lineage 判定 |
|
|
236
|
+
| `forge project import <bundle> [--dry-run] [--untrusted] [--trust-foreign] [--force] [--adopt-id]` | 校验(sha256+版本守卫+路径安全)并合并 bundle 到本机:同 key = 同身份 lineage 默认保留结果字段(评分/完成/门禁历史经单调合并收敛),session 链接恒幽灵化;key 不匹配默认剥离外来门禁信号(`--trust-foreign` 显式放行);bundle 来自 ID 身份而本机是路径身份时默认拒绝给指引,`--adopt-id` 直接采纳其 ID(本机数据先迁移);账本 `imports.jsonl` 保证同 bundle 重复导入跳过,jsonl 精确行去重保证重叠导出不重复——双向同步收敛 |
|
|
233
237
|
|
|
234
238
|
</details>
|
|
235
239
|
|
package/bin/forge
CHANGED
|
Binary file
|
package/package.json
CHANGED