Agent skill
db-designer
Generate database schema from feature descriptions. User doesn't see SQL. Use when: features require data persistence. Triggers: internal use only.
Install this agent skill to your Project
npx add-skill https://github.com/timequity/vibe-coder/tree/main/skills/db-designer
SKILL.md
Database Designer
Infer schema from requirements. User never writes SQL.
Process
-
Analyze requirements
- "Users can save expenses" → users, expenses tables
- "Track categories" → categories table
- "Monthly reports" → consider aggregation
-
Design schema
- Tables and columns
- Relationships (1:1, 1:N, N:M)
- Indexes for performance
-
Generate migration
- Create migration file
- Apply to database
- Update ORM models
Schema Patterns
| Feature | Tables |
|---|---|
| Auth | users, sessions |
| Blog | posts, comments, tags |
| E-commerce | products, orders, order_items |
| Tasks | tasks, projects, labels |
| Social | users, posts, follows, likes |
Template-Specific
Supabase (nextjs-supabase)
-- Auto-generated, user doesn't see
create table expenses (
id uuid primary key default gen_random_uuid(),
user_id uuid references users(id),
amount decimal not null,
category text,
created_at timestamptz default now()
);
PostgreSQL (fastapi-postgres)
# Alembic migration auto-generated
class Expense(Base):
id = Column(UUID, primary_key=True)
user_id = Column(UUID, ForeignKey('users.id'))
amount = Column(Numeric, nullable=False)
Drizzle (hono-drizzle)
// Schema auto-generated
export const expenses = pgTable('expenses', {
id: uuid('id').primaryKey().defaultRandom(),
userId: uuid('user_id').references(() => users.id),
amount: numeric('amount').notNull(),
});
User Experience
User: "I want to track expenses by category"
Internally:
- Create expenses table
- Create categories table
- Add foreign key
- Generate models
- Create migration
- Apply to database
User sees: "✅ Ready to save expenses"
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
mvp-help
Help and documentation for Idea to MVP plugin. Use when: user asks about building MVPs, vibe coding, or available commands. Triggers: "help", "what can you do", "mvp help", "how to build".
verification-gate
Hidden quality gate that runs before showing "Done!" to user - ensures all tests pass, build succeeds, and requirements met before claiming completion
brainstorming
Refine ideas into detailed designs through Socratic dialogue. Use when: user has rough idea, needs to clarify requirements, explore approaches. Triggers: "brainstorm", "discuss idea", "I'm thinking about", "what if", "help me think through", "explore options", "/brainstorm".
subagent-creator
Guide for creating effective subagents (custom agents). Use when users want to create a new subagent that can be dispatched via Task tool for autonomous work. Covers frontmatter fields (name, description, tools, model, permissionMode, skills), prompt design, and when to use subagents vs skills.
backend-rust
Modern Rust backend with Axum, SQLx, tokio + CI/CD automation. Use when: building Rust APIs, high-performance services, or needing build/test/lint/audit automation. Triggers: "axum", "rust backend", "rust api", "sqlx", "tokio", "cargo build", "cargo test", "clippy", "rustfmt", "cargo-audit", "cross-compile", "rust ci", "release build", "rust security", "shuttle", "actix".
test-driven-development
Write failing test first, then minimal code to pass. Red-Green-Refactor cycle. Use when: implementing features, fixing bugs, refactoring code. Triggers: "implement", "add feature", "fix bug", "tdd", "test first", "write tests", "test-driven".
Didn't find tool you were looking for?