Install
$ agentstack add skill-carbeneai-forge-observability ✓ 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 Used
- ✓ 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
Agent Observability Dashboard
Real-time monitoring of PAI multi-agent activity with WebSocket streaming.
Quick Start
# Start server and dashboard
~/.claude/skills/observability/manage.sh start
# Stop everything
~/.claude/skills/observability/manage.sh stop
# Restart both
~/.claude/skills/observability/manage.sh restart
# Check status
~/.claude/skills/observability/manage.sh status
Access Points
- Dashboard UI: http://localhost:5172
- Server API: http://localhost:4000
- WebSocket Stream: ws://localhost:4000/stream
What It Monitors
Real-Time Tracking
- Agent session starts/ends
- Tool calls across all agents
- Hook event execution
- Session timelines and traces
- WebSocket live updates
Data Sources
- Primary:
~/.claude/history/raw-outputs/YYYY-MM/YYYY-MM-DD_all-events.jsonl - Format: JSONL with structured event data
- Hooks: Events logged automatically by PAI hook system
Architecture
Stack:
- Server: Bun + Express + TypeScript
- Client: Vite + Vue + TypeScript
- Storage: In-memory streaming (no database)
- Protocol: WebSocket for real-time updates
Key Features:
- Watch filesystem with automatic reload
- Tail-follow for today's event file
- Cache events in-memory
- Broadcast WebSocket to all clients
- No persistence (fresh start each launch)
When to Activate This Skill
- "Start observability"
- "Stop the dashboard"
- "Restart observability"
- "Monitor agents"
- "Show agent activity"
- "Observability status"
- "Debug agent workflow"
Examples
Example 1: Start monitoring agents
User: "start observability"
→ Launches server on port 4000
→ Starts dashboard on port 5172
→ Opens browser to live agent activity view
Example 2: Debug a stuck workflow
User: "something's weird with my agents, show me what's happening"
→ Opens observability dashboard
→ Shows real-time tool calls across all agents
→ Reveals which agent is blocked or looping
Example 3: Check dashboard status
User: "is observability running?"
→ Runs manage.sh status
→ Reports server and client running state
→ Shows access URLs if active
Development
Server
cd ~/.claude/skills/observability/apps/server
bun install
bun run dev
Client
cd ~/.claude/skills/observability/apps/client
bun install
bun run dev
Troubleshooting
Dashboard not loading
- Check server is running:
curl http://localhost:4000/health - Check client is running:
curl http://localhost:5172 - Restart:
./manage.sh restart
No events showing
- Verify events file exists:
~/.claude/history/raw-outputs/YYYY-MM/YYYY-MM-DD_all-events.jsonl - Check hooks are configured in
~/.claude/settings.json - Try triggering an event (use any tool or agent)
Port conflicts
- Server uses: 4000
- Client uses: 5172
- Check nothing else is using these ports
Files
~/.claude/skills/observability/
├── SKILL.md # This file
├── manage.sh # Control script
├── apps/
│ ├── server/ # Backend (Bun + Express)
│ │ ├── src/index.ts
│ │ └── package.json
│ └── client/ # Frontend (Vite + Vue)
│ ├── src/
│ ├── package.json
│ └── vite.config.ts
└── scripts/ # Utility scripts
Key Principles
- Real-time - Events stream as they happen
- Ephemeral - No persistence, in-memory only
- Simple - No database, no configuration
- Transparent - Full visibility into agent activity
- Unobtrusive - Doesn't interfere with PAI operation
Hook Integration
For the observability dashboard to receive events, configure your PAI hooks to log to: ~/.claude/history/raw-outputs/YYYY-MM/YYYY-MM-DD_all-events.jsonl
The capture-all-events.ts hook in ~/.claude/hooks/ handles this automatically.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: CarbeneAI
- Source: CarbeneAI/Forge
- License: MIT
- Homepage: http://carbene.ai/open-source
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.