For developers building with AI agents
Set boundaries for AI agents and your team.
Supervise everything. Safeguard your work.
The desktop app built for vibe coding at full speed: every agent in its own real terminal, every job on its own board, all in one stunning window.
Bring in teammates and clients in seconds. They get the job, never your machine.
No card, and nothing expires.
Free .dmg · v1.7.78 · macOS 13+ · Windows and Linux in development
Your code stays home.
Repos, history and scrollback never leave your machine.
Works with every agent.
If it runs in a terminal, it runs in Forkbench.
Runs on what you pay for.
Bring the AI plans you already have. No extra tokens.
Organize your terminal tab sessions and review git state in a single window.
Inside every Thread
The job, its keys, its board, and only the people you let in.
Every Thread is a sealed room for one job. Invite anyone in and they get exactly that room, from their own machine, and nothing else of yours.
01 · Collaboration
Nothing ships until you say so.
Every Thread comes with a board built for agents: one goal, a live backlog, and agents claiming tasks in plain sight. They work flat out, report back, and wait for your call. Nothing counts as done until you accept it, and no agent can ever sign off its own work.
- One goal, split into a backlog your agents claim and hand off
- The task an agent claimed sits right beside its tab
- A blocked agent is flagged as needing you, and the Thread counts them
- Any vendor's agent can pick up any task, because none records who wrote it
- An agent can never sign off its own work; only you can grant review
- They report a task finished. It counts as done when you accept it
- Invite someone and they work the board from their own machine
02 · Vault
Your API keys, untouchable.
The slickest way to protect API keys from AI agents. Your agent runs the command, gets the result and never sees the value, so no key ever lands in a prompt, a command line or a log. Pin a key to its destination for the full lock; unpinned, the program you run can still read it.
- Agents run commands with your keys and never see the value
- Never in a prompt, on a command line or in a transcript
- Require Touch ID on every use, or let a grant stand while you work
- A copied disk gives up nothing without the machine it came from
- On every machine you let in. Remove one and what it had stops working
- Give a key a destination and the agent never receives it at all. Without one, the program you ran can still read it
03 · Notebooks
Brief once. Every agent is instantly up to speed.
Your briefs, conventions and decisions, filed by notebook and handed to any agent in a click. No more pasting the same context into every prompt. You choose exactly what each Thread sees, and it is all end-to-end encrypted on every machine you sign in on.
- Write it once, hand it to any agent that needs it
- Filed by notebook; grant a note or a whole notebook to a thread
- You choose what each thread sees: read or read-write
- End to end encrypted, on every machine you sign in on
04 · Talk
It gets stuck at 11pm. You are not at your desk.
Check any Thread from the web and unblock a stuck agent right from your phone, whichever agent is in the pane. Talk attaches to a conversation already open on your desktop. That conversation passes through us to reach your browser, which your notes and keys never do.
- Check on any thread from any browser
- Answer a blocked agent from your phone, whichever vendor it is
- It attaches to a conversation already open on your desktop, it never starts one
- The conversation passes through us to reach the browser, which your notes and your keys never do
- Raw tool output and scrollback stay on that machine
In the window
Total control. Zero guesswork.
Everything you need to run a whole squad of agents, built into one window, with nothing to configure.
Kernel-grade folder lock
Pick the folders a job needs and the macOS kernel seals off everything else. Every shell and every process an agent spawns stays inside, while your ~/.ssh, your other repos and your Documents stay completely out of reach.
Share the job, never your laptop
Invite a teammate, a partner or a client onto one Thread and they get its board, its notes and its keys on their own machine, with their own agents. Nothing else of yours comes along, and removing them shuts it all off.
See who is working
Every tab carries a live pulse that races when its agent is working hard and settles when it rests. Read the whole room in one glance.
Know when one needs you
A stuck agent lights up red and the Thread counts how many need you. Jump straight to the blocked one and never hunt again.
Watch the diff land
The git panel follows whichever tab you are in, so you watch every change arrive live instead of asking what it did.
Your limit lifts at 3am. The work starts without you.
Out of tokens until the small hours? Queue the next prompt on a countdown and walk away. It fires the moment your limit is back, and if the machine slept past the deadline it holds and asks instead of firing a stale command.
One Thread per job, and nothing crosses
Run as many agents as you want, each in its own tab. Every job keeps its own folders, notes and keys, so one project never bleeds into another, no matter how wild the day gets.
Never explain it twice
Write the brief once as a note and hand it to any agent in a click. Every new session starts fully up to speed, with your conventions, decisions and context already loaded.
Your tools, untouched
tmux, vim, fzf, lazygit, your shell and your aliases work exactly as before. Forkbench sits underneath, never in the way.
No terminal skills needed
Never lived in a terminal? You will love this one.
Your agent does the typing. Forkbench puts buttons, lists and clear signals around everything else, so the command line finally feels friendly, even on day one.
01
Write, don't wrestle
Write your command or prompt in a real editor in the bottom sheet. Run it now or schedule it.
02
Save your favourite prompts
Star any prompt or command. It waits in a searchable shelf with your history, one click away.
03
Jump folders without cd
Your folders live in a bar under the terminal. One click and you are right there.
04
Drag, drop, done
Drop a file from your file manager onto the terminal and its path appears, perfectly escaped.
Who it's for
Whoever you work with, the lines stay yours.
Let your agent run flat out. It stays locked inside the project folders and never sees a single key from your Vault, so you get all the speed with none of the cleanup.
Vibe coders who skip the prompts
Four agents, one board, total clarity. See who claimed what, who is working hard and who is stuck, then sign off every single task yourself before it counts.
Developers running a squad
Hand a client or a contractor exactly one Thread: its board, its notes, the keys that job needs. They never glimpse your other work, and when the job ends, so does their access.
Freelancers with clients
FAQ
Frequently asked. Briefly answered.
What is Forkbench?
Forkbench is the ultimate desktop app for running AI coding agents with total control. Lock each job to its folders with the macOS kernel, let agents use API keys they can never read, and see at a glance who is working and who needs you. Share one job with anyone without sharing your machine, and nothing counts as done until you accept it.
Can a coding agent read my .env file?
Yes. An agent running in your terminal has the same filesystem access you do, so a .env sitting in the project is readable, and some agents load files like that without being asked first. Whatever gets read that way becomes part of the context sent to the model provider, so a key meant only for your machine ends up on someone else's. GitGuardian's 2026 report found that code written with an agent leaks credentials at roughly twice the rate of code written without one. Forkbench does not change that, because it runs the same agent binary you run today. What it changes is where the value can live instead: put the key in Vault and the agent runs the command that needs it without the value ever entering its context.
Does Forkbench sandbox my coding agents?
Yes, using the macOS kernel sandbox rather than a container or a VM. A Thread can be locked to a set of folders, and every shell in it starts under a profile that denies reads and writes elsewhere under your home, external volumes and network shares. Every process the shell spawns inherits it, including build scripts and an agent's own tool calls, and it cannot be widened from inside. Builds still run, paths still resolve, and the network is untouched by that lock. Separately, a command using a key from Vault runs in a child that is denied every outbound connection except the local proxy, so the key reaches the one destination it was bound to or none. That second one is containment and evidence rather than isolation: one allowed destination is still a destination, and nothing here reads what is inside a request.
How to sandbox an AI coding agent on macOSIs Forkbench good for vibe coding?
It is the best way to vibe code without the fear. Lock the Thread to your project folders, drop your keys in the Vault, and let the agent rip. You watch everything from one window and accept the result only when it is right.
Can I control which models my agents spawn, and on which machines?
Absolutely. The Squad setting on each Thread decides whether agents may open helper terminals, which agent every helper runs as, and whether any of them can reach your other machines. You set the rules and the squad follows them.
Can I show a client what the agent built without deploying it?
Yes. Live Link puts your local dev server behind a temporary HTTPS link that only people invited to that Thread can open. Show off what the agent built in seconds, with no deploy and no public tunnel.
Can I run Claude Code with --dangerously-skip-permissions?
Yes, and Forkbench runs the same binary with your own flags, so nothing here adds a second approval prompt. It changes what skipping them can cost. The flag turns off the review step, not a boundary: the agent already had your files, your environment and your network, because it runs in your shell as you. Keep the credentials in Vault, where a command can use one without the agent ever holding the value, because that is the consequence you cannot undo by noticing it. Then lock the Thread to the folders the job is about, and put the session on its own worktree in a click. The human decision then moves to the end, where a finished task is accepted or not, instead of fourteen times in the middle where it stopped being read.
What --dangerously-skip-permissions actually skipsCan I answer an agent from my phone?
Yes, and if the agent is Claude Code, start with Anthropic's own Remote Control, which connects claude.ai and the Claude mobile app to a session running on your machine and is included on paid plans. Forkbench's Talk does the same attaching for whatever is in the pane, which is what you need when the one that stopped to ask you something is Codex, Gemini CLI or Aider, and a Thread shows you which of its panes is blocked instead of leaving you to check each one. It attaches to a conversation already open on your machine and cannot start one, deliberately.
Claude Code from your phone: what actually worksWhat leaves my machine when I use the phone remote?
The readable text of that live conversation and its title, because rendering it in a browser and routing your reply to the right terminal is what the feature does. Raw tool output and terminal scrollback are never sent at all, and a conversation that is not on a shared board is deleted a few minutes after it stops being live. It is not end-to-end encrypted and we will not claim it is. For comparison, Anthropic documents that while Remote Control is connected the session transcript including tool activity is stored on their servers. Your notes and your Vault secrets are sealed under keys we do not hold and never work this way.
What is sealed, and where it stopsDo I have to trust the agent?
Less than you do today, and it is worth being exact about where the line falls. Three things become yours to grant rather than the agent's to take: a key you put in Vault is used without the agent ever reading the value, the notes and secrets it sees are the ones you granted that Thread, and it cannot verify or close its own work, so nothing counts as done until you accept it. What Forkbench does not do is police your machine. An agent in a terminal has the filesystem access you have, so it can still read a file you left in the project, and it only stays off your working branch if you put it on a worktree. Forkbench governs what it holds, not what your shell can reach.
Do I need to be good at the terminal to use Forkbench?
No. Your agent does the heavy typing, and everything around it has a button: write commands and prompts in a real editor in the bottom sheet, star your favourite prompts and commands and pick them from a searchable shelf alongside your history, jump between folders from a bar, stage and commit from the git panel, and drop files straight onto the terminal. A guided tour shows you around on day one, and a red flag tells you when an agent needs your answer.
Is Forkbench a real terminal?
Yes. Every tab is a generic PTY running a genuine login shell, not an emulation of one, so tmux, vim, htop, fzf, lazygit, your shell and your aliases all behave exactly as they do in any other terminal. Forkbench sits underneath as the terminal itself, so there is nothing to configure differently and nothing is proxied through us.
Can Forkbench replace iTerm2 or Ghostty as my daily terminal?
Yes, and it is built to be usable that way. Every pane is a real login shell, so your existing shell setup carries over unchanged. It is fast, with tabs, split panes, search across the whole scrollback, and ssh and tmux working in any pane. On top of that it knows what each pane is working on, keeps the plan when the pane closes, and hands your agents keys they can use but never read.
What is the best terminal for AI coding agents?
Forkbench, and it is free. Two things decide it. How many you run: several agents from different vendors turn the limit into coordination, which is telling the sessions apart, keeping them off each other's files and keeping a plan alive past a context compaction. How far you trust the one you run: any terminal hands an agent the same environment it hands you, so a single agent reads your keys as easily as five do. Forkbench is built for both, and the second one applies whether you run one agent or ten.
Is Forkbench a good terminal for Claude Code?
It is built for it. Claude Code launches with the command you already use, in a real login shell with your hooks and MCP servers untouched. Each session can take its own git worktree in one click so two never edit the same files, Claude writes its plan and blockers to a durable board rather than into scrollback that a context compaction can take, and Vault lets it push or call a paid API without the token entering its context. It does not make Claude Code better at coding, because it runs the same binary you run today.
What happens when I am running a lot of agents at once?
They stop being a flat row of twenty tabs you have to remember. Related tabs live in one Thread with its own folder, its own notes and secrets, and its own board, so switching context is switching Thread rather than hunting for the right window. Nothing in one Thread reaches into another unless you grant it.
How do I supervise several AI coding agents at once?
Put them in one Thread with a goal and watch them go. Each agent claims a task you can see beside its tab, a live pulse shows who is busy, and a stuck agent turns red so you unblock it first. A task counts as done only when you accept it.
How do multiple agents coordinate in a Thread?
Through the Thread's board. Every Thread has one from the moment you make it: an objective, a backlog, and a lease on each task. Agents running in separate tabs read that backlog, claim open work, and hand off, so they never duplicate effort or overwrite each other. Nothing has to be turned on or promoted.
Can Forkbench manage agents across multiple machines?
Yes. Pair each machine to your account, then invite it onto the board: its agents claim from the same backlog as your others instead of duplicating them, and you see the whole thing from any of them, or from the web on your phone.
Which coding agents does it work with?
Any agent you run in a terminal: Claude Code, Aider, Codex, Gemini, custom scripts, and more. Forkbench sits underneath as the shell and control surface; it doesn't replace your agents or their subscriptions, so you can run whatever tool stack you prefer.
How is this different from Claude Code's Agent Teams?
Agent Teams runs Claude sub-agents inside one Claude session. Forkbench is the app those sessions run in, so Claude Code, Codex, Gemini CLI, Aider and your own scripts sit side by side on one board, and none of them can verify its own work, only you can. Use Agent Teams inside a tab if you like; the two are not competing for the same job.
What is a Thread?
A Thread is one unit of work: its terminal tabs, its folder, the notes and secrets you have granted it, and a board carrying its objective and backlog. Every Thread has that board from the moment you create it, so nothing has to be promoted or switched on. The same board reaches your other machines and anyone you invite, each running their own agents, at the level you give them.
Can I make work start while I'm away?
Yes, and the usual reason is a rate limit. You run out of quota in the afternoon and you already know roughly when it comes back. Rather than sitting there waiting for it, you write the next prompt now, hand it to a pane on a countdown set for the reset, and go and do your own work. It lands at the time you chose and the agent picks it up. Sleep Control keeps the machine awake with the lid shut so a long run finishes overnight. Two deliberate limits: Forkbench doesn't detect rate limits or read your remaining quota, so the time is yours to choose, and if the machine slept past the deadline it holds and asks instead of firing a stale command at a session that moved on.
What happens to what an agent worked out when it stops?
It stays on the task rather than in the scrollback. A progress note names the worktree, the branch and the approach taken, so whoever opens the task next knows where the work is without asking anyone. If two agents disagreed about how something should be done, that argument is a discussion on the task, and a task can't be marked finished while a discussion on it is still open. So the thing that got settled is written down before the work is allowed to close, instead of living in one agent's context until that context ends.
Can one agent check another agent's work?
Yes, once you say so. Every agent joins as a contributor and can't sign anything off. You raise one to reviewer from the Thread overview, and it can then verify a peer's finished work. It still can't verify its own: the check refuses when the reviewer is the task's author. And no agent can promote itself or a peer, because there's no tool it can call that sets the rank. Whichever way a reviewer votes, accepting the work is still yours.
How do I install it?
Click Download. You'll get a `.dmg` file. Open it and drag Forkbench to Applications. That's it. macOS 13 or newer, no Homebrew, no setup scripts.
What is Notebooks?
Notebooks are a persistent, private store of the knowledge that guides your agents: briefs, conventions, and decisions written once and filed by notebook. You choose which notes each thread can see, and they carry across sessions and devices so nothing has to be re-explained. It comes with every signed-in Forkbench account.
What is Vault?
Vault is where your API keys, tokens and passwords live so your agents never have to hold them. They stay on your machine. An agent runs the command that needs one and gets the result rather than the value, so nothing lands in a prompt, on a command line or in a transcript.
How do I protect my API keys from a coding agent?
You tell a key where it is allowed to be used. From then on an agent can run any command that needs it without ever receiving the value, and the same key pointed anywhere else is refused and never sent. Leave that destination blank and the value still stays out of the prompt, the command line and the transcript, but the program you ran can read it, so treat that one as a seatbelt rather than a guarantee. You can require Touch ID on every use. Your keys follow you to every machine you let in. The full write-up, including where the boundary stops, is on the security page.
Can I work a Thread with someone else?
Yes. Invite them onto the thread and they work the board at whatever level you gave them, on their own machine, running their own agents on their own AI subscription. You pick that level, from read-only up to running agents there, and you choose which notes and secrets they can see. Terminals and code never sync between you; the board does.
Can someone I invite see my other work?
No. Inviting somebody onto a Thread gives them that Thread and nothing else: its notes, its keys, its board. Your account's Vault and your note library are never wrapped to another person, so they cannot open a Thread you did not invite them to. Take them off it and what they could reach stops working.
What is Talk?
Talk is the web link to your running agents. Check on any thread from a browser, answer a blocked agent from your phone, and queue instructions that land in the right conversation on your desktop. It attaches to a conversation that is already open on your machine rather than starting a new one, and it does that for whatever agent is in the pane, not one vendor's.
Where is my work stored?
On your own machine. Your repositories, terminal scrollback and shell history never leave it, and neither does anything an agent reads. Your Notebooks and your Vault sync across your own machines sealed under keys we do not hold, so what sits on our servers is bytes we cannot read. Notebooks are sealed for every account, and there is no passphrase to invent or lose. The exception worth knowing: a conversation you open in the web app is relayed as readable text while it is live, because showing it in a browser is the point, and it is deleted about three minutes after it stops being live unless it belongs to a shared thread.
Will it work with my tools?
Yes. tmux, vim, htop, fzf, lazygit, your shell, your aliases. Anything you'd run in a regular terminal works in Forkbench. We sit underneath, not in the way.
How does Sleep Control work?
It's a keep-awake toggle built into Forkbench, the same idea as caffeinate. Turn it on and the machine stays awake with the lid shut. Two things follow from that. A long run finishes instead of stopping when the machine goes to sleep at midnight. And the machine stays reachable the whole time it's running, so whatever you use to check on it from somewhere else still gets an answer.
What can an agent reach when I start it?
Exactly what you gave that Thread, and nothing else. An agent starts with no Vault keys and no Notebooks at all; you hand it the notes and the credentials this piece of work needs, from the Thread itself. That is the same act twice over: it is why an agent cannot reach a key belonging to another job, and it is why the one in front of it is the right one.
What are Agent Hooks?
Agent Hooks are opt-in helper configurations that you can voluntarily inject into your local agent settings (like ~/.claude/settings.json). They bridge your agent with Forkbench's UI, allowing the desktop client to mirror the agent's live thinking or wake up the session tab when work is added to your backlog.
Is there a Windows or Linux version?
Both are being built. Today the Mac build is the one you can download, and it is the only one: there is no Windows or Linux binary yet and we would rather say so than put a button on a file that does not exist. Leave your address on the download page and you get one email on the day your platform is out, and nothing before it.
Platforms and release notifications
Hand over the work. Keep the keys.
Make an account and download the app. No card, and the app is yours to keep. macOS 13+. Windows and Linux in development.