@yunzuriahn/macc
v0.5.1
Published
Multi-Agent Coding Client — AI coding assistant that seamlessly switches models when context limits are hit
Maintainers
Readme
MACC — Multi-Agent Coding Client
MACC is an AI coding assistant CLI that isn't locked to one model. It calls AI APIs directly, streams responses to your terminal, and tracks token usage in real time. When you're near the context limit, it compresses the session and seamlessly hands it off to a fresh model — same work, no lost progress.
Why MACC?
Most AI coding assistants (Claude Code, Gemini CLI, Copilot) are locked to one provider. MACC lets you:
- Start with Claude, automatically compress and continue with Gemini when you hit the limit — no re-explaining context
- Use any supported model from the same interface with a consistent UX
- Own your session — MACC talks directly to APIs, so token counts are exact and nothing is hidden
Install
npm install -g @yunzuriahn/maccRequires Node.js 20+.
Getting Started
Run macc and follow the first-time setup wizard:
$ macc
MACC — First-time setup
No credentials found. Log in to a provider to get started.
[1] Claude (via Claude CLI)
[2] Google Gemini (via gcloud)
[3] Qodo (coming soon)
> 1
Opening browser for Claude login...
[browser opens]
Claude login successful.MACC uses your existing CLI logins — no API keys to copy, paste, or rotate.
| Provider | Login method |
|---|---|
| Anthropic / Claude | claude auth login (Claude CLI) |
| Google / Gemini | gcloud auth application-default login |
| Qodo | Coming soon |
Usage
# Pick an installed agent to launch
macc
# Launch a specific agent
macc start -a codex
# Show all agents and current context usage
macc status
# Open the live dashboard
macc watchIn-session commands
/status — show token usage breakdown
/model — show current model
/switch — manually trigger handoff menu
/help — all commands
Ctrl+C — exitContext Handoff
When your context reaches 90%, MACC warns you. At 98% it presents a handoff menu:
⚠ Context at 98% — 196,000 / 200,000 tokens used.
Compress and continue with:
[1] Gemini 2.5 Pro (1M ctx — recommended)
[2] Claude — new session
> 1
Compressing session... done (2.1s)
Switching to gemini-2.5-pro...
Continuing from: "Fix auth middleware JWT validation"The compression extracts the goal, key decisions, files touched, and pending tasks into a structured handoff so the next model starts with full context.
Supported Models
| Provider | Models | Context | |---|---|---| | Anthropic | claude-sonnet-4-6, claude-opus-4-7, claude-haiku-4-5 | 200k | | Google | gemini-2.5-pro, gemini-2.0-flash | 1M |
Configuration
~/.macc/config.json (auto-created with defaults):
{
"defaultModel": "claude-sonnet-4-6",
"warningThresholdPercent": 90,
"autoPromptThresholdPercent": 98,
"handoffOrder": ["gemini-2.5-pro", "claude-sonnet-4-6"]
}Security
- No API keys stored — MACC reads OAuth tokens from your existing CLI credential stores (
~/.claude/.credentials.json, gcloud ADC). You never paste keys into MACC. - Credentials never logged — tokens are read in-memory and never written to disk by MACC.
- Least-privilege credential files — if MACC creates any local files (e.g.
~/.macc/.envfor optional manual overrides), they are written with mode0o600(owner read/write only). - No telemetry — MACC makes no outbound calls except to the AI provider APIs you explicitly log into.
Architecture
See docs/ARCHITECTURE.md.
License
MIT
