Install
$ agentstack add skill-crewforth-crewforth-api-design ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
API Design
Trigger phrases: "api design", "api contract", "api versioning", "openapi", "swagger", "rest contract", "breaking api change", "response shape", "response format", "endpoint returns", "error format"
Goal: a contract the consumer can predict and that can evolve without breaking. Once published, a public API is a commitment; a breaking change is expensive. Stack-agnostic (REST as the baseline; GraphQL/gRPC follow similar principles).
Checklist
- [ ] Resource names are consistent (plural nouns, a single
kebab/camelstyle), resources not verbs - [ ] Correct HTTP semantics: GET (side-effect free) · POST · PUT/PATCH · DELETE; correct status code
- [ ] A uniform error model: machine-readable code + human message + (if any) field details
- [ ] A clear versioning strategy (URL
/v1or header); a breaking change means a new version - [ ] Pagination/filtering/sorting defined and consistent on large collections
- [ ] Backward compatibility: adding a field is additive; removing a field or changing its meaning is breaking → version
- [ ] Idempotency (for POST/payment-like cases) supported via a key when needed
- [ ] The contract is documented in OpenAPI; example request/response present (coordinate with
docs-writer)
How
- Model the resource — a noun not a verb:
POST /orders(✓),POST /createOrder(✗). - Status codes: 200/201/204 · 400 validation · 401/403 authorization · 404 · 409 conflict · 422 · 429 · 5xx. Use them meaningfully.
- Error contract — every error has the same shape:
``json { "code": "ORDER_NOT_FOUND", "message": "Order not found", "details": [] } ` No stack trace / internal detail leakage (overlaps with security-scan`).
- Versioning: additive changes in the same version; breaking (remove/rename a field / add a required field) →
/v2. - Collection: pagination (cursor or offset), filter/sort parameters; a consistent envelope.
- Write the contract — OpenAPI/schema; with examples. Wire the change to
docs-writer, and if breaking torelease/CHANGELOG.
Breaking vs additive
| Additive (safe) | Breaking (needs a version) | |---|---| | Add an optional field/endpoint | Remove / rename a field | | A new optional parameter | Add a required parameter | | A new enum value (if the consumer is tolerant) | Change a type/meaning, change a status code |
Invariant rules
- A public API is a commitment — a breaking change is not made silently; version + announcement.
- Consistency > local cleverness — a single naming/error/pagination pattern across the whole API.
- The error model is uniform and machine-readable.
- No internal detail leakage — a stack trace / DB error does not go to the consumer.
- The contract is documented — OpenAPI + example; at design time, not after the code.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: crewforth
- Source: crewforth/crewforth
- License: MIT
- Homepage: https://crewforth.com/
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.