Agent skill · Backend & API

add-ollama-provider

Route a NanoClaw agent group to a local Ollama model instead of the Anthropic API. Ollama speaks the Anthropic API natively (v1/messages), so no provider code changes are needed — just env var overrides and a model setting. Use when the user wants to run their agent locally, cut API costs, or experiment with open-weight models. See docs/ollama.md for background.

NanoCo30,389★ · +78/wk · 1 repos on radarProfile →
claude-codeMIT
Install
npx skills add nanocoai/nanoclaw --skill add-ollama-provider --agent claude-code

Same command for any agent — swap --agent for codex, cursor, copilot.

Facts
Files in the skill folder: 1
SKILL.md size: 6 KB
Bundled scripts: none
Path: .claude/skills/add-ollama-provider/SKILL.md
Open the folder on GitHub →
Where it comes from
Stars: 30,426 · +37 this week
Language: TypeScript
Read our review of the source →

Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.

From the SKILL.md

# Add Ollama Provider Routes an agent group to a local Ollama instance instead of the Anthropic API. See `docs/ollama.md` for how this works and the tradeoffs involved. ## Prerequisites 1. **Ollama is installed and running** on the host — verify: `curl -s http://localhost:11434/api/tags` 2. **A model is pulled** — e.g. `ollama pull gemma4` or `ollama pull qwen3-coder` 3. **The agent group already exists** — run `/init-first-agent` first if needed ## 1. Check source support The feature requires two fields in `ContainerConfig` (`env` and `blockedHosts`) and their corresponding wiring in `container-runner.ts`. Check if already present: ```bash grep -c 'blockedHosts' src/container-config.ts src/container-runner.ts ``` If either count is 0, apply the changes in steps 1a and 1b. Otherwise skip to step 2. ### 1a. Extend ContainerConfig In `src/container-config.ts`, add to the `ContainerConfig` interface: ```typescript env?: Record<string, string>; blockedHosts?: string[]; ``` And in `readContainerConfig`, add inside the returned object: ```typescript env: raw.env, blockedHosts: raw.blockedHosts, ``` ### 1b. Wire into container-runner In `src/container-runner.ts`, after the `NANOCLAW_MCP_S

What's inside
Steps it walks through
  1. Prerequisites
  2. 1. Check source support
  3. 1a. Extend ContainerConfig
  4. 1b. Wire into container-runner
  5. 1c. Fix home directory permissions (if not already done)
  6. 2. Identify the setup
  7. 3. Configure container.json
  8. 4. Set the model
  9. 5. Build and restart
  10. 6. Verify
  11. Reverting to Claude
  12. Troubleshooting
Commands it runs
grep -c 'blockedHosts' src/container-config.ts src/container-runner.ts
grep 'chmod.*home/node' container/Dockerfile
Find the agent group ID
export PATH="/opt/homebrew/bin:$PATH"
pnpm run build
source setup/lib/install-slug.sh
launchctl unload ~/Library/LaunchAgents/$(launchd_label).plist
launchctl load   ~/Library/LaunchAgents/$(launchd_label).plist
Ollama shows the model as active
curl -s http://localhost:11434/api/ps | grep '"name"'
More from nanoclaw
All skills →
About this skill
What does the add-ollama-provider skill do?

Route a NanoClaw agent group to a local Ollama model instead of the Anthropic API. Ollama speaks the Anthropic API natively (v1/messages), so no provider code changes are needed — just env var overrides and a model setting. Use when the user wants to run their agent locally, cut API costs, or experiment with open-weight models. See docs/ollama.md for background.

How do I install it?

Run `npx skills add nanocoai/nanoclaw --skill add-ollama-provider --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.

Where does this skill come from?

From nanocoai/nanoclaw, a repository with 30,426 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.

Is a popular skill a good skill?

Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.

Keep going