Ein Konto für Skripte wählen
Diese Seite wurde maschinell aus dem Englischen übersetzt. Korrekturen sind willkommen. Diese Seite auf GitHub bearbeiten
ccam pick gibt den Namen des angemeldeten Kontos mit dem meisten Spielraum aus, damit ein Skript Claude Code damit starten kann. Gleichzeitig gestartete Worker erhalten jeweils ein anderes Konto, solange genug Konten mit Spielraum da sind, sodass sich ein Stapel von claude -p-Jobs auf deine Konten verteilt, statt ein einziges aufzubrauchen.
Verwendung
ccam "$(ccam pick)" -p "fix the failing tests"
for task in parse lint docs; do
ccam "$(ccam pick)" -p "do the $task task" > "$task.json" &
done; wait
ccam pick --json # the account and its usage
ccam pick --model opus # also count the Opus weekly limit
ccam pick --max-usage 80 --strategy expiring
ccam pick --wait=2h # nobody has room: wait for a reset
ccam --fallback "$(ccam pick)" -p "…" # also switch if this account hits its limit mid-job$ ccam pick --json
{
"name": "work",
"slot": 2,
"email": "dev@company.com",
"five_hour": { "percent": 12, "resets_at": "2026-10-20T15:10:00Z", "known": true },
"weekly": { "percent": 41, "resets_at": "2026-10-24T09:00:00Z", "known": true },
"source": "live"
}Exit-Codes: 0 mit einem Namen auf der Standardausgabe, 75 (EX_TEMPFAIL), wenn kein Konto Spielraum hat oder keines angemeldet ist, 1 bei anderen Fehlern wie einer ungültigen Option.
Optionen
| Option | Wirkung | Standard |
|---|---|---|
--json |
Das Konto, seine 5-Stunden- und Wochennutzung und die Herkunft der Zahlen ausgeben | aus |
--model <model> |
Auch das Wochenfenster dieses Modells berücksichtigen, etwa opus |
keins |
--max-usage <1-100> |
Konten unter dieser Nutzung bevorzugen | auto_max_usage, sonst 100 |
--strategy headroom|expiring |
Niedrigste 5-Stunden-Nutzung oder die früheste 5-Stunden-Zurücksetzung | auto_strategy, sonst headroom |
--wait[=<duration>] |
Wenn kein Konto Spielraum hat, auf die Zurücksetzung des ersten warten, höchstens so lange | aus; 5h, wenn ohne Wert angegeben |
--dry-run |
Wählen, ohne die Wahl zu erfassen | aus |
So funktioniert es
- ccam listet die angemeldeten Konten auf (API-Schlüssel-Konten haben keine Limits und werden ausgelassen).
- Es setzt eine Sperre (
~/.local/state/ccam/picks.lock), sodass gleichzeitig laufende Auswahlen nacheinander erfolgen. - Es fragt die Nutzung aller Konten gleichzeitig ab, genauso wie
ccam usage, mit dem 60-Sekunden-Cache. - Konten, die in den letzten 2 Minuten gewählt wurden (
~/.local/state/ccam/picks/<name>), werden zuerst ausgelassen, und die Auswahlregeln vonccam next --autowählen unter den übrigen: zuerst unterauto_max_usage, nach der Strategie, nie ein Konto bei 100 %. - Wurden alle Konten mit Spielraum kürzlich gewählt, wählen die Regeln wieder unter allen, sodass sich ein vierter Worker bei drei Konten eines mit einem anderen teilt.
- Die Wahl wird erfasst und die Sperre freigegeben, dann wird der Name ausgegeben.
Das 2-Minuten-Fenster ist wichtig, weil die Nutzung eines neuen Jobs eine Weile braucht, bis sie in den Zahlen erscheint: Ohne es würden fünf gleichzeitig gestartete Worker alle dasselbe Konto als das mit dem meisten Spielraum sehen.
Sicherheit und Sonderfälle
ccam pickliest nur die Nutzung und schreibt den Zeitpunkt der Wahl; es erneuert oder liest Tokens nie über das hinaus, wasccam usagetut.- Eine Wahl reserviert das Konto nicht. Zwei Skripte können nach 2 Minuten trotzdem mit demselben Konto starten; verwende
--fallback, um weiterzumachen, wenn dieses Konto sein Limit erreicht. - Warten mit
--waithält keine Sperre, sodass andere Auswahlen währenddessen weiterlaufen. ccam pickignoriertccam folder: Es wählt nur nach Nutzung.