Best for
- Use when a spec touches API endpoints, database schema, middleware, or auth.
agents-inc/skills/src/skills/meta-planning-api-planning/SKILL.md
Backend specification planning frameworks. Use when a spec touches API endpoints, database schema, middleware, or auth. Covers endpoint contracts with request/response shapes, error catalogs, auth per endpoint, schema design with constraints and indexes, migration strategy, and middleware pipeline ordering.
Decision brief
Quick Guide: Specify every endpoint as a complete contract — method, path, auth requirement, request shape, success response, and an error catalog with a status per condition. Specify schema as exact columns with constraints, relationships, indexes, and a migration strategy. Ord…
Compatibility matrix
| Platform | Status | Evidence | What to check |
|---|---|---|---|
| Codex | Not declared | No explicit evidence | Portability before use |
| Claude Code | Not declared | No explicit evidence | Portability before use |
| Cursor | Not declared | No explicit evidence | Portability before use |
| Gemini CLI | Not declared | No explicit evidence | Portability before use |
Installation
The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.
npx skills add https://github.com/agents-inc/skills --skill "src/skills/meta-planning-api-planning"Inspect the Agent Skill "meta-planning-api-planning" from https://github.com/agents-inc/skills/blob/81d43a51211aca12c85dcc16085fa99014ec548e/src/skills/meta-planning-api-planning/SKILL.md at commit 81d43a51211aca12c85dcc16085fa99014ec548e. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.
Workflow
For EACH table the spec adds or changes:
All specifications must be grounded in the codebase's real routes, schemas, and middleware — reference specific files with line numbers
An API contract is a promise to consumers you cannot see. Frontends, other services, and external clients all code against the shapes and status codes the spec defines. An ambiguous contract does not stay ambiguous — it gets resolved differently by the implementer and each consu…
Every endpoint the spec introduces or changes carries all six parts.
Every endpoint the spec introduces or changes carries all six parts.
Permission review
The documentation asks the agent to create, modify, or delete local files.
[ ] Soft delete per the codebase convention (deletedAt), and the isNull check on every queryEvidence record
| Signal | Value | Evidence type | Meaning |
|---|---|---|---|
| Quality score | 94/100 | Computed | Documentation, specificity, maintenance, and trust rules |
| Repository stars | 23 | Source | Repository attention, not individual Skill quality |
| Compatibility | 0 platforms | Source | Declared in the catalog source record |
| Usage guide | automated source guide | Editorial | Generated or reviewed according to the visible evidence level |
Pinned source
Quick Guide: Specify every endpoint as a complete contract — method, path, auth requirement, request shape, success response, and an error catalog with a status per condition. Specify schema as exact columns with constraints, relationships, indexes, and a migration strategy. Order the middleware pipeline explicitly. Apply a framework only when the spec touches its artifact class — an endpoint-only change needs no schema section.
<critical_requirements>
All specifications must be grounded in the codebase's real routes, schemas, and middleware — reference specific files with line numbers
(You MUST give every endpoint a complete contract: method, path, auth requirement, request shape, success response shape, and an error catalog)
(You MUST state the auth requirement per endpoint — which middleware, which permission — never "endpoints should be protected")
(You MUST specify schema as exact columns with types, constraints, relationships, indexes, and a migration strategy)
(You MUST catalog error responses per endpoint — a status code per condition with its response body shape)
(You MUST apply each framework only when the spec touches its artifact class — an unused section is omitted, never filled)
</critical_requirements>
Auto-detection: API spec, endpoint design, REST contract, request response shape, database schema spec, migration plan, middleware ordering, auth requirements, error catalog
When to use:
When NOT to use:
Key patterns covered:
Detailed Resources:
An API contract is a promise to consumers you cannot see. Frontends, other services, and external clients all code against the shapes and status codes the spec defines. An ambiguous contract does not stay ambiguous — it gets resolved differently by the implementer and each consumer.
When specifying backend work:
When NOT to specify:
Core principles:
Every endpoint the spec introduces or changes carries all six parts.
## Endpoint Contract
For EACH endpoint:
- [ ] Method and exact path, with path parameters named (`GET /api/v1/users/:userId`)
- [ ] Auth requirement: middleware name + permission/role, or explicitly public
- [ ] Rate limit, or explicitly none
- [ ] Request shape: every parameter with location (path/query/body), type, required flag, constraints
- [ ] Success response: status code and exact body shape with field types
- [ ] Error catalog: a row per condition (see Pattern 3)
BAD: "Create an endpoint for user management"
GOOD: "GET /api/v1/users — paginated list with cursor-based pagination following
routes/jobs.ts:45-67. Response shape matches JobListResponse."
Why this matters: each missing part becomes an invention. An invented pagination style or response envelope diverges from the codebase's own, and consumers inherit the inconsistency permanently.
State the requirement per endpoint, naming real middleware.
BAD: "Endpoints should be protected"
GOOD: "GET /api/v1/users requires authMiddleware. DELETE /api/v1/users/:id requires
authMiddleware + adminGuard. Public: POST /api/v1/auth/login."
Rules the spec must state:
ownerGuard — user edits own resource only), or tenancyEvery endpoint's failure surface, as a table consumers can branch on.
| Status | Condition | Response Body |
|---|---|---|
| 400 | Validation failure (schema parse error) | { error: string, details: [...] } |
| 401 | Missing or expired token | { error: string } |
| 403 | Authenticated but insufficient permission | { error: string } |
| 404 | Resource not found | { error: string } |
| 409 | Unique constraint violation | { error: string } |
| 422 | Business rule violation | { error: string } |
Rules the spec must state:
details, in the shape the existing error handler emitsSpecify tables as exact columns, never as prose.
## Schema Review Checklist
For EACH table the spec adds or changes:
- [ ] Every column: name, type (with length/precision), constraints (NOT NULL, UNIQUE, FK, default)
- [ ] Pattern source: the existing schema file whose conventions it follows
- [ ] Audit columns per the codebase convention (createdAt, updatedAt)
- [ ] Soft delete per the codebase convention (deletedAt), and the isNull check on every query
- [ ] Relationships: cardinality and the FK or join table that carries each
- [ ] Indexes: columns, type, and the query each index serves
BAD: "Add a users table"
GOOD: "Add users table following db/schema/jobs.ts:12-45. Soft delete (deletedAt),
audit columns, composite unique index on (email, deletedAt)."
Why this matters: a column that arrives without constraints gets its NOT NULL, uniqueness, and FK decisions made by whoever types the migration — and changed later at the cost of a second migration against production data.
Every schema change states three things before implementation starts:
| Concern | State |
|---|---|
| Reversibility | Reversible (and how), or irreversible and why that is acceptable |
| Data migration | None, or describe: source of the backfilled values, and the batch plan |
| Downtime | None, or why it is required and the window |
Rules the spec must state:
Order is behavior. State the pipeline explicitly per route group.
## Request Pipeline Order
1. Rate limiting — if applicable
2. Auth middleware — which one
3. Input validation — schema reference
4. Business logic handler
5. Response serialization
Rules the spec must state:
<decision_framework>
Apply a framework only when the spec touches its artifact class. The per-artifact section templates live in examples/core.md.
Does the spec add or change an endpoint?
├─ YES → API Contract section (Patterns 1-3), one block per endpoint
└─ Does it add or change tables, columns, or indexes?
├─ YES → Database Schema section (Patterns 4-5), one block per table
└─ Does it add or reorder middleware?
├─ YES → Middleware Requirements section (Pattern 6)
└─ NO → None of these frameworks applies; do not force one in
| Failure | Consequence |
|---|---|
| "User data" instead of an exact shape | The implementer and each consumer resolve the ambiguity differently |
| "Protected" instead of named middleware | Auth drifts per endpoint; a route ships public that should not be |
| No error catalog | Consumers cannot branch; every client wraps calls in generic catch |
| Schema as prose | Constraint decisions deferred to the migration author |
| No migration strategy | Irreversible change discovered during deploy |
| Endpoint set larger than the requirement | Unused surface to secure, test, and maintain |
| No named consumers | A shape change ships without knowing who breaks |
</decision_framework>
<red_flags>
High Priority Issues (a spec with one of these is incomplete):
Medium Priority Issues:
Common Mistakes:
Gotchas & Edge Cases:
</red_flags>
<critical_reminders>
All specifications must be grounded in the codebase's real routes, schemas, and middleware
(You MUST give every endpoint a complete contract: method, path, auth requirement, request shape, success response shape, and an error catalog)
(You MUST state the auth requirement per endpoint — which middleware, which permission)
(You MUST specify schema as exact columns with types, constraints, relationships, indexes, and a migration strategy)
(You MUST catalog error responses per endpoint — a status code per condition with its response body shape)
(You MUST apply each framework only when the spec touches its artifact class — an unused section is omitted, never filled)
Failure to specify these contracts produces APIs whose implementers invent shapes, whose consumers break on drift, whose auth gaps ship silently, and whose migrations cannot be rolled back.
</critical_reminders>
Frequently asked questions
Quick Guide: Specify every endpoint as a complete contract — method, path, auth requirement, request shape, success response, and an error catalog with a status per condition. Specify schema as exact columns with constraints, relationships, indexes, and a migration strategy. Ord…
The source record exposes this install command: npx skills add https://github.com/agents-inc/skills --skill "src/skills/meta-planning-api-planning". Inspect the command and pinned source before running it.
Static rules flagged write-files in the source; the page lists the matching lines and excerpts.
Alternatives
coreyhaines31/marketingskills
When the user wants to plan, design, or implement an A/B test or experiment, or build a growth experimentation program. Also use when the user mentions "A/B test," "split test," "experiment," "test this change," "variant copy," "multivariate test," "hypothesis," "should I test this," "which version is better," "test two versions," "statistical significance," "how long should I run this test," "growth experiments," "experiment velocity," "experiment backlog," "ICE score," "experimentation program
oaustegard/claude-skills
Generate hierarchical _FEATURES.md files that describe what a codebase DOES from a user/consumer perspective, anchored to source symbols via tree-sitting. Supports large complex codebases through feature-driven decomposition into sub-feature files. Uses a multi-pass synthesis: orientation → detail → overview rewrite. Use when someone says "what does this do", "document features", "feature inventory", "_FEATURES.md", or needs to understand a codebase's purpose before modifying it. Complements tre
event4u-app/agent-config
Use BEFORE writing or editing any non-trivial UI — inventories components, design tokens, shadcn primitives, and reusable patterns into state.ui_audit. Hard gate for the ui directive set.
event4u-app/agent-config
Frontend design heuristics — and, outside the ticket engine, the loop that applies them: audit, brief, inventory, build, review. Use when building or changing any UI, not only when planning one.