Skip to main content

Provider Commands

Manage inference providers (LLM APIs) for claw instances.

clawctl provider <command> [options]

Providers are configured locally in ~/.config/clawrium/providers.json. API keys and AWS credentials are stored securely in ~/.config/clawrium/secrets.yml and are never transmitted in plain text.

Provider Types: Most providers use API keys for authentication. AWS Bedrock requires AWS Access Key and Secret Key instead.

Commands

CommandDescription
clawctl provider registry createAdd a new inference provider
clawctl provider registry getList all configured providers
clawctl provider registry editEdit an existing provider
clawctl provider registry deleteRemove a provider
clawctl provider registry get --typesList provider types or show models for a type
clawctl provider registry refreshRefresh Ollama models

clawctl provider registry create

Add a new inference provider.

clawctl provider registry create <name> --type <type> [options]

API keys are collected securely via interactive prompt (not visible in process listing).

Arguments

ArgumentDescription
nameUnique name for this provider configuration

Options

OptionShortDescription
--type-tProvider type (required): openai, anthropic, openrouter, bedrock, vertex, zai, ollama
--model-mDefault model to use
--url-uServer URL (required for Ollama)

Examples

Add an OpenAI provider:

$ clawctl provider registry create myopenai --type openai
API key: ********
Available models for openai:
1. gpt-4o
2. gpt-4o-mini
3. gpt-4-turbo
Select default model (number or name): 1
Provider 'myopenai' added successfully!

Add an Anthropic provider with a specific model:

$ clawctl provider registry create work-claude --type anthropic --model claude-sonnet-4-20250514
API key: ********
Provider 'work-claude' added successfully!

Add a local Ollama provider:

$ clawctl provider registry create local-llm --type ollama --url http://myserver.example.com:11434
Connecting to Ollama server at http://myserver.example.com:11434...
Found 3 models
Available models:
1. llama3.2:latest
2. mistral:latest
3. codellama:latest
Select default model (number or name): 1
Provider 'local-llm' added successfully!

Add an AWS Bedrock provider:

$ clawctl provider registry create my-bedrock --type bedrock
AWS Bedrock requires Access Key and Secret Key
AWS Access Key ID: ********
**
AWS Secret Access Key: ********
**
Available models for bedrock:
1. anthropic.claude-opus-4-20250514-v1:0
2. anthropic.claude-sonnet-4-20250514-v1:0
3. anthropic.claude-3-5-sonnet-20241022-v2:0
Select default model (number or name): 2
Provider 'my-bedrock' added successfully!

Note: The ** shown after entering credentials provides visual confirmation that the paste was successful, since the input is hidden.

Exit Codes

CodeMeaning
0Provider added successfully or operation cancelled
1Invalid name, invalid type, duplicate provider, or connection failed

clawctl provider registry get

List all configured providers.

clawctl provider registry get

Displays a table of all configured providers with masked API keys.

Example

$ clawctl provider registry get
Configured Providers
┏━━━━━━━━━━━━━━┳━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━┓
┃ Name ┃ Type ┃ Model ┃ API Key ┃ Added ┃
┡━━━━━━━━━━━━━━╇━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━┩
│ myopenai │ openai │ gpt-4o │ sk-p...4xYz │ 2026-04-01 │
│ work-claude │ anthropic │ claude-sonnet-4 │ sk-a...9abc │ 2026-04-02 │
│ local-llm │ ollama │ llama3.2:latest │ http://myserver..2026-04-03 │
└──────────────┴───────────┴──────────────────┴───────────────────┴────────────┘

No providers configured:

$ clawctl provider registry get
No providers configured. Use 'clawctl provider registry create' to add a provider.

Exit Codes

CodeMeaning
0Providers listed successfully
1Providers file corrupted

clawctl provider registry edit

Edit an existing provider configuration.

clawctl provider registry edit <name> [options]

Arguments

ArgumentDescription
nameProvider name to edit

Options

OptionShortDescription
--model-mNew default model
--url-uNew server URL (Ollama only)
--update-keyUpdate API key (will prompt securely)

Examples

Change default model:

$ clawctl provider registry edit myopenai --model gpt-4o-mini
Provider 'myopenai' updated successfully!

Update Ollama server URL:

$ clawctl provider registry edit local-llm --url http://newserver.example.com:11434
Connecting to Ollama server at http://newserver.example.com:11434...
Found 5 models
Provider 'local-llm' updated successfully!

Update API key:

$ clawctl provider registry edit myopenai --update-key
New API key: ********
API key updated.
Provider 'myopenai' updated successfully!

Update AWS Bedrock credentials:

$ clawctl provider registry edit my-bedrock --update-key
AWS Bedrock requires Access Key and Secret Key
New AWS Access Key ID: ********
**
New AWS Secret Access Key: ********
**
AWS credentials updated.
Provider 'my-bedrock' updated successfully!

Exit Codes

CodeMeaning
0Provider updated successfully or no changes specified
1Provider not found, invalid URL, or connection failed

clawctl provider registry delete

Remove a provider configuration.

clawctl provider registry delete <name> [--force]

Arguments

ArgumentDescription
nameProvider name to remove

Options

OptionShortDescription
--force-fSkip confirmation prompt

Examples

$ clawctl provider registry delete myopenai
Remove provider 'myopenai'? This cannot be undone. [y/N]: y
Provider 'myopenai' removed successfully.

Force removal:

$ clawctl provider registry delete old-provider --force
Provider 'old-provider' removed successfully.

Exit Codes

CodeMeaning
0Provider removed successfully or operation cancelled
1Provider not found or removal failed

clawctl provider registry get --types

List supported provider types or show models for a specific type.

clawctl provider registry get --types [<type>] [models]

Arguments

ArgumentDescription
type(Optional) Provider type to inspect (openai, anthropic, etc.)
models(Optional) Action to show available models for the type

Examples

List all supported provider types:

$ clawctl provider registry get --types
Supported provider types:

anthropic - 7 models
bedrock - 8 models (SDK-based)
ollama - Self-hosted (dynamic model discovery)
openai - 51 models
openrouter - 200+ models
vertex - 6 models (SDK-based)
zai - 8 models

Show available actions for a type:

$ clawctl provider registry get --types openai
Provider type: openai

Available actions:
clawctl provider registry get --types openai models # List available models

List models for a provider type:

$ clawctl provider registry get --types openai models
Available models for openai (51 models)

ID Name Lab Context
gpt-4o GPT-4o OpenAI 128K
gpt-4o-mini GPT-4o mini OpenAI 128K
gpt-4-turbo GPT-4 Turbo OpenAI 128K
...

List models for multi-lab provider (grouped by lab):

$ clawctl provider registry get --types openrouter models
Available models for openrouter (200+ models from 8 labs)

Anthropic (5 models)
ID Name Lab Context
anthropic/claude-opus-4 Claude Opus 4 Anthropic 200K
...

OpenAI (10 models)
ID Name Lab Context
openai/gpt-4o GPT-4o OpenAI 128K
...

Exit Codes

CodeMeaning
0Types or models listed successfully
1Invalid provider type or unknown action

clawctl provider registry refresh

Refresh available models from an Ollama server.

clawctl provider registry refresh <name>

Re-fetches the model list from the Ollama server and updates the saved configuration.

Arguments

ArgumentDescription
nameOllama provider name to refresh

Example

$ clawctl provider registry refresh local-llm
Connecting to Ollama server at http://myserver.example.com:11434...
Found 5 models

Provider 'local-llm' updated with 5 models:
llama3.2:latest
mistral:latest
codellama:latest
phi3:latest
gemma:latest

Exit Codes

CodeMeaning
0Provider refreshed successfully
1Provider not found, not Ollama type, or connection failed