go-ollama/.cursor/rules/project-specification.mdc
2026-06-11 20:01:48 +02:00

28 lines
921 B
Plaintext

---
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 ./...`