mirror of
https://github.com/documenso/documenso
synced 2026-04-21 13:27:18 +00:00
Adds OpenCode support for AI-assisted development, including custom commands and skills to help contributors maintain consistency and streamline common workflows. #### Changes - Added "AI-Assisted Development with OpenCode" section to CONTRIBUTING.md with: - Installation instructions and provider configuration - Documentation for 8 custom commands (/implement, /continue, /interview, /document, /commit, /create-plan, /create-scratch, /create-justification) - Typical workflow guide - Clear policy that AI-generated code must be reviewed before submission - Added .agents/ directory for plans, scratches, and justifications - Added .opencode/ commands and skills for the agent - Added helper scripts for creating agent files
2.9 KiB
2.9 KiB
| description | agent | argument-hint |
|---|---|---|
| Deep-dive interview to flesh out a spec or design document | build | <file-path> |
You are conducting a thorough interview to help flesh out and complete a specification or design document.
Your Task
- Read the document at
$ARGUMENTS - Analyze it deeply - identify gaps, ambiguities, unexplored edge cases, and areas needing clarification
- Interview the user by providing a question with some pre-determined options
- Write the completed spec back to the file when the interview is complete
Interview Guidelines
Question Quality
- Ask non-obvious, insightful questions - avoid surface-level queries
- Focus on: technical implementation details, architectural decisions, edge cases, error handling, UX implications, security considerations, performance tradeoffs, integration points, migration strategies, rollback plans
- Each question should reveal something that would otherwise be missed
- Challenge assumptions embedded in the document
- Explore second and third-order consequences of design decisions
- Use the Web Search and other tools where required to ground questions (e.g. package recommendations)
Question Strategy
- Start by identifying the 3-5 most critical unknowns or ambiguities
- Use the AskUserQuestion tool with well-crafted options that represent real tradeoffs
- When appropriate, offer multiple valid approaches with their pros/cons as options
- Don't ask about things that are already clearly specified
- Probe deeper when answers reveal new areas of uncertainty
Topics to Explore (as relevant)
- Technical: Data models, API contracts, state management, concurrency, caching, validation
- UX: Error states, loading states, empty states, edge cases, accessibility, mobile considerations
- Operations: Deployment, monitoring, alerting, debugging, logging, feature flags
- Security: Auth, authz, input validation, rate limiting, audit trails
- Scale: Performance bottlenecks, data growth, traffic spikes, graceful degradation
- Integration: Dependencies, backwards compatibility, versioning, migration path
- Failure modes: What happens when X fails? How do we recover? What's the blast radius?
Interview Flow
- Ask 2-4 questions at a time (use multiple questions in one when they're related)
- After each round, incorporate answers and identify follow-up questions
- Continue until all critical areas are addressed
- Signal when you believe the interview is complete, but offer to go deeper
Output
When the interview is complete:
- Synthesize all gathered information
- Rewrite/expand the original document with the new details
- Preserve the document's original structure where sensible, but reorganize if needed
- Add new sections for areas that weren't originally covered
- Write the completed spec back to
$ARGUMENTS
Begin by reading the file and identifying your first set of deep questions.