Oatmilk

The company operating system that works offline.

Books, spend, contractors and contracts in one place. Use it from your terminal or your browser, online or entirely offline.

Get started
curl -fsSL https://getoatmilk.com/install.sh | sh

A working picture of Oatmilk in the terminal and in the browser, on one computer with the Wi-Fi off. They sit side by side: drag the line between them, or focus it and use the arrow keys, to see more of either. Answer a question in one and the other shows it; Ask AI keeps one chat for both.

oatmilk.localhostOffline
Good morning, Maya3 things need you.
  • Was Corner Café a client meal?Oct 2 · −$18.25
  • Approve Lina Park's hours32 hours this week · $2,560.00
  • Sign the NDA with Northwind2 pages · sent by Sam
This month
Money in
$12,480
Money out
$8,214
Receipts matched
41/43
◆ oatmilk │ Birch Labs · admin │ Home
Good morning, Maya.
3 things need you at Birch Labs.
NEEDS YOU
Oct 2 · −$18.25 · 58% sure it's Meals, under your 85% bar
32 hours this week · $2,560.00
2 pages · sent by Sam · you sign in the browser
TODAY
✓ 12 charges sorted on their own · 1 asked
⠹ Reading 2 receipts from email…
✓ Lina's contract renews Dec 1 · reminder set
›

Everything about your company, in one context.

Charges, receipts, contracts and people stay connected, so your terminal, your browser, Ask AI and your agents all see the same books.

Start in your terminal.

One line installs it. Then sign in, make an account, or keep everything on this computer with no account at all.

Your computer or our cloud. Same Oatmilk.

Keep everything on this computer, or sign in to Oatmilk Cloud and skip the setup. Move between them any time.

You decide what goes online.

Each part runs on this computer, in the cloud, or not at all. All local, Oatmilk keeps working with the Wi-Fi off.

Your AI, on your machine.

Ask AI, the classifier and document reading run on Ollama or LM Studio, and one command checks your models on Oatmilk's own tasks.

Fast when it's sure. Asks when it isn't.

Every charge runs through rules, memory, its receipt and Jev, a decision model that weighs every category in about a tenth of a second.

for most of Jev's decisions, by TypeSafe's own measure
~100 ms
Fig. 1 · TypeSafe
per decision for Nimble 9B, a Jev-style model, on Ollama and an M5 Max
91 ms
Fig. 2 · Ollama
how sure it has to be before it sorts a charge without asking you
85%
Fig. 3

Contracts, sent from the terminal.

Ask for an agreement, approve it, and see it come back signed. On your own server, one command connects Resend for email.

Your agents work from the same books.

Claude Code, Codex and Cursor get your books, people and contracts over MCP, with the same permissions you have.

https://app.getoatmilk.com/api/mcp
Connect an AI app

Someone asks their AI app to add two receipts, and Oatmilk's card opens in the chat and matches them.

figma-october.pdfaws-september.pdfAdd these receipts to Oatmilk

Everything else your back office does.

Receipts matched from your inbox, invoices, contractors' hours, compliance with sources and year-end tax.

Every charge gets a category.

Bookkeeping

Transactions get their categories one by one, and Oatmilk asks about the one it isn't sure of.

OpsHome3InboxChecklist
FinanceTransactionsInvoicesTax
LegalAgreements
PeopleContractors
Transactions
AllNeeds youMatched
−$45.00Sorting
+$1,240.00Sorting
−$18.25Sorting
−$800.00Sorting
−$212.40Sorting
−$23.40Sorting

Build on Oatmilk.

A REST API, an MCP server and webhooks for what people do in Oatmilk, with docs your agents can read.

Run your company from anywhere. Even offline.

Start in the browser or the terminal, on Oatmilk Cloud or your own computer.

Get started