循环约束执行器
在代理运行开始时强制执行项目级约束,作为代理的安全护栏。
技能设计为安全护栏,要求最小权限和人类确认,覆盖关键风险点如禁止编辑敏感路径、禁止自动合并、禁止禁用测试。但缺少具体的权限配置和回滚机制,且未验证数据集来源。直接扣分原因:权限、确认和隔离不完全,未达满分。
技能指令清晰且自洽,但依赖未提供的文件如loop-constraints.md和docs/safety.md,且没有测试覆盖关键路径。快乐路径貌似可行,但边缘情况和错误反馈不足,静态审查扣分。
适用场景明确,作为安全约束执行器,可触发条件清晰。但未提供非适用范围的说明,且依赖外部文档,环境适配证据有限。扣分原因:边界条件和触发条件证据不足。
文档结构清晰,有默认约束和交互说明,但缺少版本信息、变更日志和明确的维护责任。扣分原因:版本管理和维护透明度不足。
技能旨在强制约束,可能有效,但未提供实际使用结果或输出示例,边际价值难以验证。扣分原因:输出直接可用性证据不足。
仓库有CI配置和测试脚本,但未提供技能本身的执行证据或第三方验证。扣分原因:缺乏独立可复现的结论。
- 技能依赖项目中的loop-constraints.md和docs/safety.md,但这些文件未在本次审查源中提供,实际行为可能依赖这些未验证的输入。
- 技能未提供版本化或变更日志,也没有明确的维护责任声明,长期可靠性存疑。
- 技能设计为自动执行约束,但未提供权限回滚或配置验证机制,建议在严格环境外使用时谨慎。
- 依赖外部服务和海外网络可达性未提及,但技能核心不依赖外部服务,主要风险是本地文件完整性。
这个 Skill 能做什么,适合哪些场景?
这是一个约束执行技能,属于循环工程技能集。它会在每次运行开始时读取项目根目录下的 loop-constraints.md 文件,并强制应用其中定义的规则,作为所有后续操作的护栏。如果文件不存在,则应用内置的默认安全规则。该技能在分诊或任何操作技能之前运行,并可覆盖其他技能的优先级或限制,例如禁止推送或限制可编辑的文件。它还会在暂停标志激活时退出,并输出已加载规则数的确认信息。
此技能执行以下操作:1. 在运行开始时读取项目根目录下的 loop-constraints.md;2. 将每条规则加载到工作记忆中;3. 检查 loop-pause-all 是否激活,若是则立即退出;4. 对后续每个操作应用规则;5. 在推送、编辑、修复或合并前重新读取相关章节,并在规则阻止时停止并告知人类;6. 如果文件缺失,输出“已从 loop-constraints.md 加载约束:N 条规则生效。”或说明并使用默认安全规则。
- 在 CI 修复运行之前,确保“不推送”规则阻止任何自动操作,直到人工批准。
- 当约束文件指定了路径黑名单时,防止代理编辑 .env 或 secrets 文件。
- 当最小修复技能尝试修改被约束标记为禁止的文件时,覆盖其范围。
- 在代理尝试合并到主分支之前,要求人工批准,即使循环验证器通过。
- 在代理提出修复方案之前,强制执行“每次运行一个修复”的规则并运行测试。
这个 Skill 有哪些优点和局限?
- 提供强制安全边界,防止意外编辑敏感路径或自动合并。
- 与相关技能集成,确保约束覆盖分诊优先级和验证器检查。
- 可通过修改项目中的 loop-constraints.md 轻松定制。
- 文件缺失时有安全默认值,确保基本保护始终生效。
- 如果代理客户端不完全支持技能标准,可能无法自动执行。
- 要求用户创建并维护 loop-constraints.md 文件,增加管理开销。
- 文档未详细说明默认安全规则的具体实现(仅给出列表)。
- 未说明此特定技能是否有测试套件,仓库中的循环审计可能涉及整个集合。
如何安装这个 Skill?
将循环工程仓库克隆到本地,并将 skills/loop-constraints 文件夹(包含 SKILL.md)复制到你的代理技能目录。作为该系列的一部分,也可通过 npx @cobusgreyling/loop-init . 初始化整个集合(但本技能并非通过 npm 独立分发)。
如何使用这个 Skill?
确保项目根目录存在 loop-constraints.md,或依赖内置默认值。使用支持技能标准的代理(如 Claude Code)运行,它会在任何其他操作前自动加载此技能。例如,启动一个代理运行并确认它输出“已从 loop-constraints.md 加载约束:N 条规则生效。”
这个 Skill 与同类方案有什么区别?
此技能是循环工程系列的一部分,与 loop-triage、loop-verifier 和 loop-budget 等其他技能配合使用,作为整体编排系统的护栏。没有明确的第三方替代品被提及。