Flint docs
Flint is an offline orchestration layer and chat UI for local Ollama models: one Go binary, SQLite, and a light server-rendered UI, with nothing fetched from a CDN. The idea behind it is that a well-guided 3-4B model isn't an inferior model but an under-scaffolded one, so Flint's job is to be the best scaffolding around a small model without getting heavy itself: context that never overflows, shell commands that always wait for your approval, memory across chats, and web search only when you ask. Ollama cloud models work too, under the same rules, tagged as cloud, and each account can set its own context window for local and for cloud models.
New in 0.4.0: with a cloud model, a turn's edits are staged and reviewed together after its reply: one card shows every changed file, with Write all and Discard all, and halved the approvals for a change across two files in testing. Any diff with more than one change can be written in part, one checkbox per change. An edit that removes a name the file still uses (a rename that stopped at the import) is pointed at the lines that still use it. (features, experiments, changelog)
0.3.0 added file tools: the model reads, edits and creates files in your attached folder. It reads on its own, inside the folder only and never a secret the shield blocks (with a cloud model, only after you approve each read); every edit is shown as a red/green diff and written only when you approve it. The folder's real file paths now sit next to where the model writes, so it names files that exist instead of guessing, and any file it mentions that isn't there is flagged under its reply. (features, security, changelog)

0.2.0 added @agent <task>: a question over your folder split into
subtasks, each run by its own agent, with one answer from their results
(features).
Quick start#
You need Ollama running with a model pulled, for
example ollama pull qwen2.5:3b.
With Docker (recommended; no clone needed). On Linux:
mkdir flint && cd flint && mkdir data
curl -O https://raw.githubusercontent.com/Lusan-sapkota/Flint/main/docker-compose.yml
docker compose up -d
Then open http://localhost:3141. On Mac and Windows, use
docker-compose.desktop.yml instead, as shown in
Install and run.
Or from source, with Go installed:
git clone https://github.com/Lusan-sapkota/Flint.git
cd Flint/backend
go run .
Then open http://localhost:8080 and sign up.
The docs#
Get started
- Install and run: Docker and source, environment variables, health checks, and which models need which capabilities.
Using Flint
- Features: everything Flint does, from a user's point of view.
- Security: accounts, rate limits, the shell-command safety layers, and what leaves the machine.
How it works
- Architecture: the pieces, repository layout, data model, a chat turn, the streaming protocol, why Flint is an orchestration layer, comparisons to generic agent CLIs, resource footprint, where the ideas come from and what was deliberately not built.
- Context management: how a conversation is fit into a small model's window.
Evidence
- Experiments: the measurements behind each design decision, including what failed and was rejected.
- Benchmark: the scored benchmark, with and without each piece of scaffolding.
- Testing: unit tests, live checks against Ollama, the long-chat run and the web re-ranking set. The scripts it uses are tools/long_chat.py and tools/web_rerank.py.
Project
- Changelog: what changed in each release.
- Contributing (on GitHub): for anyone working on the code. What fits, setup, what a pull request needs, and, for maintainers, how a release is made.
Screenshots#







Elsewhere#
- Source code and releases
- Report a bug, or a security problem privately through the repository's Security tab.
Every change to Flint updates the pages it affects, in the same commit.