Files
openclaw-openclaw/extensions/ollama/openclaw.plugin.json
Peter Steinberger 1fef99962e feat(nodes): add auto-discovered Ollama inference (#99234)
* feat(nodes): add local Ollama inference

* fix(gateway): preserve plugin node runtime for agent turns

* feat(ollama): add node inference opt-out

* test(security): preserve plugin runtime exports

* test(security): preserve plugin runtime exports

* test(security): preserve plugin runtime exports

* fix(ci): raise artifact build heap
2026-07-03 01:14:30 -07:00

200 lines
5.1 KiB
JSON

{
"id": "ollama",
"icon": "https://cdn.simpleicons.org/ollama",
"activation": {
"onStartup": true
},
"enabledByDefault": true,
"providers": ["ollama", "ollama-cloud"],
"providerCatalogEntry": "./provider-discovery.ts",
"providerRequest": {
"providers": {
"ollama": {
"family": "ollama"
},
"ollama-cloud": {
"family": "ollama-cloud"
}
}
},
"modelPricing": {
"providers": {
"ollama": {
"external": false
},
"ollama-cloud": {
"external": true
}
}
},
"syntheticAuthRefs": ["ollama"],
"nonSecretAuthMarkers": ["ollama-local"],
"setup": {
"providers": [
{
"id": "ollama",
"envVars": ["OLLAMA_API_KEY"]
},
{
"id": "ollama-cloud",
"envVars": ["OLLAMA_API_KEY"]
}
]
},
"providerAuthChoices": [
{
"provider": "ollama",
"method": "local",
"choiceId": "ollama",
"choiceLabel": "Ollama",
"choiceHint": "Cloud and local open models",
"groupId": "ollama",
"groupLabel": "Ollama",
"groupHint": "Cloud and local open models"
},
{
"provider": "ollama-cloud",
"method": "api-key",
"choiceId": "ollama-cloud",
"choiceLabel": "Ollama Cloud",
"choiceHint": "Hosted models via ollama.com",
"groupId": "ollama",
"groupLabel": "Ollama",
"groupHint": "Cloud and local open models",
"optionKey": "ollamaCloudApiKey",
"cliFlag": "--ollama-cloud-api-key",
"cliOption": "--ollama-cloud-api-key <key>",
"cliDescription": "Ollama Cloud API key"
}
],
"modelCatalog": {
"runtimeAugment": true,
"providers": {
"ollama-cloud": {
"baseUrl": "https://ollama.com",
"api": "ollama",
"models": [
{
"id": "kimi-k2.5:cloud",
"name": "kimi-k2.5:cloud",
"reasoning": true,
"input": ["text"],
"cost": {
"input": 0,
"output": 0,
"cacheRead": 0,
"cacheWrite": 0
},
"contextWindow": 128000,
"maxTokens": 8192,
"compat": {
"supportsTools": true,
"supportsUsageInStreaming": true
}
},
{
"id": "minimax-m2.7:cloud",
"name": "minimax-m2.7:cloud",
"reasoning": true,
"input": ["text"],
"cost": {
"input": 0,
"output": 0,
"cacheRead": 0,
"cacheWrite": 0
},
"contextWindow": 128000,
"maxTokens": 8192,
"compat": {
"supportsTools": true,
"supportsUsageInStreaming": true
}
},
{
"id": "glm-5.1:cloud",
"name": "glm-5.1:cloud",
"reasoning": true,
"input": ["text"],
"cost": {
"input": 0,
"output": 0,
"cacheRead": 0,
"cacheWrite": 0
},
"contextWindow": 128000,
"maxTokens": 8192,
"compat": {
"supportsTools": true,
"supportsUsageInStreaming": true
}
},
{
"id": "glm-5.2:cloud",
"name": "glm-5.2:cloud",
"reasoning": true,
"input": ["text"],
"cost": {
"input": 0,
"output": 0,
"cacheRead": 0,
"cacheWrite": 0
},
"contextWindow": 1000000,
"maxTokens": 8192,
"compat": {
"supportsTools": true,
"supportsUsageInStreaming": true
}
}
]
}
},
"discovery": {
"ollama-cloud": "refreshable"
}
},
"contracts": {
"memoryEmbeddingProviders": ["ollama"],
"tools": ["node_inference"],
"webSearchProviders": ["ollama"]
},
"configSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"discovery": {
"type": "object",
"additionalProperties": false,
"properties": {
"enabled": { "type": "boolean" }
}
},
"nodeInference": {
"type": "object",
"additionalProperties": false,
"properties": {
"enabled": { "type": "boolean" }
}
}
}
},
"uiHints": {
"discovery": {
"label": "Model Discovery",
"help": "Plugin-owned controls for Ollama model auto-discovery."
},
"discovery.enabled": {
"label": "Enable Discovery",
"help": "When false, OpenClaw keeps the Ollama plugin available but skips implicit startup discovery of ambient local or remote Ollama models."
},
"nodeInference": {
"label": "Node Inference",
"help": "Controls whether this node host advertises its local Ollama models to agents."
},
"nodeInference.enabled": {
"label": "Enable Node Inference",
"help": "When false, this node host does not advertise or accept Ollama node-inference commands."
}
}
}