ワンクリックで
add-llm-provider
Add a Bun-native LLM provider entry with routing, pricing, headers, limits, and Bun tests.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Add a Bun-native LLM provider entry with routing, pricing, headers, limits, and Bun tests.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Add a Bun-native YAML agent definition with inheritance, tool policy, and subagent references.
Add a Bun-native messaging channel adapter with lifecycle, webhook, and configuration coverage.
Add a Bun-native TypeScript tool with schema, registry wiring, policy boundaries, and Bun tests.
Author a Bun-native Xerxes SKILL.md bundle with valid metadata, safe assets, and discovery tests.
Normalize Xerxes Apache-2.0 headers with the native Bun maintenance command and verify TypeScript sources.
Manage Apple Notes via the memo CLI on macOS (create, view, search, edit).
| name | add-llm-provider |
| description | Add a Bun-native LLM provider entry with routing, pricing, headers, limits, and Bun tests. |
| version | 2.0.0 |
| tags | ["llm","provider","registry","typescript","bun","xerxes"] |
| required_tools | ["ReadFile","WriteFile","FileEditTool"] |
Use this skill when adding a provider that can use one of Xerxes' native transports: OpenAI-compatible HTTP, Anthropic, or the local Claude Code transport. Use a separate native client implementation when a provider needs a new wire protocol.
Read:
xerxes/src/llms/providerRegistry.tsxerxes/src/llms/client.tsxerxes/test/providerRegistry.test.tsProviderConfig uses native camel-case fields: apiKeyEnv, baseUrl,
contextLimit, models, and transport. Provider selection supports explicit
provider/model notation before model-prefix routing.
Add a provider(...) entry to PROVIDERS in
xerxes/src/llms/providerRegistry.ts:
myprovider: provider('myprovider', 'openai', {
apiKeyEnv: 'MYPROVIDER_API_KEY',
baseUrl: 'https://api.myprovider.example/v1',
contextLimit: 128_000,
models: ['myprovider-chat-1', 'myprovider-chat-2'],
}),
Use an existing ProviderTransport only when the client can actually speak the
provider's protocol. A local endpoint that needs no key can omit apiKeyEnv and
use defaultApiKey only when the endpoint requires a non-secret placeholder.
Update every applicable native registry location in the same change:
COSTS as [inputUsdPerMillion, outputUsdPerMillion]. Use [0, 0] only when the model is genuinely free
or its price is intentionally unknown.PREFIX_MAP. It is sorted longest-first;
avoid collisions with existing providers.MODEL_CONTEXT_LIMITS entry only when a model differs from the
provider-wide contextLimit.providerDefaultHeaders() branch only when the provider explicitly
requires a header.Keep model spellings consistent between the provider entry, cost table, prefix rules, context overrides, documentation, and tests.
Do not pretend a non-compatible endpoint is OpenAI-compatible. Add an explicit
native client in xerxes/src/llms/, make the transport discriminant
and createLlmClient() handle it, and use a deterministic injected fetch or
transport in tests. Surface provider errors with redacted context; never log an
API key.
Extend xerxes/test/providerRegistry.test.ts for prefix resolution,
explicit provider notation, context limit, pricing, and required headers. Add a
client test when transport behavior changes.
Run:
bun test xerxes/test/providerRegistry.test.ts
bun test xerxes/test/llmTypesParity.test.ts
bun run --cwd xerxes check
transport is a native protocol choice, not a marketing label.provider/model form takes precedence over prefixes; test both.