| name | new-analyzer |
| description | Guide for adding a new AI coding agent analyzer to Splitrail. Use when implementing support for a new tool like Copilot, Cline, or similar. |
Adding a New Analyzer
Splitrail tracks token usage from AI coding agents. Each agent has its own "analyzer" that discovers and parses its data files.
Checklist
- Add variant to
Application enum in src/types.rs
- Create
src/analyzers/{agent_name}.rs implementing Analyzer trait from src/analyzer.rs
- Export in
src/analyzers/mod.rs
- Register in
src/main.rs
- Add tests in
src/analyzers/tests/{agent_name}.rs, export in src/analyzers/tests/mod.rs
- Update README.md
- (Optional) Add model pricing to
src/models.rs if agent doesn't provide cost data
Test fixtures go in src/analyzers/tests/source_data/. See src/types.rs for message and stats types.
VS Code Extensions
Use discover_vscode_extension_sources() and get_vscode_extension_tasks_dirs() helpers from src/analyzer.rs.
Reference Analyzers
- Simple JSONL CLI:
src/analyzers/pi_agent.rs, src/analyzers/piebald.rs
- VS Code extension:
src/analyzers/cline.rs, src/analyzers/roo_code.rs
- Complex with dedup:
src/analyzers/claude_code.rs
- External data dirs:
src/analyzers/opencode.rs