Claude Hub setup
TR EN
Setup guide · macOS

Install Claude Hub on your own Mac

A local app that manages several Claude accounts, every Claude Code session and everything waiting on you from one window. Setup is five steps; first a check that touches nothing tells you what is missing.

No server needed Your data stays on your Mac Removed with one command
$ ./install.sh --check
Claude Hub pre-check
This step installs and changes nothing.

  [ok] macOS XX.Y
  [ok] Node.js vXX.Y.Z (…/bin/node)
  [ok] npm
  [ok] Claude Code (~/.local/bin/claude)
  [ok] Xcode command line tools
  [ok] git
  [ok] Write access: ~/claudecode/claude-hub
  [ok] Write access: ~/.claude-hub
  [ok] Write access: ~/Library/LaunchAgents
  [ok] Write access: ~/Applications
  [ok] Write access: ~/.local/bin

Ready: the install can go ahead.
$ 
The English lines of the ./install.sh --check output. The script prints every line in Turkish and English. XX.Y and …/bin are placeholders; yours show your own Mac's version and Node path.
In short

What the Hub does

The Hub uses the Claude Code on your Mac. Everything runs on your own Mac.

Several accounts, one window

Each Claude account's quota and reset time are side by side.

Keeps going at the limit

When an account hits its limit, the open session continues with the next account where it left off.

Every session in one list

It does not matter which account started it; sessions, memory and settings are shared.

What is waiting on you

Permissions, questions and messages land in Follow-up with a suggested answer. Sending always needs your approval.

Jobs in a separate working copy

Say "do this"; the job is done, checked, and goes to the main branch or live only with your approval.

On your Mac, closed

The Hub only listens on 127.0.0.1:7788. Autonomous jobs run in a closed area and cannot read secret folders.

Before you start

Requirements

Four are required, Chrome is optional. The pre-check (./install.sh --check) looks at each one.

required

macOS 13 or newer

The Mac app needs at least macOS 13. There is no install for Windows or Linux.

How: System Settings > General > Software Update

required

Node.js 20 or newer

The Hub is a Node app; npm comes with Node. This version was tried with Node 26.

How: the nodejs.org LTS package or brew install node

required

Claude Code

The Hub runs exactly ~/.local/bin/claude.

How: the native install from Anthropic's Claude Code setup page. If you used npm or Homebrew, claude install installs the native build.

required

Xcode command line tools

The Mac app is compiled (swiftc) and jobs use git.

How: xcode-select --install

required

A Claude account

An account that can sign in to Claude Code. Sessions run with it.

Later: add as many accounts as you like from the Hub.

optional

Google Chrome

Each account signs in in its own Chrome profile, so other accounts in your browser do not mix in.

Without it: sign-in opens in the default browser.

macOS is the only supported system. There is no install script for Windows or Linux.
Install

Install in five steps

Paste the commands into the Terminal app. The button on the right of each box copies the command.

  1. Install the requirements

    Install the four required pieces above. If you are not sure, the pre-check in step 3 tells you what is missing.

  2. Put the Hub folder on your Mac

    Replace <repo-address> with the address from the person who shared the Hub with you. Do not move the folder after install; if you do, run the install again.

    git clone <repo-address> ~/claudecode/claude-hub
  3. Run the pre-check

    It installs nothing and changes nothing. It lists what is missing in Turkish and English, with what to do next to each item.

    cd ~/claudecode/claude-hub && ./install.sh --check
  4. Install

    It runs the same check first; if something is missing it stops and touches nothing. Then it:

    ./install.sh
    • installs the packages (npm install),
    • sets up the background service (~/Library/LaunchAgents/local.claude-hub.plist; it starts by itself when you log in),
    • builds the ~/Applications/Claude Hub.app app,
    • adds the ~/.local/bin/claude-hub command.
  5. Open it

    Spotlight "Claude Hub", or the command. On first start the app asks for notification permission; if you allow it, jobs waiting on you arrive as Mac notifications.

    claude-hub open
First start

Adding the first account

If you already signed in by typing claude in a terminal, that account shows up as main and nothing else is needed. For a new or second account:

Add account

Use Add account in the top strip (also in the ⌘K palette). Type a short name, and the e-mail if you like.

Sign in in the Chrome window

A separate Chrome window opens. Sign in there and allow access. Do not click the link in the e-mail; type the 6 digit code into that window.

Done

The window in the Hub says "Logged in". Each account keeps its own sign-in under ~/.claude-hub/accounts/<id>; sessions, memory and settings are shared.

Logged in: name@company.com
Add as many accounts as you like, for example personal and work. When one hits its limit, the open session continues with the next. The name, e-mail and code in the pictures are samples.
In plain words

Permissions: Keychain and folders

What the Hub touches and what it does not. install.sh does not ask for admin (sudo) rights; everything it writes is in your user folder.

Keychain

Claude Code stores the sign-in itself (on macOS in the Keychain); the Hub does not read the token. The Hub's own vault (optional Cloudflare keys and the like) is there too, under the name claude-hub. If macOS asks for permission (it may not on every Mac), type your Mac password and allow it.

Folders the Hub writes to

~/.claude-hub (accounts, settings, logs; only you can read it), ~/Library/LaunchAgents (service file), ~/Applications (app), ~/.local/bin (command) and the Hub folder itself. The pre-check makes sure each can be written.

Projects and the closed area

New projects are created under ~/claudecode; working copies of autonomous jobs are under ~/claudecode/_otonom. Autonomous jobs run in a closed area (sandbox): they cannot read secret folders and only reach allowed addresses (package registries, GitHub, a few CDNs).

Network

The Hub only listens on 127.0.0.1:7788 and is not reachable from outside. The phone portal and the center are optional; if you do not set them, they stay off.

Optional

Person-specific settings

All can stay empty: when a value is empty that feature is off and the Hub still starts. Write the value into ~/.claude-hub/settings.json, then run claude-hub restart. An environment variable wins over the setting.

SettingEnvironment variableWhat it is forWhen empty
phoneUrlHUB_PHONE_URLTap link of phone notifications (phone portal)The center's address if one is connected; otherwise no link
cagriDirHUB_CAGRI_DIRFolder of the phone call, notification topic and wait e-mail settings~/.claude/cagri; if missing these features are off
cfAccountHUB_CF_ACCOUNTName of the Cloudflare account in the vault used for preview publishingThe only account in the vault; with none, preview publishing is off and jobs still run
(install only)HUB_LABELName of the background service (only during install)local.claude-hub on a new install; an older install keeps its name
If you get stuck

Common errors

Tap the text you see on screen to open what to do. Red ones stop the install, yellow ones show up later.

$ ./install.sh --check
Claude Hub pre-check
This step installs and changes nothing.

  [ok] macOS XX.Y
  [ok] Node.js vXX.Y.Z (…/bin/node)
  [ok] npm
  [ok] Claude Code (~/.local/bin/claude)
  [missing] Xcode command line tools are missing (needed for the Mac app and git).
          What to do: Run in a terminal: xcode-select --install (Apple's window opens, it takes a few minutes).
  [ok] git
  [ok] Write access: ~/claudecode/claude-hub
  [ok] Write access: ~/.claude-hub
  [ok] Write access: ~/Library/LaunchAgents
  [ok] Write access: ~/Applications
  [ok] Write access: ~/.local/bin

Missing: 1. The install did not start and nothing was changed.
Fix the items above and run ./install.sh again.
$ 
Example: the English lines of the ./install.sh --check output without the Xcode command line tools. Each missing item says what to do under it.
missing: Claude Code is not at ~/.local/bin/claude
Use the native install from Anthropic's Claude Code setup page. If you used npm or Homebrew, run claude install, then check the path with ls -l ~/.local/bin/claude.
missing: Node.js was not found / is too old
Install the nodejs.org LTS package, or brew install node; if it is old, brew upgrade node.
missing: Xcode command line tools are missing
Run xcode-select --install, finish Apple's window, then ./install.sh.
missing: Cannot write to this folder
You need to own the folder: in Finder right-click it > Get Info > Sharing & Permissions.
claude-hub: command not found
~/.local/bin is not on your PATH. Type ~/.local/bin/claude-hub open or add the folder to PATH.
Could not reach the Claude Hub server
claude-hub restart, then Cmd+R in the window. If it persists, look at claude-hub log.
claude-hub status: running but did not answer
The Hub may be busy; wait a little. If it persists, claude-hub log.
Login was not completed. You can try again.
Start sign-in again. Do not click the e-mail link; type the 6 digit code into the Chrome window.
I updated Node or moved the Hub folder and the Hub does not start
Run ./install.sh again: the service keeps the old path.
No Cloudflare account is set, preview publishing is off
Not an error: preview publishing is optional. The job still becomes Ready.
If you change your mind

Uninstall

One command removes the service and the app. Your accounts and settings stay until you delete them.

claude-hub uninstall

claude-hub uninstall
  • Stops the service and removes the service file
  • Removes the ~/Applications/Claude Hub.app app
  • Removes the claude-hub command
  • ~/.claude-hub (account sign-ins, settings) stays; if you install again you continue where you left off
  • Claude Code's own folder ~/.claude is not removed

Remove everything

Move the Hub folder and ~/.claude-hub to the Trash in Finder. Sign-ins in the Keychain are not removed by themselves; if you want, search for "claude" in Keychain Access and delete them.

This cannot be undone: account sign-ins and Hub records are gone.
If you like

One-command install

Only a suggestion. It joins the steps into one line; it runs only if you paste and run it.

git clone <repo-address> ~/claudecode/claude-hub && ~/claudecode/claude-hub/install.sh
Neither the Hub nor the install script runs this line for you or downloads and runs anything by itself. Do not run a script from the internet without reading it.