From attune
Transforms project briefs into structured testable specifications with user stories, acceptance criteria, functional/non-functional requirements, technical constraints, and out-of-scope items. Use after brainstorming for implementation planning.
npx claudepluginhub athola/claude-night-market --plugin attuneThis skill uses the workspace's default tool permissions.
- [When to Use](#when-to-use)
Searches, retrieves, and installs Agent Skills from prompts.chat registry using MCP tools like search_skills and get_skill. Activates for finding skills, browsing catalogs, or extending Claude.
Searches prompts.chat for AI prompt templates by keyword or category, retrieves by ID with variable handling, and improves prompts via AI. Use for discovering or enhancing prompts.
Creates isolated Git worktrees for feature branches with prioritized directory selection, gitignore safety checks, auto project setup for Node/Python/Rust/Go, and baseline verification.
Transform project briefs into structured, testable specifications with acceptance criteria.
For detailed specification writing workflows, this skill delegates to spec-kit:spec-writing as the canonical implementation. Use this skill for quick specification needs; use spec-kit for comprehensive specification documents.
Skill(attune:project-brainstorming) instead)Skill(attune:project-planning) instead)Skill(attune:war-room) for complex choices)With spec-kit:
Skill(spec-kit:spec-writing) for methodologyWithout spec-kit:
Format per requirement:
### FR-001: [Requirement Name]
**Description**: Clear, unambiguous description
**Acceptance Criteria**:
- [ ] Given [context], when [action], then [expected result]
- [ ] Given [context], when [action], then [expected result]
**Priority**: High | Medium | Low
**Dependencies**: FR-002, FR-005
**Estimated Effort**: S | M | L | XL
Verification: Run the command with --help flag to verify availability.
Validation Rules:
Categories:
Format:
### NFR-001: [Category] - [Requirement]
**Requirement**: [Specific, measurable requirement]
**Measurement**: [How to verify]
- Metric: [What to measure]
- Target: [Specific threshold]
- Tool: [How to measure]
**Priority**: Critical | High | Medium | Low
Verification: Run the command with --help flag to verify availability.
Explicit exclusions to prevent scope creep:
## Out of Scope (v1.0)
- [Feature explicitly NOT included]
- [Capability deferred to later version]
- [Integration not planned]
**Rationale**: [Why these are excluded]
After writing the Out of Scope section, create a GitHub issue for each deferred item so it is tracked in the backlog. This prevents good ideas from being lost in spec documents nobody re-reads.
# For each out-of-scope item:
gh issue create \
--title "[Backlog] <feature>: <brief description>" \
--body "## Context
Identified during specification of <project>.
Spec: <path-to-spec>
## Description
<what the item is and why it was deferred>
## References
<links to spec section, related issues>" \
--label "feature,low-priority"
Report created issues in the spec under Out of Scope:
## Out of Scope (v1.0)
- Codex session format (#332)
- SVG/MP4/WebM output (#333)
- Interactive session picker (#334)
Skip conditions:
--no-auto-issues flag passedScan specification for:
For each ambiguity:
**Question [N]**: [Reference to FR/NFR]
**Ambiguity**: [What is unclear]
**Impact**: [Why this matters]
**Options**:
- Option A: [Interpretation 1]
- Option B: [Interpretation 2]
**Recommendation**: [Preferred option with rationale]
Verification: Run the command with --help flag to verify availability.
Run interactive Q&A:
Before completing specification:
Save to docs/specification.md:
# [Project Name] - Specification v[version]
**Author**: [Name]
**Date**: [YYYY-MM-DD]
**Status**: Draft | Review | Approved | Implemented
## Change History
| Version | Date | Author | Changes |
|---------|------|--------|---------|
| 0.1.0 | 2026-01-02 | Alex | Initial draft |
## Overview
**Purpose**: [1-2 sentence purpose]
**Scope**:
- **IN**: [What's included]
- **OUT**: [What's excluded]
**Stakeholders**:
- [Stakeholder 1]: [Their interest]
- [Stakeholder 2]: [Their interest]
## Functional Requirements
[FR-XXX sections]
## Non-Functional Requirements
[NFR-XXX sections]
## Technical Constraints
[Technology, integration, data, deployment]
## Out of Scope
[Explicit exclusions with rationale]
## Dependencies
[External dependencies, third-party services]
## Acceptance Testing Strategy
[How requirements will be validated]
## Success Criteria
- [ ] [Measurable success indicator 1]
- [ ] [Measurable success indicator 2]
## Glossary
[Domain terms and definitions]
## References
[Related documents, research, prior art]
Verification: Run pytest -v to verify tests pass.
Given [initial context/state]
When [action occurs]
Then [expected outcome]
Verification: Run the command with --help flag to verify availability.
Examples:
Always include error scenarios:
Make performance requirements testable:
Make security requirements verifiable:
Automatic Trigger: After Quality Checks pass and docs/specification.md is saved, MUST auto-invoke the next phase.
When continuation is invoked:
docs/specification.md exists and is non-emptySpecification complete. Saved to docs/specification.md.
Proceeding to planning phase...
Skill(attune:project-planning)
Bypass Conditions (ONLY skip continuation if ANY true):
--standalone flag was provided by the userdocs/specification.md does not exist or is empty (phase failed)Do NOT prompt the user for confirmation — this is a lightweight checkpoint, not an interactive gate. The user can always interrupt if needed.
Skill(spec-kit:spec-writing) - Spec-kit methodology (if available)Skill(attune:project-brainstorming) - Previous phaseSkill(attune:project-planning) - AUTO-INVOKED next phase after specificationSkill(attune:mission-orchestrator) - Full lifecycle orchestration/attune:specify - Invoke this skill/attune:specify --clarify - Run clarification workflow/attune:blueprint - Next step in workflowSee /attune:specify command documentation for complete examples.
Command not found Ensure all dependencies are installed and in PATH
Permission errors Check file permissions and run with appropriate privileges
Unexpected behavior
Enable verbose logging with --verbose flag