project-specification
Scannednpx machina-cli add skill athola/claude-night-market/project-specification --openclawTable of Contents
- When to Use
- Integration
- Specification Structure
- 1. Overview Section
- 2. Functional Requirements (FR-XXX)
- FR-001: [Requirement Name]
- 3. Non-Functional Requirements (NFR-XXX)
- NFR-001: [Category] - [Requirement]
- 4. Technical Constraints
- 5. Out of Scope
- Out of Scope (v1.0)
- Clarification Workflow
- Ambiguity Detection
- Question Generation
- Clarification Session
- Quality Checks
- Output Format
- Change History
- Overview
- Functional Requirements
- Non-Functional Requirements
- Technical Constraints
- Out of Scope
- Dependencies
- Acceptance Testing Strategy
- Success Criteria
- Glossary
- References
- Acceptance Criteria Patterns
- Given-When-Then
- Error Cases
- Performance Criteria
- Security Criteria
- Related Skills
- Related Commands
- Examples
Project Specification Skill
Transform project briefs into structured, testable specifications with acceptance criteria.
Delegation
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.
When To Use
- After brainstorming phase completes
- Have project brief but need detailed requirements
- Need testable acceptance criteria for implementation
- Planning validation and testing strategy
- Translating business requirements into technical specs
- Defining scope boundaries and out-of-scope items
When NOT To Use
- Still exploring problem space (use
Skill(attune:project-brainstorming)instead) - Already have detailed specification (use
Skill(attune:project-planning)instead) - Refining existing implementation (use code review skills)
- Making strategic decisions (use
Skill(attune:war-room)for complex choices)
Integration
With spec-kit:
- Delegates to
Skill(spec-kit:spec-writing)for methodology - Uses spec-kit templates and validation
- Enables clarification workflow
Without spec-kit:
- Standalone specification framework
- Requirement templates
- Acceptance criteria patterns
Specification Structure
1. Overview Section
- Purpose: What the project achieves (1-2 sentences)
- Scope: IN/OUT boundaries
- Stakeholders: Who cares and why
2. Functional Requirements (FR-XXX)
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:
- Description has no ambiguous words (might, could, maybe, probably)
- At least 2 acceptance criteria (happy path + error case)
- Criteria use Given-When-Then format
- Criteria are testable (observable outcomes)
- Dependencies are explicit
3. Non-Functional Requirements (NFR-XXX)
Categories:
- Performance: Response times, throughput, resource limits
- Security: Authentication, authorization, data protection, compliance
- Reliability: Uptime, error handling, recovery, fault tolerance
- Usability: UX requirements, accessibility, documentation
- Maintainability: Code quality, testing, observability
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.
4. Technical Constraints
- Technology stack selections with rationale
- Integration requirements
- Data requirements (schema, migrations)
- Deployment constraints
- Regulatory/compliance requirements
5. Out of Scope
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]
Verification: Run the command with --help flag to verify availability.
Clarification Workflow
Ambiguity Detection
Scan specification for:
- Vague quantifiers (many, few, several, most)
- Ambiguous terms (user-friendly, fast, scalable)
- Missing dependencies
- Untestable criteria
- Conflicting requirements
Question Generation
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.
Clarification Session
Run interactive Q&A:
- Present all questions
- Gather stakeholder responses
- Update specification
- Re-validate for new ambiguities
- Iterate until clear
Quality Checks
Before completing specification:
- ✅ All requirements have unique IDs (FR-XXX, NFR-XXX)
- ✅ All functional requirements have ≥2 acceptance criteria
- ✅ All criteria use Given-When-Then format
- ✅ No ambiguous language detected
- ✅ Dependencies documented
- ✅ Effort estimates provided
- ✅ Out of scope explicitly stated
- ✅ Success criteria defined
Output Format
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.
Acceptance Criteria Patterns
Given-When-Then
Given [initial context/state]
When [action occurs]
Then [expected outcome]
Verification: Run the command with --help flag to verify availability.
Examples:
- Given unauthenticated user, when accessing dashboard, then redirect to login
- Given valid credentials, when logging in, then create session and redirect to dashboard
- Given expired session, when making API request, then return 401 Unauthorized
Error Cases
Always include error scenarios:
- Invalid input handling
- Authentication/authorization failures
- Network/service failures
- Resource exhaustion
- Edge cases and boundaries
Performance Criteria
Make performance requirements testable:
- "Dashboard loads in < 2 seconds" (measurable)
- NOT "Dashboard is fast" (vague)
Security Criteria
Make security requirements verifiable:
- "All API endpoints require authentication" (testable)
- NOT "System is secure" (vague)
Post-Completion: Workflow Continuation (REQUIRED)
Automatic Trigger: After Quality Checks pass and docs/specification.md is saved, MUST auto-invoke the next phase.
When continuation is invoked:
- Verify
docs/specification.mdexists and is non-empty - Display checkpoint message to user:
Specification complete. Saved to docs/specification.md. Proceeding to planning phase... - Invoke next phase:
Skill(attune:project-planning)
Bypass Conditions (ONLY skip continuation if ANY true):
--standaloneflag was provided by the userdocs/specification.mddoes not exist or is empty (phase failed)- User explicitly requests to stop after specification
Do NOT prompt the user for confirmation — this is a lightweight checkpoint, not an interactive gate. The user can always interrupt if needed.
Related Skills
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
Related Commands
/attune:specify- Invoke this skill/attune:specify --clarify- Run clarification workflow/attune:blueprint- Next step in workflow
Examples
See /attune:specify command documentation for complete examples.
Troubleshooting
Common Issues
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
Source
git clone https://github.com/athola/claude-night-market/blob/master/plugins/attune/skills/project-specification/SKILL.mdView on GitHub Overview
Transforms project briefs into structured specs with acceptance criteria for requirements translation, spec creation, and pre-implementation planning. It can delegate to spec-kit for comprehensive documents, while handling quick spec needs. This skill helps define scope and validation upfront.
How This Skill Works
The skill analyzes the project brief, establishes an Overview, Scope, and Stakeholders, then formats Functional (FR-XXX) and Non-Functional (NFR-XXX) requirements with clear Acceptance Criteria. It follows a structured format and can delegate to spec-kit:spec-writing for deeper, template-driven documentation, enabling a ready-to-implement spec.
When to Use It
- After brainstorming phase completes
- Have project brief but need detailed requirements
- Need testable acceptance criteria for implementation
- Planning validation and testing strategy
- Translating business requirements into technical specs
Quick Start
- Step 1: Gather the project brief and identify the key stakeholders
- Step 2: Draft the Overview, Scope, and initial FRs (FR-001, FR-002, ...)
- Step 3: Add Acceptance Criteria using Given-When-Then and validate with stakeholders
Best Practices
- Start with a concise Overview (Purpose, Scope, Stakeholders)
- Define FR-XXX and NFR-XXX blocks with explicit Acceptance Criteria
- Use Given-When-Then style for clear test cases within criteria
- Leverage spec-kit:spec-writing when a full spec is required
- Ensure traceability with Dependencies, References, and Change History
Example Use Cases
- Spec for a mobile checkout flow with payment gateway integration and rollback criteria
- API authentication and token refresh mechanism with security constraints
- Admin dashboard permissions and role-based access control requirements
- User onboarding wizard steps with validation rules and analytics events
- Data export feature specifying formats, scheduling, and performance constraints
Frequently Asked Questions
Related Skills
ab-test-setup
ranbot-ai/awesome-skills
Structured guide for setting up A/B tests with mandatory gates for hypothesis, metrics, and execution readiness.
decisive-action
athola/claude-night-market
Guidance on when to ask clarifying questions vs proceed with standard
session-management
athola/claude-night-market
Manage Claude Code sessions with naming, checkpointing, and resume strategies.
multi-review
Pamacea/smite
MANDATORY gate BEFORE merging PR or deploying to production in smite project. Invoke FIRST when 'comprehensive review', 'check security', 'performance review', 'test coverage review', 'code quality audit' - orchestrates parallel review by 4 specialized agents (security, performance, testing, documentation) with consolidated report and scoring. Specific phrases: 'review this PR', 'security audit', 'performance check', 'test review'. (user)
pattern-capture
Pamacea/smite
Invoke AFTER successful feature implementation when 'that went well', 'save this pattern', 'document this approach', 'capture this solution' - captures reusable code patterns with context (before/after, steps, benefits, trade-offs) for future team knowledge sharing. Auto-triggers on multi-file refactors or complex problem solutions. Specific phrases: 'save pattern', 'document approach', 'capture solution'. (user)
progressive-build
Pamacea/smite
Invoke BEFORE building complex features requiring both speed AND quality in smite project - progressive enhancement workflow using Haiku (MVP in 2min) → Sonnet (quality in 5min) → Opus (excellence in 10min). Triggers on 'complex feature', 'optimize and build', 'production-ready feature', 'build with optimization'. Total: 17min, 9.5/10 quality, 73% cost savings vs Opus-only. Specific phrases: 'progressive build', 'enhance this', 'iterate and improve'. (user)