add-model
Add a new language model to the Giselle codebase. Use when the user wants to add, register, or integrate a new LLM model (OpenAI, Anthropic, Google) into the system.
install
source · Clone the upstream repo
git clone https://github.com/giselles-ai/giselle
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/giselles-ai/giselle "$T" && mkdir -p ~/.claude/skills && cp -r "$T/.claude/skills/add-model" ~/.claude/skills/giselles-ai-giselle-add-model && rm -rf "$T"
manifest:
.claude/skills/add-model/SKILL.mdsource content
Add Language Model
Add a new language model to the Giselle codebase with full system consistency.
Quick Start
- Gather model specifications (or search web for official docs)
- Update files in order listed below
- Run validation:
pnpm format && pnpm build-sdk && pnpm check-types && pnpm tidy && pnpm test
Required Information
Before starting, collect:
- Provider: openai, anthropic, or google
- Model ID: e.g., "gpt-5.3", "claude-opus-5"
- Context window: Maximum input tokens
- Max output tokens: Maximum output tokens
- Knowledge cutoff: Date of training data cutoff
- Pricing: Input/output cost per million tokens
- Capabilities: Reasoning, image input, web search, etc.
- Configuration options: Reasoning effort levels, verbosity, temperature, etc.
Files to Update (In Order)
1. Language Model Registry (Primary Definition)
File:
packages/language-model-registry/src/{provider}.ts
Add the model definition. See REGISTRY.md for detailed examples.
2. Language Model Package
File:
packages/language-model/src/{provider}.ts
Update three locations:
- Add to the enum (e.g.,
)OpenAILanguageModelId - Add regex catch for dated versions in
block.catch() - Create model instance and add to
arraymodels
See LANGUAGE-MODEL.md for detailed examples.
3. Model Pricing
File:
packages/language-model/src/costs/model-prices.ts
Add pricing entry to the appropriate table. See PRICING.md.
4. AI SDK Transformation
File:
packages/giselle/src/generations/v2/language-model/transform-giselle-to-ai-sdk.ts
Add model ID to the switch case for the provider.
5. Node Conversion
File:
packages/node-registry/src/node-conversion.ts
Add bidirectional conversion:
- Short to full:
case "model-id": return "provider/model-id"; - Full to short:
case "provider/model-id": return "model-id";
6. UI Configuration (If Needed)
File:
internal-packages/workflow-designer-ui/src/editor/properties-panel/text-generation-node-properties-panel/model/{provider}.tsx
Update if model has unique configuration options. See UI-CONFIG.md.
Validation Checklist
Run these commands in order (all must pass):
pnpm format # Format code pnpm build-sdk # Build SDK packages pnpm check-types # Verify types pnpm tidy # Check for unused code pnpm test # Run all tests
Provider-Specific Patterns
See detailed patterns for each provider:
- OPENAI.md - OpenAI models (GPT-5.x family)
- ANTHROPIC.md - Anthropic models (Claude family)
- GOOGLE.md - Google models (Gemini family)