Guides the creation of new database scenarios by scaffolding folders, defining schemas, and generating test data manifests.
Install
mkdir -p .claude/skills/create-example && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/19052" && unzip -o skill.zip -d .claude/skills/create-example && rm skill.zipInstalls to .claude/skills/create-example
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Create a new scenario from scratch — guides Phases 1-3 (concept, SCHEMA_DESIGN.md, SCENARIO.md), scaffolds the folder structure, stubs test-data/data-manifest.json, and updates README.md.Key capabilities
- →Gather domain, organization name, problem, entities, and scale for a new scenario.
- →Design a full layer structure for the schema, including intentional technical debt.
- →Write a team narrative for `SCENARIO.md` with developer roles and timeline.
- →Scaffold the folder structure for the new scenario.
- →Stub `test-data/data-manifest.json`.
- →Update the repo root `README.md` with the new scenario details.
How it works
The skill guides the user through defining a concept, designing a database schema in `SCHEMA_DESIGN.md`, writing a team narrative in `SCENARIO.md`, scaffolding the folder structure, and updating the `README.md`.
Inputs & outputs
When to use create-example
- →Starting new DB projects
- →Creating test scenarios
- →Scaffolding DB documentation
- →Defining schema design
About this skill
Create a New Scenario
You are creating a new database scenario from scratch. If a scenario name was provided it is: $ARGUMENTS
This skill covers Phases 1–3: concept → SCHEMA_DESIGN.md → SCENARIO.md. Phase 4 (first implementation) is handled by the new-implementation skill.
If no scenario name was provided, start at Phase 1 and gather it from the user.
Phase 1: Concept
Gather the following from the user (ask if not already provided):
- Domain — What kind of organization or system is this? (e.g., retail, HR, healthcare, logistics)
- Company or org name — Give it a specific, fictional name to ground the narrative
- Problem to solve — What business problem does the database address?
- Rough entities — What are the main things the database tracks? (5–15 entities is a good range)
- Scale — Small (~8 layers, ~10 tables), medium (~12 layers, ~15 tables), or large (~15+ layers, ~20+ tables)?
- Scenario folder name —
PascalCase-DBformat, e.g.,Employee-DB,ECommerce-DB,Hospital-DB
Read DEVELOPERS.md to see the available cast of characters. These developers will appear in the scenario narrative.
Present a concept summary to the user for approval before proceeding to Phase 2.
Phase 2: Schema Design → SCHEMA_DESIGN.md
Use EnterPlanMode to design the full layer structure before writing anything.
Layer design principles:
- Layer 0: Core tables with no dependencies (the "root" entities)
- Layer 1+: Build on previous layers; each layer adds a coherent capability
- Parallel layers (1a, 1b, 1c): Independent features that can be built in any order
- Dependencies converge: a later layer that requires all of 1a/1b/1c lists all three as dependencies
- Add intentional technical debt: one or two design mistakes that get corrected later (adds realism)
- Aim for 1–3 tables per layer (avoid monolithic layers)
Platform-agnostic spec conventions:
- Column types use logical descriptions, not platform SQL:
- Use
identifier, auto-generatednotINT AUTO_INCREMENT - Use
text, up to 100 charactersnotVARCHAR(100) - Use
booleannotTINYINT(1)orBIT - Use
datetimenotDATETIMEorDATETIME2 - Use
decimal(10,2)format for decimals
- Use
- Mark required/optional explicitly:
required/optional, nullable - Note default values where they exist
- Note indexes on non-PK columns that will be needed
Status markers:
📋 Planned— not yet implemented in any implementation✅ Complete— implemented in at least one implementation⚠️ Blocked— depends on something not yet done
Read docs/SCHEMA_AND_SCENARIO_GUIDE.md for the full authoring spec before writing.
File location: <Scenario-DB>/SCHEMA_DESIGN.md (at the scenario root, not inside any implementation folder)
After writing SCHEMA_DESIGN.md, present it to the user for review before proceeding to Phase 3.
Phase 3: Scenario Writing → SCENARIO.md
Write the team narrative that gives the schema history and context.
Narrative elements:
- Pick 3–5 developers from
DEVELOPERS.mdwho will "build" this database - Assign roles: who leads, who implements, who reviews
- Set a realistic start date (past, not future) and a timeline spanning weeks or months
- Each layer has a date/time it was implemented — these become patch folder timestamps
- Include realistic details: design discussions, mistakes made, corrections, reviews
- Write developer conversations (brief exchanges, not essays)
- Make technical debt explicit: show the decision that caused it, and the later correction
Timestamp rules:
- Work happens during business hours (9am–6pm)
- Developers work in bursts with gaps (not one layer per hour all day)
- Multiple layers on one day is fine; a few weeks between phases is realistic
- Timestamps must be consistent with the dependency order in
SCHEMA_DESIGN.md
Read docs/SCHEMA_AND_SCENARIO_GUIDE.md for the full scenario authoring spec and DEVELOPERS.md for developer profiles.
File location: <Scenario-DB>/SCENARIO.md (same folder as SCHEMA_DESIGN.md)
Phase 4: Scaffold the Folder Structure
After the user approves SCENARIO.md, create the initial folder structure:
mkdir -p <Scenario-DB>/test-data
Stub test-data/data-manifest.json:
{
"loadOrder": [],
"tables": {}
}
Leave loadOrder and tables empty — they will be populated when test data CSVs are created (Step 6b of the project plan).
Do NOT create any implementation folder yet — that is the new-implementation skill's job.
Phase 5: Update README.md
Add the new scenario to the scenario index table in the repo root README.md:
- Add a row to the "Scenarios" table with: scenario name, description, layer count (from
SCHEMA_DESIGN.md), status (In progress), implementations (None yet) - Do not rewrite other sections of
README.md
Phase 6: Summary
Report to the user:
- Scenario name and folder created
- Layer count and structure summary
- Developers assigned from
DEVELOPERS.md - Timeline span
- Files created:
SCHEMA_DESIGN.md,SCENARIO.md,test-data/data-manifest.json - Next step: use
/new-implementationto scaffold the first implementation
Important Reminders
- Both canonical docs are shared across all implementations — never add platform-specific content to them
- Get user approval at the end of Phase 1 (concept) and Phase 2 (schema) before continuing
- Timestamps in SCENARIO.md drive patch folder names — make them realistic and consistent with the dependency order
- Read
DEVELOPERS.mdbefore assigning characters — use the defined profiles, don't invent new developers
When not to use it
- →When the first implementation is being handled, use `new-implementation` skill.
- →When adding platform-specific content to canonical docs.
- →When not creating a new database scenario from scratch.
Limitations
- →Does not handle the first implementation; that is for `new-implementation` skill.
- →Requires user approval at the end of Phase 1 (concept) and Phase 2 (schema).
- →Canonical docs (`SCHEMA_DESIGN.md`, `SCENARIO.md`) must not contain platform-specific content.
How it compares
This skill provides a structured, multi-phase process for creating a new database scenario from concept to initial file scaffolding, ensuring consistent documentation and design, unlike manually setting up a new scenario.
Compared to similar skills
create-example side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| create-example (this skill) | 0 | 4mo | Review | Advanced |
| local-cluster-manager | 2 | 9d | Review | Intermediate |
| supabase-webhooks-events | 1 | 10d | Caution | Advanced |
| comparing-database-schemas | 1 | 10d | Review | Advanced |
Try saying
Example prompts that trigger this skill in your AI assistant.
You might also like
local-cluster-manager
multigres
Manage local multigres cluster components (multipooler, pgctld, multiorch, multigateway) - start/stop services, view logs, connect with psql, test S3 backups locally
supabase-webhooks-events
jeremylongshore
Implement Supabase webhook signature validation and event handling. Use when setting up webhook endpoints, implementing signature verification, or handling Supabase event notifications securely. Trigger with phrases like "supabase webhook", "supabase events", "supabase webhook signature", "handle supabase events", "supabase notifications".
comparing-database-schemas
jeremylongshore
Process use when you need to work with schema comparison. This skill provides database schema diff and sync with comprehensive guidance and automation. Trigger with phrases like "compare schemas", "diff databases", or "sync database schemas".
sql-optimization-patterns
wshobson
Master SQL query optimization, indexing strategies, and EXPLAIN analysis to dramatically improve database performance and eliminate slow queries. Use when debugging slow queries, designing database schemas, or optimizing application performance.
drizzle-orm
EpicenterHQ
Drizzle ORM patterns for type branding and custom types. Use when working with Drizzle column definitions, branded types, or custom type conversions.
postgres-patterns
affaan-m
PostgreSQL database patterns for query optimization, schema design, indexing, and security. Based on Supabase best practices.