Documentation
AI providers
Run a model on your own Mac, or point Gisti at your own OpenAI-compatible endpoint.
AI in Gisti is optional and pluggable. Summarization (⌘ Y), Chat, and title generation all go through the provider you pick in Settings → AI.

Providers
Local – a model server running on your own Mac. No key, no account, nothing leaves the machine:
| Provider | Notes |
|---|---|
| Ollama | default http://localhost:11434, model llama3.2 |
| LM Studio | default http://localhost:1234 |
| MLX | any mlx_lm.server endpoint, default http://127.0.0.1:8080 |
Custom – any OpenAI-compatible endpoint you run yourself: a home-lab box, a self-hosted gateway, a tunnel to your own server. URL + model name, plus a token if your server asks for one. Details below.
Custom endpoints
Custom talks to any server that speaks the OpenAI /chat/completions API.
Three fields:
| Field | What it wants |
|---|---|
| URL | The API root. A bare host gets /v1 appended – https://box.local becomes https://box.local/v1 – while a URL that already carries a path is used exactly as written, so a server living under /api or /openai/v1 works without tricks. |
| Model | The model name exactly as that server reports it. |
| API Key | Only if the server asks for authentication. Stored in the macOS Keychain, never in a config file. |
Gisti posts to <URL>/chat/completions and reads the answer as it streams.
Nothing else is expected of the server.
Servers you can run yourself
Any of these serve that API, are free, and run on hardware you control:
| Server | Typical address |
|---|---|
llama-server (llama.cpp) |
http://localhost:8080/v1 |
| vLLM | http://localhost:8000/v1 |
| Ollama’s OpenAI-compatible route | http://localhost:11434/v1 – the Ollama preset above is simpler unless you need this route specifically |
A machine on your LAN, a home server reached over Tailscale, or a gateway your company hosts are all the same case: what matters is the address you can reach and the model name it answers to.
Keys and privacy
- If your endpoint needs a token, it is stored in the macOS Keychain, not in config files.
- Requests go directly from your Mac to that endpoint: no middleman, no proxy, no telemetry.
- With a local provider, content never leaves the machine. See Privacy.
Behavior
- Responses stream in as they generate.
- Summarization answers in the language of the source text.
- Each request type has its own timeout (summarize 60s, chat 120s by default), tunable in advanced.yaml, along with the prompt templates themselves.