Agent Scripts — 共享代理指令与技能
面向 Codex 和 Claude Code 的共享代理规则、可复用技能与轻量辅助脚本。
证据显示仓库包含脚本和技能,但未提供权限模型或用户确认机制。脚本如browser-tools.ts可能执行任意JS,但未说明权限边界。依赖声明了commander和puppeteer-core,但未提供安全审计或锁定版本。外部效果如文件系统修改和网络访问未明确说明。回滚机制未提及。来源归属:README和LICENSE明确归属Peter Steinberger,但发布者未验证。
自洽性:README描述了脚本和技能,CI配置与描述一致,但未提供完整测试。依赖可用性:依赖声明了commander和puppeteer-core,但未提供锁定版本或完整性校验。失败消息:脚本如validate-skills可能输出错误,但未提供详细错误处理文档。
受众和场景:README明确面向个人工作区,但未说明其他用户的使用场景。能力边界:技能和脚本的功能描述清晰,但未明确限制。触发精度:技能描述简短,但未提供触发示例。环境适配:脚本设计为跨平台,但未提供Windows支持说明。
信息架构:README结构清晰,但缺少目录索引。安装说明:提供了全局设置和同步方法,但未提供详细安装步骤。命名稳定性:技能和脚本命名一致,但未提供版本稳定性说明。示例和FAQ:README提供了命令示例,但缺少FAQ。已知限制:未提及。许可证:MIT许可证明确。版本和变更日志:未提供。维护责任:README提到同步和更新,但未明确维护者。
输出可用性:脚本输出如browser-tools提供命令帮助,但未提供输出格式说明。边际价值:提供了可复用的技能和脚本,但价值有限。成本效益:依赖较少,但未提供性能或资源消耗评估。
声明可追溯性:README中的声明与文件内容一致,但未提供验证方法。跨来源佐证:CI配置和README相互印证,但未提供外部验证。事实与推断分离:README区分了事实和推断,但未明确标注。
- 发布者身份未验证,应谨慎对待。
- 脚本可能执行任意代码,需审查权限。
- 依赖未锁定版本,存在供应链风险。
- 缺少用户确认机制,可能自动执行操作。
这个 Agent 能做什么,适合哪些场景?
Agent Scripts 是 Peter 个人工作区的规范仓库,集中管理共享的代理指令、可复用技能和便携式辅助脚本。仓库包含 AGENTS.MD(硬性规则)、skills/(按 SKILL.md 路由的工作流)、scripts/(无依赖依赖的辅助),以及 hooks/(本地防护)。核心机制通过 scripts/sync-skills 构建跨机器的技能镜像,支持 Codex 和 Claude Code 的发现,并维护指向共享 AGENTS.MD 的符号链接。同时提供 scripts/validate-skills 校验技能元数据,以及 browser-tools.ts 等独立工具。主要面向希望以一致方式配置本地开发代理的开发者。
仓库包含共享的 AGENTS.MD 硬性规则,通过符号链接安装到 ~/.codex/AGENTS.md、~/.claude/CLAUDE.md 和 ~/.claude/AGENTS.md。scripts/sync-skills 脚本为 Codex 创建整个根的技能链接(~/.codex/skills/agent-scripts 等),为 Claude Code 创建扁平的单技能链接(~/.claude/skills/<name>/SKILL.md),并处理名称冲突和修剪失效链接。scripts/validate-skills 检查每个 skills/*/SKILL.md 的 YAML front matter 及必填的 name 和 description 字段,可配置为 git 钩子。scripts/docs-list.ts 遍历 docs/ 并强制要求 summary 和 read_when 字段。scripts/browser-tools.ts 提供 Chrome DevTools 辅助,支持 start --profile、nav <url>、eval '<js>' 等命令。
- 使用 Codex 或 Claude Code 的开发者希望统一不同仓库的代理规则,采用指针式 AGENTS.MD 引用共享文件。
- 在多个工作站之间同步技能和指令,通过运行 scripts/sync-skills 自动创建符号链接。
- 希望为技能添加本地校验,在编辑后通过 git 钩子运行 validate-skills。
- 需要自动化浏览器操作(如导航、执行 JS、截图)的开发人员,使用 browser-tools.ts 脚本。
- 管理包含子模块的仓库,确保每个子仓库都正确引用共享代理指令。
- 技能作者希望创建新的可复用技能,遵循 SKILL.md 的 YAML front matter 规范并放入 skills/ 目录。
这个 Agent 有哪些优点和局限?
- 明确的技能路由机制,通过 SKILL.md 的 YAML front matter 实现,描述简短,便于匹配。
- 脚本幂等且避免覆盖真实文件,安全地创建和管理符号链接。
- 提供独立的 browser-tools.ts,可基于 Chrome DevTools 进行浏览器自动化,无需额外依赖。
- 通过 validate-skills 和 docs-list.ts 提供验证工具,确保技能和文档质量。
- 主要针对 macOS 设计,在 Windows/Linux 上可能需要调整。
- 与 Codex 和 Claude Code 的特定行为耦合,可能随版本变化而不稳定。
- 依赖符号链接和特定路径(如 ~/Projects/agent-scripts),迁移到其他位置需要修改。
- 技能和规则是针对个人工作区(Peter 的),通用性有限,下游需要自定义。
如何安装或部署这个 Agent?
克隆仓库:
git clone https://github.com/steipete/agent-scripts依赖:需要 macOS(因为 sync 脚本设计为 Mac 上运行)、git、可选 Bun(用于编译 browser-tools.ts)。初始化:运行 scripts/sync-skills 创建全局符号链接。配置 git 钩子:git config core.hooksPath hooks
如何使用这个 Agent?
确保你的项目引用共享指令:在 AGENTS.MD 中写入 READ ~/Projects/agent-scripts/AGENTS.MD BEFORE ANYTHING (skip if missing)。在 skills/ 下添加新技能,包含正确的 SKILL.md 格式,编辑后运行 scripts/validate-skills 校验。运行 scripts/sync-skills 同步技能和指令。对于 browser-tools.ts,可运行 bun build scripts/browser-tools.ts --compile --target bun --outfile bin/browser-tools 生成二进制,然后使用 start --profile、nav <url> 等命令。