--- description: go-ollama wrapper — ergonomic client for github.com/ollama/ollama/api alwaysApply: true --- # go-ollama — Project Rules Follow `docs/project-specification.md` for design and implementation. ## Stack - **Language:** Go (see workspace `go.work` for version) - **Module:** `gitea.neitzel.de/konrad/go-ollama`, package `gollama` - **Wraps:** `github.com/ollama/ollama/api` — do not reimplement HTTP ## Design - Default to non-streaming (`stream: false`); aggregate into `Result` - `CallOption` for per-request overrides; `OptionSet` fluent builder for generation options - `Session` for multi-turn chat with automatic history - Project `.cursor` overrides workspace rules for this module ## Integration tests - Default Ollama host: `http://debian:11434` in `testconfig/defaults.toml` - Override via `testconfig/local.toml` (gitignored) or `OLLAMA_HOST` - Run: `go test -tags=integration ./...`