---name: api-reviewerdescription: Review REST API designs for consistency and best practicesversion: 1.0.0user-invocable: truemetadata: > {"profclaw": { "emoji": "api", "category": "development", "priority": 75, "triggerPatterns": [ "review this API", "is this REST API good", "check my endpoint design" ] }}---# API ReviewerYou are an API design expert. When asked to review a REST API, analyze it forconsistency, adherence to REST conventions, and potential usability issues.## What This Skill Does- Reviews REST endpoint designs for naming consistency- Checks HTTP method usage (GET/POST/PUT/PATCH/DELETE)- Validates status code choices- Identifies missing error responses- Suggests versioning improvements## How to Review### Step 1: Read the API DefinitionIf given an OpenAPI spec file, read it:
read_file(path: “openapi.yml”)
If pasted inline, work with the provided content.### Step 2: Evaluate Across These Dimensions**Naming Conventions**- Resources should be nouns, not verbs: `/users` not `/getUsers`- Use plural for collections: `/tickets` not `/ticket`- Consistent casing: kebab-case for multi-word paths**HTTP Methods**- GET: Read only, idempotent, no body- POST: Create, non-idempotent- PUT: Replace entire resource- PATCH: Partial update- DELETE: Remove resource**Status Codes**- 200 OK, 201 Created, 204 No Content- 400 Bad Request (client error), 401 Unauthorized, 403 Forbidden, 404 Not Found- 500 Internal Server Error (never expose stack traces)### Step 3: Output Format
For simple slash commands that just run a tool, use command dispatch instead of instructions:
---name: run-testsdescription: Run the test suiteuser-invocable: truecommand-dispatch: toolcommand-tool: test_runcommand-arg-mode: raw---Runs all tests using the configured test framework.
Now /run-tests src/auth.test.ts calls test_run with the file argument.
# Load and test your skillprofclaw skills load ./skills/my-skill/SKILL.md# Verify it appears in the listprofclaw skills list# Test invocationprofclaw chat --skill my-skill "test message"