Skip to content
| Marketplace
Sign in
Visual Studio Code>Visualization>Courage HubNew to Visual Studio Code? Get it now.
Courage Hub

Courage Hub

Touya

|
3 installs
| (0) | Free
A pixel office that shows what your Courage agents are doing.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Courage Hub

A VS Code extension that shows your Courage hub as a pixel map you choose: an open-plan office staffed by people you know, or a stadium staffed by creatures. Each Claude terminal is one character, with a bubble saying what it's doing and a "!" when it needs you. Its sub-agents appear beside it as little kids, or as the creature's small form in the stadium. Hub tasks are listed under the map.

Courage is a set of files and scripts that lets Claude Code act as your project manager: it plans tasks, hands them to specialist agents and asks you before anything important changes. A copy comes with this extension.

Getting started

You need Windows and Claude Code, which isn't part of the free Claude plan.

  1. Install Courage Hub from the Extensions view in VS Code. It offers to set up Courage the first time, or run Courage Hub: Set Up Courage from the Command Palette. It goes in Documents\Courage unless you choose another new or empty folder, and it never overwrites anything.
  2. Open START-HERE.md in that folder. It covers how to plan work and add your projects.
  3. Click Courage Hub in the status bar to open the office.

If you already have a Courage folder, set Courage Hub: Hub Path in Settings to it instead.

The side panel lists every agent with what it was asked to do, plus colored sections: Building (orange) is what it's doing right now, Decisions (silver) quotes the choices it announced, You'd likely agree (green) lists the files it changed, and You might disagree (red) flags things like deleting files or pushing. These are best guesses from plain rules, not a judge. Red never stops anything by itself, but it has two buttons. Disagree stops the agent like pressing Esc, then tells it what you objected to and asks how to undo it. Anything that already ran has already happened, so it can't always stop in time. Agree clears the warning, or opens the terminal if Claude is waiting for your OK.

It's read-only and makes no AI calls. scripts/hub-state.ps1 borrows the hub's own functions to read its state, and live activity comes from the end of the session logs Claude Code already writes, so the hub needs no changes and nothing from this project lives in the hub's folder. The panel shows typed prompts, sentences Claude wrote and flagged commands, and all of that stays on your computer. The one link is that it relies on functions inside the hub's scripts/hub.ps1. npm test catches a hub change that breaks it. The log format belongs to Claude Code and could change. If it does, the bubbles stop but the rest keeps working.

Terminals

Each open Claude terminal in VS Code gets one character, which leaves when the terminal closes. Click + Agent to start one and choose its folder. You can jump to a terminal from its character. To close one, hover over its character and click the X above its right side, or use the x on its row in the side panel, then answer Yes.

Add a job label in + Agent to name what an agent is for. The side panel shows how full each agent's memory is, and flags an agent whose log has been quiet for 5 minutes mid-job. In Details you can send it a message. A message goes as soon as the agent's turn has finished, and waits until then if it's busy, because pressing Enter during a permission prompt could approve a command. Terminals opened with + Agent also show permission prompts as Needs you, using hooks in their own settings. Claude's main settings aren't changed. The folder you pick is marked as trusted in Claude's .claude.json, so Claude doesn't stop to ask whether you trust it. Look through anything you've downloaded before putting it in your projects folder.

Agents need Claude Code, which isn't part of the free Claude plan. When you start an agent, the extension asks Claude Code for its sign-in status. If Claude Code is missing, signed out, or may be on a free plan, a message says so and links to the install or plans page. The terminal still opens either way.

Project folders

Keep your projects as folders inside one main folder, Documents\Projects unless you choose another in Settings. Every folder in there appears in the Folder list by itself, and + New project makes one from a name you type. A new project also gets its own Git repository and an entry in the hub's hub.json, so the hub's planned tasks can work on it. Pick Courage (the first choice) to plan and automate work with tasks and the scheduler; pick a project under Or work directly in a project for a plain Claude chat working right in that project. Only those folders and the hub are offered. This limits the list, not Claude: it normally asks before touching other folders, but a command it runs could still reach them.

To delete a project, pick it in the Folder list and click Delete this folder. After you answer Yes, the folder, its records and Claude's logs for it go to the Recycle Bin. A folder a Claude terminal is still using can't be deleted until it's closed.

What needs you

Click the black bar at the top of the map to list every agent and hub task waiting on you, with a button to go to each one.

Courage Hub also has its own icon in VS Code's left bar. It opens a short Team list: who needs you first, then who's working, then everyone else, plus hub tasks waiting on you. Click a row to go to that terminal or task. The icon's badge shows how many things need you, and Open office and + Agent are at the top.

Records

Each agent's work is saved as one Markdown file per session in a .records folder inside your main projects folder, because Claude Code deletes its own logs after a while. A record has the same sections as the side panel, plus full paths and commands. Click an agent, then Open full record. To find them all or turn this off, use Settings. Records stay on your computer.

The side panel's Search tab searches every saved record as you type, for words, file names or commands. Results are grouped by folder, with starred folders first, and the buttons show only prompts (Asked), changed files (Changed), Decision or Red items. Open shows the record at that entry.

The side panel goes on the left or right of the map, or can be hidden, from Maps. It has four small tabs above Parallel agents. Agents is the quick look at everyone, and Details has the whole story: exact commands and their results, exact file changes, and Claude's full messages. Click a colored section in Agents to jump to it in Details, and click an entry's colored highlight in Details to jump back. Long text is cut short, and everything updates as the agent works.

Comparison lists the files an agent changed, with what's different from the last commit. Click the green section in Agents to go there. Open full view shows a file's old and new versions side by side in its own editor tab. The comparison covers everything since the last commit, so it can include changes the agent didn't make. Files changed by its sub-agents aren't listed.

The Agent activity tab beside Terminal shows the same record with more room, in two views, All and Details. Click a section in All to jump to it in Details. If the side panel is hidden, the side panel's links open this tab instead.

Record files not changed for 90 days go to the Recycle Bin. You can change that or turn it off under Settings. Folders are never recycled automatically, only with their Recycle button there, and starring a folder keeps its files too.

Your team

In the office, you give each place in your lineup a name and a look. A project keeps its person: a new terminal in a folder goes back to the same place and desk it had before, in whatever order you open them. A second terminal open in that folder takes the next free place. A terminal in a new folder also takes the next free place, and keeps it from then on. Characters walk in through the door when their terminal opens and back out when it closes. Click the pencil beside a name in the side panel to rename it. In the stadium, each new terminal gets a random creature that isn't already out.

The stadium comes with its own original creatures. To use your own art, click Open sprites folder and add PNGs. Each one becomes a creature named after its file, and together they replace the built-in ones. To give one a small form for its sub-agents, add a pairs.json beside them, like {"bigname": "smallname"}.

Try it from source

Open this folder in VS Code and press F5, or run this from the folder:

code --extensionDevelopmentPath=. "%USERPROFILE%\Documents\courage"

Then click Courage Hub in the status bar, click its icon in the left bar, or run Courage Hub: Open Office from the Command Palette. The office opens in its own Courage Hub tab in the bottom panel, next to Terminal. For a bigger map, run Courage Hub: Open Office in a Tab, or set Courage Hub: Office In to tab in Settings so it always opens as an editor tab.

Install file

To build an install file, run this. It makes courage-hub-win32-x64-1.0.0.vsix, a Windows-only install file, with only the code, the pictures it draws with, the hub script and a copy of the Courage engine. The engine comes from your own Courage folder (Documents\courage, or set COURAGE_SOURCE), but only its scripts, agents, skills and guides, with your paths taken out and an empty project list. Your notes, tasks and reports are left out, and so are your sprites folder, docs and tests. If anything personal would still ship, like your Windows username or a project's name, the build stops and lists it. npm run bundle makes the engine copy on its own, which Set Up Courage needs when you run from source.

npm run package

Install it from VS Code's Extensions view: click ..., then Install from VSIX.... To run the test walkthrough against that install instead of this folder, set AI_HUB_VSIX to the file's path first.

Tests

No install step: the extension has no dependencies.

npm test

test/integration/run.js runs inside a real VS Code window. How to start it is at the top of that file.

To check the whole extension in real VS Code with real Claude, run this. It's the test checklist in docs/VS-CODE-TEST-CHECKLIST.md done for you, in a separate window with a throwaway hub and projects folder, and takes about 15 minutes on Windows. It uses Claude's Haiku model, so it costs only a little usage.

npm run test:vscode

To check Set Up Courage the same way, run npm run bundle, then npm run test:setup. It uses a pretend home folder, takes about a minute and uses no Claude.

Your own art stays yours

Your own images and team choices stay on your own computer and out of Git. Never add someone else's art to the repo or a published package.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft