十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

Folly Agents 规则冲突解决协议:作用域优先、特化优先与冲突显式追踪

Folly Agents 规则冲突解决协议:作用域优先、特化优先与冲突显式追踪 Folly Agents 规则冲突解决协议作用域优先、特化优先与冲突显式追踪【免费下载链接】follyAn open-source C library developed and used at Facebook.项目地址: https://gitcode.com/GitHub_Trending/fol/folly导读folly/agents/core/conflicts.md是仓库中 Agents 规则体系folly/agents/的核心规则之一它定义了一组跨任务加载的行为协议当多条规则同时适用且相互矛盾时如何判定谁优先、何时静默遵循、何时必须显式记录冲突。本文将完整解析该文档的裁决顺序作用域优先于优先级、特化层级精确情景 → 子项目 → 项目 → 仓库并结合同目录下core.md、breadcrumbs.md、conflicts.contrib.md等配套文档说明这套协议在 Agent 任务执行中的实际运作方式与配套工具链。规则冲突的本质为什么需要显式裁决协议AI Agent 在执行任务时通常会被加载多份规则任务级约束、项目级规范、仓库级策略甚至跨多个工作流的通用指令。这些规则可能出自不同作者、不同时期天然存在互相矛盾的可能——例如一条针对整个仓库的MUST级硬性要求与一条针对某个子模块的SHOULD级建议发生冲突。如果按加载顺序或字面语气强度如MUST是否大于SHOULD来裁决结果往往不稳定且不可复现。conflicts.md给出的答案是先看作用域再看优先级——作用域更窄、更特化的规则先决断而不是语气更强烈的规则先决断。核心裁决原则一先解析作用域再谈优先级conflicts.md的第一句即定下总纲Resolve scope before priority.即在讨论优先级之前必须先解析作用域。作用域是裁决的第一级过滤器。一条针对更窄制品artifact或更具体情景situation编写的规则决定更宽泛的规则是否在该处适用——即使那条更宽泛的规则写着MUST或宣称自己拥有优先级。从源码结构看这一设计意图在 conflicts.contrib.md 中得到了明确呼应该文件声明其职责为decide what to do when loaded rules disagree without treating read order as priority——即禁止把规则的读取顺序当作优先级依据。这是整个冲突解决协议的底层立场优先级必须来自作用域语义而非加载次序或语气强度。特化层级Specificity Hierarchy文档给出了裁决适用的明确层级顺序精确情景规则exact-situation rule——最优先子项目规则sub-project项目规则project仓库规则repo——最宽泛。裁决方向是窄者先决精确情景规则存在时先看它如何定夺若它未覆盖再逐级向上。宽泛规则如仓库级MUST不能覆盖窄作用域规则的裁决即使语气更强。这一层级与 core.md 中的加载设计一脉相承——该文件指示每次任务前加载core/breadcrumbs.md与core/conflicts.md并说明规则包路径相对于该文件所在目录解析。可见作用域解析不只是裁决时的语义判断也体现在规则文件的物理组织与加载路径上。核心裁决原则二显式作用域可静默定夺If explicit scoping settles the issue, follow it silently.如果某条规则明确声明了自己的作用域且该作用域声明足以解决冲突则直接遵循它无需记录或上报。这是协议中的快速路径触发条件规则中存在显式的作用域描述如本规则仅适用于folly/io目录此要求仅针对 Linux 构建路径裁决动作静默遵循该规则不产生额外流程开销适用原因作用域声明已消除歧义冲突在语义上不复存在。反过来说只有当规则依然同时适用、且指向不同方向rules still apply and point different ways时才进入下文的重型路径——显式追踪。核心裁决原则三无法静默解决时显式记录并汇报当显式作用域无法消除冲突时conflicts.md要求执行显式追踪协议在活跃任务工具中登记冲突使用 Codex 时记录到update_plan使用 Claude 时记录到TaskCreate目的是让冲突在任务生命周期内可被复查而不是随对话上下文漂移丢失。在最终简报final debrief中指名未解决的冲突任务收尾时必须明确说出哪个冲突尚未解决供后续任务或人工审查接手。这一先记录、后汇报的闭环设计与同目录下 breadcrumbs.md 的需求面包屑机制互补breadcrumbs 负责跨轮次、跨计划重写地保留目标/需求/决策conflicts 负责在规则层面显式登记裁决冲突二者共同保证任务的可追溯性。需要说明的是breadcrumbs 明确将TODO/enqueue请求限定在update_plan/TaskCreate中——冲突记录同样落在这两个工具里体现了任务状态与规则裁决状态共享同一管理通道的设计思路。该规则在 Agents 包中的定位从 agents/CONTRIB.md 与 conflicts.contrib.md 可见这套规则包的组织原则归属conflicts 规则属于core包随 core.entrypoint.md 的指令Loadagents/core.mdfor every task在每个任务中加载职责边界conflicts 只拥有作用域与特化规则的裁决权不负责规则包的加载管理也不负责任务计划与进度追踪——这些职责分别由加载入口和update_plan/TaskCreate承担体积控制core包被刻意保持精简agents/CONTRIB.md 明确要求仅在每个任务都需要时才添加规则conflicts 与 breadcrumbs 是其中仅有的两条跨域规则可见冲突裁决被视作所有任务通用的基础能力。实战演练冲突裁决流程速查将conflicts.md的协议浓缩为可执行的四步判断步骤判断动作1多规则是否同时适用若只有一条适用直接遵循2是否有一条规则的作用域更窄精确情景 子项目 项目 仓库窄者先决宽泛规则含MUST让位3显式作用域声明是否已消除歧义是 → 静默遵循不记录4规则仍同时适用且指向不同方向否 → 在update_planCodex或TaskCreateClaude登记并在最终简报中点名未解决冲突小结folly/agents/core/conflicts.md用极简的篇幅定义了一套完备的规则冲突裁决协议作用域优先于优先级特化层级自上而下为精确情景 → 子项目 → 项目 → 仓库显式作用域可触发静默遵循唯有真正无解的冲突才进入显式登记与最终汇报流程。配合 conflicts.contrib.md 对职责边界的划定、breadcrumbs.md 对需求可追溯性的补充以及 core.md / core.entrypoint.md 的加载机制这套规则使 Agent 在复杂、多来源的指令环境中能够稳定、可复现地做出裁决并为后续人工审查保留完整的决策痕迹。【免费下载链接】follyAn open-source C library developed and used at Facebook.项目地址: https://gitcode.com/GitHub_Trending/fol/folly创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表