Skillshub spec-writing
install
source · Clone the upstream repo
git clone https://github.com/ComeOnOliver/skillshub
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/ComeOnOliver/skillshub "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/jeremylongshore/claude-code-plugins-plus-skills/spec-writing" ~/.claude/skills/comeonoliver-skillshub-spec-writing && rm -rf "$T"
manifest:
skills/jeremylongshore/claude-code-plugins-plus-skills/spec-writing/SKILL.mdsource content
Spec Writing
Overview
Spec Writing provides guidance on authoring effective
specs.md files that drive the Sprint plugin's autonomous development workflow. A well-written specification determines the quality of agent output by clearly defining goals, scope boundaries, and testing requirements.
Prerequisites
- Sprint plugin installed (
)/plugin install sprint - Project onboarding completed via
(creates/sprint:setup
andproject-goals.md
)project-map.md - Sprint directory created via
(generates/sprint:new
).claude/sprint/[N]/specs.md - Understanding of the sprint phase lifecycle (see the
skill)sprint-workflow
Instructions
- Open the generated
file atspecs.md
and define a concise goal statement at the top. State what the sprint delivers in one sentence (e.g., "Add user authentication with email/password login")..claude/sprint/[N]/specs.md - Define explicit scope boundaries using In Scope and Out of Scope sections. List specific features, endpoints, or components in each. Agents only implement what appears in scope; ambiguity leads to drift.
- Add the Testing section to control which testing agents run and how. Configure three settings as documented in
:${CLAUDE_SKILL_DIR}/references/testing-configuration.md
:QA
|required
|optional
-- Controls API and unit test executionskip
:UI Testing
|required
|optional
-- Controls browser-based E2E testsskip
:UI Testing Mode
|automated
-- Auto-run or user-driven testingmanual
- Set QA to
for new API endpoints, business logic changes, and data validation rules. Set QA torequired
for frontend-only changes, documentation updates, or configuration changes.skip - Set UI Testing to
for user-facing features, form submissions, and navigation flows. Chooserequired
mode for regression testing and standard CRUD flows; chooseautomated
mode for complex interactions, visual verification, or exploratory testing.manual - Keep specifications minimal but precise. The architect expands high-level specs into detailed implementation files (
,backend-specs.md
,frontend-specs.md
). Over-specifying implementation details inapi-contract.md
constrains the architect unnecessarily.specs.md - For iterative sprints, review
from the previous iteration. Remove completed items from specs and add any new requirements or bug fixes discovered during testing.status.md
Output
- A complete
file with goal, scope (in/out), and testing configurationspecs.md - Clear scope boundaries that prevent agent drift during implementation
- Testing configuration that selects appropriate QA and UI testing agents
- Iteratively refined specs where completed work is removed and remaining work is focused
Error Handling
| Error | Cause | Solution |
|---|---|---|
| Agents implement unintended features | Missing "Out of Scope" section | Explicitly list features excluded from this sprint |
| Tests not running during sprint | Testing section omitted or set to | Add and to the Testing section |
| Sprint iterates without converging | Specs too broad for a single sprint | Break into smaller sprints targeting one domain boundary each |
| Architect produces conflicting spec files | Ambiguous or contradictory requirements in | Review for conflicting statements; each requirement should have a single interpretation |
| Manual tests not triggered | set to | Change to for scenarios requiring visual verification or exploratory testing |
Examples
Minimal but effective spec:
# Sprint 1: User Authentication ## Goal Add user authentication with email/password login ## Scope ### In Scope - Registration endpoint (POST /auth/register) - Login endpoint (POST /auth/login) - JWT token generation and validation - Password hashing with bcrypt ### Out of Scope - OAuth providers (Google, GitHub) - Password reset flow - Email verification ## Testing - QA: required - UI Testing: required - UI Testing Mode: automated
Frontend-only sprint (no QA needed):
# Sprint 3: Dashboard Redesign ## Goal Redesign the admin dashboard with responsive layout ## Scope ### In Scope - Responsive grid layout for dashboard widgets - Dark mode toggle - Mobile navigation drawer ### Out of Scope - New API endpoints - Database changes - Authentication changes ## Testing - QA: skip - UI Testing: required - UI Testing Mode: manual
Resources
-- Testing section options with guidance on when to use each setting${CLAUDE_SKILL_DIR}/references/testing-configuration.md- Sprint workflow skill for understanding how specs feed into the phase lifecycle
- API contract skill for designing endpoint contracts referenced by specs