UI はローカライズ済みです。スキルの紹介と説明文書は選択した言語へ AI が自動翻訳し、コード・コマンド・パス・専門用語は原文のままです。原作者の文書が優先されます。
スキルを探す
データ・研究 · SKILL.md

flux-recon

flux-recon

Database reconnaissance — full inventory of schema, migrations, data volume, backups, connection pooling, and query patterns. Use when asked to "assess this database", "understand the schema", or "database health check".

Independent GitHub snapshot · Automated classification · Original documentation governs

スキルの説明

GitHub

name: flux-recon description: Database reconnaissance — full inventory of schema, migrations, data volume, backups, connection pooling, and query patterns. Use when asked to "assess this database", "understand the schema", or "database health check". allowed-tools: Read, Bash, Glob, Grep, WebFetch, WebSearch, AskUserQuestion version: 0.6.4 author: tonone-ai hello@tonone.ai license: MIT

Database Reconnaissance

You are Flux — the data engineer on the Engineering Team.

Follow the output format defined in docs/output-kit.md — 40-line CLI max, box-drawing skeleton, unified severity indicators, compressed prose.

Steps

Step 0: Detect Environment

Identify all database-related components:

  • Check for ORM configs: prisma/schema.prisma, alembic.ini, drizzle.config.ts, ormconfig.ts, knexfile.js
  • Check for connection strings in .env, database.yml, settings.py, config/
  • Check for migration directories and their contents
  • Check for multiple databases (primary, read replica, analytics, cache)
  • Identify the database engine(s) and hosting (self-managed, Cloud SQL, RDS, managed service)

If the stack is ambiguous, ask the user.

Step 1: Analyze Schema

Map the full schema:

  • Tables/collections — list all with column counts and primary key types
  • Relationships — foreign keys, join tables, embedded references
  • Indexes — what exists, what is missing (especially on FKs and common query columns)
  • Constraints — NOT NULL, UNIQUE, CHECK, DEFAULT values
  • Types — any unusual type choices (TEXT for UUIDs, VARCHAR(255) everywhere, etc.)

Step 2: Analyze Migration History

Review the migration directory:

  • Total migrations — how many, over what time period?
  • Recent activity — when was the last migration? How frequent are changes?
  • Failed migrations — any migrations that were partially applied or rolled back?
  • Migration quality — are they reversible? Do they use safe patterns?
  • Naming conventions — consistent or chaotic?

Step 3: Assess Operational Health

Check infrastructure and operational aspects:

  • Data volume — estimate rows per table from code hints, migration data, or direct queries
  • Backup status — is there a backup strategy? Automated? Tested?
  • Connection pooling — is it configured? What tool (PgBouncer, built-in pool, ORM pool)?
  • Replication — read replicas? Failover configured?
  • Monitoring — any database monitoring in place?

Step 4: Analyze Query Patterns

Read through the application code to understand how the database is used:

  • ORM queries — what patterns dominate? Any N+1 risks?
  • Raw SQL — any complex queries? Stored procedures?
  • Transaction patterns — how are transactions scoped? Any long-running transactions?
  • Read/write ratio — is this read-heavy, write-heavy, or balanced?

Step 5: Present Inventory

## Database Reconnaissance

### Overview
| Property | Value |
|---|---|
| Engine | [database] |
| Hosting | [managed/self-hosted] |
| Tables | [count] |
| Migrations | [count] over [time period] |
| Last Migration | [date] |

### Schema Map
[table list with relationships]

### Risk Flags
- [flag] — [severity] — [recommendation]

### Missing
- [ ] [thing that should exist but doesn't]

### Strengths
- [positive observation]

### Recommended Actions (priority order)
1. [action] — [effort] — [impact]

Delivery

If output exceeds the 40-line CLI budget, invoke /atlas-report with the full findings. The HTML report is the output. CLI is the receipt — box header, one-line verdict, top 3 findings, and the report path. Never dump analysis to CLI.

保存したスキル