From ottonomous
Generates manual and automated verification checklists from specs. Creates structured QA plans with human and test steps. Lists existing checklists for QA preparation, test planning, or completeness validation.
npx claudepluginhub brsbl/ottonomous --plugin ottonomousThis skill uses the workspace's default tool permissions.
**Argument:** $ARGUMENTS
Generates requirements-quality checklists validating completeness, clarity, consistency, and measurability of specs, plans, tasks. For pre-implementation quality gates, audits, or domain-specific (UX, API, security, performance).
Generates custom checklists to validate feature requirements for clarity, completeness, consistency, and coverage before implementation.
Generates custom checklists for feature specs as 'unit tests' verifying requirements' quality, clarity, completeness, and consistency—not implementation. Use for checklist generation, spec validation, or completeness checks.
Share bugs, ideas, or general feedback.
Argument: $ARGUMENTS
| Command | Behavior |
|---|---|
/qa list | List existing QA checklists |
/qa {spec-name-or-id} | Generate QA checklist from spec |
If $ARGUMENTS is list:
.otto/qa/*.md| Spec Name | Status | Created | Checks (Auto/Manual) |
|-----------|--------|---------|----------------------|
| Design Skill | approved | 2026-01-28 | 8 / 5 |
/qa <spec-name> to generate."Usage: /qa <spec-name-or-id>
.otto/specs/$ARGUMENTS.md (exact ID match).otto/specs/*.md and read frontmatter of each:
name field (case-insensitive substring)AskUserQuestion to disambiguate, showing name and ID for each/spec list to see available specs."Resolve the spec argument (see above), then:
.otto/tasks/{spec-id}.json
Launch checklist-generator subagent with Task tool:
Handoff to checklist-generator:
The subagent analyzes the spec and returns structured checklist items categorized as automated or manual.
Wait for subagent to complete.
Launch checklist-validator subagent with Task tool:
Handoff to checklist-validator:
The subagent reviews the checklist for completeness against the spec — flags uncovered user stories, missing edge cases, and test coverage gaps. Returns prioritized findings (P0-P2).
Wait for validation to complete.
If no findings, skip to step 6.
For each finding (highest priority first):
AskUserQuestion with "Accept", "Reject", "Modify"After processing all findings, continue to step 6.
mkdir -p .otto/qa
Write to .otto/qa/{spec-id}.md:
---
spec_id: {spec-id}
spec_name: {spec-name}
created_date: {YYYY-MM-DD}
status: draft
---
Checklist format:
# QA Checklist: {spec-name}
## Automated Verification
Tests that can be run programmatically.
| # | Category | Check | Expected Result | Test Command/File |
|---|----------|-------|-----------------|-------------------|
| A1 | API | POST /users returns 201 | User created with valid fields | `test/api/users.test.ts` |
| A2 | Validation | Empty name rejected | 400 with error message | `test/api/users.test.ts` |
## Manual Verification
Steps requiring human judgment or interaction.
| # | Category | Step | Expected Result | Status |
|---|----------|------|-----------------|--------|
| M1 | UI | Navigate to dashboard | Layout matches spec mockup | [ ] |
| M2 | UX | Submit form with valid data | Success feedback shown, data persists | [ ] |
| M3 | Edge Case | Resize to mobile viewport | Responsive layout, no overflow | [ ] |
Output the full checklist as rendered markdown so the user can review it inline.
Use AskUserQuestion with options:
open .otto/qa/{spec-id}.md, then ask againAfter each revision: Output the full updated checklist before asking for approval again. Revise until approved.
On approval, update status: draft to status: approved in the file.
Report: "QA checklist approved and saved to .otto/qa/{spec-id}.md"
"Run
/test runto execute automated checks. For manual verification, work through the Manual Checklist above."
Note: This checklist validates spec coverage — are all user stories and edge cases accounted for? For implementation correctness verification, use /verify and /test.