Install
$ agentstack add skill-jtsternberg-claude-plugins-switchboard ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Hotline: Switchboard
A local dashboard that shows every hotline call — who dialed whom, live/recent/stale status — and renders both ends of a call side-by-side, updating in real time as the conversations evolve. Strictly view-only: it tails the Claude Code transcript files, never writes.
How it works
- Call registry:
~/.agents-hotline/sessions/*.json(caller, callees, session IDs, modes). - Discovery scan: calls missing from the registry are reconstructed from the
/hotline:hotline-ringinghandshake in each callee transcript's head and shown with atracedstamp. - Transcripts: each session ID maps to
~/.claude/projects/*/.jsonl, which Claude Code appends to live. The server tails these from byte offsets and streams new entries to the browser over SSE. - Zero dependencies: single-file Node server, inline HTML/JS UI, no build step.
Commands
All via one script:
# Codex: this path resolves under Claude Code; substitute the directory containing this SKILL.md.
SKILL_DIR="${CLAUDE_SKILL_DIR}"
bash "$SKILL_DIR/scripts/switchboard.sh" start [--port=4160] [--no-open]
bash "$SKILL_DIR/scripts/switchboard.sh" stop
bash "$SKILL_DIR/scripts/switchboard.sh" status
Each prints a JSON status line. start backgrounds the server (pidfile at ~/.agents-hotline/switchboard.pid, log at ~/.agents-hotline/switchboard.log) and opens the browser unless --no-open is passed. start always replaces any prior switchboard instance on the port (pidfile-tracked or ad-hoc) so it serves fresh code — it doubles as a restart.
Usage
- "Open the switchboard" / "watch the calls" → run
start, then report theurlfrom the JSON output. - "Stop the switchboard" → run
stop. - "Is the switchboard running?" → run
status. - Custom port: pass
--port=or setHOTLINE_SWITCHBOARD_PORT.
Notes
- Requires Node.js (
nodeon PATH). If missing,startreports an error — tell the user to install Node. - The board groups calls into live (activity in the last 15 min), recent (< 24h, tune with
--stale-hourson the server), and stale. - If a session's transcript can't be found (deleted, or the session was compacted into a new ID), the lane shows "No transcript found" — this is expected for old registry entries, not a bug.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: jtsternberg
- Source: jtsternberg/claude-plugins
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.