Babysitter typespec-sdk-generator
Microsoft TypeSpec-based API and SDK generation
install
source · Clone the upstream repo
git clone https://github.com/a5c-ai/babysitter
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/a5c-ai/babysitter "$T" && mkdir -p ~/.claude/skills && cp -r "$T/library/specializations/sdk-platform-development/skills/typespec-sdk-generator" ~/.claude/skills/a5c-ai-babysitter-typespec-sdk-generator && rm -rf "$T"
manifest:
library/specializations/sdk-platform-development/skills/typespec-sdk-generator/SKILL.mdsource content
TypeSpec SDK Generator Skill
Overview
This skill utilizes Microsoft TypeSpec (formerly Cadl) to design APIs and generate multi-language SDKs following Azure SDK guidelines. TypeSpec provides a concise, type-safe language for API definition.
Capabilities
- Design APIs using TypeSpec language
- Generate multi-language SDKs (TypeScript, Python, Java, C#, Go)
- Emit OpenAPI and other specification formats
- Apply Azure SDK style guidelines automatically
- Implement decorators for rich API semantics
- Support versioning and deprecation patterns
- Generate strongly-typed clients
Target Processes
- SDK Code Generation Pipeline
- API Design Specification
- Multi-Language SDK Strategy
Integration Points
- TypeSpec compiler and emitters
- AutoRest for SDK generation
- Azure SDK code generation pipeline
- OpenAPI emitters
- Custom emitter development
Input Requirements
- TypeSpec model files (.tsp)
- Emitter configurations per target
- Versioning requirements
- Style guide preferences
- Custom decorators (if any)
Output Artifacts
- Generated SDK source code per language
- OpenAPI specifications
- JSON schemas
- API documentation
- Client library packages
Usage Example
skill: name: typespec-sdk-generator context: modelDirectory: ./typespec emitters: - "@azure-tools/typespec-ts" - "@azure-tools/typespec-python" - "@typespec/openapi3" applyAzureGuidelines: true apiVersion: "2024-01-01"
Best Practices
- Use namespaces to organize API structure
- Leverage decorators for documentation and behavior
- Implement proper versioning with @versioned
- Use templates for reusable patterns
- Define clear model inheritance hierarchies
- Apply Azure SDK guidelines for consistency