skills/sdk-scaffolder/SKILL.md
Generates an idiomatic SDK skeleton for Python, TypeScript, Go, or Kotlin from an OpenAPI spec file. Rather than auto-generated machine code, it designs client code with built-in features like retry/timeout/pagination, at the quality level a real developer would write.
npx skillsauth add fatih-developer/fth-skills sdk-scaffolderInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
This skill focuses on Developer Experience (DX). Auto-generated clients (via standard Swagger/OpenAPI generators) are notoriously ugly, verbose, and lack domain-specific resilience. This skill generates idiomatic code tailored to a specific language's best practices.
Core assumption: If your SDK is hard to use, developers won't use your API. An SDK is a product in itself.
Read the API OpenAPI specification and target language (e.g., Python httpx vs requests, or TypeScript fetch vs axios).
Generate an SDK structure that includes:
HttpClient that automatically handles retries (with exponential backoff) for 429 and 5xx errors.limit/offset or cursor logic into generator functions or async iterators.Required Outputs (Must write BOTH to docs/api-report/):
docs/api-report/sdk-scaffold-report.md)### 🧰 SDK Scaffolder: TypeScript/Node.js
**Architecture:** Fetch API + Native Types
**Features:** Auto-retry on 429, Typed Responses.
#### 📝 Usage Example
```typescript
import { MyApiClient } from '@myorg/api';
const client = new MyApiClient({ apiKey: 'sk_test...' });
// The iterator abstracts away pagination cursors!
for await (const order of client.orders.list()) {
console.log(order.id);
}
BaseClient that intercepts fetch calls to add the Authorization header and manage timeouts.client.orders.create(), not client.createOrder()).
2. **Machine-Readable JSON (`docs/api-report/sdk-scaffold-output.json`)**
```json
{
"skill": "sdk-scaffolder",
"target_language": "TypeScript",
"recommended_libraries": ["zod", "undici"],
"features_included": ["pagination_iterators", "retry_backoff"],
"structure_tree": ["src/", "src/index.ts", "src/client.ts", "src/resources/orders.ts"]
}
ApiClient class containing 200 methods. Separate them by resource domains (e.g., client.billing, client.users).fetch in Node 18+).tools
Create, optimize, critique, and structure prompts for AI systems. Use this skill whenever the user is designing or improving a prompt, system prompt, coding prompt, image prompt, evaluation rubric, agent prompt, workflow prompt, or MCP-oriented prompt package. Also use it when the user asks to turn vague AI behavior into a precise instruction set, tool policy, agent spec, or prompt architecture.
testing
Assumption-first architecture review skill to stress-test project plans and expose hidden risks.
testing
Enforce and manage DESIGN.md specifications, extract design systems from URLs, and combine design reasoning with token roles to prevent drift.
testing
Forces the agent to act with a Claude-like product mindset, prioritizing user journey, UX states, and visual quality before coding.