agent.failure:
  v: int
  ts: str
  seq: int
  proc: str
  pid: int
  kind: str
  actor: str
  run: NoneType
  trace: str
  agent: str
  count: int
agent.hire:
  v: int
  ts: str
  seq: int
  proc: str
  pid: int
  kind: str
  actor: str
  run: NoneType
  trace: NoneType
  agent: str
  by: str
  role: str
  model: str
  tools: list
agent.pause:
  v: int
  ts: str
  seq: int
  proc: str
  pid: int
  kind: str
  actor: str
  run: NoneType
  trace: NoneType
  agent: str
  reason: str
agent.resume:
  v: int
  ts: str
  seq: int
  proc: str
  pid: int
  kind: str
  actor: str
  run: NoneType
  trace: NoneType
  agent: str
  reason: str
  previous: str
agent.retire:
  v: int
  ts: str
  seq: int
  proc: str
  pid: int
  kind: str
  actor: str
  run: NoneType
  trace: NoneType
  agent: str
  by: str
  reason: str
  returned_budget: int
  team: list
cli.command:
  v: int
  ts: str
  seq: int
  proc: str
  pid: int
  kind: str
  actor: str
  run: NoneType
  trace: NoneType
  command: str
  ok: bool
  ms: float
  error: NoneType
  error_type: NoneType
msg.deliver:
  v: int
  ts: str
  seq: int
  proc: str
  pid: int
  kind: str
  actor: str
  run: NoneType|str
  trace: NoneType|str
  id: str
  type: str
  from: str
  to: str
  title: str
  status: NoneType|str
  budget: int
  reply_to: NoneType|str
  revises: NoneType
  supersedes: NoneType
  service: NoneType
  feedback: NoneType
  wake: bool
  hops: int
  chars: int
  trace_rule: str
run.end:
  v: int
  ts: str
  seq: int
  proc: str
  pid: int
  kind: str
  actor: str
  run: str
  trace: str
  agent: str
  ok: bool
  exit_code: int
  duration_ms: int
  timed_out: bool
  killed: bool
  budget_after: int
  error: NoneType|str
run.start:
  v: int
  ts: str
  seq: int
  proc: str
  pid: int
  kind: str
  actor: str
  run: str
  trace: str
  agent: str
  batch: list
  traces: list
  child_pid: int
  pgid: int
  model: str
  budget_before: int
scheduler.exit:
  v: int
  ts: str
  seq: int
  proc: str
  pid: int
  kind: str
  actor: str
  run: NoneType
  trace: NoneType
  reason: str
  runs_started: int
scheduler.heartbeat:
  v: int
  ts: str
  seq: int
  proc: str
  pid: int
  kind: str
  actor: str
  run: NoneType
  trace: NoneType
  running: list
  runnable: int
  waiting_on_you: int
scheduler.start:
  v: int
  ts: str
  seq: int
  proc: str
  pid: int
  kind: str
  actor: str
  run: NoneType
  trace: NoneType
  mode: str
  max_runs: NoneType
  max_parallel: int
  version: str
service.define:
  v: int
  ts: str
  seq: int
  proc: str
  pid: int
  kind: str
  actor: str
  run: NoneType
  trace: NoneType
  owner: str
  service: str
  version: int
  by: str
  amendment: bool
service.retire:
  v: int
  ts: str
  seq: int
  proc: str
  pid: int
  kind: str
  actor: str
  run: NoneType
  trace: NoneType
  owner: str
  service: str
  by: str
service.revise:
  v: int
  ts: str
  seq: int
  proc: str
  pid: int
  kind: str
  actor: str
  run: NoneType
  trace: NoneType
  owner: str
  service: str
  version: int
  by: str
tool.call:
  v: int
  ts: str
  seq: int
  proc: str
  pid: int
  kind: str
  actor: str
  run: str
  trace: str
  tool: str
  ok: bool
  ms: float
  error: NoneType|str
  error_type: NoneType|str
  args: dict
