CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

database

Use BEFORE editing any file in `supabase/migrations/` or `supabase/schemas/`, OR when the user runs a `/database` subcommand (`compact local migration`, `rls scenarios`, `align`). Encodes the three contracts that protect the Grida database layer: applied migrations are immutable, RLS implementation mirrors tests (never the reverse), `schemas/*.sql` is the human-readable end-state. Companion to `supabase/AGENTS.md` (RLS, grants, security boundaries).

68

Quality

86%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Quality

Content

81%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A well-built instruction-only skill body: three clearly separated subcommand workflows, each with numbered steps, explicit validation, and pointed anti-pattern lists, plus disciplined deferral to the AGENTS.md rule layer. The main gaps are the abstract worked example in compact and no concrete pgTAP sample in rls scenarios.

Suggestions

Make the compact worked example concrete: show an actual 3-file local-only chain and the resulting consolidated SQL (even abbreviated), so the merge procedure is copy-paste illustrable rather than purely descriptive.

Include one short executable pgTAP assertion example in rls scenarios (e.g. a positive/negative pair using a seeded persona from `supabase/seed.sql`) so the output shape is unambiguous.

Consider moving the rls persona matrix and silent-edges checklist into a reference file and linking to it from the body, trimming SKILL.md toward the overview role.

DimensionReasoningScore

Conciseness

The body is dense and efficient — classification tables, terse anti-pattern lists, no explanation of concepts Claude already knows — with only occasional over-explanation (e.g. the pg_dump aside in the align procedure, 'in your head (or a scratch file)'). It is clearly above the 'mostly efficient but includes some unnecessary explanation' midpoint but not perfectly lean.

4 / 5

Actionability

Guidance is mostly executable: concrete commands (`supabase db reset`, `supabase test db`, `supabase migration new`), a classification table with explicit allowed actions, and specific SQL idioms. It falls short of copy-paste-ready because the compact 'Worked example' stays abstract with no actual SQL, and rls scenarios offers no sample pgTAP assertion.

4 / 5

Workflow Clarity

All three subcommands have clearly numbered sequences with explicit validation checkpoints and feedback loops: user confirmation before destructive merges ('Default to asking', 'Verify the classification with the user when uncertain'), `supabase db reset` smoke checks, and `supabase test db` when pgTAP covers the affected tables. The destructive-operation cap does not apply — validation is present.

5 / 5

Progressive Disclosure

Good structure: clean per-subcommand sections, clearly signaled one-level-deep references to `supabase/AGENTS.md` ('point readers there rather than re-list'), and no nesting. A notch below excellent because the ~250-line single-file body inlines material (the rls persona matrix and silent-edges checklist) that could partly live in a reference file.

4 / 5

Total

17

/

20

Passed

Description

87%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A strong description: concrete, repo-specific, with explicit 'use before / use when' triggers and a clearly staked-out niche. The only room for improvement is folding one or two of the natural user phrasings (like 'consolidate' or 'merge migrations') from the body into the description itself.

DimensionReasoningScore

Specificity

The description lists several concrete capabilities with named paths — 'applied migrations are immutable, RLS implementation mirrors tests (never the reverse), `schemas/*.sql` is the human-readable end-state' — but describes governing contracts rather than a comprehensive list of distinct actions, so it sits at 'several specific actions; minor gaps' rather than full coverage.

4 / 5

Completeness

It explicitly answers both questions: what ('Encodes the three contracts that protect the Grida database layer…') and when ('Use BEFORE editing any file in `supabase/migrations/` or `supabase/schemas/`, OR when the user runs a `/database` subcommand'). This matches the score-5 anchor of clear 'what' plus concrete 'when' trigger phrases.

5 / 5

Trigger Term Quality

Good natural keyword coverage: 'migrations', 'RLS', 'schemas', 'database', plus the named subcommands 'compact local migration', 'rls scenarios', 'align'. A few natural user phrasings (e.g. 'consolidate migrations', 'clean up the migration directory') appear in the body but not the description itself, keeping it just below comprehensive.

4 / 5

Distinctiveness Conflict Risk

Repo-specific paths (`supabase/migrations/`, `supabase/schemas/`), named subcommands, and the Grida domain give it a clear niche with distinct triggers and minimal conflict risk; the companion reference to `supabase/AGENTS.md` even draws the boundary against the sibling rule layer.

5 / 5

Total

18

/

20

Passed

Validation

93%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

relative_links

Relative link issues: 3 suspicious

Warning

Total

15

/

16

Passed

Repository

gridaco/grida

Path

.agents/skills/database/SKILL.md

Reviewed

Table of Contents

Is this your skill?

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.