plugin-ollama
| Placement | compiled-in (in-process) |
| Source | github.com/opencharly/plugin-ollama/candy/plugin-ollama |
| Version | 2026.229.1013 |
| Candy | plugin-ollama |
This plugin is listed in charly/charly.yml’s compiled_plugins:, so its providers are compiled into the charly binary and register in-process.
Providers
Section titled “Providers”The reserved words this plugin serves:
ollama— command class
What it does
Section titled “What it does”COMPILED-IN charly COMMAND-class plugin (command:ollama) OWNING the entire
charly ollama CLI — the host-side management surface for a DEPLOYED Ollama
server: list / ps / pull / rm / show / cp / create / push / run / stop /
version. The plugin owns the ENTIRE logic: the hand-rolled subcommand grammar
AND the Ollama HTTP API calls, built on the official upstream Go client
(github.com/ollama/ollama/api, pinned in the candy’s own go.mod). There is NO
core ollama logic and NO HostBuild seam.
The command talks to the server over plain HTTP, so it is fully self-contained and works IDENTICALLY compiled-in OR out-of-process: listed in charly.yml compiled_plugins it registers in-proc and the host dispatches it through dispatchInProcCommand → Invoke(OpRun) → runOllamaCLI; the out-of-process placement fork/execs cmd/serve → CliMain running the SAME runOllamaCLI. Endpoint resolution is deliberately lightweight: –server flag > OLLAMA_HOST env
This is a sibling of the ollama CANDY (candy/ollama — which deploys the
server) and of the candy’s host shell alias: ollama (which execs the
upstream CLI inside the container): three disjoint surfaces. Full Modelfile
authoring stays with the upstream CLI; charly ollama create covers the
lightweight –from form.
The R10 witness is the disposable check-ollama-pod bed (box/fedora): it deploys
the ollama image and runs charly ollama list|version --server http://127.0.0.1:${HOST_PORT:11434} host-side against the live server, plus
the candy’s baked checks.
Parameter schema
Section titled “Parameter schema”The CUE schema below is the authoritative grammar for this plugin’s input. It is the same single source that generates the plugin’s Go parameter types and answers the runtime Describe RPC, so this page cannot disagree with either.
schema/ollama.cue
Section titled “schema/ollama.cue”// plugin-ollama's OWN self-contained CUE schema — the SINGLE SOURCE for this plugin's// served declaration surface (there is no schema-less plugin: every plugin ships a// non-empty schema over Describe).//// SELF-CONTAINED and PACKAGE-LESS: it references no base def and carries no package// clause, so it compiles STANDALONE — the property the SDK's serve-side compile needs// and the property that lets the host splice `base ++ plugin` at the load gate// (registerPluginUnitSchema); a self-contained schema that will not splice is a LOUD// load failure.//// NO GO CONSUMER: the plugin declares no typed `plugin_input` (its authored input is// its pass-through CLI grammar), so this schema generates NO `params` package and has// NO `cue exp gengotypes` artifact — it is the SERVED documentation/config surface,// not a code-generation source.//// It DOCUMENTS the `command: ollama` contract and the endpoint/config surface the CLI reads (`--server` flag > `OLLAMA_HOST` env > the declared default).#OllamaPlugin: { // The command word the plugin serves. command: "ollama"
// What the command does, in one line (the public-docs surface). contract: string & !=""
// Endpoint resolution: --server flag > OLLAMA_HOST env > this default. default_endpoint: "http://127.0.0.1:11434"}See also the candy reference for this candy’s install surface.