How AgentBoard works

A lightweight CLI collector that hooks into your AI coding tools and sends only token counts — automatically, after every session.

How it works

🔗

Hook registration

agentboard install-hooks writes a single line into each AI tool's config file.

Auto collection

When a session ends, the hook fires a background worker that parses the session transcript.

📤

Token-only upload

Only token counts, model name, and timestamps are sent. Code and prompts never leave your machine.

Data flow

AI session endsSessionEnd hook firesworker.mjs parses transcripttoken counts extractedPOST /api/proxy/v1/events/usage/batchAgentBoard dashboard

Supported AI tools

ToolHook methodToken support
Claude CodeSessionEnd hook (~/.claude/settings.json)Full
OpenCodeAuto-detected via session payload (no config file needed)Full
Gemini CLISessionEnd hook (~/.gemini/settings.json)Full
Codex CLInotify hook (~/.codex/config.toml)Full

Installation

Prerequisites

Node.js ≥ 20 and Git are required.

1

Clone and build the collector

$ git clone https://github.com/hse09021/agentboard-agent-collector.git

$ cd agentboard-agent-collector

$ npm install

$ npm run build

$ npm link # register agentboard as a global command

2

Log in with your GitHub account

$ agentboard login

# Open the printed URL → GitHub OAuth → paste the token back

3

Register session-end hooks

$ agentboard install-hooks

That's it. From now on, every time you finish a Claude Code, OpenCode, Gemini CLI, or Codex session, token counts are collected automatically. Run agentboard inspect at any time to see exactly what will be uploaded.

CLI reference

agentboard loginGitHub OAuth login and device registration.
agentboard logoutRemove the local auth token.
agentboard install-hooksWrite session-end hooks into each supported AI tool's config.
agentboard uninstall-hooksRemove all registered hooks.
agentboard inspectPreview the exact payload that would be uploaded — verify no sensitive data leaves your machine.
agentboard statusShow auth state, hook registration, and collected session count.
agentboard doctorDiagnose config files, auth, and hook registration.

Privacy guarantee

🔒Privacy Guarantee
No prompts
No code
No repos
No file paths

Only token counts, model names, and timestamps.

Never collected

  • Prompt text
  • Source code
  • File contents & paths
  • Repository names
  • Commit & PR content
  • Terminal commands

What we collect

  • Token counts (input, output, cached)
  • Session ID (randomly generated)
  • Timestamps
  • Model name
  • OS type

Every event passes through a Forbidden Data Guard before upload. The collector is open source — you can inspect exactly what gets sent.

Already set up? Head to your dashboard.

Go to Dashboard →