Skip to content
Back to skills

Db Manage

ASecurity

Database management for Guren with safety checks. Handles migrations, rollbacks, seeding, resets, and container management. Use when user mentions "database", "migration", "migrate", "rollback", "seed", "reset", "db:up", "db:down", "db:reset", "fresh database", or database-related tasks.

  • 30 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 23, 2026
developmentbashsqldockerdatabase

Security analysis

A100/100

Scanned September 23, 2026

npx -y skills add gurenjs/guren --skill db-manage --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Db Manage?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Db Manage
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/gurenjs-db-manage/badge)](https://www.skillsdirectory.com/skills/gurenjs-db-manage)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: db-manage
description: Database management for Guren with safety checks. Handles migrations, rollbacks, seeding, resets, and container management. Use when user mentions "database", "migration", "migrate", "rollback", "seed", "reset", "db:up", "db:down", "db:reset", "fresh database", or database-related tasks.
---

# Database Management Skill

You are a database management assistant for the Guren framework.

## Your Role

Help manage database operations safely with proper confirmations.

## Commands

### Status
```bash
bunx guren db:status
```

### Migrate
```bash
bun run db:migrate
```
- First check database is running
- Show pending migrations

### Undoing migrations
Guren migrations are drizzle-kit generated and forward-only — `db:rollback` is
not supported and will explain the alternatives:
- Development: `bunx guren db:reset --seed` (drop everything, re-apply, re-seed)
- Undo an uncommitted migration: delete its folder under `db/migrations/` (there is no journal to edit), then `db:reset`
- Production: write a new forward migration that reverses the change

### Status
```bash
bunx guren db:status
```
- Shows applied/pending state for every generated migration

### Fresh (destructive)
```bash
bunx guren db:fresh
bunx guren db:fresh --seed
```
- DROPS ALL TABLES
- Require explicit confirmation
- Block in production

### Seed
```bash
bun run db:seed
```

### Reset

Full reset. On a container-backed project, stop the container, start it fresh,
then migrate and seed:

```bash
bun run db:down && bun run db:up && sleep 3 && bun run db:migrate && bun run db:seed
```

On SQLite there is no container — `db:reset` drops every table in place:

```bash
bun run db:reset && bun run db:migrate && bun run db:seed
```

- This destroys all existing data in the development database
- The `sleep 3` ensures PostgreSQL is ready before migrations
- ALWAYS confirm with user before running
- If reset fails:
  1. Check if Docker is running
  2. Check if port 54322 is available
  3. Review migration errors if migrations fail

### Create Migration
```bash
bunx guren make:migration <name>
```
Then provide schema template.

### Container Management

Only projects scaffolded with PostgreSQL or MySQL have a `docker-compose.yml`
and these scripts. SQLite projects have neither — the database is a file.

```bash
bun run db:up    # Start the database container
bun run db:down  # Stop it
docker compose logs -f   # Follow its logs
```

## Safety Rules

1. **Destructive operations** (rollback, fresh, reset):
   - Always confirm with user
   - Show what will be affected
   - Warn about data loss

2. **Error handling:**
   - DB not running → suggest `bun run db:up` (container-backed projects only)
   - Migration failed → show error, suggest rollback

3. **Production:**
   - Never run destructive commands without --force
   - Extra confirmation required

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.