Provides guidance on defining acceptance criteria, quality gates, and validation requirements for software features. Activates when discussing acceptance criteria, definition of done, quality requirements, or validation strategies. Use for creating clear, testable requirements and quality standards.
Provides expert guidance on defining clear, testable validation criteria for software features. Activates when discussing acceptance criteria, Definition of Done, quality gates, or validation strategies.
/plugin marketplace add elafo/hefesto/plugin install hefesto@hermesThis skill inherits all available tools. When active, it can use any tool Claude has access to.
Provide expert guidance on defining clear, testable validation criteria for software features.
Activate when the user:
User stories should be:
Given [precondition/context]
When [action is performed]
Then [expected outcome]
Example:
Given a user is on the login page
When they enter valid credentials and click Submit
Then they are redirected to the dashboard
And a session cookie is set
Acceptance Criteria:
- [ ] User can enter email and password
- [ ] Invalid email format shows error message
- [ ] Failed login shows "Invalid credentials" message
- [ ] Successful login redirects to dashboard
- [ ] Session persists across page refreshes
Before a story is considered "tested":
Before a story is considered "validated":
Before a story is considered "documented":
Before feature integration testing:
Before feature validation:
Before feature completion:
❌ Bad: "The page should load fast" ✅ Good: "The page should load in under 2 seconds on 3G network"
❌ Bad: "The UI should be user-friendly" ✅ Good: "Users can complete the task in 3 clicks or fewer"
❌ Bad: "The system should handle errors well" ✅ Good: "When API returns 500 error, show 'Service temporarily unavailable' message with retry button"
| PRD Requirement | User Stories | Tests | Status |
|---|---|---|---|
| FR-001: User login | US-001, US-002 | auth.test.ts | ✅ |
| FR-002: Password rules | US-003 | validation.test.ts | ✅ |
| NFR-001: < 2s response | All stories | perf.test.ts | ✅ |
- Page load time: < 2 seconds (P95)
- API response time: < 200ms (P95)
- Concurrent users: Support 1000
- Database queries: < 100ms each
- All inputs validated and sanitized
- Authentication required for protected routes
- Sessions expire after 30 minutes of inactivity
- Passwords hashed with bcrypt (cost factor 12)
- HTTPS enforced for all connections
- WCAG 2.1 AA compliance
- Keyboard navigation supported
- Screen reader compatible
- Color contrast ratio > 4.5:1
- Focus indicators visible
- Uptime: 99.9%
- Recovery time: < 5 minutes
- Data backup: Daily with 30-day retention
- Graceful degradation on partial failures
## Definition of Done
A story/feature is done when:
### Code
- [ ] Code compiles without errors
- [ ] All tests pass
- [ ] Code coverage >= 80%
- [ ] No linter warnings
- [ ] Code reviewed by peer
### Testing
- [ ] Unit tests written for new code
- [ ] Integration tests for API changes
- [ ] Manual testing completed
- [ ] Edge cases verified
### Documentation
- [ ] Code documented (JSDoc/docstrings)
- [ ] README updated if needed
- [ ] API docs updated if endpoints changed
### Validation
- [ ] All acceptance criteria verified
- [ ] Tested in staging environment
- [ ] No critical bugs open
### Security
- [ ] Security scan passed
- [ ] No hardcoded secrets
- [ ] Inputs validated
| Criterion Type | Validation Method |
|---|---|
| Functional | Automated tests + Manual verification |
| Performance | Load tests + Benchmarks |
| Security | Security scans + Manual review |
| Accessibility | Automated tools + Screen reader testing |
| Usability | User testing + Heuristic evaluation |
Automate when:
Manual validation when:
When helping with validation:
This skill should be used when the user asks to "create an agent", "add an agent", "write a subagent", "agent frontmatter", "when to use description", "agent examples", "agent tools", "agent colors", "autonomous agent", or needs guidance on agent structure, system prompts, triggering conditions, or agent development best practices for Claude Code plugins.
This skill should be used when the user asks to "create a slash command", "add a command", "write a custom command", "define command arguments", "use command frontmatter", "organize commands", "create command with file references", "interactive command", "use AskUserQuestion in command", or needs guidance on slash command structure, YAML frontmatter fields, dynamic arguments, bash execution in commands, user interaction patterns, or command development best practices for Claude Code.
This skill should be used when the user asks to "create a hook", "add a PreToolUse/PostToolUse/Stop hook", "validate tool use", "implement prompt-based hooks", "use ${CLAUDE_PLUGIN_ROOT}", "set up event-driven automation", "block dangerous commands", or mentions hook events (PreToolUse, PostToolUse, Stop, SubagentStop, SessionStart, SessionEnd, UserPromptSubmit, PreCompact, Notification). Provides comprehensive guidance for creating and implementing Claude Code plugin hooks with focus on advanced prompt-based hooks API.