HARNESSPORTAL JAnpm

Claude Code harness visualizer

Your whole harness, on one screen.

A local capability map for Claude Code.

It collects the skills, MCP servers, sub-agents, and plugins you have added to Claude Code and lays them out as “what I can do right now”. A tool for seeing the toolkit you kept growing and stopped being able to track.

$ npx harness-portal

No install. Same command on macOS, Windows, and Linux (WSL) — PowerShell or cmd.

npm v0.1.7 MIT

How it works

Scan, classify, open.

Three steps. No external server — the only thing that starts is localhost on your own machine.

1. Scan

Reads ~/.claude with an allowlist — only explicitly listed files are opened, and nothing is ever written.

2. Classify

Your own Claude assigns a category to each item. No external server, no API key, no extra billing. Without a Claude Code login it falls back to keyword rules.

3. Open

Your browser opens on localhost. The first run takes about two minutes for classification and flow generation.

▸ Scanning /Users/you/.claude
▸ Collected skills 48 / MCP 19 / agents 4 / plugins 3
▸ Classifying 74 items — asking Claude (about a minute)
▸ Classified by Claude
▸ Generating flows …
▸ Generated 10 flows
▸ Saved harness-2026-08-21T02-31-08.417Z.json
Harness Portal: http://localhost:4477

What you get

What you get

Real screens from a demo harness (48 skills, 19 MCP servers, 4 agents, 3 plugins), run with --lang en. The app also has a JA / EN switch in the header.

Capability map

Every item, grouped by category. Names are never truncated. An MCP server registered in several projects is shown once with a count badge. Search across everything.

The capability map: skills and MCP servers shown as chips, grouped into categories such as browser automation, documents, and video.

Task flows

“For this job, these steps” — assembled from the tools you actually have. If no tool covers a step it says “No tool available” instead of pretending. Each flow exports a skill prompt (Markdown) you can hand straight to Claude Code.

A task flow: numbered step nodes laid out left to right, connected by curved arrows, each holding the tool chips for that step.

Findings

Detects MCP servers that carry the same name but different settings across projects, or identical entries registered more than once, and asks “Is that intentional?” — the kind of thing you never notice by scrolling a list.

The findings panel: warns that an MCP server with the same name has different configurations in two places, listing each project and its settings.

Private by design

Nothing leaves your machine.

  • Collection, classification, and display are all local. The CLI never talks to any external service.
  • Masked before output. Tokens, API keys, email addresses, and paths containing your home directory are redacted before anything is written.
  • History stays on this machine. The last 30 snapshots live in ~/.harness/snapshots/. No account, no sign-up.
  • Bound to 127.0.0.1 only. The page is served to your own machine and nowhere else.