Observability
PopKit includes observability hooks for capturing event metadata from Claude Code sessions. The public docs currently cover the hook behavior and optional cloud delivery path; hosted dashboard access is deferred until the hosted product surface is verified.
Dashboard
Section titled “Dashboard”Hosted dashboard setup is not part of the current public launch surface. If you run a private PopKit Cloud deployment, configure its dashboard and API endpoint from that deployment’s operator docs.
The dashboard shows:
- Activity Feed: Real-time stream of events (tool calls, agent starts/ends, errors)
- Active Agents: Which agents are currently working
- Tool Usage: Most frequently used tools
- Session Stats: Today’s totals for events, agent starts, and errors
How It Works
Section titled “How It Works”- Claude Code fires hook events (PreToolUse, PostToolUse, etc.)
- The
agent-observability.pyhook captures these events - Events are sent to PopKit Cloud API
- Dashboard receives events via SSE (Pro) or polling (Free)
Claude Code → Hook → PopKit Cloud API → Dashboard ↓ Redis Stream1. Get Your API Key
Section titled “1. Get Your API Key”/popkit-core:account loginIf you do not have a PopKit Cloud account or deployment, skip cloud delivery and use the local setup paths.
2. Set Environment Variable
Section titled “2. Set Environment Variable”Add to your shell profile (.bashrc, .zshrc, etc.):
export POPKIT_API_KEY=pk_live_your_key_here3. Register the Hook
Section titled “3. Register the Hook”The observability hook is included in popkit-core. If you’ve installed PopKit, it’s already available.
To verify it’s active:
/popkit-core:plugin statusEvent Types
Section titled “Event Types”| Event | Description |
|---|---|
agent_start | An agent was spawned |
agent_end | An agent completed |
tool_call | A tool was invoked |
tool_result | A tool returned a result |
error | An error occurred |
workflow_phase | A workflow phase changed |
Pro vs Free
Section titled “Pro vs Free”| Feature | Free | Pro |
|---|---|---|
| Event capture | Yes | Yes |
| Dashboard access | Yes | Yes |
| Update method | Polling (3s) | SSE streaming |
| Event history | Last 50 | Last 1000 |
| Stats retention | Today only | 7 days |
Troubleshooting
Section titled “Troubleshooting”Events Not Appearing
Section titled “Events Not Appearing”-
Check API key is set:
Terminal window echo $POPKIT_API_KEY -
Check hook is registered:
Terminal window claude hooks list -
Test manually:
Terminal window echo '{"tool_name":"Read","tool_input":{}}' | python agent-observability.py
Connection Issues
Section titled “Connection Issues”The hook is designed to fail silently - it won’t block your Claude Code session if the API is unreachable. Check the dashboard connection status indicator:
- 🟢 Live (SSE) - Real-time streaming active (Pro)
- 🔵 Polling (3s) - Polling mode active (Free)
- 🟡 Connecting - Establishing connection
- 🔴 Error - Connection failed
Privacy
Section titled “Privacy”Events are scoped to your user account. We capture:
- Tool names and execution times
- Agent types and session IDs
- Error status (not error messages)
We do NOT capture:
- Tool inputs/outputs
- File contents
- Conversation history
- Personal data
See our Privacy Policy for details.