85 lines
2.3 KiB
Markdown
85 lines
2.3 KiB
Markdown
# Event Topics Reference
|
|
|
|
All events published to the `event` stream follow hierarchical topic naming.
|
|
|
|
## Topic Format
|
|
|
|
```
|
|
session.{sessionId}.{type}
|
|
session.{sessionId}.agent.{agentId}.{type}
|
|
```
|
|
|
|
## Session Events
|
|
|
|
| Topic | Payload | Description |
|
|
|-------|---------|-------------|
|
|
| `session.{sid}.new` | `{name}` | Session created |
|
|
| `session.{sid}.kill` | — | Session destroyed |
|
|
| `session.{sid}.rename` | `{oldName} {newName}` | Session renamed |
|
|
| `session.{sid}.pause` | — | Session paused |
|
|
| `session.{sid}.resume` | — | Session resumed |
|
|
|
|
## Agent Events
|
|
|
|
| Topic | Payload | Description |
|
|
|-------|---------|-------------|
|
|
| `session.{sid}.agent.{aid}.new` | — | Agent created |
|
|
| `session.{sid}.agent.{aid}.kill` | — | Agent destroyed |
|
|
| `session.{sid}.agent.{aid}.state` | `{state}` | State changed (idle, calling, thinking, paused) |
|
|
| `session.{sid}.agent.{aid}.bypass.request` | `{id}\t{cmd}\t{cwd}` | Bypass approval requested |
|
|
| `session.{sid}.agent.{aid}.bypass.resolved` | `{id}\t{action}` | Bypass resolved (approved/denied) |
|
|
|
|
## Process Events
|
|
|
|
| Topic | Payload | Description |
|
|
|-------|---------|-------------|
|
|
| `session.{sid}.agent.{aid}.proc.start` | `{pid}\t{tool}\t{cmd}` | Background process started |
|
|
| `session.{sid}.agent.{aid}.proc.exit` | `{pid}\t{exit_code}\t{tool}\t{cmd}` | Background process exited |
|
|
|
|
## Filter Patterns
|
|
|
|
Subscribe to specific events using the streaming rdwr pattern:
|
|
|
|
```bash
|
|
# All events
|
|
ollie-9p read event
|
|
|
|
# All session events
|
|
echo "session.*" | ollie-9p rdwrs event
|
|
|
|
# State changes for all agents
|
|
echo "session.*.agent.*.state" | ollie-9p rdwrs event
|
|
|
|
# All events for one session
|
|
echo "session.abc123.>" | ollie-9p rdwrs event
|
|
|
|
# Bypass requests only
|
|
echo "session.*.agent.*.bypass.request" | ollie-9p rdwrs event
|
|
|
|
# All bypass events (request + resolved)
|
|
echo "session.*.agent.*.bypass.>" | ollie-9p rdwrs event
|
|
```
|
|
|
|
## Filter Syntax
|
|
|
|
| Pattern | Matches |
|
|
|---------|---------|
|
|
| `*` | Exactly one segment |
|
|
| `>` | One or more segments (must be last) |
|
|
| `literal` | Exact match |
|
|
|
|
## Hierarchical Publishing
|
|
|
|
Events are published to their topic and all parent wildcards:
|
|
|
|
```
|
|
session.abc.agent.xyz.state
|
|
→ session.abc.agent.xyz.*
|
|
→ session.abc.agent.*
|
|
→ session.abc.*
|
|
→ session.*
|
|
→ *
|
|
```
|
|
|
|
This allows subscribing at any level of granularity.
|