Cortex is a local first command center for large language models. It is also a project that is still very much in progress, and the honest version of its story is that it grew one question at a time.
How it started
It began as the smallest possible thing: a local interface for my own Ollama instance. I wanted to understand, hands on, what it actually takes to talk to a model over its API. Not read about it, build it. So the first version was little more than a text box wired to http://localhost:11434.
That was enough to get curious. The next thing it grew into was provider independence. The connection layer is built to speak any Ollama compatible API, not just my local instance, so the same interface can point at different backends without rewriting the client.
The question that turned it into a lab
Once the plumbing worked, a more interesting question showed up: how far can you take a fixed model just by changing what you build around it?
The weights are frozen. You cannot retrain them on a laptop. But the context you feed the model, the persona it operates under, the memory it can reach, the tools and loops you wrap it in: all of that is yours to design. Cortex became my sandbox for exploring exactly that. It is a personal experimentation lab that I keep developing in my free time, and most of its features are really hypotheses I wanted to test inside a real interface.
What is in it today
The core idea is that the interface should expose the knobs instead of hiding them behind a chatbot.
- Skillsets. Mission profiles that combine a system prompt, a knowledge base of
.mdfiles, and reusable prompt templates with{variables}. This is the clearest expression of shaping the model from the outside: swap a Skillset and the same model behaves like a different specialist. - Personalities. Ten behavioral presets, from Technical to Devil's Advocate to Pirate, plus custom ones. Skillsets override them when active.
- Fork and Rewind. Fork splits a conversation at any turn while keeping the original intact. Rewind makes the model forget everything after a chosen point. Both let you treat a conversation as something you can branch and edit, not a fixed transcript.
- Memory, on your terms. Connect MongoDB and Cortex remembers threads, Skillsets, and configuration. Leave it out and every session is volatile by design.
- Real model controls. Temperature,
top_p,top_k, context window, max tokens, repeat penalty, and seed, tuned per session.
Everything runs on your machine. Conversations never leave unless you choose, and the whole stack is self hostable with Docker in a couple of minutes.
Where it is going
The frontier I am working toward is agency: loops, tool use, and letting a Skillset drive multi step work rather than answer a single turn. Cortex is not trying to be another polished chat app. It is the place where I get to ask what we can build around a fixed model, and then actually run the experiment.