Community编程与开发github.com

teresa1992/agent-readiness-audit

用于审核仓库对AI编码助手的就绪程度,审查AGENTS.md/CLAUDE.md、仓库内技能、lint护栏以及提交/推送门禁的只读审计技能。输出审核报告。

agent-readiness-audit 是什么?

该技能用于对指定仓库进行全面审计,评估其对AI编码助手的就绪程度。它可以自动发现仓库的技术栈(语言、框架、包管理器等)、检查共享代理指令文件(如AGENTS.md、CLAUDE.md、.cursorrules等)、识别已文档化的工作流技能、验证约定是否被lint规则强制执行,并确保提交/推送门禁(pre-commit hook、pre-push hook)和CI流程的正确配置。审计过程是只读的,不会修改、创建或删除任何文件。输出内容包含总结表、差距分析、优先级排序的改进建议以及未文档化约定的候选列表。该技能适用于Claude Code等具备文件系统访问能力的AI编码代理,帮助团队提升代理工作流的可靠性。

兼容平台✓Claude Code~Codex CLI✓Cursor
npx skills add https://github.com/teresal92/agent-skills/tree/HEAD/agent-readiness-audit

Installed? Explore more 编程与开发 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

代理就绪度审计

对照以下清单审计当前仓库,并报告差距。此为只读审计:绝不修改、创建或删除仓库文件。

第1步:发现技术栈

在判断任何事项之前,先识别:

  • 语言、框架、包管理器、单体仓库结构
  • 使用的 linter、formatter 和 typechecker
  • 测试运行器
  • 钩子管理器(husky、lefthook、pre-commit、simple-git-hooks、普通 .git/hooks)
  • CI 系统及其配置
  • 代理指令文件(AGENTS.md、CLAUDE.md、.cursorrules、copilot-instructions 等)
  • 包含技能、runbook、提示词或工作流文档的目录

使用仓库实际使用的工具进行评估。除非当前工具无法胜任,否则不建议更换工具。

预算

  • 从目录列表、配置文件和指令文件开始。使用 grep、计数和文件列表,而不是完整阅读源代码文件。
  • 对每个主要包最多抽样3个代表性文件。
  • 如果仓库过大无法覆盖,说明哪些部分未被检查。

第2步:评估每个清单项

每项分配一个状态:

  • PASS:清晰到位且有效
  • PARTIAL:存在但不完整、过时、未强制执行或不一致
  • MISSING:你检查了但不存在
  • N/A:不适用于此技术栈(说明原因)
  • UNCLEAR:无法检查(说明阻碍因素,如外部CI或仓库部分未检查)

每条状态需要提供证据:文件路径、配置键或简短引用片段(每条不超过15词)。绝不猜测:如果你检查了但没找到,标记 MISSING;如果无法检查,标记 UNCLEAR。

清单

  1. 共享代理指令

    • 所有代理和新工程师都读取的单一根级指令文件
    • 涵盖代码风格规则(导出风格、导入结构、文件组织、反模式)
    • 要求在信任边界验证外部数据
    • 说明哪些测试值得编写
    • 定义完成门禁:lint、typecheck 和相关测试必须在提交前通过
    • 当前且具体。抽查3到5条规则与实际代码对比,并报告代码是否遵循
  2. 仓库中的工作流技能

    • 将重复性工作流以分步技能或 runbook 形式记录在代码旁
    • 覆盖范围:提交、打开/堆叠PR、代码审查、通过CI的PR流程、依赖变更、本地化
    • 覆盖特定技术栈的工作流(数据层、路由、设计系统、代码生成等)
    • 每个技能包含触发器、有序步骤和完成定义
    • 技能是唯一真实来源,不重复也不矛盾
  3. 约定通过 lint 规则强制执行

    • 文档化的约定有匹配的 lint 规则
    • 自定义 lint 规则或插件覆盖项目特定用法(数据获取、样式、测试、翻译)
    • 针对常见代理错误的反模式规则:链式或不必要的类型断言、松散类型参数(unknown/any)、空对象条件展开,以及代码库中发现的任何重复低质量模式
    • 规则是错误级别,非警告级别,且无全局禁用
  4. 自动化门禁

    • 预提交钩子格式化、lint 和 typecheck 更改的代码
    • 预推送钩子 lint 或测试受影响的包,包括依赖项
    • CI 重新运行相同检查,因此钩子无法绕过
    • 钩子速度合理
    • 钩子已接线:钩子配置已提交,存在安装步骤(prepare 脚本、设置文档或 core.hooksPath),且其所调用的命令存在。通过读取文件验证;绝不运行钩子
  5. 监督与结构

    • 架构决策已文档化
    • PR 审查要求在合并前(如果可见,检查分支保护或 CODEOWNERS)
    • 包和模块边界清晰且已强制执行

第3步:发现未文档化的约定

抽样代码以寻找虽被一致应用但未写在任何地方的模式,以及代理常搞错但未文档化的模式(松散类型、未经验证的外部数据、不一致的导出、重复逻辑)。列出最优先添加到指令文件或转为 lint 规则的前5个候选。

第4步:报告

输出:

  1. 总结表:项目、状态、一行证据
  2. "差距"部分:每个 PARTIAL、MISSING 或 UNCLEAR 项、问题是什么以及为何对代理可靠性重要
  3. 按优先级排序的推荐列表(最高杠杆率优先),每个包含具体下一步和大致工作量(小/中/大),以该仓库现有工具的角度表述
  4. 第3步中的前5个约定候选

直截了当。不要用夸奖填充。如果某件事没问题,说 PASS 然后继续。

报告后,主动提供搭建缺失部分的帮助(入门指令文件、技能模板、lint 规则存根),但在被要求之前不要创建任何内容。

相关技能