从公开仓库复制一个 Claude Code 或 Codex 的 agent 定义文件,直接丢进 agents 目录就能用——但跳过审查意味着文件会在你的权限范围内运行,而你对它要做什么一无所知。核心原则:把每个外部 agent 定义当作不可信输入,读完整文件而不是 README,再对照宿主实际授予的权限(Claude Code 看 settings.json)检查它声称要读写和执行的内容。
选候选时,先看自己缺什么,而不是仓库里有什么。把需求压缩成一句话:输入是什么、期望输出是什么、明确禁止什么。压缩不了就暂缓引入。读文件时确认它期望的输入类型、产出形式、引用的每个外部文件和命令、对网络和写权限的假设。一个 MIT 许可的 agency-agents 集合里的真实案例说明问题:frontmatter 里的 color、emoji、vibe 字段对 Claude Code 的加载器毫无意义,只有打开文件才能发现这类落差。别把候选直接放进工具自动监控的目录,先只读暂存。
改动要最小化,把每次修改分成两类:格式调整(名称、frontmatter、位置,机械且必需)和含义变更(删除禁令、扩大权限、改变输出类型,属于本地设计决策,需要负责人和理由)。验证分五步:结构、引用、限权试运行、拒绝行为、路由。agency-agents 自带一个检查脚本,交叉核对 divisions 列表与磁盘目录和 CI 路径过滤器,不一致就构建失败。记录测试输入和观察到的输出,未行使的权限标记为未测试。
采用时就定好谁审下一次更新、何时移除。更新到达时分别读三样东西:当前用的角色、当初要填补的缺口、叠加的本地改动。移除不是失败,但删之前检查谁还在引用它。为每个候选填同一套决策表:与缺口的匹配度、与现有角色的重叠、来源和许可条款、改动差异、试用结果、采用状态。让没参与挑选的人试着证伪这次采用:缺口是否真实、搜索范围是否够广、许可是否在源头确认过、改动是否可回退。
采用后保持两个事实来源:上游原始版本管设计和更新历史,本地版本管你实际批准的权限和调用条件。上游变化时先读原因再应用,不更新也可以是正当决定。本地改进不要描述成上游行为,否则未来 bug 难以归因。
这份清单的七步每步都不贵,它替代的是那个沉默的步骤——「看着没问题,就复制进来了」,而这个步骤在出错时代价最高。适用于任何有真实权限的外部可执行角色定义,不限于 Claude Code 或 Codex。
GitHub
#GitHub #开源 #AI #ClaudeCode #Codex #Agent安全 #开源治理
@GitHubTrendingHub