@suncreation/modu-arena
v0.5.11
Published
Track and rank your AI coding tool usage across Claude Code, Claude Desktop, OpenCode, Gemini CLI, Codex CLI, and Crush
Maintainers
Readme
@suncreation/modu-arena
Track and rank your AI coding tool usage across Claude Code, Claude Desktop, OpenCode, Gemini CLI, Codex CLI, and Crush.
Quick Start
New Users
npx @suncreation/modu-arena registerCreates your account (username + password), generates an API key, and installs tracking hooks automatically.
Existing Users
npx @suncreation/modu-arena loginLogs in with your username and password, generates a new API key, and reinstalls hooks.
Alternative: Manual API Key Setup
npx @suncreation/modu-arena install --api-key <your-api-key>Commands
register
Create a new account interactively.
npx @suncreation/modu-arena registerPrompts for username, password, and display name. Automatically installs hooks for all detected AI coding tools.
login
Log in to an existing account interactively.
npx @suncreation/modu-arena loginPrompts for username and password. Regenerates your API key and reinstalls hooks.
install
Set up tracking hooks with an existing API key.
npx @suncreation/modu-arena install --api-key modu_arena_xxxxxxxx_yyyyyyyysubmit
Submit current project for AI-powered evaluation.
npx @suncreation/modu-arena submitIn Claude Code, prefer /modu:submit for a better experience.
rank
View your usage stats.
npx @suncreation/modu-arena rankShows total tokens, sessions, tool breakdown, and 7/30-day trends.
status
Check your current configuration and installed hooks.
npx @suncreation/modu-arena statusuninstall
Remove all hooks and configuration.
npx @suncreation/modu-arena uninstallSupported Tools
| Tool | Detection | Hook Location | Registration |
|------|-----------|---------------|--------------|
| Claude Code | ~/.claude/ | ~/.claude/hooks/session-end.sh | ~/.claude/settings.json (hooks.Stop) |
| Claude Desktop | ~/Library/Application Support/Claude/ | Daemon-based sync | N/A |
| OpenCode | ~/.opencode/ | ~/.opencode/hooks/session-end.sh | Hook file only |
| Gemini CLI | ~/.gemini/ | ~/.gemini/hooks/session-end.sh | ~/.gemini/settings.json (hooks.SessionEnd) |
| Codex CLI | ~/.codex/ | ~/.codex/hooks/session-end.sh | Hook file only |
| Crush | ~/.crush/ | ~/.crush/hooks/session-end.sh | Hook file only |
Configuration
Config is stored in ~/.modu-arena.json:
{
"apiKey": "modu_arena_xxxxxxxx_yyyyyyyy",
"serverUrl": "https://arena.vibemakers.kr"
}How It Works
registerorlogincreates/authenticates your account and sets up lightweight shell hooks- When a coding session ends, the hook sends token usage data to the Modu-Arena server
- Data includes: input/output tokens, cache tokens, model name, and timing
- All submissions are authenticated with HMAC-SHA256 signatures
- View your stats via
rankcommand or the web dashboard
Security
- API keys are stored locally in
~/.modu-arena.json - All API requests use HMAC-SHA256 signature verification
- Session data is hashed server-side for integrity and deduplication
- No source code or project content is ever transmitted
Requirements
- Node.js 20+
- One or more supported AI coding tools installed
License
Copyleft
