Ferrow

A knowledge vault that acts.

Your files. Your models. Every change logged, and undoable with one command.

Or run it entirely on your own machine — install the CLI, no account needed, nothing local locked.

Free on your own machine and your own keys. No waitlist, and nothing local is locked — the only choice is who pays for the AI: an account you already have, or ours. What a subscription adds runs on our servers, not yours: Pricing names all four.

The software is free. Paid plans start at $15 a month and add models billed through us, with that month's credits included — or skip the plan and just top up when you need it.

Never used a terminal on purpose? The five-minute walkthrough starts from nothing and shows every screen Ferrow prints back, so you can tell whether it worked.

A short demonstration repeats here, in four steps. First a folder of three notes — memory/clients.md, inbox/klein-invoice.md and projects/klein/brief.md. Then an agent writes a line into the first of them: "Klein — invoice Wednesdays, net 14." Then a log entry stamps in, reading "wrote 3 files, logged". Then the command ferrow log revert chg_msryhd1g_299941 is typed, the written line is struck out and removed, the log entry greys, and the folder returns to exactly what it was.

Our app

Ferrow never asks for access to your YouTube or Google account. (For Google's reviewers: Ferrow — the product on this page, and the name on our Google consent screen — publishes our own finished videos to FerrowAI, the YouTube channel we own, and reads that same channel's listing and analytics back. It acts on our channel and no other. Details in our privacy policy.)

What you get

A local vault

Plain Markdown in a folder you own. No background sync, no cloud copy, no telemetry — with the relay off, working with your vault makes no network call except to the model you connected.

Any model

Works with any AI you can get a key for — OpenAI, Anthropic (Claude), Google — or one running free on your own computer. Switching is one command.

Full undo

ferrow log lists every change an agent made. ferrow log revert <id> takes any one of them back — and the undo is itself recorded.

Why this one

Your notes stay plain Markdown files in a folder you own. Point any model at them — your API key, or one running on your own computer. Agents read and write that vault under rules you set, and every change they make is logged and can be undone with one command.

  • Any model, and you can change your mind

    Any AI you can get a key for works — OpenAI, Anthropic (Claude), Google's Gemini, OpenRouter, xAI's Grok — and so do the ones that run free on your own computer: Ollama, LM Studio, Jan, llama.cpp, vLLM, GPT4All. ferrow detect finds what is already on your machine. Switching is one command, not a migration.

  • Your files stay in your folder

    The vault is a folder. There is no background sync, no cloud copy and no telemetry, and there is no copy of it on our servers — working with your vault makes no network call except to the model you connected. Keys go into your keychain and travel only to the provider they belong to. Turn the relay on and one note travels when one of your own paired devices asks to read it, sealed so the relay cannot read it — and that is the whole of it. Delete Ferrow tomorrow and your notes are still ordinary files in an ordinary folder.

  • Take it anywhere, end to end

    ferrow hub start makes this machine the one that thinks. Your phone and any browser reach it through a relay that carries sealed blobs it cannot read — the vault stays here, the model runs here, and the relay is a postbox, not a reader.

  • A hard stop on spend

    ferrow spendcap 50 is a stop, not a warning. Ferrow stops before any call that would cross the number you set, and ferrow spendcap status shows the cap, what has been spent, and what is left. On your own keys there is nothing to cap — you already hold the account.

What it does

The vault

A folder you can open in any other program, and delete Ferrow out of.

Memory
remember / recall / forget — the durable facts every agent reads before it starts, so who you are never has to be re-typed. They are Markdown files in your vault: you can read everything it believes about you, and forget deletes the file.
Projects
Each project is its own vault — separate notes, memory, skills and history. ferrow project switch and every command follows it. Your personal memory is read by all of them.
A window
ferrow ui opens the same vault in your browser, bound to 127.0.0.1 — your machine and only your machine.

Agents, as contracts

A skill states what it may touch before it runs, and the executor holds it to that. This is the part a prompt cannot talk its way around.

The contract
A skill is one folder with a SKILL.md. Its frontmatter states which paths it may touch, whether it may write, whether it needs the shell or the network. The executor enforces that frontmatter — a skill that never declared write access cannot write, however it is prompted. ferrow skills lists them, valid and broken.
Signed, or refused
ferrow skill sign and ferrow skill verify check a skill byte for byte. Anything that did not come off your own disk runs only if a key you named with ferrow skill trust signed it, and editing the contract breaks the signature. Deny by default.
While you are away
ferrow schedule add runs skills on a cadence on this machine, while ferrow hub start is up — the hub is the timer, and it checks every minute for anything due. Nothing running means nothing fires. On a Managed plan, --hosted runs that schedule on Ferrow so it keeps going with your computer off — model only, no vault access, and results come home through the changelog.

Reach

What an agent can touch beyond the folder, and the grant it needs each time.

MCP, inbound
MCP is the open standard agents use to reach outside tools. ferrow mcp add registers a server this vault may reach, and ferrow mcp tools lists what it offers. Configuring one grants nothing: a skill reaches a tool only if its SKILL.md declares that exact server and tool.
A browser of its own
ferrow browser install gives agents a headless browser — one with no window that it drives for you — with its own profile: never your Chrome and never your logged-in sessions. A skill drives a page only if it declared the domains and whether it may interact. Watch a live session from the Browser station in ferrow ui.
Your other devices
ferrow hub start makes this machine the one that thinks; ferrow hub pair is a one-time code. The relay carries sealed blobs it cannot read — a postbox, not a reader.

Control

Three ways to find out what happened, and to make it stop.

Undo
ferrow log lists every change an agent made, newest first. ferrow log revert <id> undoes any one of them — and the revert is itself recorded.
Approvals
ferrow approvals is what is waiting on your decision; ferrow approve <id> answers it. Answering happens on this machine and never over the relay.
The kill switch
ferrow halt refuses to start anything new — schedules, workflows, skill runs, MCP servers, the hub, chat requests. Work already running finishes. The switch is a file, so it survives a reboot and a crash, and ferrow resume says what became allowed again.

Start

One free program first: Node.

Node is the program Ferrow runs on — free, from nodejs.org (the button marked LTS), version 20 or newer — and it is the only requirement. There is no account to create to use Ferrow on your own machine, and nothing is uploaded. An optional account — an email and a password — exists only for billing and to find your own devices from a browser. Connect a model, make the vault, write something down.

npm install -g @ferrow/ferrow
ferrow detect
ferrow vault init
ferrow note inbox/today.md "the thing I just learned"

ferrow detect looks for a model already running on this machine — Ollama, LM Studio, Jan, llama.cpp, vLLM or GPT4All. If it answers “No local model runtimes detected”, nothing is broken: it means there is none running, and the next line is ferrow connect openai, which asks for a provider key and tells you where to get one. The name is scoped — @ferrow/ferrow — but the command it installs is just ferrow. All the ways in, including a checkable tarball — a downloadable archive — and the macOS, Windows and Linux builds, each with a sha256 (a checksum to confirm the download arrived intact).

Never used a terminal on purpose? The five-minute walkthrough shows every screen Ferrow prints back, so you can tell whether it worked.

Where it runs

Honestly, as of today.

Ferrow is pre-1.0. This list is the whole truth about what exists; if something is not on it, assume it does not exist yet.

Terminal
Working. This is the product. Everything above runs here.
Local browser UI
Working. ferrow ui — the vault and the change log as a page, with revert behind every row.
Browser client + relay
Working. Pair a browser with your hub and reach your own machine from someone else's, over the encrypted relay.
Desktop — macOS, Windows, Linux
Pre-1.0, and signed on one of the three. The macOS disk images are Developer ID signed and notarized by Apple, so they open with no warning to click through. The Windows installer carries no signature yet and SmartScreen will warn about it; the Linux .deb and AppImage are unsigned, as Linux packages usually are. The download page lists every file with its sha256.
Android
Builds, unsigned beta. The AAB comes out of CI; it is not signed for the Play Store yet.
iOS
TestFlight soon. The build pipeline exists; the app has not gone out to testers yet.

What leaves

The short list of things that go anywhere.

  • Your prompt, to the model provider you chose. That is the whole point of connecting one.

  • A subscription id and an email, to Stripe. Billing is the one hosted piece. That path never sees a vault.

  • Sealed blobs, to the relay — only if you turn it on. It carries encrypted payloads between your own devices. It does not carry your vault, your notes, or your keys, and it cannot read what it carries.

  • An email and a password hash, to Ferrow's billing service — only if you create an account. The account exists for billing and for finding your own devices. It never sees a vault or a key.

Not on the list

Your notes. Your API keys. Any analytics. Ferrow has no account you must create to use it locally, and no server that holds your vault.

Our channel

What the Ferrow app does on YouTube.

Ferrow is the knowledge vault above — a program you install, holding a folder of your own Markdown files. Ferrow also publishes short videos about itself, and one small piece of our tooling handles that: it uploads our own finished videos to FerrowAI, the YouTube channel we own, and reads that same channel's own listing and figures back. That is the entire purpose of the Google application named Ferrow.

It acts on our channel and no other. Ferrow has no sign-in with Google, asks no visitor or customer for access to their YouTube account, and reads, stores and shares nobody else's YouTube data. Surface 6 of the privacy policy names the three permissions it requests, what is kept, the YouTube and Google terms it runs under, and how access is revoked.