LinuxToaster · toast(1) jam(1) ito(1) squawk(1)

AI Orchestration

Unix already knows how to compose, schedule, supervise and record processes. AI adds reasoning as a processe. LinuxToaster is AI orchestration for Unix. No framework. No graph to declare. No YAML. Deterministic software where you can. Non deterministing reasoning where you must. Human readable.

curl -fsSL linuxtoaster.com/install | sh

You can talk to toast in the browser (or play robots, asteroids, or 2048, we won't tell). Press ` (the backtick, left of the 1 key) and a terminal opens. Type help to see commands. Demo shows the six levels of using AI, using toast, top to bottom — any key pauses it.

Unix pipes make AI composable.

Every AI product wants to be the operating system. There already is one — on every server, and on every MacBook. It only needed something new to run.

text in · understanding out
$ cat error.log | toast "why did production crash?"
$ git diff | toast "review this patch"
$ ps aux | toast "anything suspicious?"
$ journalctl | toast "summarize the outage"
$ find . -name '*.c' | toast "which files deserve attention?"

One model is useful. Several models working together are better.

one input · three specialists
$ for p in Security Performance Style; do
      $p pull-request.md "review this"
  done | toast integrate
security     the new endpoint trusts X-Forwarded-For for rate limiting.
performance  N+1 on session.tokens — 200 queries on a warm cache.
style        three helpers parse the same date three ways.

Ship after the header trust is fixed. The other two can follow.

One input. Three specialists. One answer. No framework. No graph to declare. Just pipes.

The specialists are symlinks — toast --add Security and so on. Hand toast a filename and it reads it; the remaining words are the prompt. The loop's stdout is the integrator's stdin. No redirects, no bashisms: this runs in dash. And these are three different training distributions, not three runs of the same weights — personas span providers, so the reviewers do not share blind spots. That is the reliability argument, and it is why the integrator has anything to integrate.

Loops let AI iterate.

Good work is rarely done in one pass. Agent frameworks added cycles to their graphs for exactly this. A cycle is a while loop with a diagram around it.

jam · runs until the work is finished
🍞 while toast server.c "improve until production ready"

[toast] pass 1 · bounds check on parse_header · build ok · tests ok
[toast] pass 2 · replaced strcpy · build ok · tests ok
    ... 14 more ...
DONE

Each iteration:

Eventually it prints DONE and exits nonzero. jam stops. Not because the loop counted to ten. Because the work is finished.

That is jam, not shwhile <command> takes no do and no done, and repeats until the command exits nonzero. 20 while <command> caps it at twenty passes if you would rather not find out the hard way.

Files are memory.

You don't need another database.

.persona your own persona .tools what it may run .chat what was said .crumbs what it learned

Everything is text. Version it. Search it. Review it. Delete it. The model forgets. Your filesystem doesn't.

Text is not the point. It is the cheapest thing that keeps the point, which is that you can look. A vector store, a context window, a state blob inside a runtime — each of those is memory you cannot read, and memory you cannot read is memory you cannot correct.

Unix was already multi-agent.

Unix is what evolved when people had to share one computer. Isolated processes. Permissions. Pipes. A filesystem they all could see. The agents were people. Nothing about it had to change for AI.

A company is made of people who are wrong quite often. It gets dependable work out of them anyway. Review. A record of why. The ability to undo. None of that requires anyone to be reliable.

Those same three things are the whole design here. Several models that fail in different places, so an error has to survive more than one of them. ito recording why a change was made, not just what changed. And undo, which is the only reason letting a pass run unattended is a sane thing to do. Reliability is a property of the arrangement, not of the parts — which is exactly how it has always worked with people.

It also declined to say what data means. stdin, stdout, and one byte of exit status. No types. No schema. No registry of what a program is. Every system since has added structure. Every structure became a wall.

That refusal is why something invented fifty-five years later needed no kernel change: a model emits text, and text was already the interface. The exit byte is why a non-deterministic process can sit inside deterministic control flow — toast prints DONE and exits nonzero, jam stops. Frameworks rebuild that as a conditional edge because they gave up the process boundary that handed it to them. And files as memory is not our idea either; it is inherited, because Unix made everything a path.

Unix already solved orchestration.

No orchestration framework required. The jam shell orchestrates. Pipes branch. Exit codes choose. Loops retry. Files remember. cron schedules. ssh distributes. Intelligent processes reason.

There is one habit underneath all of that, and it is the reason any of it works: Unix stores information once and derives the rest. A pipe moves state rather than copying it. An exit code is one byte the parent was already waiting for, not a status object somebody maintains. A process tree is not kept by anyone — it is what forking leaves behind. So none of the lines above is a feature we added, and the rule that falls out of them is the one worth keeping: do not hand-maintain information the runtime already produces. Policy still has to be written — the allowlist, the stopping condition, what counts as done. Those are yours, in a file you can read. Everything else was already on the machine.

Tooling.

Small C binaries. Each does one thing, and they compose with everything you already run.

toast reasoning ito memory jam control squawk conversation

toast — reasoning

Turn text into understanding. Pipe anything in; project context rides along from the nearest .crumbs up the tree.

cat auth.c | toast "audit this for security bugs" Learn more →

ito — memory

Version control for humans and AI. Not commits — moments: every snapshot records why, and you can search by it. Threads instead of branches, immutable releases, sync over rsync. One C file.

ito log "refactored auth to use JWT" ito history | toast "what was the focus last week" Learn more →

squawk — humans and processes in one room

One bus, three on-ramps: a unix socket locally, SSH from anywhere, multicast on the LAN. It reads whether stdin and stdout are terminals and picks chat, send or receive without being told. squawk bot toast puts a model in the room as another participant; squawkd hash-chains every line it carries.

squawk bot toast "be terse" echo "deploy finished" | squawk Learn more →

jam — a shell AI can write

Models write shell badly: nested quotes, stray expansion, a $ where you wanted a dollar sign. jam has no expansion and no quoting rules — what you type is what runs. Loops that need no do or done, RPN math, and a UDP basket for multi-machine work come with it.

20 while toast server.c "keep improving" Learn more →
personas · the name is the selector
$ toast --balance
1240 credits - dirk@example.com - solo
Available models:
  Dev
  Paranoid
  Security

$ toast --add Paranoid
Added Paranoid: /usr/local/bin/Paranoid -> /usr/local/bin/toast

$ Paranoid auth.py "what breaks in production?"
The refresh check races. Two requests inside the 30 second window
both mint a token; the second overwrites the first and the client
retries with one that no longer validates.

Two kinds, and the name you type picks one. A symlink like Paranoid uses the server-side persona: hosted, tuned, nothing for you to write — --balance lists the ones your account can reach, --add drops the symlink, --list shows the ones you have. Plain toast uses the local one: whatever is in your .persona file. Only ever one of them is read, so they cannot fight, and .crumbs rides along either way. A symlink is pinned to our provider, so -p and -m are accepted only as plain toasttoast -m Paranoid does the same job without a symlink. A persona is a name for a problem, not a prompt: behind it is whatever solves that problem best right now — a model from any lab, one we trained, or a combination — and it changes when something better appears. Your pipeline does not. Because they span providers, several personas reviewing one file is several training distributions, not several runs of the same weights. Token costs vary between them.

They compose.

Small commands become systems.

toast toast | toast for p in Sec Perf Style; do $p pr.md; done | toast while toast ... cron ssh cluster

Graphs are just control flow you can serialize. Learn a framework and you learn nouns that live in one repo. You keep learning Unix.

How far up this ladder you should climb is a different question — one tool, six levels: the six levels of using AI.

Unix is learnable one command at a time.

A framework wants the whole ontology before you can do anything. Unix wants one command.

ls list cat read mv move grep find toast ask

Each is useful the day you learn it. None is invalidated by the next. There is no version 2 that deletes what you know.

It is discoverable: man, --help, a filesystem you can read. You learn it while using it, not before. And every model already knows it.

Every model was trained on fifty years of man pages, shell scripts and arguments about them. Ask one for a pipeline and you get a pipeline that runs. Ask it for a framework's API — shipped eighteen months ago, thin on the ground — and you get methods that never existed. Unix is the highest-confidence knowledge in the machine, which is why the machine can work in it without being taught.

And toast will teach you the rest. Ask what a flag does, ask why a pipeline broke, ask for the loop whose syntax you can never remember. The tutor lives in the pipe, so you learn the system while you are using it — at whichever of the six levels you happen to be working on.

The architecture is boring.

orchestration framework state machine workflow engine YAML Python SDK vector database cloud requirement hidden memory magic

None of which is elegant. Signals are bad, terminal handling is worse, and sh quoting is most of the reason jam exists. But it is documented: someone hit this in 2009 and wrote it down. Stable and documented is a different property from well designed, and it is the rarer one.

Local and cloud, in one pipeline.

Apple Intelligence OpenAI Anthropic Gemini Cerebras Ollama MLX toasted peers
one pipeline, two providers
$ toasted
$ cat auth.py | toast "draft a fix" | toast -p openai "what did that miss?"
The patch takes a lock, but the old token still validates for 30
seconds after rotation. Gate on the token version, not the clock.

The first stage went local on its own, because toasted was running. The second saw four lines, cost a fraction of a cent, and was trained by someone else — which is why it could see what the first one missed. Neither one knows the other exists.

toast prefers whatever is already running — appled, then toasted, then us — and -p overrides it. The default is the cheapest thing on the machine, and you opt into spending one stage at a time. Most steps in a workflow do not need a frontier model: filtering, extracting, summarising, first drafts. Run those on the laptop. Ours sits close to the frontier and runs on Cerebras, so take it for the steps where waiting is the problem — it answers faster than you can read the prompt back. And when latency is not what you are buying, BYOK reaches any model you already pay for, the biggest ones included. A framework needs a provider abstraction because every step runs inside one process. A pipeline does not — each stage is its own process, and the pipe is the only interface they share.

Switch providers without changing your workflow. Interchangeable at the interface. Not interchangeable in what they get wrong. That second part is the whole reason to cross them.

A model reviewing its own output shares its own blind spots — same corpus, same tuning, same failure modes — so it agrees with itself, confidently. Two training distributions do not fail in the same places, and an error that survives both is rarer than one that survives either. That is what makes the second stage of a pipeline worth running at all. -p and -m are not convenience flags; they are the reliability primitive, and BYOK exists so you can reach a model that is genuinely not ours.

BYOK · no credits OpenAI, Anthropic, Google, Mistral, Groq, Cerebras, Perplexity, xAI, OpenRouter, Together

Local · no credits appled, toasted, Ollama, MLX, LM Studio, llama.cpp, vLLM, LocalAI, Jan

Peers · credits other people's idle Apple Silicon, priced in credits — toast -p peers

Several machines beat one.

One box holds one model. A room holds as many as you own.

one bus · three machines
# once per machine
$ squawkd &

# on the Mini
$ USER=Paranoid squawk bot Paranoid
# on the Studio
$ USER=Security squawk bot Security

# from the laptop, same LAN
$ squawk
dirk> auth.py rotates tokens inside a 30 second window. anything wrong?
Paranoid> two requests in that window both mint a token. the second wins,
Paranoid> and the first client retries with one that no longer validates.
Security> that window is also long enough to replay a stolen token once.

No broker. No service discovery. No registry. A multicast group and a socket.

squawkd joins 239.255.76.84 on the LAN, so the machines find each other without being told about each other. Off the LAN, squawk tunnels over ssh — nothing listens on an inbound port. Each box runs whatever model it can hold, so a room of Minis answers with several at once. That is the opposite of the Thunderbolt cluster under Business: that one makes a single model larger than any one box, this one puts many models in the same conversation.

ito gives you undo.

Every command. Every improvement. Every reason.

ito · intent, not commits
$ ito log "hardened parse_header — unbounded copy on malformed input"
logged 9c4f1a2  hardened parse_header — unbounded copy on malformed input
✓ saved — you can always get back to this

# AUTHOR names who did it — a person, a persona, or a cron job
$ ito history
4a91c07  2026-07-21T09:14:22Z  (dirk)
         switched sessions to JWT so the mobile client can go offline

e2b8f30  2026-07-24T16:02:41Z  (Editor)
         cut chapter 4 — the ledger reveal lands better in 7

9c4f1a2  2026-07-27T11:38:05Z  (dirk)
         hardened parse_header — unbounded copy on malformed input

$ ito undo
undone  9c4f1a2  "hardened parse_header — unbounded copy on malformed input"
✓ your files are back — nothing is ever deleted
back to e2b8f30  "cut chapter 4 — the ledger reveal lands better in 7"

$ ito search jwt
4a91c07  2026-07-21T09:14:22Z  (dirk)
         switched sessions to JWT so the mobile client can go offline

$ ito history | toast "what did we actually change this week"

Read what happened. Search by why, not what. Restore any moment. Machines should be able to explain themselves.

The future is composable.

Not one giant model. Lots of small programs.

Reasoning Reviewing Planning Critiquing Testing Writing Running

Each does one thing well. Exactly like Unix.

Install.

curl -fsSL linuxtoaster.com/install | sh

One account, $20 a month. Apple Intelligence included. Bring your own models. Run locally. Run in the cloud. Compose both.

Small C binaries for humans and AI alike, built for the people who keep the lights on. The installer sets up appled — Apple Intelligence as your inference provider, on-device and without an API key. An account is required — Solo is $20/mo and covers everything here; local and BYOK inference run under it without spending credits. We see anonymized usage only, never prompts.

Also in the box.

Levels of ambition beyond one machine: local inference with zero cost per token, and bots that answer for you. That's the Member plan.

toasted — local inference, zero cost

From-scratch daemon for Apple Silicon. Qwen3-Next-Coder at ~100 tok/s, 0.6s to first word, C++ against MLX. Run toasted and it starts itself, the same way appled does; toast finds the socket and uses it. Code never leaves the machine.

toasted cat auth.py | Security "audit this" Learn more →

email & imessage — bots in one line

Point it at a persona for the voice, or a .persona file for the shape. One line to deploy, and there's a Telegram bridge: toast --telegram.

email bot toast "reply in a friendly way" imessage bot toast "answer as executive assistant" Learn more →

Pricing.

Unix is deterministic. AI is not. The hard part is the boundary work of making them compose — that's what a membership funds. There is no orchestration layer to operate and no framework to upgrade, which makes this the least staff-hungry way we know to run AI in production.

Pipes & loops

Solo

$20/mo
  • $20 buys inference — run out, top off anytime
  • Close to the frontier, on Cerebras — fast enough that nothing streams
  • Personas span providers — one balance, not ten API keys
  • BYOK and local inference spend no credits
The whole stack

Member

$49/mo
  • Everything in Solo
  • toasted — ~100 tok/s on M4, zero cost per token
  • jam, ito, email, imessage + agent networking
  • Priority support
Always on

Hosted

$99/mo
  • Everything in Member
  • A jam shell on our metal, over SSH from anywhere
  • Your web server, backups and mail live there — deterministic scripts and not
  • Or colocate your own Mac Mini and we rack it
Talk to us
Side hustle — one pool, two doors. toast --sidehustle puts your idle Apple Silicon on the network and pays you for the tokens it serves. toast -p peers buys the other way, when your machine is busy or too small to hold the model. Your Mini serves the pool while you sleep and buys from it when you need more than it can do. With enough demand it stops being a cost and starts being an asset — the only line on this page that pays you. How it works
Seminar$2995 for up to eight people. A forward-deployed engineer takes your team through the six levels, runs pipes and loops against your own repositories, sets up .persona and .tools for the work you actually do, and is blunt about what to automate and what to keep your hands on. Held in San Mateo, or at your office with travel added. Book one
Business — teams and enterprise. Site licence, priority support, consulting and FDE. We also ship hardware: Mac minis and Mac Studios preconfigured with toasted and toastd, clustered over Thunderbolt so a model can be larger than the memory in any one box — inference that never leaves your network. And what your team is missing goes on the roadmap: you tell us, we implement it. Business →

FAQ.

How does it work?

Lightweight toast talks to a local toastd, which keeps an HTTP/2 connection pool to linuxtoaster.com. Written in C to minimize latency. With BYOK, toastd connects directly to your provider — your traffic never touches our servers.

What's appled?

On MacBooks, the installer downloads appled — a local inference provider using Apple Intelligence. No API key and no cost per token — prompts never leave your machine, and running it spends none of your credits. It still needs an account: toast brings up a Stripe page for Solo at $20/mo the first time you run it.

What's BYOK?

Got a PROVIDER_API_KEY set for Anthropic, Cerebras, Google Gemini, Groq, OpenAI, OpenRouter, Together, Mistral, Perplexity, or xAI? Use toast -p provider. Zero config, zero cost from us.

Can I run it fully offline?

Yes — appled, toasted, Ollama, MLX, LM Studio, KoboldCpp, llama.cpp, vLLM, LocalAI, or Jan. No internet, no API keys, full privacy.

How does a loop know when to stop?

toast exits 1 when the model prints DONE, so while toast ... ends when the work is finished, not when a counter runs out. Tool calls run through jam, five rounds max, against a .tools allowlist you write yourself.

What's jam?

A shell rebuilt for AI. No quoting, no expansion, no $ syntax — strings just work; unrecognized input goes to the AI. Includes set/get, while/times loops, RPN math, and a UDP multicast basket for multi-machine coordination.

What's toasted?

A from-scratch local inference daemon for Apple Silicon (Member tier). Loads Qwen3-Next-Coder — a 30B coding model — via C++ against Apple's MLX API. ~100 tok/s generation, ~400 tok/s prefill, 0.6s to first token. 128 GB supports 8/6/4-bit quantization, 64 GB supports 4-bit.

Where's my data stored?

Locally. Context in .crumbs, conversations in .chat, tool permissions in .tools. Version them, grep them, delete them.

Can I keep an audit trail?

Start the daemon as toastd -l and it logs locally. The log lives on your machine and never comes to us. Paired with a local provider or your own API key — where the traffic never touches our servers either — that makes toastd usable as an inference gateway for a practice that has to answer for its records: a dental office, a law firm, anyone whose prompts are privileged.

Do you train teams?

Yes. A seminar is $2995 for up to eight people, run by a forward-deployed engineer — in San Mateo, or at your office with travel added. Your repositories, your workflows, and an honest answer about which of the six levels each of your tasks belongs on. Book one.

Can you ship me a preconfigured Mac mini or Mac Studio cluster?

Yes — it is part of the Business offering. Racked, clustered over Thunderbolt, and set up before it leaves us. Talk to us about sizing.

What is a side hustle?

toast --sidehustle opens a reverse tunnel from your machine to linuxtoaster.com and offers your idle toasted capacity to the pool. You are paid for the tokens you serve. toast -p peers is the other side of the same trade — it spends credits on somebody else's machine when yours is busy or too small for the model. So the pool has a supply side and a demand side, and most people are on both. toast --nosidehustle closes the tunnel. Apple Silicon with enough memory to hold the model; nothing listens on an inbound port, so no firewall changes.

What is in the Business offering?

Teams and enterprise. A site licence, priority support, consulting and FDE options, and on-premise hardware if you need inference inside your own network. Roadmap input comes with it — tell us what your team is missing and we build it, which tends to make the tools simpler for everyone else too. Talk to us.

macOS? Windows?

The binaries are macOS and Linux. On Windows the simplest path is SSH: a Hosted shell puts toast, jam and ito on our metal, reachable from PowerShell, Windows Terminal or anything else that speaks ssh. WSL is Linux, so the installer works there too. Or press ` on this page and talk to toast in the browser.

How does billing work?

Everything runs under an account, and the account is $20/mo. That includes the tools, and credits for inference we host. Inference is charged by use, and unused credits roll over and expire a year after they were bought. Local providers and your own API keys never reach our servers, so they spend no credits at all — they are part of what the account covers, not a separate bill. We collect anonymized usage (model, token count) — never your prompts. Seminars, consulting and FDE work are priced separately.

Keep me in the loop.

Product updates, new features, the occasional blog post. No spam.

Unsubscribe anytime.

Launchpadly Startup Directory Featured on tools.cafe