From dapp-sdd
Use when expanding a README-based dApp description into a full specification with user stories and acceptance criteria.
npx claudepluginhub aaronbassett/midnight-knowledgebase --plugin dapp-sddThis skill uses the workspace's default tool permissions.
Expands a user's README.md dApp description into a comprehensive specification.
Verifies tests pass on completed feature branch, presents options to merge locally, create GitHub PR, keep as-is or discard; executes choice and cleans up worktree.
Guides root cause investigation for bugs, test failures, unexpected behavior, performance issues, and build failures before proposing fixes.
Writes implementation plans from specs for multi-step tasks, mapping files and breaking into TDD bite-sized steps before coding.
Share bugs, ideas, or general feedback.
Expands a user's README.md dApp description into a comprehensive specification.
The user's README.md containing:
A structured specification saved to .dapp-sdd/spec.md containing:
Format each as:
### US{N}: {Title}
**As a** developer learning Midnight
**I want to** {action}
**So that** {benefit}
**Acceptance Criteria:**
- [ ] AC1: {Specific, testable criterion}
- [ ] AC2: {Specific, testable criterion}
- [ ] AC3: {Specific, testable criterion}
Explicitly list what this example does NOT cover to keep it focused.
.dapp-sdd/spec.mdInvoke these skills to validate the specification:
compact-core:language-reference - Verify Compact concepts are correctly referencedmidnight-dapp:* - Ensure dApp patterns are appropriate# {DApp Name} Specification
## Overview
**Purpose:** Demonstrate {concept} in Midnight
**Target Audience:** Developers learning {topic}
**Learning Outcomes:**
- Understand how to {outcome 1}
- Learn to {outcome 2}
## User Stories
### US1: Basic Contract Interaction
**As a** developer learning Midnight
**I want to** deploy and interact with a simple contract
**So that** I understand the basic development workflow
**Acceptance Criteria:**
- [ ] Contract compiles without errors
- [ ] Contract deploys to local network
- [ ] CLI can call contract circuits
### US2: {Second Story}
...
## Technical Requirements
### Compact Contract
- Circuit: `{name}` - {purpose}
- State: `{field}` - {description}
### TypeScript Integration
- `deploy.ts` - Deployment script
- `cli.ts` - Interactive CLI
### Privacy Model
- Private: {what's private}
- Public: {what's public}
## Out of Scope
- Production deployment
- Error recovery
- Multiple users