الميزات

اختيار حساب للسكربتات

بقلم jhyunwoo
آخر تحديث 20 أكتوبر 2026
تم التحقق باستخدام ccam 0.8.0 وClaude Code 2.1.302

تُرجمت هذه الصفحة آليًا من الإنجليزية. التصحيحات مرحب بها. عدّل هذه الصفحة على GitHub

في هذه الصفحة

يطبع ccam pick اسم الحساب المسجَّل دخوله الذي لديه أكبر هامش، ليشغّل به السكربت برنامج Claude Code. ويحصل كل عامل من العمّال الذين يبدؤون في الوقت نفسه على حساب مختلف ما دامت هناك حسابات كافية لديها هامش، فتتوزع دفعة من مهام claude -p على حساباتك بدلًا من أن تستنزف حسابًا واحدًا.

الاستخدام

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"
}

رموز الخروج: 0 مع اسم على المخرج القياسي، و75 (EX_TEMPFAIL) عندما لا يكون لأي حساب هامش أو لا يكون أي حساب مسجَّل الدخول، و1 للأخطاء الأخرى مثل خيار غير صحيح.

الخيارات

الخيار ما يفعله القيمة الافتراضية
--json يطبع الحساب واستخدامه في نافذتي الخمس ساعات والأسبوع ومصدر الأرقام معطّل
--model <model> يحتسب أيضًا النافذة الأسبوعية لذلك النموذج، مثل opus لا شيء
--max-usage <1-100> يفضّل الحسابات التي يقل استخدامها عن هذه القيمة auto_max_usage، وإلا 100
--strategy headroom|expiring أدنى استخدام في نافذة الخمس ساعات، أو أقرب إعادة ضبط لنافذة الخمس ساعات auto_strategy، وإلا headroom
--wait[=<duration>] عندما لا يكون لأي حساب هامش، ينتظر حتى يُعاد ضبط أولها، بحد أقصى هذه المدة معطّل؛ و5h عند تحديده وحده
--dry-run يختار دون تسجيل الاختيار معطّل

كيف يعمل

  1. يسرد ccam الحسابات المسجَّل دخولها (حسابات مفاتيح API ليس لها حدود فتُستبعد).
  2. يأخذ قفلًا (~/.local/state/ccam/picks.lock)، فتجري عمليات الاختيار المتزامنة واحدة بعد أخرى.
  3. يستعلم عن استخدام كل الحسابات في آن واحد، بالطريقة نفسها التي يتبعها ccam usage، مع الذاكرة المؤقتة لمدة 60 ثانية.
  4. تُستبعد أولًا الحسابات التي اختيرت خلال آخر دقيقتين (~/.local/state/ccam/picks/<name>)، وتختار قواعد الاختيار الخاصة بـ ccam next --auto من بين البقية: ما يقل عن auto_max_usage أولًا، وفق الاستراتيجية، ولا تختار أبدًا حسابًا بلغ 100%.
  5. إذا كانت كل الحسابات التي لديها هامش قد اختيرت مؤخرًا، تختار القواعد من بينها كلها من جديد، فيتشارك العامل الرابع على ثلاثة حسابات حسابًا مع غيره.
  6. يُسجَّل الاختيار ويُحرَّر القفل، ثم يُطبع الاسم.

تهم نافذة الدقيقتين لأن استخدام المهمة الجديدة يحتاج إلى بعض الوقت حتى يظهر في الأرقام: ودونها، سيرى خمسة عمّال بدؤوا معًا الحساب نفسه على أنه صاحب أكبر هامش.

الأمان والحالات الخاصة

  • لا يفعل ccam pick إلا قراءة الاستخدام وكتابة وقت الاختيار؛ ولا يجدّد الرموز أبدًا ولا يقرؤها أكثر مما يفعل ccam usage.
  • الاختيار لا يحجز الحساب. فقد يبدأ سكربتان على الحساب نفسه بعد دقيقتين؛ استخدم --fallback للتعافي عندما يبلغ ذلك الحساب حده.
  • لا يحتفظ الانتظار مع --wait بأي قفل، فتستمر عمليات الاختيار الأخرى في أثنائه.
  • يتجاهل ccam pick الأمر ccam folder: فهو يختار حسب الاستخدام فقط.