A personal collection of OpenCode tools, skills, commands, and plugins for iterative development workflows.
This toolkit provides:
- Iterative loop workflows - PRD generation, unit test coverage, E2E test planning
- Session memory - Context injection from past sessions via qmd
- Git safety - Blocks destructive git commands
- Task management - Uses OpenCode's native todowrite/todoread for task tracking
- Code quality - Deslop tool to remove AI-generated code cruft
A 4-phase workflow for generating comprehensive Product Requirement Documents:
- Input classification
- Interview + parallel research agents
- Spec writing to
plans/<feature>/spec.md - Task handoff (creates todos from stories)
2-phase workflow for test coverage improvement:
- Coverage analysis and gap identification
- Task creation for each gap (via todowrite)
2-phase workflow for end-to-end test planning:
- Flow analysis and critical path identification
- Task creation per flow (via todowrite)
Runs code reviewers, addresses findings, commits changes, marks task complete.
Some features require external tools:
- qmd - Session memory search (
brew install qmdorcargo install qmd)
- Specs go in
plans/<feature>/spec.md - Loop state files:
.opencode/{prd,ut,e2e}-loop-*.local.md - Atomic commits per task
- All tests/lint/types must pass before completing tasks
- Production quality always
- Pre-commit reviews required (code-simplifier)
- Verify work with tests before marking complete
- Result must include concrete verification, not vague claims
Tools with array/object parameters (todowrite, question, etc.) fail with Zod validation errors:
Error: expected array, received string
Root cause: LLMs serialize array parameters as JSON strings ("[{...}]") instead of actual arrays ([{...}]).
Status: Fix in progress (PR #7513), not yet merged.
Workaround: Track tasks manually in conversation or use markdown files until fix is merged.
Affected tools:
todowrite(todos array)question(questions array)browser_fill_form(fields array)- Any MCP tool with array/object parameters