智能体生成器

agents-generator
分类通用
作者Agentic Awesome Skills 社区
许可MIT
评分4.60/5
使用10.3K

Skill: agents-generator

> [!WARNING]
> [仅限授权使用] 本技能会写入或更新目标项目中的 AGENTS.md.agents/rules/、可选的平台指令文件以及带时间戳的备份文件。请先阅读检测到的输入和建议的输出,在修改目标文件前获得批准,且仅在用户预期的项目范围内使用。

何时使用

当用户希望实现以下目标时使用此技能:

  • 创建一个完整的、项目特定的 AGENTS.md,而非通用的 Agent 规则;
  • 为检测到的框架、测试、数据库、样式或单体仓库包生成配套规则;
  • 创建精简版 AGENTS.md、在写入前预览更改,或在技术栈变更后更新现有指令。

不要在未检查目标项目的情况下凭空捏造规范,不要覆盖用户范围之外的指令,也不要将生成的指南视为人工审核的替代品。

该技能为目标项目生成量身定制的 AGENTS.md + .agents/rules/*.md —— 它不是带有占位符的模板,而是与项目实际工具链相匹配的动态文档。

你将获得什么

对于一个使用 Bun + Next.js 16 + Tailwind + Vitest + Server Actions 的项目,该技能将生成:

code
AGENTS.md
├── Setup commands: bun install, bun dev, bun run test:run, bun doctor
├── Verification Cycle: bunx tsc --noEmit → bun run lint → bun run test:run → bun doctor
├── Conventions: "Bun always. Plain TypeScript types + guards."
└── Architecture → .agents/rules/architecture.md

.agents/rules/
├── architecture.md ← 包含真实目录和精确版本的 ASCII 图表
├── frontend-patterns.md ← 组件规则、状态位置、信任边界
├── server-actions.md ← downloadVideo() 流程, DownloadResult 类型, 速率限制器
├── testing.md ← "5 个文件中的 74 个测试", vitest 命令, mock 模式
├── git-workflow.md ← Conventional commits, pre-commit 检查
└── sdd-workflow.md ← Preflight 默认值, post-apply 验证

不会生成的规则示例:backend.md(无 NestJS)、database.md(无 ORM)、i18n.md(硬编码西班牙语)、forms.md(手动输入)、styling.md(Tailwind 已包含在前端规则中)。

激活契约

为目标项目生成 AGENTS.md + .agents/rules/*.md。绝不猜测 —— 必须先阅读项目的实际文件。

模式选择

| 用户表述 | 模式 | 输出 |
|-----------|------|--------|
| "simple AGENTS.md", "just the basics", "minimal" | Minimal (精简) | 单个 AGENTS.md(约 30 行,无规则文件) |
| "full AGENTS. | Full (完整) | AGENTS.md + 完整的 .agents/rules/ 目录 |
| "md", "with rules", "complete" 或默认 | Full (完整) | AGENTS.md + .agents/rules/*.md |
| "update AGENTS.md", "refresh", "my stack changed" | Update (更新) | 对比现有内容,仅重新生成变更部分 |

Dry-run (试运行) 模式

如果用户要求 "preview" (预览)、"show what would change" (显示变更内容) 或 "dry-run" (试运行):执行所有检测但不要写入文件。显示检测摘要、将要创建的文件、跳过的规则以及输出示例。

硬性规则

  • 先读后写,严禁读取密钥。 在生成任何内容前,先读取 package.json、非密钥配置文件和目录结构。绝不要打开 .env.env.local、凭据存储或类似的密钥文件。仅通过 .env.example 占位符和源代码引用(如 process.env.NAME)来推断环境变量名称,不得读取或报告具体数值。
  • 优先检测包管理器。 检查锁文件:bun.lock $\rightarrow$ bun, pnpm-lock.yaml $\rightarrow$ pnpm, package-lock.json $\rightarrow$ npm, yarn.lock $\rightarrow$ yarn。绝不要默认使用 npm。所有命令必须使用检测到的包管理器。
  • 仅生成适用内容。 纯前端项目不生成后端规则;没有 ORM 的项目不生成数据库规则。
  • 默认不执行项目脚本。 包管理器脚本是受仓库控制的 Shell 入口。检测并记录候选的格式化/ Lint 命令,但除非用户在审查了具体脚本内容和调用工具后单独请求执行,否则不要运行它们。
  • 验证命令。 输出中的每个命令必须在 package.json 的 scripts 中存在。
  • 禁止使用占位符。 扫描输出中是否包含 {{TODOadd here...。如果存在,则拒绝通过。
  • 先备份。 如果文件已存在,将其复制到 .agents/backups/ 并加上时间戳。

执行步骤

通用步骤

1. git rev-parse --show-toplevel $\rightarrow$ 获取项目根目录。
2. 优先检测包管理器:检查锁文件。bun.lock $\rightarrow$ bun, pnpm-lock.yaml $\rightarrow$ pnpm, package-lock.json $\rightarrow$ npm, yarn.lock $\rightarrow$ yarn。绝不要默认使用 npm。
3. 读取 package.json(脚本、依赖、工作区)。保存脚本用于后续验证。
4. 读取非密钥配置文件并探索目录结构。排除除仅含占位符的 .env.example 以外的所有 .env* 文件;绝不读取密钥值。
5. 选择模式(如果含义模糊则询问用户)。

Full (完整) 模式

1. 读取 assets/agents-full.md —— 这是包含所有章节和填充规则的 AGENTS.md 结构。
2. 读取项目文件,用真实数据填充每个占位符。绝不使用通用文本。
3. 在项目根目录生成 AGENTS.md。将内容包裹在 <!-- AGENTS-GENERATED-START --> / <!-- AGENTS-GENERATED-END --> 之间。
4. 针对每个适用的规则类别,从 assets/ 读取相应模板并在 .agents/rules/ 中生成规则文件。
5. 如果检测到 Claude (.claude/CLAUDE.md):根据 assets/claude.md 生成精简的 CLAUDE.md
6. 如果检测到平台文件:根据 assets/platform.md 生成。

Minimal (精简) 模式

1. 读取 assets/agents-minimal.md —— 30 行标准的 agents.md 格式。
2. 生成单个 AGENTS.md

Update (更新) 模式

1. 备份现有文件。
2. 重新检测项目状态。
3. 对比新旧内容。仅重新生成发生变更的类别。

生成后处理

  • 将检测到的 [format cmd][lint cmd] 作为未执行的候选命令报告。不要自动运行;仅在用户单独授权且其具体的项目控制脚本内容经过审查后,才执行其中一个。
  • 扫描 {{TODO...。修复所有发现的问题。
  • 验证所有命令均存在于 package.json 的 scripts 中。
  • 如果 AGENTS.md 超过 300 行,发出警告。如果超过 500 行,则进行迁移。
将内容转换为规则文件。
  • 在宣布完成前,使用 Conventional Commit 格式总结所有变更。
  • 报告:检测到、生成、跳过的内容以及置信度分数。

输出约定

返回:

  • 使用的模式及其原因

  • 创建/修改的文件

  • 检测摘要(所有类别)

  • 生成和跳过的规则(含原因)

  • 置信度分数

局限性

  • 生成的指令为建议方案,在采用或提交前需要人工审核。
  • 命令验证仅限于目标项目中可见的脚本和文件;无法证明工具、服务或平台特定命令在所有环境中均能运行。
  • 项目提供的包脚本为不可信的可执行代码。脚本的生成和文档化并不代表授权运行。
  • 该技能不授权在预定项目范围之外进行写入,也不替代项目特定的安全、构建或部署审核。

参考资料

| 优先级 | 文件 | 用途 |
|----------|------|---------|
| 必须 | assets/agents-full.md | 包含所有 25+ 章节和填充规则的完整 AGENTS.md 模板 |
| 必须 | assets/agents-minimal.md | 30 行 agents.md 标准模板 |
| 全量模式 | assets/architecture.md | 架构规则模板 |
| 全量模式 | assets/frontend-patterns.md | 前端模式模板 |
| 全量模式 | assets/server-actions.md | Server actions / 后端模板 |
| 全量模式 | assets/testing.md | 测试策略模板 |
| 全量模式 | assets/git-workflow.md | Git 工作流模板 |
| 全量模式 | assets/sdd-workflow.md | SDD 工作流模板 |
| 全量模式 | assets/styling.md | 样式规则模板 |
| 全量模式 | assets/forms.md | 表单模式模板 |
| 全量模式 | assets/database.md | 数据库规则模板 |
| 全量模式 | assets/i18n.md | i18n 规则模板 |
| 全量模式 | assets/backend.md | 后端/NestJS 模板 |
| 条件触发 | assets/claude.md | CLAUDE.md — 仅在检测到 Claude 时使用 |
| 条件触发 | assets/platform.md | 多平台文件 |
| 条件触发 | assets/agents-nested.md | Monorepo 嵌套 AGENTS.md |
| 参考 | references/decision-matrix.md | 完整的检测逻辑和边缘情况 |
| 参考 | references/example-output/README.md | 质量基准 |
| 参考 | references/template-filling-guide.md | 占位符填充规则 |