api-integration-patter…
Subprocess safety, GitHub CLI integration, retry logic, authentication, rate limiting, and timeout handling. Use when integrating external APIs or CLI tools.…
REST API design best practices covering versioning, error handling, pagination, and OpenAPI documentation. Use when designing or implementing REST APIs or HTTP endpoints. TRIGGER when: API design, REST endpoint, HTTP route, OpenAPI, swagger, pagination. DO NOT TRIGGER when:
$ npx -y skills add akaszubski/autonomous-dev --skill api-design --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/api-designContext preview
The summary Claude sees to decide when to auto-load this skill.
REST API design best practices covering versioning, error handling, pagination, and OpenAPI documentation. Use when designing or implementing REST APIs or HTTP endpoints. TRIGGER when: API design, REST endpoint, HTTP route, OpenAPI, swagger, pagination. DO NOT TRIGGER when:
name: api-design description: "REST API design best practices covering versioning, error handling, pagination, and OpenAPI documentation. Use when designing or implementing REST APIs or HTTP endpoints. TRIGGER when: API design, REST endpoint, HTTP route, OpenAPI, swagger, pagination. DO NOT TRIGGER when: internal library code, CLI tools, non-HTTP interfaces." allowed-tools: [Read]
REST API design best practices, HTTP conventions, versioning, error handling, and documentation standards.
---
RESTful resource design using nouns (not verbs), proper HTTP methods, and hierarchical URL structure.
**Key Principles**:
**See**: `docs/rest-principles.md` for detailed examples and patterns
---
Proper status code usage for success (2xx), client errors (4xx), and server errors (5xx).
**Common Codes**:
**See**: `docs/http-status-codes.md` for complete reference and examples
---
RFC 7807 Problem Details format for consistent, structured error responses.
**Standard Format**:
{
"type": "https://example.com/errors/validation-error",
"title": "Validation Error",
"status": 422,
"detail": "Email address is invalid",
"instance": "/users",
"errors": {
"email": ["Must be a valid email address"]
}
}**See**: `docs/error-handling.md` for implementation patterns and best practices
---
JSON structure conventions for request bodies and response payloads.
**Best Practices**:
**See**: `docs/request-response-format.md` for detailed examples
---
Offset-based and cursor-based pagination strategies for large datasets.
**Offset-Based** (simple, good for small datasets):
GET /users?page=2&limit=20
**Cursor-Based** (scalable, handles real-time updates):
GET /users?cursor=abc123&limit=20
**See**: `docs/pagination.md` for implementation details and trade-offs
---
URL path versioning (recommended) and header-based versioning strategies.
**URL Path Versioning**:
/v1/users /v2/users
**When to Version**:
**See**: `docs/versioning.md` for migration strategies and deprecation policies
---
API key and JWT authentication patterns for securing endpoints.
**API Key** (simple, good for service-to-service):
Authorization: Bearer sk_live_abc123...
**JWT** (stateless, good for user authentication):
Authorization: Bearer eyJhbGc...
**See**: `docs/authentication.md` for implementation patterns
---
Rate limit headers and strategies to prevent abuse.
**Standard Headers**:
X-RateLimit-Limit: 1000 X-RateLimit-Remaining: 999 X-RateLimit-Reset: 1640995200
**See**: `docs/rate-limiting.md` for implementation strategies
---
CORS configuration, filtering, sorting, and search patterns.
**Topics**:
**See**: `docs/advanced-features.md` for detailed patterns
---
OpenAPI/Swagger documentation for API discoverability.
**Auto-Generated** (FastAPI):
@app.get("/users/{user_id}", response_model=User)
def get_user(user_id: int):
"""Get user by ID"""
return db.get_user(user_id)**See**: `docs/documentation.md` for OpenAPI specifications
---
Idempotency, content negotiation, HATEOAS, bulk operations, and webhooks.
**Topics**:
**See**: `docs/idempotency-content-negotiation.md` and `docs/patterns-checklist.md`
---
| Pattern | Use Case | Details | |---------|----------|---------| | REST Principles | Resource-based URLs | `docs/rest-principles.md` | | Status Codes | HTTP response codes | `docs/http-status-codes.md` | | Error Handling | RFC 7807 errors | `docs/error-handling.md` | | Pagination | Large datasets | `docs/pagination.md` | | Versioning | Breaking changes | `docs/versioning.md` | | Authentication | API security | `docs/authentication.md` | | Rate Limiting | Abuse prevention | `docs/rate-limiting.md` | | Documentation | OpenAPI/Swagger | `docs/documentation.md` |
---
**Before Launch**:
A harness that wraps Claude Code with enforcement, specialist agents, and alignment gates to deliver consistent, production-grade software engineering outcomes.
Repo: akaszubski/autonomous-dev
Subprocess safety, GitHub CLI integration, retry logic, authentication, rate limiting, and timeout handling. Use when integrating external APIs or CLI tools.…
File-by-file architecture planning with ADR format, dependency ordering, and testability gates. Use when designing system architecture or creating ADRs.…
10-point code review checklist covering correctness, tests, error handling, type hints, naming, security, and performance. Use when reviewing PRs or evaluating…
One topic, one home. Routes content to its canonical store (CLAUDE.md, PROJECT.md, MEMORY.md, docs/, memory/) and audits for duplication. TRIGGER when:…
Systematic debugging methodology — reproduce, isolate, bisect, fix, verify. Use when diagnosing failures, tracing errors, or investigating unexpected behavior.…
Documentation standards enforcing Keep a Changelog format, README structure, ADR templates, and Google-style docstrings. Use when writing CHANGELOG entries,…