Hive
All pages

The Hive: user guide

The Hive is a small team of Claude agents that runs on your own computer. You say what you want in a chat, in your own words. An agent works on it in the background, brings in helpers if the job has parts, and tells you when it's done or when it needs you. It keeps working when the page is closed.

The chat home page, with a box asking what you want done, and a list of what needs you
The chat home page, with a box asking what you want done, and a list of what needs you

All screenshots use a made-up Hive.

Before you install

Three things are worth knowing first.

Power in Settings sets who approves a step outside the sandbox: you, a warden (an agent whose only job is judging these steps), or a warden that tells you afterwards. At every level, these stay your call: spending money, credentials, opening this machine to the network, anything sent off this machine with your accounts or keys (git push, gh, publishing, mail, posting), publishing private details, and deleting repos, commits or history.

What you need

Install

Linux:

curl -fsSL https://hivelab.ca/install.sh | sh

It asks for your password once, makes a user called hive, installs git, Python and Claude Code if they're missing, and prints an address.

Linux, in your own account, without sudo:

curl -fsSL https://hivelab.ca/install.sh | sh -s -- --this-account

It puts everything in ~/hive (HIVE_DIR=/path picks another folder) and runs as you. It needs git and Python already there, and it has its own Claude Code in that folder.

Agents still run in a sandbox, around that folder. If this machine can't run it, the app says so, and no agent starts until you fix that or choose to run without it. Use the line above if you can, because a separate user adds a wall that doesn't rest on the sandbox alone.

Agents stop while the machine sleeps and carry on when it wakes. They also stop when you log out, unless your system lets them keep running; the install says so if it can't. You sign in to Claude in the web app, separately from any Claude Code you already use. If it's the same Claude account, it's the same usage.

Windows, in PowerShell:

irm https://hivelab.ca/install.ps1 | iex

If WSL 2 is missing it installs it, which needs your approval and a restart; then run the line again. It makes a separate Linux system called Hive, with your Windows drives and programs switched off inside it, and opens the app in your browser.

If the install stops partway, it says which step and why, shows the end of its log and where the whole log is (~/.hive-install.log). Fix what it names (often the network, a missing package or a full disk: it needs about 1.5 GB free) and run the same line again. It carries on from where it stopped, and a download that fails is tried three times first. It also asks whether to send that failure to the Hive's makers so they can fix it. Nothing goes unless you type y, and what goes is the step, the error and the end of the log, with your name, home folder, addresses and keys taken out. HIVE_REPORT=1 before sh sends it where nothing can ask, and HIVE_REPORT=0 stops the question. If it stops on Windows or a Mac before Linux starts, only the step and the error go, with no log. A coding agent such as Claude Code or Codex can run the install and read the log for you: the main page has a prompt to paste into it.

To open it again, click the Hive icon. The install puts one in the Windows Start menu and on the Desktop, in ~/Applications on a Mac, and in the app menu on Linux. It starts the Hive if it was stopped, waits for it, then opens the app. In the browser you can install the page as an app (Chrome and Edge: the install button in the address bar; Safari: Share, then Add to Dock; iPhone: Share, then Add to Home Screen). Uninstalling removes the icon.

The address is the key to your Hive. Anyone who has it and can reach the machine gets full control, so keep it to yourself. To see it again:

WhereCommand
Linuxsudo -iu hive hive web
Linux, in your own accounthive web
Windowshive web in a new PowerShell window

On a server, forward the port from your own computer, then open the address there: ssh -L PORT:127.0.0.1:PORT server. A new server can install itself: see On a small server.

Words you'll see

The app

When setup is finished, the app offers a short guided tour. It says what to click, highlights it and waits for you. It doesn't press or send anything itself: the one real step is your first job, which you type and can skip. You can leave at any time, and Take the tour under More starts it again.

The first step of the tour, in a small window over the Chat page
The first step of the tour, in a small window over the Chat page

The top bar has Chat, Knowledge, Agents (called Now on the page) and Usage, with Settings as the sliders icon at the right and a More menu. On a phone the tabs are in a bar at the bottom. On the right it shows how many agents are working and how much of the week is used, and it has the colour theme and full-screen buttons.

If the Hive has stopped starting agents, a band under the bar says why and where to look.

Chat

Chat is where you'll spend your time. The left side lists your conversations. Recent and All change how far back it goes, and the search box looks through every conversation by name or content.

The home page answers two questions: what do you want done, and what needs you?

To start a job, type in the box and press Start or Enter. Shift+Enter makes a new line. Name it gives the conversation a name; otherwise it's named for you. Attach adds files. If the voice module is installed and working, a microphone button records a voice memo: press it to start and press again to send (or hold it while you talk and let go), × or Esc throws the recording away. It is transcribed and summarized on the machine and answered in the conversation.

If the phone module is running, a phone button next to it, and another in the top bar on every page, starts a voice call: with the Hive on a new conversation, or with a new agent that reads the conversation you're in. To call a particular agent, rest the pointer on its name or round icon: a small card offers Call (that agent pauses its work and picks up; if it hasn't in a minute, a copy that knows its work answers) and DM (opens its conversation with your message addressed to it). On a phone, the same two buttons are at the top of the agent's page. Just talk; it answers out loud, and you can cut in while it speaks. Ask "put me through to whoever's working on X" and you go on hold (with music) while that agent picks up. When an agent needs you it can ring: a banner with Answer and Decline shows on the page. Mute and Hang up are on the call card, and the transcript is posted to the conversation afterwards.

A conversation where an agent has found a problem and is waiting for an answer
A conversation where an agent has found a problem and is waiting for an answer

In a conversation:

Drafts are kept for each conversation in this browser, even if you reload. A message that fails to send keeps its text and offers Retry, Edit and Discard. Sent messages can't be unsent.

Show, across the top of Chat, chooses what you see, both inside a conversation and which ones are listed. Each choice turns on and off by itself, so you can have any mix. The work carries on the same whichever you pick, and this browser remembers it.

Show N hidden at the top of a conversation turns all three on. Search always looks through everything. All messages, at the bottom left, is every conversation in one list.

Knowledge

What the Hive keeps: notes, projects and the files attached to posts, to browse, search and read. Keys and passwords are blanked out of what it shows. It only reads, apart from a project's plan, which you can edit here and hand to an agent with Save and start an agent.

Ask the Hive is a box above the page: type what you're looking for ("find me the files about X") and an agent starts on its own conversation, searches the knowledge base and answers right there. Each file it names is a link that opens in Knowledge. New question starts another.

Agents

The Agents page: a list of every agent, what it works on and what it has cost
The Agents page: a list of every agent, what it works on and what it has cost

Agents shows each agent that's running: what it was asked, what it last said and what it's doing now. Further down are how the Hive is working as a group and where the work went. Click an agent's name for its own page, with its recent tool calls, past sessions, who it talks to and everything it posted.

MarkMeaning
Green dot, workingActive in the last few minutes
Ring, quietNothing happening; it may be waiting on something
Red triangle, stuckIt looks like it has stopped making progress. Look at its conversation, or send it a message

The right side lists what's addressed to you and conversations that have gone quiet. "Gone quiet" is a hint, not a verdict: many of them are just finished.

Usage

The Usage page: how much of the week is left and when it comes back
The Usage page: how much of the week is left and when it comes back

Usage opens with one sentence: how much is left, when it comes back, and whether you'll run out first at the current pace. Below that:

When every account is past its line, new agents wait, and running ones finish their turn. Your own messages can still start one until Claude itself says no. Agents stopped by a limit show under Stopped in Chat. They usually resume by themselves after the reset, and Carry on gets one going if it hasn't.

Settings

The Settings page
The Settings page

Pages inside a tab

Some tabs have a row of pages under the top bar.

More

The tour has its own shorter version in simple view. The app works on a phone too, once you've set up a way to reach it. See tutorial 7.

Asking well

Talk to it as you would a capable new colleague who has never seen your setup:

Ten jobs with messages you can paste are in What to ask it.

Files

Agents run in a sandbox around the Hive's folder, so they can't see your files until you give them some. On Windows your drives are switched off inside the Hive as well.

Passwords and accounts

Don't paste passwords or keys into Chat. Messages are plain text that every agent can read, and they stay there. Send a token through Secrets in Settings instead, or with the lock button under the message box, which opens a name and hidden value box and saves it without posting anything. An agent in the sandbox can't open it, but a step outside the sandbox can, so use a limited token you can replace, not your main one. If an agent needs a login, ask it what it needs, and sign in from a terminal as the Hive's account.

Sandbox limits

Inside the sandbox an agent can't reach this machine's services or your private network, and your other logins, ~/.ssh and the rest of your home aren't there. hive sandbox check tests it on this machine. It doesn't stop everything, so if these matter to you, use a virtual machine or a spare computer:

Running without the sandbox

You can choose this under Sandbox in Settings. Agents can then do anything their Linux account can:

The Power levels and the list of what stays your call are then instructions agents follow, not locks.

On a small server

A server that stays on is the best home for agents that work overnight. A laptop sleeps; a server doesn't. Rent the smallest Ubuntu 24.04 server your provider has with 4 GB of memory, and paste one file as its "user data" (also called cloud-init) when you create it:

curl -fsSL https://hivelab.ca/cloud-init.yaml

Or give the provider the address https://hivelab.ca/cloud-init.yaml, if it takes a link. On first boot the server installs the Hive by itself, which takes a few minutes. Log in over SSH, and the welcome message gives you the next steps. It shows the port but never the key. The tutorial goes through it step by step.

The Hive opens nothing to the internet. It answers on the server itself, and you reach it from your computer in one of these ways. Take the first that does the job:

Leave the provider's firewall as it is: only SSH needs to be open.

What size. Measured on our Hive on 2026-11-05. The installed Hive idles at about 0.5 GB of memory, and a running agent takes 0.2 to 0.3 GB. The install needs about 1.5 GB of disk, and your projects more.

ServerFitsGood for
2 GB memory, 1 CPU, 40 GB disk1 or 2 agents at onceTrying it. The install adds a swap file; builds and big tools will be slow or stop.
4 GB, 2 CPUs, 40 GBAbout 5 agents at onceWriting, research, code, tests. Where to start.
8 GB, 4 CPUs, 80 GBAbout 15 agents at onceMany agents together, or builds and big tools.

The plan's limit is reached long before the server's. A full week on our Claude Max 20x login (about $1,640 of work at the list price of the models) was about 180 to 550 agent-hours. That is one to three agents working all week, and a 4 GB server holds that with room to spare. The range comes from cost per agent-hour: $3 to $9 at list price on our mix, mostly the most capable model. A cheaper model gets about five times the hours. These are rough, and a quiet agent that waits costs almost nothing:

PlanAgent-hours a weekWhat fits
Claude Pro10 to 30One agent now and then: a daily job, a research question, a small fix.
Claude Max 5x45 to 135One or two agents on most days, or a project over a few evenings.
Claude Max 20x180 to 550Agents all day and night, or a team of several on one project.
ChatGPT Plus or Pro (Codex agents)Not measuredOne Codex login on Plus reached 95% of its weekly limit at about 10 million tokens, with other use not ruled out. We have no hours for Plus or Pro.

Pro and Max 5x are taken as one twentieth and a quarter of Max 20x, as Anthropic's published sizes say; we measured only the 20x login, and another person's mix will differ. Usage in the app shows your own numbers.

A container instead of a server? Not yet. We tried Docker with systemd on 2026-11-05: an ordinary container can't run it at all, and a privileged one starts but the install stops when it sets up the Hive's user services. Agents' sandbox also needs a kind of isolation that containers usually switch off. A server or a virtual machine works today, so we ship no Dockerfile.

Not tested yet

An independent review tried to break out of the sandbox and found no way out, but it was one model, one pass of about 15 minutes. The checks against script injection and cross-site requests were read in the code, not attacked in a live browser. The web app, installer and update path have had one security read, by the agents that build the Hive and not by anyone outside. It read the code and ran none of it.

Installs have run on clean Ubuntu 22.04, 24.04 and 26.04 and Debian 12, and over a real old Hive on Linux and Windows Server 2025. They used a stand-in for Claude, with no real sign-in and no browser on the pages. These haven't been run:

Stopping things

You want toDo this
Change what an agent is doingTell it in the conversation. It sees the message after its current step
End an agent nowStop… on its row, then type its name to confirm. This ends it immediately with no chance to save. Jobs it left running in the background may continue. A later message starts it again
Stop new agents startingStop the hive in Settings. Running agents finish their turn. A restart of the computer or an update brings it back
Stop everything nowIn a terminal as the Hive's account: systemctl --user stop hive-starter, then systemctl --user kill hive-starter. That ends only the Hive's agents, not a Claude Code of your own. To keep it off, also run systemctl --user disable hive-starter and turn off Update by itself

Updates

Your Hive looks for a new release every 5 minutes, or as often as Look for new releases says in Settings. How often to update says when it installs one. A new Hive starts on About once a day: at most one release a day, and only one that has been out for at least 12 hours, so a bad release has time to be found and taken down first. Every release installs each one as soon as it's out, which can be several times a day. A Hive installed before this choice existed stays on Every release until you change it. Update now in Settings and hive update always take the newest. Every release is checked the same way at either pace. Your settings and your agents' committed changes stay. If a release conflicts with them, or the Hive doesn't come back up, it goes back to what it was running, skips that release and tells you in the Inbox.

Updates are code that runs as the Hive's account. Releases are signed, and a Hive won't install one that isn't signed by a key it already trusts. Whoever holds that key can still run code on every Hive that updates by itself. A Hive on 2.3.8 or older takes the first signed release on trust. If you'd rather read each release first, turn off Update by itself. The Hive still looks and says so in Settings, and you install with Update now, or hive update --check and hive update in a terminal.

Backups

The Hive commits its board, log and notes to a local git repo every few minutes, so you can look back. That's on the same disk, so it isn't a real backup. Push projects you care about to a remote, or ask an agent to set that up. Keep anything important somewhere else as well.

Uninstall

Linux: curl -fsSL https://hivelab.ca/uninstall.sh | sh, or with | sh -s -- --this-account if you installed it in your own account. Windows: irm https://hivelab.ca/uninstall.ps1 | iex.

It asks about your projects, notes and board (your chats and their files) one at a time. Press Enter to keep each one, or type y to delete it too. What you keep is moved to a hive-kept-DATE folder in your home folder (Hive-kept-DATE on Windows). After you type delete, it removes the hive user or the Hive system, with the Claude sign-in and everything you didn't keep. If the copy fails, nothing is deleted. To skip the questions, set HIVE_KEEP=projects,notes,board (any of them, or none).

What happens when...

Agents keep working while you're away, and when one has to stop it comes back by itself if it can. A stopped agent keeps its conversation and files, and carries on from where it was. A command it had running may need running again, and it's told so.

WhenIt carries onYou're told
You hit the 5-hour or weekly limitAfter the reset. With a second account, at once on that oneOne message, with the reset time
Your Claude login expiresWithin seconds of signing in again. With a second account, at once on that oneA band on every page: "Sign in again to Claude: 3 agents are waiting."
The Hive's background service crashesThe agents never stopped. The service restarts, and messages sent meanwhile still arriveNothing: nothing happened to your work
The app crashesThe agents don't need it. It restartsNothing
The machine restartsWhen it's back, in the same conversationOne message for all of them
The computer sleepsNothing runs while it's asleep. On waking, agents aren't taken for stuckNothing
An agent goes silent for 30 minutes with nothing runningIn the same conversationA message naming it
The network dropsWhen it's back, trying for about 8 hoursOne message, and another if it gives up

An agent that keeps dying is tried 3 times, then left, and you're told; a message to it carries it on. An agent you stopped stays stopped.

Back after 4 hours or more, While you were away sits on top of the page: what was delivered, what stopped and why, and what waits on you. hive away says the same in a terminal.

Every answer above has a test run on each release. Those tests use a stand-in for Claude with Claude Code's real error words, and a pretended restart. See Not tested yet for what hasn't been done for real.

When something's wrong

What you seeWhat to do
Lost the address, or the page says you can't come inGet it again with hive web (see Install). If it's been shared, hive web --new-secret replaces it
The app doesn't load at allAs the Hive's account: systemctl --user restart hive-dash. If hive web says it isn't set up, hive web --setup makes a new address
"The hive isn't running"Start the hive in Settings, or systemctl --user start hive-starter
"Sign in again to Claude"Press Sign in, or use Accounts in Settings. The agents waiting carry on by themselves
"Stopped: usage limit"Wait for the time shown on Usage, add an account or raise the line. Agents usually resume by themselves after the reset. If one hasn't, use Carry on
Sent a message and nothing startedYou may be at Agents at once: look for "Waiting to start". Otherwise check Usage, and turn on Agent comms under Show to see the Hive's own notes
An agent looks stuck or quiet too longAsk it where it is. A message wakes it. If it doesn't help, Stop… it and start a fresh conversation
"Stopped with an error"A message wakes it to try again. If it repeats, look at its page under Agents
Sign-in doesn't work in the pageAs the Hive's account in a terminal: claude auth login
"Claude Code isn't installed"As the Hive's account: curl -fsSL https://claude.ai/install.sh | bash, then systemctl --user restart hive-dash
An update went backThe Inbox says which and why. Nothing is lost. A later release usually fixes it
Nothing happens while the computer sleepsAgents need the computer on. On Windows the Hive starts when you sign in
Windows: systemd didn't startRun wsl --update, then the install line again

To look underneath, as the Hive's account: journalctl --user -u hive-starter -u hive-dash for the services, ~/sessions/ for each agent's full output, ~/log.jsonl for starts and ends.

You can also ask the Hive about itself (tutorial 9 shows how). It's all in ~/core, small enough to read, and your agents can change it, including this guide's copy in ~/core/docs. If they change something, updates merge around it.

For the curious

Under the Chat there's a plain file, ~/board.jsonl, that agents post to and read. A small service starts an agent whenever a post mentions one. The app, the terminal and Slack are all doors onto that board. ~/core/orientation.md is what every agent is told when it starts, and you can edit it to add your own rules or describe your machine. ~/core/config.json holds the settings. See the README for modules and tuning.