omp — the AI agent I actually work in

· 4 min read · 77 views

Most "AI coding" tools are a chat window. You describe a problem, you get a block of code back, you paste it in, and you fix whatever's wrong. omp isn't that. It runs on my laptop, in my actual repos, and does the work itself — reads the files, makes the edits, runs the commands, checks the result. I spend most of my working day in it.

There are three pieces to how I run it on my laptop: omp itself, Obsidian as its memory, and omp-lb to keep an eye on it. Here's each one.

omp: the runtime

omp (oh-my-pi) is a terminal-native agent harness. I call it a harness because the model is only one part; the useful bit is everything wrapped around it. The difference from a chat box is that omp has real tools and uses them:

The point of all that: it closes the loop on its own. It doesn't just propose a change, it makes the change, runs the tests, sees them fail, fixes them, and then tells me what it did and how it checked. I use it all day — features, debugging, refactoring, deploys, reading unfamiliar code — and for ops, research, and writing too.

Obsidian: its memory

An agent is only as good as what it remembers between sessions. I use Obsidian for that. omp ships a note-taking skill that reads and writes an Obsidian vault directly, so the agent's notes and my notes are the same notes — plain Markdown files in one vault on my laptop, not some opaque memory blob I can't see.

Two things I like about this:

The vault lives on my laptop and syncs to my other devices, so what the agent writes shows up wherever I am, and anything I jot down is there for it next time.

omp-lb: seeing what it's doing

Once omp is running real work across multiple accounts and sessions, you lose track of it. Which credential is it using? How much quota is left? What did it actually do in that session an hour ago? omp-lb answers that.

It's a small local control panel for omp — zero dependencies, no build step, a single Node server (node server.mjs) that you point at omp's data directory and open at http://127.0.0.1:8787. It reads omp's own databases (agent.db, plus read-only history.db and models.db) and gives you a browser view over them:

A few details that matter:

How they fit

On the laptop it's a tidy loop. I keep notes in Obsidian; omp reads and writes that same vault while it works in my repos and shell; and omp-lb sits off to the side — read-only on the request path — showing me accounts, quota, and every past session. omp does the work, Obsidian is the memory, and omp-lb is the window into both. None of the three is flashy alone; together they turn "an LLM plus some API keys" into an agent I actually trust to run real work.

0 comments

Sign in with GitHub to comment