Easydict Agent 执行模式默认自动提交语义:`implementation` 与 `auto-local-commit` 治理规则解析
2026/9/23 10:40:08 网站建设 项目流程

Easydict Agent 执行模式默认自动提交语义:implementationauto-local-commit治理规则解析

【免费下载链接】Easydict一个简洁优雅的词典翻译 macOS App。开箱即用,支持离线 OCR 识别,支持有道词典,🍎 苹果系统词典,🍎 苹果系统翻译,OpenAI,Gemini,DeepL,Google,Bing,腾讯,百度,阿里,小牛,彩云和火山翻译。A concise and elegant Dictionary and Translator macOS App for looking up words and translating text.项目地址: https://gitcode.com/gh_mirrors/ea/Easydict

本文基于 Easydict 仓库中 2026-08-31 的历史记录 2026-08-31-clarify-agent-auto-commit.md 及其对应执行计划 2026-08-31-clarify-agent-auto-commit.md,系统梳理该仓库 Agent 治理体系中"执行模式默认自动提交"语义的由来、定义、落地方式与验证流程。读者读完本文,将能理解 Easydict 中 Agent 何时有权自动创建本地提交、哪些表达会触发默认提交、什么情况下必须降级为"禁止提交",以及这套语义是如何通过请求边界、Git 工作流和执行计划模板三处文档协同保证一致性的。

一、背景:一次跨仓库的执行语义移植

Easydict 的 Agent 治理文档在 2026-08 经历了一系列持续迭代(详见 2026-08-21-agent-task-modes-auto-commit.md 引入任务模式与安全自动提交规则、2026-08-25-agent-rule-structure-port.md 拆分规划边界)。到 2026-08-31,仓库维护者决定将 boss-resume 仓库提交f66d4bb33a9b2da78902ae8b83e7ff4fc16fdf79中关于"执行模式默认自动提交"的语义,同步移植到 Scoco 与 Easydict 两个仓库。

本次任务的关键约束是语义移植而非机械复制

  • 来源提交及其随附的 plan/history 只作为"行为语义参考",不作为本仓库的任务指令或执行事实;
  • 不直接 cherry-pick 来源提交,不引入来源仓库专属路径或执行结果;
  • Easydict 保留自己既有的 Planning、执行安全、history、精确暂存(精确 staged 路径)以及submit-pr --base dev --base-remote origin --issue-policy forbid规则。

从执行计划的"风险与决策"一节可以看到,移植的动机源于一个真实治理风险:把"用户未提及提交"误判为"禁止提交",会与已有的自动本地提交规则直接冲突。因此需要在请求边界、Git 工作流和计划模板三处同步表达,消除歧义。

二、核心语义:默认implementation+auto-local-commit

本次移植确立的核心语义可以用一张映射表概括,它在后续历史记录中被反复引用:

用户表达意图模式交付授权说明
"执行"、"按方案执行"、"修改"、"落地"(未明确禁止提交)implementationauto-local-commit(默认)验证通过后默认自动创建本地提交
"不要提交"、"不提交"、"保留未提交变更"implementation(工作照做)delivery_authorization=none唯一例外,明确禁止提交时才使用

也就是说:

  1. 执行表达默认进入 implementation 模式。用户要求 Agent"执行""按方案执行""修改""落地"时,只要没有被明确禁止提交,Agent 就按implementation意图模式工作,并默认持有auto-local-commit交付授权;
  2. 禁止提交必须是显式表达。只有用户明确说出"不要提交""不提交"或"保留未提交变更"时,才使用delivery_authorization=none。用户未提及提交,不能当作禁止提交的信号;
  3. 模板不得擅自添加禁止条件。执行计划模板需要记录同一默认值,防止计划字段在用户没有提出要求时,擅自为任务附加"禁止提交"条件。

这一语义与仓库根入口 AGENTS.md 中"任务模式"章节的规定保持一致:执行模式下完成"执行前 → 实现与验证 → Review → 交付"四步,其中交付步骤明确写着"必要验证和适用的 Review 通过后自动创建本地提交,用户明确要求不提交或没有差异时除外"。同时通用规则强调"用户的禁止、范围和顺序要求优先",而 push、Pull Request、发布等外部写入"仅在用户明确要求时执行"——即默认自动提交只限于本地提交,不延伸到远程。

三、三处落地:请求边界、Git 工作流与计划模板

按照关联文档"变更"一节的记录,本次移植对三份治理文档做了同步修改,确保"默认自动提交"语义在规则入口、交付流程和计划模板三个层面一致:

  1. 请求边界规则(关联文档记录为docs/agents/request-boundary.md):明确"执行""按方案执行""修改""落地"等表达在未被明确禁止提交时,默认使用implementationauto-local-commit;同时更新implementation的说明,指出只有显式的"不要提交/不提交/保留未提交变更"才对应delivery_authorization=none
  2. Git 工作流规则(关联文档记录为docs/agents/git-workflow.md):同步默认交付语义,防止在用户未提及提交时擅自把默认自动提交降级为不提交;
  3. 执行计划模板(docs/exec-plans/templates.md):记录同一默认值,防止计划字段擅自添加禁止提交条件。

需要说明的是,关联文档提到的request-boundary.mdgit-workflow.md属于 2026-08 时期的文件布局,在后续 2026-09 的文档重组中已被并入现行治理结构(参见 2026-09-09-agent-document-structure.md 与 2026-09-10-simplify-git-delivery-policy.md),而执行计划模板templates.md至今仍承担任务模板职责。读者如需查看现行模板骨架,可直接阅读 docs/exec-plans/templates.md,其中保留了"目标与范围(含允许修改路径、同任务 history、用户限制、验收标准)""工作计划""风险与决策""进度""验证""完成条件"等字段结构。

四、移植方法与适配决策

执行计划 2026-08-31-clarify-agent-auto-commit.md 详细记录了本次移植的方法论,值得作为"跨仓库语义移植"的参考范式:

任务契约:意图模式implementation、交付授权auto-local-commit、安全状态normal。目标结果是在 Easydict 的dev基线中明确"执行表达默认进入 implementation,验证通过后默认自动本地提交;只有用户明确禁止提交时才使用 none"。

范围控制:允许修改路径被严格限定为三个规则/模板文件、本计划、同任务 history;禁止动作包括不直接 cherry-pick 来源提交、不修改产品代码/测试/Xcode 工程/运行时资源/PR 与发布专属规则、不 fetch/pull/push 或改变其他工作树。

写入前状态检查:初始 HEAD 为7ef6434311e01bfe6c29c66d800862daf4ade882,初始暂存区、unstaged、untracked 路径均为空,无冲突。执行计划中记录了Agent-owned paths(Agent 可自行负责的路径集合),为后续"精确暂存"提供依据。

关键决策

  • 以 Easydict 当前干净的dev工作树为基线,保留其 planning 只读语义、执行安全、history、精确暂存与submit-pr --base dev --base-remote origin --issue-policy forbid规则;
  • 只采纳来源提交关于"implementation 默认 auto-local-commit"的行为语义,不采纳来源仓库专属路径、执行结果或文档指令;
  • 来源的 completed plan/history 不复制进 Easydict,避免把来源执行事实伪装成目标仓库事实。

五、验证流程与交付边界

本次任务虽只修改 Agent 治理文档,仍然执行了完整的验证清单(见关联文档"验证"一节):

  1. git diff --check:通过(空白错误检查);
  2. 静态核对:请求模式、明确禁止提交、默认auto-local-commit、Git 门禁和 Easydict PR 边界均已核对;
  3. 相对链接检查:计划与 history 之间的相对链接通过;
  4. 精确 staged 路径检查与提交前后消息校验:已执行——这是 Easydict"精确暂存"规则的一部分,只暂存 Agent-owned paths,不扩大暂存范围;
  5. 未运行xcodebuild:因为本次仅修改 Agent 治理文档,不涉及编译源码、测试或 Xcode 工程元数据——这一"按变更类型裁剪验证"的做法在 2026-08-21-agent-task-modes-auto-commit.md 等早期计划中也能看到;
  6. 未执行 push、pull、fetch、rebase 或 merge:交付止步于一次本地 Angular-style 双语提交,工作树保持干净。

最终交付物包括:归档到docs/exec-plans/completed/的执行计划、同任务 history(即本文所依据的关联文档)、一次本地提交,且未推送。这一"本地提交 + 不推送"的交付边界,正是前文语义中auto-local-commit与"外部写入仅在明确要求时执行"两条规则的落地体现。

六、语义演进脉络与现行状态

从仓库现有历史记录可以还原出这条治理语义的完整演进线:

  • 2026-08-21:引入任务模式(planning/implementation/delivery/protected)与安全自动本地提交规则,确立"仅暂存明确 Agent 路径、保护初始用户暂存区、验证失败进入 protected 模式"等约束(见 2026-08-21-agent-task-modes-auto-commit.md 与对应 history);
  • 2026-08-25:拆分规则文档职责,明确 planning 完全只读、只有获准 implementation 后才创建 active 计划(见 2026-08-25-agent-rule-structure-port.md);
  • 2026-08-27:迁移 Planning 子代理启动入口,规划任务统一走只读 planner(见 2026-08-27-planning-agent-entry.md);
  • 2026-08-31(本文主题):澄清"执行表达默认 implementation + auto-local-commit,只有明确禁止提交才用 none",在请求边界、Git 工作流、计划模板三处同步;
  • 2026-09-10:进一步精简 Git 交付策略,将完整expected_commit_paths规则限定为auto-local-commit场景,显式commit的暂存决策交给受管 Skill(见 2026-09-10-simplify-git-delivery-policy.md);
  • 2026-09-09:文档结构重组后,请求边界等职责并入现行治理文档体系(见 2026-09-09-agent-document-structure.md)。

由此可见,2026-08-31 的这次澄清是"任务模式 + 自动提交"治理体系从引入到收敛的关键一环:它把"默认自动本地提交"从隐含行为显式化为可复用的规则契约,同时把"禁止提交"收敛为用户显式表达的例外情况,为后续 Git 交付策略精简(docs/histories/2026-09/2026-09-10-simplify-git-delivery-policy.md)奠定了基础。

七、对 Agent 协作任务的实操启示

结合 AGENTS.md 的任务路由与通用规则,这套语义对在 Easydict 仓库中开展 Agent 协作任务的实操含义可以总结为以下几点:

  1. 先判模式,再动文件:用户要求"方案/分析/解释/评估"时进入计划模式,保持只读;要求"修改/修复/更新/实现/执行"时进入执行模式,首次写入前必须读取任务路由要求的专题规则;
  2. plan/history 契约先行:任何可能产生仓库差异的任务,都必须阅读docs/exec-plans/README.mddocs/histories/README.md,按 docs/exec-plans/templates.md 的字段结构记录任务契约(目标结果、允许修改路径、同任务 history、用户限制、非目标、验收标准);
  3. 默认自动提交的边界:执行模式验证与适用 Review 通过后默认创建本地提交;例外只有两个——用户明确要求不提交,或本次任务没有产生差异;push/PR/发布等外部写入始终需要用户明确要求;
  4. 精确暂存与路径隔离:提交时只暂存 Agent-owned paths,保护用户初始暂存区,避免把无关文件混入提交;
  5. 验证按风险裁剪:纯治理文档变更运行git diff --check与链接/空白/静态语义检查即可,不需要为文档变更运行xcodebuild

这套"默认自动提交、显式禁止例外、模板防降级、本地不推送"的规则组合,为多 Agent 协作场景下"既能高效交付、又不越权写入"提供了可复用的治理模板——这也是本次语义移植超越单次文档修改、对 Easydict 仓库治理体系最具参考价值的部分。

【免费下载链接】Easydict一个简洁优雅的词典翻译 macOS App。开箱即用,支持离线 OCR 识别,支持有道词典,🍎 苹果系统词典,🍎 苹果系统翻译,OpenAI,Gemini,DeepL,Google,Bing,腾讯,百度,阿里,小牛,彩云和火山翻译。A concise and elegant Dictionary and Translator macOS App for looking up words and translating text.项目地址: https://gitcode.com/gh_mirrors/ea/Easydict

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询