new-analyzer

Guide for adding a new AI coding agent analyzer to Splitrail. Use when implementing support for a new tool like Copilot, Cline, or similar.

$ インストール

git clone https://github.com/Piebald-AI/splitrail /tmp/splitrail && cp -r /tmp/splitrail/.claude/skills/new-analyzer ~/.claude/skills/splitrail

// tip: Run this command in your terminal to install the skill


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

  1. Add variant to Application enum in src/types.rs
  2. Create src/analyzers/{agent_name}.rs implementing Analyzer trait from src/analyzer.rs
  3. Export in src/analyzers/mod.rs
  4. Register in src/main.rs
  5. Add tests in src/analyzers/tests/{agent_name}.rs, export in src/analyzers/tests/mod.rs
  6. Update README.md
  7. (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