Observability
Real-time monitoring dashboard for PAI multi-agent activity. USE WHEN user says 'start observability', 'stop dashboard', 'restart observability', 'monitor agents', 'show agent activity', or needs to debug multi-agent workflows.
- License 许可
- MIT
- 所属仓库
- matt-fell-ai/PAI
- 最近更新
- 2025-12-20
- Stars
- ★ 1
- Forks
- 0
01 前言 Front Matter
- name
- Observability
- description
- Real-time monitoring dashboard for PAI multi-agent activity. USE WHEN user says 'start observability', 'stop dashboard', 'restart observability', 'monitor agents', 'show agent activity', or needs to debug multi-agent workflows.
02 资源文件 103
- 其他.gitignore49 B
- 参考文档agents.md115 B
- 参考文档apps/agents.md88 B
- 参考文档apps/client/agents.md81 B
- 参考文档apps/client/index.html359 B
- 参考文档apps/client/package.json589 B
- 脚本apps/client/postcss.config.js79 B
- 参考文档apps/client/public/agents.md83 B
- 资产文件apps/client/public/binoculars.svg955 B
- 资产文件apps/client/public/vite.svg1.5 KB
- 参考文档apps/client/README.md442 B
- 参考文档apps/client/src/agents.md80 B
- 其他apps/client/src/App.vue6.8 KB
- 参考文档apps/client/src/assets/agents.md80 B
- 其他apps/client/src/assets/fonts.css1.6 KB
- 资产文件apps/client/src/assets/fonts/advocate_14_cond_reg.woff223.9 KB
- 参考文档apps/client/src/assets/fonts/agents.md82 B
- 资产文件apps/client/src/assets/fonts/concourse_c3_regular.woff43.4 KB
- 资产文件apps/client/src/assets/fonts/concourse_t3_regular-webfont.woff51.7 KB
- 资产文件apps/client/src/assets/fonts/equity_text_b_regular-webfont.woff30.5 KB
- 资产文件apps/client/src/assets/fonts/valkyrie_a_bold_italic.woff229.9 KB
- 资产文件apps/client/src/assets/fonts/valkyrie_a_bold.woff229.3 KB
- 资产文件apps/client/src/assets/fonts/valkyrie_a_italic.woff229.7 KB
- 资产文件apps/client/src/assets/fonts/valkyrie_a_regular.woff229.2 KB
- 资产文件apps/client/src/assets/vue.svg496 B
- 参考文档apps/client/src/components/agents.md84 B
- 其他apps/client/src/components/AgentSwimLane.vue20.5 KB
- 其他apps/client/src/components/AgentSwimLaneContainer.vue1.1 KB
- 其他apps/client/src/components/ChatTranscript.vue14.4 KB
- 其他apps/client/src/components/ChatTranscriptModal.vue12.8 KB
- 其他apps/client/src/components/EventRow.vue24.3 KB
- 其他apps/client/src/components/EventTimeline.vue6.1 KB
- 其他apps/client/src/components/FilterPanel.vue4.5 KB
- 其他apps/client/src/components/HelloWorld.vue856 B
- 其他apps/client/src/components/IntensityBar.vue4.8 KB
- 其他apps/client/src/components/LivePulseChart.vue30.8 KB
- 参考文档apps/client/src/components/stats/agents.md86 B
- 其他apps/client/src/components/stats/StatBadge.vue7.5 KB
- 其他apps/client/src/components/StickScrollButton.vue1.4 KB
- 其他apps/client/src/components/ThemeManager.vue4.6 KB
- 其他apps/client/src/components/ThemePreview.vue10.1 KB
- 其他apps/client/src/components/ToastNotification.vue2.3 KB
- 其他apps/client/src/components/widgets/AgentActivityWidget.vue2.9 KB
- 参考文档apps/client/src/components/widgets/agents.md88 B
- 其他apps/client/src/components/widgets/EventTypesWidget.vue2.8 KB
- 其他apps/client/src/components/widgets/SessionTimelineWidget.vue4.2 KB
- 其他apps/client/src/components/widgets/TokenUsageWidget.vue12.1 KB
- 其他apps/client/src/components/widgets/TopToolsWidget.vue5.0 KB
- 其他apps/client/src/components/widgets/widget-base.css1.4 KB
- 参考文档apps/client/src/composables/__tests__/agents.md91 B
- 脚本apps/client/src/composables/__tests__/useAdvancedMetrics.example.ts5.6 KB
- 参考文档apps/client/src/composables/ADVANCED_METRICS_INTEGRATION.md6.4 KB
- 参考文档apps/client/src/composables/agents.md85 B
- 脚本apps/client/src/composables/useAdvancedMetrics.ts16.4 KB
- 脚本apps/client/src/composables/useAgentChartData.ts425 B
- 脚本apps/client/src/composables/useChartData.ts11.9 KB
- 脚本apps/client/src/composables/useEventColors.ts6.8 KB
- 脚本apps/client/src/composables/useEventEmojis.ts1.1 KB
- 脚本apps/client/src/composables/useEventSearch.ts3.2 KB
- 脚本apps/client/src/composables/useHeatLevel.ts5.4 KB
- 脚本apps/client/src/composables/useHITLNotifications.ts954 B
- 脚本apps/client/src/composables/useMediaQuery.ts2.5 KB
- 脚本apps/client/src/composables/usePaiContext.ts1.7 KB
- 脚本apps/client/src/composables/useThemes.ts24.6 KB
- 脚本apps/client/src/composables/useTimelineIntelligence.ts5.9 KB
- 脚本apps/client/src/composables/useWebSocket.ts2.7 KB
- 脚本apps/client/src/main.ts204 B
- 其他apps/client/src/style.css1.9 KB
- 参考文档apps/client/src/styles/agents.md80 B
- 其他apps/client/src/styles/compact.css6.3 KB
- 其他apps/client/src/styles/main.css480 B
- 其他apps/client/src/styles/themes.css16.6 KB
- 脚本apps/client/src/types.ts2.5 KB
- 参考文档apps/client/src/types/agents.md79 B
- 脚本apps/client/src/types/theme.ts5.4 KB
- 参考文档apps/client/src/utils/agents.md79 B
- 脚本apps/client/src/utils/chartRenderer.ts46.9 KB
- 脚本apps/client/src/utils/haiku.ts3.9 KB
- 脚本apps/client/src/utils/obfuscate.ts5.5 KB
- 脚本apps/client/src/vite-env.d.ts38 B
- 脚本apps/client/tailwind.config.js4.1 KB
- 参考文档apps/client/tsconfig.app.json424 B
- 参考文档apps/client/tsconfig.json119 B
- 参考文档apps/client/tsconfig.node.json630 B
- 脚本apps/client/vite.config.ts210 B
- 其他apps/server/.gitignore125 B
- 参考文档apps/server/agents.md81 B
- 参考文档apps/server/package.json395 B
- 参考文档apps/server/src/agents.md80 B
- 脚本apps/server/src/db.ts6.3 KB
- 脚本apps/server/src/file-ingest.ts9.9 KB
- 脚本apps/server/src/index.ts14.5 KB
- 脚本apps/server/src/theme.ts10.5 KB
- 脚本apps/server/src/types.ts3.4 KB
- 参考文档composition.md2.2 KB
- 脚本manage.sh2.4 KB
- 参考文档navigation_sections.md1.3 KB
- 脚本scripts/agents.md91 B
- 脚本scripts/reset-system.sh918 B
- 脚本scripts/start-agent-observability-dashboard.sh1.3 KB
- 脚本scripts/test-system.sh2.6 KB
- 参考文档viewmodels.md1.7 KB
- 参考文档wizards.md1.5 KB
03 SKILL.md 正文
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.
04 同仓库更多 Skills
Wallet
暂无简介
Voice
A PAI modular skill for voice. USE WHEN you need voice capabilities.
Visionary
暂无简介
Vibe
A PAI modular skill for vibe. USE WHEN you need vibe capabilities.
Vault
A PAI modular skill for vault. USE WHEN you need vault capabilities.
UFC
暂无简介