dapp-sdd:specify
Use when expanding a README-based dApp description into a full specification with user stories and acceptance criteria.
Best use case
dapp-sdd:specify is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Use when expanding a README-based dApp description into a full specification with user stories and acceptance criteria.
Teams using dapp-sdd:specify should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/dapp-sdd-specify/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How dapp-sdd:specify Compares
| Feature / Agent | dapp-sdd:specify | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Use when expanding a README-based dApp description into a full specification with user stories and acceptance criteria.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# Specify Skill
Expands a user's README.md dApp description into a comprehensive specification.
## Input
The user's README.md containing:
- What the dApp should demonstrate
- Basic functionality description
- Any specific requirements or constraints
## Output
A structured specification saved to `.dapp-sdd/spec.md` containing:
### 1. Overview Section
- **Purpose:** What concept this dApp demonstrates
- **Target Audience:** Who will learn from this example
- **Learning Outcomes:** What developers will understand after studying this
### 2. User Stories
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}
```
### 3. Technical Requirements
- **Compact Contract:** What circuits are needed
- **TypeScript Integration:** CLI commands, deployment scripts
- **State Management:** What state the contract tracks
- **Privacy Model:** What's private vs public
### 4. Out of Scope
Explicitly list what this example does NOT cover to keep it focused.
## Process
1. Read the README.md content provided
2. Identify the core concept being demonstrated
3. Extract functional requirements
4. Generate 2-4 user stories (keep it minimal for examples)
5. Define clear acceptance criteria
6. Document technical requirements
7. Save to `.dapp-sdd/spec.md`
## Skill References
Invoke these skills to validate the specification:
- `compact-core:language-reference` - Verify Compact concepts are correctly referenced
- `midnight-dapp:*` - Ensure dApp patterns are appropriate
## Example Spec Structure
```markdown
# {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
```Related Skills
bgo
Automates the complete Blender build-go workflow, from building and packaging your extension/add-on to removing old versions, installing, enabling, and launching Blender for quick testing and iteration.
database-optimizer
Expert database optimizer specializing in modern performance tuning, query optimization, and scalable architectures. Masters advanced indexing, N+1 resolution, multi-tier caching, partitioning strategies, and cloud database optimization. Handles complex query analysis, migration strategies, and performance monitoring. Use PROACTIVELY for database optimization, performance issues, or scalability challenges.
database-optimization
Use when optimizing database queries, indexes, N+1 problems, slow queries, or analyzing query performance. Triggers on keywords like "slow query", "N+1", "index", "query optimization", "database performance", "eager loading".
database
Database design, optimization, and management for SQL and NoSQL databases. Covers schema design, indexing, query optimization, migrations, and database best practices. Use when designing database schemas, optimizing queries, troubleshooting database performance, or implementing data models.
database-migrator
Handle schema changes and data migrations safely. Creates migration files with rollback plans. Use when user says 'migration', 'schema change', 'add column', 'database change', or 'alter table'.
database-migrations-sql-migrations
SQL database migrations with zero-downtime strategies for PostgreSQL, MySQL, SQL Server Use when: the user asks to run the `sql-migrations` workflow and the task requires multi-step orchestration. Do not use when: the task is small, single-step, and can be completed directly without orchestration overhead.
database-migration
Guides database migration projects including engine changes (MySQL to PostgreSQL, Oracle to PostgreSQL, SQL Server to PostgreSQL), version upgrades, cloud migrations (on-premise to RDS/Cloud SQL/Azure Database), schema migrations, zero-downtime migrations, replication setup, and data migration strategies. Covers homogeneous and heterogeneous migrations, ETL processes, cutover procedures, and rollback plans. Use when migrating databases, changing database engines, upgrading database versions, moving databases to cloud, or when users mention "database migration", "DB migration", "PostgreSQL migration", "MySQL to Postgres", "Oracle migration", "database upgrade", or "cloud database migration".
database-master
World-class expert database master covering PostgreSQL, MySQL, MongoDB, Redis, and database architecture. Use when designing schemas, optimizing queries, planning migrations, implementing caching strategies, or solving complex database challenges at production scale.
database-management
Database schema design, migrations, query optimization, and ORM best practices. Use for database setup, performance tuning, and data modeling.
database-expert
Advanced database design and administration for PostgreSQL, MongoDB, and Redis. Use when designing schemas, optimizing queries, managing database performance, or implementing data patterns.
database-expert-advisor
Database design, optimization, and operations expert
database-engine-implementation
Guide for implementing database engines in IterableData. Use when adding support for new SQL or NoSQL databases, implementing DBDriver classes, or extending database capabilities.