spec_generator 精选
Generates a structured Workable Spec JSON to guide a Developer Worker.
安装方式
cp -r tools/caretaker-agent/cloudrun/triage-worker/.gemini/skills/spec_generator ~/.claude/skills/spec-generator把该 skill 目录放进客户端 skills 目录。不同客户端的目录可能不同,Claude Code 默认是 ~/.claude/skills/
https://raw.githubusercontent.com/google-gemini/gemini-cli/9b6e0265d16bbd29ca51e33c9e0c01dc4cec5e83/tools/caretaker-agent/cloudrun/triage-worker/.gemini/skills/spec_generator/SKILL.md下载后另存为 ~/.claude/skills/spec-generator/SKILL.md。链接锁定采集时的 commit,内容与本站展示一致。
整仓一次性获取:git clone --depth 1 https://github.com/google-gemini/gemini-cli.git
依赖与权限
- 无需 API Key
- 无需联网
- 依赖外部命令:
gomake - 以上为按正文与 frontmatter 自动推断的信号,仅供参考;安装前建议先阅读原文。
SKILL.md 正文
Spec Generator Instructions
Extract key technical details from the issue and organize them according to the following strict JSON schema.
Critical Rules:
- Codebase Verification: Rely on file paths and locations found during your codebase exploration. Ensure all files mentioned in
files_to_modifyactually exist in the repository. Do not make up file paths. - Target File Selection: List all source code files in
files_to_modifywhere code changes belong.
- Fix config or state issues early at their setup/hook entrypoint rather than refactoring low-level utilities.
- Strictly do NOT list test files or files that were only inspected without requiring code changes.
- Strict JSON Escaping: Ensure the generated output is standard, valid JSON. In JSON string values (such as summary fields or verification steps), do NOT escape single quotes with backslashes. Write them directly as
'(not\\').
[!IMPORTANT]
The output MUST strictly adhere to this schema. Deviations (like putting objects inside arrays instead of strings) will break the downstream automated code generation pipeline.
The final workable_spec object must conform strictly to this JSON Schema specification. Every field listed below is strictly required and must be populated:
{
"type": "object",
"properties": {
"issue_id": {
"type": "string",
"description": "The specific GitHub issue identifier in the canonical format: {owner}/{repo}#{number} (e.g., google/gemini-cli#245)."
},
"summary": {
"type": "object",
"description": "A deep technical summary of the issue.",
"properties": {
"problem": {
"type": "string",
"description": "Concise statement of the problem."
},
"root_cause": {
"type": "string",
"description": "Analysis of the underlying cause of the bug."
},
"context": {
"type": "string",
"description": "Any additional technical context or background."
}
}
},
"implementation_plan": {
"type": "object",
"description": "Details required for code implementation of the fix.",
"properties": {
"files_to_modify": {
"type": "array",
"description": "List of source code files requiring changes relative to the repository root (e.g. ['src/cli.ts']). Strictly do NOT include test files (*.test.ts, *.spec.ts) here; test files must go into testing_strategy.test_file.",
"items": {
"type": "string"
}
},
"steps": {
"type": "array",
"description": "Ordered step-by-step instructions to implement the fix. Each step must be a simple, flat string description. Do not nest objects inside this array.",
"items": {
"type": "string"
}
}
}
},
"testing_strategy": {
"type": "object",
"description": "Instructions for validating the fix.",
"properties": {
"test_file": {
"type": "string",
"description": "Path to the relevant test file relative to the repository root (e.g., 'tests/cli.test.ts')."
},
"expected_behavior": {
"type": "string",
"description": "Description of how the system should behave after the fix."
},
"verification_steps": {
"type": "array",
"description": "Specific steps to add or modify in the test file.",
"items": {
"type": "string"
}
},
"framework": {
"type": "string",
"description": "Testing framework used.",
"enum": ["Vitest", "N/A"]
}
}
}
}
}
Do not include any metadata like spam assessment or effort tags in this spec. Keep it focused entirely on instructions for code generation and testing.
质量与来源
- 所属仓库
- google-gemini/gemini-cli
- 仓库星标
- 11 万
- 最近更新
- 今天
- 采集时间
- 今天
- commit
- 9b6e0265d16b
- 内容指纹
- sha256:cebff453fc13043
- 文件路径
- tools/caretaker-agent/cloudrun/triage-worker/.gemini/skills/spec_generator/SKILL.md
同仓库其它 Skill
查看全部 25 个agent-tui
Main Agents: Do NOT use this skill directly. If you need to test the TUI, invoke the `tui_tester` subagent. Drive terminal UI (TUI) applications programmatically for testing, automation, and inspection. Use when: automating CLI/TUI interactions, regression testing terminal apps, or verifying interactive behavior. Also use when: user asks "what is agent-tui", "what does agent-tui do", "demo agent-tui", "show me agent-tui", "how does agent-tui work", or wants to see it in action.
async-pr-review
Trigger this skill when the user wants to start an asynchronous PR review, run background checks on a PR, or check the status of a previously started async PR review.
behavioral-evals
Guidance for creating, running, fixing, and promoting behavioral evaluations. Use when verifying agent decision logic, debugging failures, debugging prompt steering, or adding workspace regression tests.
ci
A specialized skill for Gemini CLI that provides high-performance, fail-fast monitoring of GitHub Actions workflows and automated local verification of CI failures. It handles run discovery automatically—simply provide the branch name.
code-reviewer
Use this skill to review code. It supports both local changes (staged or working tree) and remote Pull Requests (by ID or URL). It focuses on correctness, maintainability, and adherence to project standards.
docs-changelog
Generates and formats changelog files for a new release based on provided version and raw changelog data.
相似 Skill
更多「编码」access
Manage Discord channel access — approve pairings, edit allowlists, set DM/group policy. Use when the user asks to pair, approve someone, check who's allowed, or change policy for the Discord channel.
configure
Set up the Discord channel — save the bot token and review access policy. Use when the user pastes a Discord bot token, asks to configure Discord, asks "how do I set this up" or "who can reach me," or wants to check channel status.
access
Manage iMessage channel access — approve pairings, edit allowlists, set DM/group policy. Use when the user asks to pair, approve someone, check who's allowed, or change policy for the iMessage channel.
configure
Check iMessage channel setup and review access policy. Use when the user asks to configure iMessage, asks "how do I set this up" or "who can reach me," or wants to know why texts aren't reaching the assistant.
access
Manage Telegram channel access — approve pairings, edit allowlists, set DM/group policy. Use when the user asks to pair, approve someone, check who's allowed, or change policy for the Telegram channel.
configure
Set up the Telegram channel — save the bot token and review access policy. Use when the user pastes a Telegram bot token, asks to configure Telegram, asks "how do I set this up" or "who can reach me," or wants to check channel status.