Skip to content

ollama-agent

An extensible agent platform in Go that works exclusively with Ollama and is optimized for small local LLMs. It distributes requests across multiple Ollama servers, picks the right model for each task on its own, and ships with a dark web UI.

Operation across multiple servers

  • Endpoint pool: use multiple Ollama servers in parallel, with health checks, automatic failover, and recovery. Requests only go to servers that actually have the required model.
  • Docker: a container image that starts the web UI directly; configuration optionally entirely via environment variables.

The right model for each task

  • Automatic model selection: task categories (chat, code, summarize, …) are mapped to model preference lists via JSON config; a small router model classifies tasks when no category is specified.
  • Built-in benchmarks: a standardized test measures capability tiers, real context size, speed, and stability per model and server — the context depth test additionally checks whether a model truly understands its large context.

Robust with small models

  • Agent loop with tool calling: built against the typical weaknesses of small models — salvage parsing of malformed tool calls, short prompts, tool subsetting by category, loop detection, context compaction.
  • Patient timeouts: local models are allowed to take minutes for a response without anything getting aborted.

Interface

  • Web UI: multiple chat sessions with automatic naming, full-text search, per-response token display, context meter with a compress function, job overview, model matrix with benchmark launch, and a settings page.
  • Read-aloud & voice input: optional via Google Cloud — speaker icon under each response, microphone on the input field.
  • CLI: the same platform, interactive or scriptable, on the command line.

Extensible

  • Markdown skills: capabilities as SKILL.md folders, extensible without recompiling.
  • MCP client: connect external MCP servers (stdio + HTTP), their tools become available to the agent.
  • Web research: built-in web search and page analysis with a compression layer, so even small models can work with web content.
  • Cron scheduler: recurring agent jobs via cron expression.
Terminal window
make build
./bin/ollama-agent config init > config.json # generate example config, then adjust
./bin/ollama-agent ui # start the daemon and open the web UI

Full details in Installation. If you’d rather work on the command line, get started at Command Line.

I want to …Page
install the platformInstallation
understand config.jsonConfiguration
get to know the interfaceWeb UI
look up all commandsCommand Reference
pick the right modelModel Guide
add custom capabilitiesExtending the Platform
contribute to the coreArchitecture
look up every endpoint with schema and exampleAPI Reference
know what changed recentlyChangelog