bonfire-spec
npx skills add https://github.com/vieko/bonfire --skill bonfire-spec
Agent 安装分布
Skill 文档
Create Implementation Spec
Create an implementation spec for $ARGUMENTS.
Outcome
A complete implementation spec written to the configured specs location that captures:
- What to build and why
- Key decisions with rationale
- Concrete implementation steps
- Edge cases and error handling
- Testing approach and scope boundaries
Acceptance Criteria
The spec file must contain these sections:
| Section | Purpose |
|---|---|
## Overview |
What this feature does and why it matters |
## Decisions |
Key technical choices with rationale |
## Implementation Steps |
Ordered, actionable steps to build it |
## Edge Cases |
Error handling, boundary conditions, failure modes |
Additional sections are welcome but these four are required.
Quality signals:
- Decisions reference actual codebase patterns (not generic advice)
- Implementation steps are specific to this codebase (file paths, function names)
- Edge cases reflect real constraints discovered in research
Constraints
Context Isolation
Research and writing happen in isolated subagent contexts to preserve main context for user interaction.
| Phase | Agent | Model | Why |
|---|---|---|---|
| Research | codebase-explorer |
inherit | Fast exploration without polluting main context |
| Writing | writer |
inherit | Synthesis in isolation; has full research + interview context |
Use the Task tool with the appropriate agent. The subagents have user-invocable: false so they’re only accessible via Task.
User Interview Required
The user must be interviewed before writing. Research informs questions; questions surface decisions the user wouldn’t think to mention.
Interview must cover:
- Core technical decisions (patterns, approaches, tradeoffs)
- Edge cases and error handling preferences
- Testing approach
- Scope boundaries (what’s explicitly out)
Use AskUserQuestion. Good questions are informed by research, about tradeoffs, and codebase-specific.
File Locations
- Config:
<git-root>/.bonfire/config.jsoncontainsspecsLocation - Default:
.bonfire/specs/if not configured - Naming:
<issue-id>-<topic>.mdor<topic>.md
Verification
After writing, verify the spec contains all 4 required sections. If incomplete:
- Warn user what’s missing
- Offer: proceed / retry / abort
Session Context
After writing the spec, add a reference to it in <git-root>/.bonfire/index.md under Current State. This links the spec to the session that created it.
Completion
After verification, confirm spec creation and offer options:
- Proceed with implementation
- Refine specific sections
- Save for later
Guidance (Not Rules)
These patterns tend to work well, but adapt as needed:
Research before interviewing – Findings make questions specific and valuable.
Three interview rounds – Core decisions â Edge cases â Testing & scope. But collapse if user is time-constrained.
Show your work – Tell user what you’re doing: “Researching…”, “Starting interview…”, “Writing spec…”
Fallback gracefully – If subagent fails, do the work in main context. Warn user but don’t stop.
Large codebases – Explorer may need multiple passes. Offer to continue if findings seem incomplete.
Writer context – When invoking the writer agent, specify document type as “spec” so it uses the correct format.
Anti-Patterns
Don’t ask generic questions – “What features do you want?” wastes an interview slot.
Don’t skip the interview – Research alone misses user intent. Interview alone misses codebase reality.
Don’t write without verification – Subagents can produce partial output. Always check.
Don’t over-specify implementation – Steps should guide, not micromanage. Leave room for implementation judgment.