# 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.

- Skill: `majiayu000/new-analyzer` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds add majiayu000/new-analyzer`
- Raw SKILL.md: https://api.skillmd.com/api/skills/majiayu000/new-analyzer/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- Author: majiayu000 (https://skillmd.com/u/majiayu000)
- Updated: 2026-09-09
- Page: https://skillmd.com/skills/majiayu000/new-analyzer

---


# 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`

