ollama/ollama
Other subsystems
Smaller pieces that aren't big enough for their own page but worth knowing about.
| Subsystem | Location | What it does |
|---|---|---|
api/ |
api/ |
The Go client. Client (api/client.go) is what external Go programs use; it shares all the request/response types with the daemon via api/types.go. |
envconfig/ |
envconfig/config.go |
The single place every environment variable is read. Adds caching so values are resolved once. |
format/ |
format/ |
Human formatters: format.HumanBytes, format.HumanTime, etc. Used by the CLI and the desktop app. |
progress/ |
progress/ |
Progress bars and spinners for ollama pull, ollama push, and ollama run. |
readline/ |
readline/ |
The line editor used by ollama run. Custom because gnu readline is too heavy and has license issues. |
parser/ |
parser/parser.go |
Modelfile parser — see primitives/modelfile. |
manifest/ |
manifest/ |
OCI-ish manifest types — see storage and registry. |
fs/ggml/, fs/gguf/ |
fs/ |
GGUF/GGML readers. |
middleware/ |
middleware/ |
OpenAI/Anthropic translation — see features/openai-anthropic-compat. |
openai/ |
openai/ |
OpenAI compat handlers (chat, completions, embeddings, responses). |
anthropic/ |
anthropic/ |
Anthropic Messages compat handlers. |
version/ |
version/ |
Build-stamped version constant. |
logutil/ |
logutil/ |
slog setup, secret redaction. |
types/ |
types/ |
Shared types not tied to the API: model.Name, errtypes, syncmap. |
internal/ |
internal/ |
Top-level internal packages (small grab-bag of helpers). |
x/ |
x/ |
Extended runtime: x/agent, x/create, x/server, x/cmd, x/safetensors, x/tokenizer, x/tools, alongside the x/imagegen and x/mlxrunner runners. |
app/ |
app/ |
The desktop app — see apps/desktop. |
integration/ |
integration/ |
Integration tests that spin up a real daemon. |
scripts/ |
scripts/ |
Build / release helpers. |
Built by Factory AutoWiki from public repository content. It is a generated preview for codebase exploration, not source-maintained documentation.