Crux

A decision skill and an agent hub for Claude Code

Run a team of Claude agents. Keep the decisions yours.

Claude does the work around the decision. You make the call.

Crux stops Claude at the handful of choices that matter, shows you the options as pictures, and keeps a record every later session reads. Crux Hub is a chat app on your own computer for directing several Claude agents at once, from your desk or your phone.

Free and open source. Runs on your own machine.

Crux Hub: a list of agents on the left, the live map of agents along the top, and a conversation with the orchestrator that holds a finished-round summary and a decision card waiting for a pick
Fig. 1Crux Hub with a demo project, a hiking-trail planner. The red card is a decision waiting for a pick.
01

The problem

AI tools decide things for you while you aren't looking

Ask an AI coding tool for a feature and it makes dozens of choices on the way: how the data is shaped, which method to use, where things are stored, what the screen looks like. Most are fine. A few are hard to undo, and you only find out weeks later.

  1. You ask"Add offline maps."
  2. How is it stored?Chosen for you
  3. Which map format?Chosen for you
  4. What does the screen show?Chosen for you
  5. Finished codeIt works. The forks are buried in it.
Fig. 2One ask, three forks you never saw
02

Who it's for

People who direct AI work and own the result

Engineers, designers, researchers and solo builders. You don't have to be a programmer: Crux explains each choice in plain words and pictures, and you answer with a letter.

03

What's different

Three things most AI tools don't do

It stops and asks, with pictures

Before Claude quietly picks your data model, method or layout, Crux lays out the options with sketches, pros and cons, and a recommendation. Nothing is built until you pick.

The memory outlives every chat

Each pick is saved as a short record in your project. Every later session reads it before planning, so a settled question stays settled.

One place for a whole team

The Hub gives you one chat with an orchestrator and its workers, and gathers everything waiting on you into a single list. It works on your phone too.

Part 1 Crux, the decision skill

04

How a decision travels

From your ask to a record the next session reads

Type /crux before a piece of work, or let it step in on its own when Claude is about to make a big choice for you: a new dependency, a change to how data is shaped, a change that reaches across several parts. It finds the few decisions hiding in the task and brings them to you.

You answer with a letter. Claude then does the work, and the choice is written down where the next session will find it.

  1. You ask"Add offline maps to the trail planner."
  2. Options, drawnTwo to five ways to do it, each with a sketch.
  3. You pickReply "B". This step is always yours.
  4. A record is keptWhat was chosen, and why, saved in the project.
  5. Next session reads itNew chats start from what is already settled.
Fig. 3How one decision travels

Quick, for contained questions

Two or three options right in the chat, with a recommendation. You reply with a letter and the work carries on.

Full, for choices that are hard to reverse

Three to five ranked decisions, each on its own page: a sketch per option, specific pros and cons, scored criteria, and a recommendation that says how sure it is.

On the page you can pick, park or drop a decision, then paste one line back to Claude. Every page opens offline in any browser.

A Crux decision page from the demo: three ways to estimate walking time on a hiking route, each with a sketch, pros and cons, and a recommended badge on one
Fig. 4A full decision page from the demo: three ways to estimate walking time. Click to see all of it.
05

Deep mode and the build brief

Researched options, then a briefing for whoever builds it

Add deep and Crux researches each option in parallel, on the web and in your code. Each option comes back with sources, the assumptions it rests on, its risks, and an estimate with its basis.

Claims without a source are labelled as Claude's judgment, so you can tell a finding from a guess.

After you pick, it writes a build brief: what was chosen, what was ruled out, and what the session that builds it needs to know.

A decided demo page: a route file format chosen, a note about a conflict with another decision, the recommendation, the pick and the start of the build brief
Fig. 5The pick, its reason, and the start of the build brief
06

Crux Dig

Find the decisions already baked into your code

Most projects were built before anyone wrote the decisions down. Type /crux-dig and Crux reads the code and drafts the choices it finds, for you to confirm, edit or reject. It writes only to the decisions folder and never touches your code.

Each finding gets two separate reads.

Was it deliberate?

A choice someone made on purpose, or something that just happened along the way.

Is it holding up?

Still serving the project, or now strained. Strained findings are the candidates for your next real decisions.

07

The board and all projects

Every call in one place, across every project

The demo board: a status bar and tiles, decisions by area, lanes for strained, needs your call, parked and decided, and a map of which decisions build on which
Fig. 6One project's board: what needs your call comes first
The all-projects page for two demo projects: a conflict on distance unit, miles in one and kilometres in the other, then next up and the lanes across both
Fig. 7All projects: two of them settled the same question differently

A board per project

Lanes for strained, needs your call, parked and decided, plus a map of which decisions build on which. It is a plain page that opens offline.

One page for everything

The five things most worth your attention across all projects, what has waited longest, and conflicts between projects at the top.

Nothing is deleted

A decision can be parked until a date, dropped, or replaced by a newer one. It stays as history, so the reason things are the way they are is never lost.

/crux quick kilometres or miles?
Two or three options in chat; reply with a letter
/crux full plan offline maps
Three to five ranked decisions, one page each
/crux deep plan offline maps
Full, plus research, sources, risks and a build brief
/crux challenge 3
Claude argues against your pick; you keep it or reopen it
/crux park 7 until 2027-01-15
Set a decision aside; it comes back on the date
/crux-dig
Draft the decisions already in the code

Part 2 Crux Hub, the agent chat app

08

Crux Hub

One chat app. An orchestrator, its workers, and you.

The Hub is a small messaging-style app that runs on your own computer and opens in a browser tab. Agents work in your project folder like ordinary Claude Code sessions.

You talk to the orchestrator. It splits the job between workers, answers their routine questions, and brings you only what needs your judgement. You can open any worker's thread and talk to it directly.

When an agent finishes a round it posts a short summary: what it did, what changed, what it needs from you.

  • Red is your call, and nothing else
  • Amber is a warning
  • Cyan is at work
  • Green is done
YouChat, pick, approve
decisions come up, picks go down
OrchestratorPlans, hands out work, answers routine questions
Workerelevation
Workeroffline-maps
Workergpx-import
Fig. 8Who talks to whom. You can also message any worker yourself.
09

Needs you

Everything waiting on you, in one list

Decisions, permission requests and agents' questions all collect in one place called Needs you. Nothing waits unseen in a thread you forgot to open.

  • Pick with one click, or take every recommendation at once.
  • Or answer in a few characters: all, all but 4A, 4A 7B, or just B.
  • Questions get their own reply box, with Yes and No when that is all it takes.
The Needs you view in Crux Hub: a permission request with Allow and Deny, a question card with Yes, No and a reply box, and a decision card
Fig. 9Needs you: a permission request, a question and a decision, all in one list
10

Who may do what

Contained work runs. Anything risky comes to you.

Runs without asking

In Auto mode, work that stays inside the project folder or a temp folder goes ahead. Reading and searching never need a yes.

The orchestrator answers

Unclear requests go to the orchestrator, which answers within rules you set. Every answer is logged as one line you can check. No answer in two minutes, and it comes to you.

Always comes to you

  • Merging, or pushing to the main branch
  • Deleting branches or rewriting history
  • Installing software
  • Writing outside the project
  • Secrets, and most network access

Each project is in one of two modes, switched with the Ask/Auto switch beside the project's name. Ask is the default: anything beyond reading goes to the orchestrator first. Auto lets contained work run.

Mail, calendar and drive connectors are off in every project unless you switch them on, and sending, sharing or deleting through them always comes to you.

An orchestrator thread in Crux Hub showing one-line records of the permission requests it answered for its workers
Fig. 10Each permission answer leaves a one-line record
11

The live map

See at a glance who is working and what waits on you

A strip along the top shows the orchestrator as a glass sphere and each worker as a station. Click it and it opens to fill the screen.

  • The liquid level in the sphere is how much of its memory the orchestrator has used.
  • Streams of light run to the workers that are busy.
  • A station turns red when that agent waits on you.

The sphere at the top of this page is the same drawing code, running live.

The live map opened to full size: the orchestrator as a glass sphere in the centre with worker stations around it
Fig. 11The live map, opened
12

Memory that outlives agents

Agents come and go. What they learned stays.

An agent's own memory fills up, and a chat ends. So the Hub keeps what matters outside any one agent, in three layers. A new agent reads a one-line index of each and opens the details only when it needs them.

  • YouA short profile of how you like work done, kept in a private folder on your PC.
  • All your projectsConventions settled once, so a new tool doesn't contradict an old one.
  • This projectIts board: decisions, requirements, notes and handoffs.
Fig. 12Three layers of memory

Agents also record lessons as they go. A lesson about one project is filed with that project; a lesson about you waits in Needs you for your yes.

Handoffs that lose nothing

The orchestrator is a role, not one long chat. When its memory is 60% full, when you say so, or after an hour of quiet, it hands the role to a fresh agent.

  1. A rolling draftEvery round summary carries handoff notes, so a draft is always ready.
  2. The Hub adds the factsWho is working on what, open cards, what you approved.
  3. The old agent adds judgementWhat is in flight, promises made, risks, next steps.
  4. The new agent takes overIt may ask the old one up to three questions first.
Fig. 13How the role passes on. Workers hand off the same way.
The board panel in Crux Hub: two decisions waiting for a call, two requirements, and three decided decisions with what was picked
Fig. 14The project's board, beside the chat
13

On your phone

Answer from wherever you are, without opening your PC to the internet

The Hub only listens on your own PC. Your phone reaches it through Tailscale, a private network made of just your own signed-in devices. Nothing is published on the internet.

Add the Hub to your home screen and it opens on Needs you whenever something waits. Notifications tell you only what kind of card is waiting and its number; the details load over your private network when you tap.

  1. Your PCRuns the Hub and the agents.
  2. A private networkOnly your own devices are on it.
  3. Your phonePick, allow or reply.
Fig. 15How the phone reaches the Hub
Crux Hub on a phone, opening on the Needs you list with a question card and a decision card A thread on a phone with a decision card and quick-reply chips above the message box The list of agents on a phone
Fig. 16The Hub as a home-screen app on a phone
14

The right agent for the job

Pick each agent's model and effort, and see it at a glance

A quick fix doesn't need the biggest model. Each agent has a type, a model and an effort level; the orchestrator picks them for its workers, or follows yours ("put a reviewer on it"). Change any of them from the chip in a thread's header.

  • Violet is Opus
  • Cyan is Sonnet
  • Pink is Haiku
  • Copper is Fable
  • Effort shows as five pips

Agent types are ordinary Claude Code agent files, so the same types work in plain Claude Code.

The menu on an agent's thread in Crux Hub: a row of models, a row of effort levels shown as pips, and the agent's type
Fig. 17Choosing model, effort and type
The four robot icons, one per model family, each shown at every effort level and in every state
Fig. 18Each model family has its own robot; its glow shows effort, and it turns red when it needs you
15

Usage

So a team of agents doesn't surprise you

Spend, per model and per agent

The usage panel shows estimated spend today and since the Hub started, split by model and by agent. It is an estimate from list prices, not a bill; your Anthropic Console has the real figures.

Several agents cost more, faster

Each agent uses tokens on its own. Lighter models and lower effort for routine work keep the total down, which is what agent types are for.

16

Decisions land as a pull request

Your picks arrive as one change you review

When you pick in the Hub, the record is not dropped into the middle of your working files. It goes onto a side branch, and the Hub keeps one pull request open for all of them. This needs the project to be a git repository; with the GitHub command-line tool signed in, the pull request is opened for you.

  1. You pickIn the Hub, on a card.
  2. Record writtenOn a side branch, away from your working files.
  3. One rolling pull requestEvery pick is added to the same one.
  4. You review and mergeMerging is always yours.
Fig. 19Where a pick goes

Part 3 Set up

17

Set up the skill

The skill takes three steps

The skill works on its own; you don't need the Hub to use it.

  • Claude Code
  • Node 20 or newer

The install guide has the exact commands for Windows, Mac and Linux, and how to update.

  1. 1
    Get Crux

    Clone the repository, or download it from GitHub.

    git clone https://github.com/mshomper/crux.git
  2. 2
    Add the two skill folders

    Link or copy crux and crux-dig into your Claude Code skills folder. Both are needed.

    ~/.claude/skills/
  3. 3
    Ask your first question

    Start a new Claude Code session in any project and type:

    /crux quick kilometres or miles?

    The first time, say yes when Claude offers to add one line to the project's CLAUDE.md, so later sessions read the records.

18

Set up the Hub

The Hub takes four more

The Hub runs its agents with your own Anthropic API key, from the Anthropic Console. Anthropic bills the tokens they use to that key.

  • Node 20 or newer
  • git
  • An Anthropic API key
  • Optional: GitHub CLI
  • Optional: Tailscale

Without the second setting in step 2, the Hub falls back to whatever Claude Code sign-in is already on the PC. That is for your own personal use only; the Hub neither offers nor manages it.

The Hub guide covers every setting, restarting, and desktop shortcuts on Windows.

  1. 1
    Install it

    In the Crux folder you cloned for the skill:

    cd crux/hub
    npm install
  2. 2
    Give it your key

    In PowerShell on Windows:

    $env:ANTHROPIC_API_KEY = "sk-ant-..."
    $env:CRUX_HUB_USE_API_KEY = "1"

    On Mac or Linux (untested):

    export ANTHROPIC_API_KEY=sk-ant-...
    export CRUX_HUB_USE_API_KEY=1
  3. 3
    Start it on your project

    Give it one or more project folders. Each should be a git repository.

    npm start -- C:/path/to/your/project
  4. 4
    Open it

    In your browser, then say hello to the orchestrator.

    http://localhost:4747
Reach it from your phone6 steps

Before you start, check your PC's name (type hostname in a terminal). Turning on secure addresses writes that name into public certificate records, so it should not say anything private. Rename the PC first if it does.

  1. 1
    Install Tailscale

    On the PC and on the phone, from tailscale.com or your app store.

  2. 2
    Sign in on both

    Use the same personal account on both devices.

  3. 3
    Turn on HTTPS

    In the Tailscale admin console, under DNS: make sure MagicDNS is on, then Enable HTTPS.

  4. 4
    Share the Hub with your devices

    With the Hub running, in a terminal on the PC. It prints the address. Use serve, never funnel: funnel publishes to the whole internet.

    tailscale serve --bg 4747
  5. 5
    Open that address on the phone

    Then add it to the home screen: Share, then Add to Home Screen on iPhone; menu, then Install app on Android.

  6. 6
    Turn on notifications

    Open Crux from the home-screen icon, go back to the list of agents, and tap the bell. A test notification arrives.

Optional extrasprofile, agent types, Auto mode
  • A profile. Copy the profile-template folder to ~/crux/profile/ and write down how you like work done. Every agent reads the short core. Keep that folder private and out of any public repository.
  • Agent types. Put agent files in ~/.claude/agents/ for every project, or in a project's own .claude/agents/ folder. Each can set a model, an effort level and standing instructions.
  • Auto mode for a project. Flip the Ask/Auto switch beside the project's name in the Hub, or commit a .crux-hub.json file containing { "permissions": "auto" }.
  • Several projects. List them after npm start --, or in ~/crux/hub.json, and switch between them in the Hub.
19

Honest limits

What it is not, yet