About checklist
A read-only database production-readiness audit that maps findings to a fixed launch checklist and returns a GO, GO WITH CAVEATS, or NO-GO verdict. It helps teams assess database and schema risks without changing files or the database.
Key features
- 01Read-only database audit
- 02Fixed production-readiness checklist
- 03PASS, WARN, FAIL, and NEEDS-LIVE statuses
- 04Finding IDs linked to checklist rows
- 05Engine-aware N/A checks
- 06Launch verdict with blocker summary
Use cases
- 01Checking schema before production launch
- 02Identifying database reliability gaps
- 03Reviewing findings from an existing audit
- 04Distinguishing offline checks from live verification
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ hainrixz/ claude-db --skill checklistAfter installing, type/checklistin Claude Code to confirm it loaded.
Details
From the project README/claude-db:checklist
A production-readiness GO/NO-GO grid. Read-only — runs an audit and maps the findings onto a fixed launch checklist; never writes files or mutates the database.
$ARGUMENTS = <path|connection-target> [flags]. The target is a repo path (schema/ORM/migration files) and, optionally, a live database via $DATABASE_URL for Tier-1/2 verification. If no target is given and no artifacts are found, say so and suggest /claude-db:start or /claude-db:design.
What to do
-
Invoke the db-orchestrator skill with the target and
--tierflag to run the read-only audit (stack detection → schema parse → auditor subagents → merged findings → scores). Reuse an existingfindings.jsonif the user passes one. -
Map the merged findings onto the fixed checklist below. Each row gets a status — PASS (satisfied), WARN (non-blocking gap), FAIL (blocking gap), or NEEDS-LIVE (cannot be confirmed without a live connection / higher tier) — plus the finding id(s) that drive it.
Check What it verifies PITR / backups Point-in-time recovery or backup policy is configured — NEEDS-LIVE by default 1 RLS on tenant tables Row-level security enforced on multi-tenant tables FK indexes Every foreign key column is covered by an index Money as numeric Monetary columns use numeric/decimal, never floattimestamptz / UTC Timestamps are timezone-aware and stored in UTC Connection pooling sized Pool is configured and sized for the platform's limits Migration reversibility Migrations have working down/rollback paths Secrets not in schema No credentials/secrets embedded in schema or DDL charset / utf8mb4 MySQL uses utf8mb4(full Unicode), correct collation -
Render the grid as a table (Check · Status · Finding id · one-line note). Mark
NEEDS-LIVErows distinctly and state the tier needed to resolve them. Checks not applicable to the detected engine/paradigm (e.g. RLS or utf8mb4 on a non-relational store) are shown as N/A with a reason — never a silent pass. -
Lead with a plain-language verdict at the top: GO (no FAILs), GO WITH CAVEATS (WARNs/NEEDS-LIVE only), or NO-GO (one or more FAILs) — one sentence on the headline blocker.
End by offering: "Run /claude-db:fix to apply the safe, reversible fixes, or /claude-db:next to see what to tackle first." Read-only throughout. Respond in the user's language (EN/ES).
Footnotes
-
No static module audits backups/DR/PITR, so this row is rendered NEEDS-LIVE by default — it can only be confirmed at Tier-1 (a live connection / provider config) and offline is reported as
needs_api, never assumed present (never a silent PASS). ↩