Guide for using Netlify Database — the GA managed Postgres product built into Netlify. Use when a project needs any kind of dynamic, structured, or relational data. Covers provisioning via @netlify/database, Drizzle ORM (@beta) setup, migrations, preview branching, and safe production data handling. Blobs is only for file/asset storage — any dynamic data belongs in the database.
90
88%
Does it follow best practices?
Impact
94%
1.40xAverage score across 3 eval scenarios
Passed
No known issues
Quality
Discovery
100%Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.
This is a strong, well-crafted description that clearly identifies the skill's domain (Netlify Database / managed Postgres), lists specific capabilities (provisioning, Drizzle ORM setup, migrations, preview branching, production data handling), and provides explicit trigger guidance ('Use when a project needs any kind of dynamic, structured, or relational data'). The negative boundary ('Blobs is only for file/asset storage') further sharpens distinctiveness and helps Claude route correctly between related skills.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Lists multiple specific concrete actions: provisioning via @netlify/database, Drizzle ORM setup, migrations, preview branching, and safe production data handling. Also distinguishes from Blobs for file/asset storage. | 3 / 3 |
Completeness | Clearly answers both 'what' (provisioning, Drizzle ORM setup, migrations, preview branching, production data handling) and 'when' ('Use when a project needs any kind of dynamic, structured, or relational data'). Also includes a negative trigger distinguishing from Blobs. | 3 / 3 |
Trigger Term Quality | Includes strong natural keywords users would say: 'Netlify Database', 'Postgres', 'database', 'Drizzle ORM', 'migrations', 'dynamic data', 'relational data', '@netlify/database', 'preview branching', 'production data'. Good coverage of terms a developer working with Netlify databases would use. | 3 / 3 |
Distinctiveness Conflict Risk | Highly distinctive — scoped specifically to Netlify's managed Postgres product with explicit differentiation from Blobs. The mention of specific packages (@netlify/database, Drizzle ORM @beta) and Netlify-specific features (preview branching) make it very unlikely to conflict with generic database or other storage skills. | 3 / 3 |
Total | 12 / 12 Passed |
Implementation
77%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
This is a high-quality, comprehensive skill that provides excellent actionable guidance for using Netlify Database. Its greatest strengths are the fully executable code examples, clear workflow sequencing with validation steps, and strong safety guardrails around migration handling. The main weakness is moderate verbosity from repeated emphasis of the same constraints across multiple sections, and the main file could benefit from offloading some reference material (CLI commands, native driver details) to supporting files.
Suggestions
Reduce redundancy by consolidating the 'never apply migrations to hosted DB' rule into one authoritative section and briefly cross-referencing it elsewhere, rather than restating it fully in 4-5 places.
Consider moving the full CLI command reference and native driver sections into separate reference files to reduce the main skill's length, keeping only a brief summary with links in SKILL.md.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The skill is generally well-written but includes some redundancy — the 'never apply migrations to hosted DB' rule is restated in at least 4-5 places (CRITICAL section, package scripts, migrations apply, common mistakes, production data changes). The Database vs Blobs section and legacy extension table are useful but could be tighter. Some explanations like 'The @beta tag only affects the installed version' are slightly over-explained for Claude. | 2 / 3 |
Actionability | Excellent actionability throughout — fully executable code examples for schema definition, client setup, drizzle config, query patterns, native driver usage, CLI commands with exact flags, and package.json scripts. Every section provides copy-paste ready commands and code. | 3 / 3 |
Workflow Clarity | The schema-change workflow is clearly sequenced (edit → generate → review → apply locally → commit/push → deploy applies). Validation checkpoints are explicit (review SQL, test locally before pushing). The 'iterating on migrations' section provides a clear decision tree for already-applied vs. unapplied migrations. The 'never apply to hosted DB' constraint is a strong guardrail. | 3 / 3 |
Progressive Disclosure | The skill references several supporting files (references/migrations.md, references/legacy-extension.md, references/migration-from-extension.md, references/local-dev.md, netlify-blobs/SKILL.md) which is good progressive disclosure design. However, no bundle files were provided to verify these exist. The main file itself is quite long (~350 lines) and some content like the full CLI reference section and native driver section could arguably be split into reference files to keep the main skill leaner. | 2 / 3 |
Total | 10 / 12 Passed |
Validation
100%Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.
Validation — 11 / 11 Passed
Validation for skill structure
No warnings or errors.
cffaf74
Table of Contents
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.