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/plugins/tree/main/vibe-coder/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.
claude-code-course
Learn Claude Code in 5 hands-on lessons. From basics to building applications. Use when: user wants to learn Claude Code, asks "how do I...", or is new. Triggers: "learn", "teach me", "how does this work", "I'm new", "course".
foundations
Claude Code basics for new users. Covers essential concepts and commands. Use when: user is new to Claude Code or routed here by learning-path assessment.
advanced
Claude Code mastery for power users. Build agents, MCP servers, publish plugins. Use when: user wants to create agents, build integrations, or publish plugins.
lessons
Lesson content for Claude Code Course. Use when: loading lesson content. Internal skill - contains lesson files.
intermediate
Claude Code customization for comfortable users. Covers skills, commands, MCP, hooks. Use when: user knows basics and wants to customize Claude Code.
course-help
Help and navigation for Claude Code Course. Use when: user asks about the course, lessons, or progress. Triggers: "help", "course help", "what lessons", "my progress".
Didn't find tool you were looking for?