Express/Hono with Supabase and Drizzle ORM
44
32%
Does it follow best practices?
Impact
Pending
No eval scenarios have been run
Passed
No known issues
Optimize this skill with Tessl
npx tessl skill review --optimize ./skills/supabase-node/SKILL.mdQuality
Discovery
22%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 description is essentially a technology stack label with no actionable information. It fails to describe what the skill does, when it should be used, or what specific tasks it enables. Claude would struggle to reliably select this skill from a pool of backend/database-related skills.
Suggestions
Add concrete actions describing what the skill does, e.g., 'Sets up Express or Hono API servers with Supabase integration, defines database schemas using Drizzle ORM, and generates CRUD endpoints.'
Add an explicit 'Use when...' clause with trigger scenarios, e.g., 'Use when the user wants to build a backend API with Supabase, set up Drizzle ORM schemas, or create Express/Hono server routes.'
Include natural trigger terms users might say, such as 'API', 'backend', 'REST endpoints', 'database schema', 'server setup', 'migrations', '.ts routes'.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | The description only names technologies (Express/Hono, Supabase, Drizzle ORM) without describing any concrete actions. There are no verbs or specific capabilities listed—it reads more like a tech stack label than a skill description. | 1 / 3 |
Completeness | The description answers neither 'what does this do' nor 'when should Claude use it'. There is no 'Use when...' clause and no explanation of capabilities—just a list of technology names. | 1 / 3 |
Trigger Term Quality | It includes some relevant technology keywords (Express, Hono, Supabase, Drizzle ORM) that users might mention, but lacks common variations or related terms like 'API', 'backend', 'database', 'REST', 'server', 'routes', or 'schema'. | 2 / 3 |
Distinctiveness Conflict Risk | The specific combination of Express/Hono + Supabase + Drizzle ORM is somewhat distinctive, but without describing what the skill actually does, it could overlap with any backend development, database, or ORM-related skill. | 2 / 3 |
Total | 6 / 12 Passed |
Implementation
42%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
The skill provides highly actionable, executable code covering the full Express/Hono + Supabase + Drizzle stack, which is its main strength. However, it is far too verbose for a SKILL.md — it reads as a project template rather than a concise skill reference, dumping ~500 lines of boilerplate that Claude largely already knows. It badly needs progressive disclosure (splitting into sub-files) and a clearer workflow with validation steps for database operations.
Suggestions
Reduce the SKILL.md to a concise overview (~100 lines) covering only the novel patterns: Drizzle+Supabase auth middleware integration, config validation with Zod, and the core principle. Move full route examples, schema definitions, testing setup, and storage code into referenced sub-files (e.g., ROUTES.md, SCHEMA.md, TESTING.md).
Add explicit workflow steps with validation checkpoints for database migration: generate migration → review SQL → push → verify tables exist → test queries.
Remove standard boilerplate Claude already knows (basic Express setup, cors/helmet, multer usage, supertest patterns) and focus on what's unique to the Supabase+Drizzle integration.
Add a 'Quick start' section at the top with the minimal 3-4 steps to get a working endpoint, then link to detailed sections for each concern.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | This is extremely verbose at ~500+ lines, essentially a full project boilerplate dump. Much of this (Express setup, CRUD routes, multer usage, test scaffolding) is standard knowledge Claude already has. The entire file could be reduced to key patterns (Drizzle+Supabase auth middleware, config validation) with references to detailed files. | 1 / 3 |
Actionability | Every section provides fully executable, copy-paste ready TypeScript code with correct imports, proper typing, and real library APIs. The code is complete and specific, from schema definitions to route handlers to test setup. | 3 / 3 |
Workflow Clarity | The project structure and setup steps are listed but there's no explicit sequenced workflow with validation checkpoints. For database migrations (a potentially destructive operation), there's no validate-then-proceed pattern — just 'db:push' scripts without guidance on when/how to verify migration success. | 2 / 3 |
Progressive Disclosure | This is a monolithic wall of code with no references to separate files for detailed content. Everything from schema definitions to route handlers to testing to storage to Hono alternatives is inlined. The content desperately needs splitting into referenced sub-files (e.g., ROUTES.md, SCHEMA.md, TESTING.md). | 1 / 3 |
Total | 7 / 12 Passed |
Validation
81%Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.
Validation — 9 / 11 Passed
Validation for skill structure
| Criteria | Description | Result |
|---|---|---|
skill_md_line_count | SKILL.md is long (838 lines); consider splitting into references/ and linking | Warning |
frontmatter_unknown_keys | Unknown frontmatter key(s) found; consider removing or moving to metadata | Warning |
Total | 9 / 11 Passed | |
d4ddb03
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.