A protected manager
The manager is always the left pane, and it is protected. karma kill is the only way to stop the session.
The Karma Yoga CLI · in development
The Karma Yoga CLI runs Claude Code and Codex as a crew in one terminal session. You talk to the manager on the left. It starts agents on the right, sends them work and knows who is busy.
Not released yet. Nothing to install today.
How a session works
The Karma Yoga CLI is one command for every agent session on your Mac. Each session is one window with one fixed layout.
karma new creates a session from a template. A protected manager sits on the left. The agents it starts stack on the right.
The manager is a real Claude Code or Codex session. Tell it what you want done.
The manager creates agents and messages them. karma crew status shows who is busy or idle and which messages are still waiting.
One fixed layout
The manager is always the left pane, and it is protected. karma kill is the only way to stop the session.
Every agent pane is 20 rows tall. The column on the right grows past the screen and scrolls, up to 12 agents by default, while the manager stays where it is.
Each agent is the real tool, running as it always does. A session can be all Claude, all Codex or both.
A message to an agent is sent in one step and comes back with a receipt. If the agent is busy, the message waits and is delivered when its pane is ready.
Built to keep going
A session created today is the same manager conversation a year from now, kept going by auto compaction.
When an agent's process exits, its pane stays where it is and the agent starts again in the same conversation. After three failures in two minutes it is parked and reported.
karma agent deactivate parks an agent and keeps its conversation. karma agent reactivate brings it back in the same conversation.
Typing /clear, /new or /logout in a session pane is blocked. If a conversation changes anyway, the Karma Yoga CLI notices and returns to the pinned one.
Sessions are rebuilt at login with their layout, and each agent resumes its conversation.
Its own tools
The Karma Yoga CLI downloads a pinned version of Claude Code and Codex from their official sources into ~/.karmayoga. You log in once inside it. Your own claude and codex stay exactly as they are.
The tools never update themselves under a running session. The Karma Yoga CLI installs a new release next to the current one, tests it and switches only when the tests pass. The version before stays on disk.
The Karma Yoga CLI ships as one binary, written in Rust. On another machine it needs nothing installed, and sessions there keep running when the connection drops.
One server runs in the background and owns every pane. Everything else is a command that starts, does its job and exits.
Where it stands
The Karma Yoga CLI comes first. The Mac app follows it.
The session serverSending as one step, pane identity, recovery, held messages, the input guard, the scrolling agent column and the fixed layout are done.
Claude and Codex modulesEverything that depends on how each tool behaves, tested against its latest release.
karma crew and karma agent in RustThe crew commands, rebuilt on the server with no extra background process.
The Karma Yoga CLI binaryOne file with new, attach, ls, kill, karma agent, karma crew and doctor, with karma usage coming.
Reboot restore, Linked Macs, the Mac appSessions rebuilt at login, sessions on every Mac on your account, and a native view for each agent.
Read how a first session goes, or leave your email for the Mac app.