Sno Station
One person. A whole engineering team of AI agents.
Sno Station is the workstation for your AI coding agents.
Claude Code, Codex and Cursor each run in their own harness. Sno Station is where those harnesses sit side by side and work as one team. Not another agent, not another model: it runs the ones you already use.
Tell your AI agent “install sno.ai from GitHub”.

Work → Review → Improve
The skills rewrite themselves.
You sign off.
Claude Code and Codex stay the same. The workplace they share does not.

Work
Sessions become experience.
Review
Find the mistakes that repeat.
Propose
A change to a skill file.
You approve
Nothing changes without that accept.
Next reply
Accepted lessons apply in Claude Code and Codex.
What the follow-up actually showed. Two changed skills had no failures in one and two later sessions; a third had not been used yet. This is a small observation, not a guarantee. You decide which proposals to accept.
See how it improvesIt learns from its own work
Each night Self Learning reads the day's sessions from your agents and proposes changes to their own skills. Ask your agent what was proposed, then run sno rem-reflect accept <id> for each proposal you want. Nothing changes without that acceptance.
In Claude Code and Codex, an accepted lesson applies from the next reply. Not the next session. The next reply.
From our own agent sessions
Self Learning reads our own agent sessions, finds the mistakes that repeat, and proposes changes to the agents' own skill files.
A human accepts or rejects; nothing changes without that accept.
What this account establishes
It describes the review-and-proposal workflow and its human approval boundary. It does not document a specific accepted change or a measured result in the next job.
Product
Sno Station
The workstation for your AI coding agents.
Sno Station brings the AI coding agents you already use into one workstation on your own computer. Claude Code, Codex and Cursor keep their own harnesses, while shared memory, direct messages and collaboration skills let them work as a team.
It runs on your laptop. No daemon, no server, no cloud required. One shared memory they both read and write. A mailbox they use to wake each other up. A set of skills they follow, and rewrite when they learn something. Apache-2.0, edge to edge.
One agent builds, another reviews, and they settle the findings before the result reaches you. Tell the working agent to use rotate-agent so another can pick up the task when its usage limit approaches. Accept a Self Learning proposal to turn a correction into a rule in its skills.
- Apache-2.0
- assembled in public
- runs on your laptop, no daemon
- Claude Code · Codex · Cursor · Hermes Agent · OpenClaw
Four things inside:
Skills for the squad.
Skills give agents instructions for review, handover and delegation. In Claude Code or Codex, say peer-review this for a fresh review, or write a charter for this and then /deliver to give a task explicit checks against real results.
Shared memory.
Claude Code, Codex, Cursor, Hermes Agent and OpenClaw share a memory store encrypted on your machine. A newer fact can replace an outdated one. Setup connects the agents; the mode you choose determines how memory is processed and what leaves the machine.
Agent communication.
Sno Reach delivers tasks and review requests through local files on Linux and macOS. sno reach call sends an instruction and waits for a reply. With Claude Code and Codex, messages wait safely while you type or while context compacts.
What it is
Sno Station is the workstation for your AI coding agents. The agents you already use keep their own harnesses and work together through shared memory, direct messages and skills. Start a builder and reviewer with sno reach pair, enable handover with use rotate-agent, and accept the Self Learning changes you want. The models themselves do not change.
Two heads are better than one
Dual Brain
The other one sees what the first one can't.
Run sno reach pair "Fix the login redirect" to start a builder and a reviewer in tmux windows you can open. They work through the findings together. This has run with real Claude Code and Codex agents. With only one agent signed in, it uses two separate sessions and tells you the review stayed in the same family.
When one runs out, the other clocks in.
Tell the working agent use rotate-agent before a long run. Before its quota runs out, it saves unfinished work and the exact commit for another agent with available quota. The published run records a Codex-to-Claude handover triggered at 2%; enabling the command is what starts the watch.
Hand the work off tonight. Come back to results.
Before we built Sno Station, an agent waited seven hours on a question it could answer itself. Another handed us fifteen small questions that took thirty minutes to resolve. A third could not wake another agent at night, so both waited until morning. We built around one rule: the work does not stop because one agent did.
It delivers. You ship.
Tell Claude Code /cos, or Codex $cos. That agent opens a lead for each project and brings you the decisions that need your judgment. The leads delegate the work and check results against the task. Publication remains your decision.
Install Sno by asking
open the AI agent you already use and say:
install sno.ai from GitHubPrefer the terminal? Run:
curl -fsSL https://sno.ai/install | shLinux, macOS and WSL2. Agent installation starts onboarding automatically. Only after a terminal install, say "Sno onboard" in Claude Code, Codex, Cursor, Hermes Agent or OpenClaw.
How it works
Connect once.
Then keep working the way you already do.
Sno Station sits under the agents you already run. You don't switch tools. The squad is there when you need it.
From the published record · 2026-09-18
A handoff, in the log.
The quota watch waits at 3%, then triggers a handoff from Codex to Claude at 2%.
Terminal · key log lines
2026-09-18T08:29:07Z [rotation-mem-claude] tick=21 ok HOLD from=codex remaining=3% threshold=2%
2026-09-18T08:34:17Z [rotation-mem-claude] tick=22 ok ROTATE from=codex to=claude remaining=2% reset_in=374035s
2026-09-18T08:34:41Z [rotation-mem-claude] tick=22 STOPPED: signalled
Three lines from the original terminal record. Repeated HOLD entries are omitted here. This records the handoff trigger, not completion of the next agent's work.
Work as before.
When one runs out, the other clocks in.
Tell the working agent use rotate-agent before its quota runs out. It writes a handover with unfinished work and the exact commit, then another agent continues. The published handover ran from Codex to Claude Code; the receiving agent needs available quota.
The other one sees what the first one can't.
Tell Claude Code or Codex peer-review this to get a reviewer in a fresh session that has not seen the conversation. When two different agents are available, the other one reviews. A review does not always find a problem.
One command starts the pair.
Run sno reach pair "Fix the login redirect". One agent builds, the other challenges it, and both work in tmux windows you can open. This has been run with Claude Code and Codex, both as a mixed pair and as two sessions of one agent.
Get started
Onboarding starts automatically when your agent installs Sno. Only after a terminal install, say Sno onboard in Claude Code, Codex, Cursor, Hermes Agent or OpenClaw. Your agent uses the sno CLI to connect memory, communication and skills. It asks two short questions: how Sno should work, then whether to link this computer to a free account.
What you get:
- An interrupted task returns in the same conversation or a new one built from its saved brief. You are told whether it was resumed, rebuilt or lost. This runs on Claude Code and Codex.
- When Claude Code or Codex compacts its context, the saved brief carries the task, progress and earlier failures forward.
- The status line in Claude Code and Cursor tells you who needs you. sno squad shows the team together: waiting for you, working or finished.
- Accepted lessons take effect on the next reply in Claude Code and Codex. You can read and edit the skills that carry them.
What you get, and the one line that gets it
| What you get | What to run or tell your agent |
|---|---|
| A usage limit is not a stop sign. Save the unfinished work and exact commit for the next agent. | use rotate-agent |
| The author does not get the last word. Start a builder and reviewer, or ask for a fresh review. | sno reach pair "Fix the login redirect" / peer-review this |
| "Done" counts for nothing. Give the task success checks that must be answered by a real run. | write a charter for this → /deliver |
| One page when you come back: what finished, what is stuck and what needs your answer. | sno away-brief run |
| Interrupted work returns from its saved brief. Claude Code and Codex report resumed, rebuilt or lost. | On after installation; nothing to run. |
| The agents share one memory. A newer fact retires the one it replaces. | On after installation; nothing to run. |
Squad
We talk to one agent. It runs the rest.
In Claude Code, say /cos. In Codex, say $cos.
That agent becomes your chief of staff, the one you talk to. It opens a lead agent for each project; the leads delegate the work and bring back only the decisions that need you.
After a night shift, it checks the approvals the project leads gave themselves. A repeated management mistake can become a rule for the team. Sno Station installs these skills, and you can read their instructions.
Stop watching terminals.
The install sets up a status line in Claude Code and Cursor. It tells you when someone needs your answer or permission. Run sno squad for a full-screen view of who needs you, who is working and who has finished.
Stop carrying messages.
Agents send tasks and review requests directly. In the tested Claude Code and Codex journeys, the full text reaches the recipient's inbox first and waits while you type or while the agent compacts its context. Your unfinished draft stays in place.
A closed window is not the end.
On Claude Code and Codex, interrupted work can continue in the original conversation or be rebuilt from a saved brief. Sno Station tells you which happened: resumed, rebuilt or lost. Compaction also preserves what the agent was doing and what already failed.
One page when you come back.
Run sno away-brief run to see what got done, what is stuck and what needs your answer. Use it alongside the Claude Code and Codex workflows to decide what needs your attention next.
Example: the squad in one screen
❄ 2 need you · claude: approveSno Station · squad · 09:15 · 2 need you · 2 working · 2 finished
Needs you (2)
> claude web-app approve a permission · Fix the login redirect loop … 1m
codex api asked a question · Migrate the billing tables to th… 5m
Working (2)
claude docs-site Rewrite the quick-start page for the 2.0 install 12s
codex api Review the rate limiter change from the web-app age… 40s
Finished (2)
cursor infra finished · result unseen · Rotate the staging certi… 25m
claude web-app finished · Bump the UI kit to 4.2 2hShared memory connects Claude Code, Codex, Cursor, Hermes Agent and OpenClaw. Sno Reach runs on Linux and macOS. Cursor command-line integration has been proven on a clean Linux machine; the Cursor app on macOS is still being proven.
What runs today, and where it stops.
Task carry-over and next-reply lessons run on Claude Code and Codex. The status line runs on Claude Code and Cursor. The pair command, interrupted-task recovery and queued messages have been exercised with real Claude Code and Codex agents. Hermes Agent and OpenClaw have not been through these journeys on real installs; OpenClaw appears in sno squad with its state unknown.
More from the same workplace.
What this looks like on our own machine. Assembled in public since 2026-09-18.
In months, the other one has never once said 'looks good.'
We have had Claude Code review Codex’s work and Codex review Claude Code’s on this repository for months. A review does not always find a problem. It keeps finding the ones the author could not see, because an agent reviewing itself brings the same habits it wrote the code with.
Read the READMEI went to bed. It changed shifts.
What happened
During a long build, one agent approached its weekly usage limit. It wrote a handover with completed work, unfinished work and the exact commit, then woke another agent. The new agent started editing before confirming the handover. The first agent paused it, rewrote the brief and handed over again. The second agent continued from the unfinished work while we were asleep.
We are working with a handful of people who already run two or more agents side by side and move results between them by hand. If that is you, open a design partner issue and say what you are running.
Open a design partner issueSecurity
Yours, and it stays yours.
Everything the squad learns lives in one workspace on your laptop.
The full boundary, what it protects against and what it does not, is in docs/security.md.
Report issues to security@sno.ai.
No daemon, no server, no cloud required.
The product is complete without a cloud side. When a cloud side comes, it's optional.
Encrypted from first use.
The memory store is encrypted on your machine with a key that is provisioned once and never leaves it. Sno never receives your database or your key.
Nothing changes rules without you.
Self Learning proposes; a human accepts. Ask your agent what was proposed and run sno rem-reflect accept <id> for the changes you choose. An accepted lesson applies from the next reply in Claude Code and Codex.
Apache-2.0, edge to edge.
Everything that runs on your machine is open source.
FAQ
What is Sno Station?
Sno Station is the workstation for your AI coding agents. It runs the agents you already use, with their own harnesses, side by side as one team. Shared memory, messages and skills connect their work; you choose when to start a pair, enable handover or accept a lesson.
Which agents does it work with?
Claude Code, Codex, Cursor, Hermes Agent and OpenClaw share memory. Feature support differs: task carry-over and next-reply lessons run on Claude Code and Codex; the status line runs on Claude Code and Cursor. Hermes Agent and OpenClaw have not completed the newer team journeys on real installs, and OpenClaw shows an unknown state in sno squad.
How is this different from the official Claude-to-Codex plugin?
Dual Brain gives Claude Code and Codex roles they can exchange. Either agent can request a review or hand work to the other. Shared memory carries the context, so you stop relaying answers between tools.
Do I need a server or a daemon?
No. Sno Station is plain files in a workspace on your laptop. There is nothing to keep running.
Where does my data live?
The memory store is encrypted on your machine; Sno never receives the database or its key. What leaves depends on the mode you choose during onboarding. Local First uploads no memory text. Agent Native sends memory processing to your own agent's model; by default it also uploads the day's sessions to Sno each night for Self Learning and can bring back one cloud lesson on a session's first prompt. You can turn both off in ~/.sno/settings.json. REM Enhanced sends memory text and learned lessons to your own space in Sno's cloud, where a Sno program processes them for you alone. You can keep, delete or choose to process them; nothing is deleted automatically or shared with another person, company or account.
Will it change my agents' behavior on its own?
No. Self Learning proposes changes to the agents' own skills. You accept or reject each one. Nothing changes without that accept.
Is it open source?
Yes. Apache-2.0 for everything that runs on your machine.
What does it cost?
Sno Station is free. A hosted version, for a squad that has to keep running when your laptop is closed, is coming; the product on your machine stays complete without it.
What are Dual Brain and an agent squad?
Dual Brain is two agents working together in different roles, such as building and reviewing. A squad extends that collaboration to more agents with clear responsibilities. Use sno reach pair "Fix the login redirect" for a pair, or /cos in Claude Code and $cos in Codex to work through one agent that runs the rest.
Which one is the smart one?
We don't say. It flips by month and by job. The point is that they differ, and that the one that didn't write it is the one that reads it.
How do I start?
Tell your AI agent "install sno.ai from GitHub" and it installs Sno and sets up Sno Station. Or run curl -fsSL https://sno.ai/install | sh in a terminal (Linux, macOS and WSL2); it installs Sno and sets up Sno Station, then say "Sno onboard" to your agent.
