ฟีเจอร์
การสลับไปยังบัญชีถัดไป
หน้านี้แปลด้วยเครื่องจากภาษาอังกฤษ ยินดีรับการแก้ไข แก้ไขหน้านี้บน GitHub
ccam next เปิด Claude Code ด้วยบัญชีอื่นโดยที่คุณไม่ต้องระบุชื่อ ใช้เมื่อบัญชีถึงขีดจำกัดการใช้งาน: ccam next แบบธรรมดาจะเลือกบัญชีถัดจากบัญชีที่คุณใช้ล่าสุด --auto จะเลือกบัญชีที่เหลือโควตามากที่สุดในช่วง 5 ชั่วโมง และ --continue จะนำการสนทนาล่าสุดไปต่อในบัญชีใหม่
การใช้งาน
ccam next # the account after the one you used last
ccam next --auto # the account with the lowest 5-hour usage
ccam next --continue # the next account that shares history, with claude --continue
ccam next -c --auto # both: lowest usage among accounts sharing history
ccam next -- -p "summarize" # pass arguments to claude after --
ccam --dry-run next --auto # print the choice and the command, start nothing$ ccam --dry-run next
→ personal → work
CLAUDE_CONFIG_DIR=/home/you/.local/share/ccam/profiles/work /usr/local/bin/claudeccam พิมพ์การสลับเป็น → <from> → <to> ทาง standard error จากนั้นเริ่ม Claude Code ด้วยบัญชีใหม่แบบเดียวกับ ccam <name> <from> คือบัญชีที่คุณใช้ล่าสุด อาร์กิวเมนต์หลัง -- จะส่งต่อให้ claude โดยไม่เปลี่ยนแปลง
ตัวเลือก
| ตัวเลือก | สิ่งที่ทำ | ค่าเริ่มต้น |
|---|---|---|
--auto |
เลือกบัญชีที่เข้าสู่ระบบแล้วซึ่งใช้งาน 5 ชั่วโมงน้อยที่สุด โดยข้ามบัญชีที่ใช้ไปถึง 100% | ปิด |
-c, --continue |
พิจารณาเฉพาะบัญชีที่ใช้ประวัติการสนทนาร่วมกับบัญชีที่คุณใช้ล่าสุด และเริ่ม claude --continue |
ปิด |
-- <claude args> |
อาร์กิวเมนต์ที่ส่งให้ claude ต่อจากอาร์กิวเมนต์ของ ccam เอง |
ไม่มี |
--dry-run |
รองรับ: พิมพ์ → <from> → <to> และบรรทัดคำสั่งที่จะรัน โดยไม่เริ่ม Claude Code และไม่บันทึกการเริ่ม |
ปิด |
--auto และ --continue ใช้ร่วมกันได้ เมื่อใช้ --continue ตัวเลือก --continue จะถูกวางไว้ก่อนอาร์กิวเมนต์ของคุณ
วิธีการทำงาน
การเริ่มทุกครั้งผ่าน ccam จะเขียนเวลาลงใน ~/.local/state/ccam/last-used/<name> ccam next อ่านไฟล์เหล่านี้ ตรวจว่าบัญชีใดเข้าสู่ระบบแล้ว แล้วจึงเลือก
cli.candidatesสร้างnext.Candidateหนึ่งรายการต่อบัญชีจากconfig.toml: ได้แก่ บัญชี เวลาที่เริ่มครั้งล่าสุด (launcher.LastUsed) และบัญชีนั้นมีการเข้าสู่ระบบหรือไม่ (creds.Has: มี.credentials.jsonที่อ่านได้ หรือบน macOS มีรายการในพวงกุญแจ (Keychain))- หากไม่ใส่
--autonext.Rotateจะเรียงบัญชีตามหมายเลขสล็อตและหาบัญชีที่เริ่มล่าสุด ซึ่งคือบัญชีที่คุณกำลังสลับออก หากยังไม่มีบัญชีใดถูกเริ่มเลย จะใช้สล็อตต่ำสุด - จากตรงนั้นจะไล่ไปข้างหน้าตามลำดับสล็อต วนจากสล็อตสุดท้ายกลับไปสล็อตแรก และคืนบัญชีแรกที่เข้าสู่ระบบแล้ว
launcher.LaunchWithเตรียมและเริ่มบัญชีที่เลือกเหมือนกับที่ccam <name>ทำทุกประการ: ตรวจลิงก์ของบัญชี ใช้การตั้งค่า MCP ที่ใช้ร่วมกัน ลงทะเบียนเซสชัน และแทนที่ ccam ด้วยclaudeผ่านsyscall.Exec
การไล่เริ่มที่บัญชีที่ใช้ล่าสุด และหยุดที่บัญชีแรกที่เข้าสู่ระบบแล้วซึ่งอยู่ถัดไป:
work ถูกเริ่มล่าสุด การไล่จึงเริ่มต่อจากบัญชีนี้ side ไม่มีการเข้าสู่ระบบจึงถูกข้าม และเลือก lab หาก lab ออกจากระบบไปแล้วด้วย การไล่จะวนกลับไปที่ personal (% len ในแผนภาพ) การหมุนเวียนไม่มีทางคืนบัญชีที่คุณเริ่มต้นมา: หากไม่มีบัญชีอื่นที่เข้าสู่ระบบแล้ว จะหยุดพร้อมข้อผิดพลาด
--auto
--auto ตัดสินจากการใช้งานแทนลำดับสล็อต cli.pickAuto เก็บบัญชีที่เข้าสู่ระบบแล้วไว้ สอบถามการใช้งานของทุกบัญชีพร้อมกันด้วย Fetcher.FetchAll ตัวเดียวกับที่ ccam usage ใช้ และให้ usage.Best() เป็นผู้เลือก:
usage.Best() เลือกเปอร์เซ็นต์ 5 ชั่วโมงที่ต่ำที่สุด และข้ามบัญชีที่ใช้ไปถึง 100% หรือไม่ทราบการใช้งาน 5 ชั่วโมง การสอบถามทำตามกฎของ ccam usage: ตัวเลขที่ดึงมาเมื่อไม่ถึง 60 วินาทีที่แล้วจะถูกนำกลับมาใช้ แต่ละบัญชีมีเวลา 3 วินาที และบัญชีที่ไม่ตอบกลับหรือการเข้าสู่ระบบหมดอายุแล้วจะถูกตัดสินจากตัวเลขที่บันทึกไว้ ช่วงเวลาที่บันทึกไว้ซึ่งเลยเวลารีเซ็ตไปแล้วจะนับเป็น 0% บัญชีที่ช่วงเวลารีเซ็ตไปแล้วจึงไม่ถูกมองข้าม --auto ไม่เคยต่ออายุโทเค็น ต่างจากการหมุนเวียนแบบธรรมดา --auto อาจเลือกบัญชีที่คุณใช้ล่าสุดได้หากบัญชีนั้นยังเหลือโควตามากที่สุด
--continue
--continue ของ Claude Code เปิดการสนทนาล่าสุดในโฟลเดอร์ปัจจุบัน ซึ่งจะใช้ได้ก็ต่อเมื่อบัญชีใหม่มองเห็นการสนทนานั้น ดังนั้นเมื่อใช้ --continue ccam จะพิจารณาเฉพาะบัญชีที่อยู่ในกลุ่ม history เดียวกับบัญชีที่คุณใช้ล่าสุด แล้ววาง --continue ไว้หน้าอาร์กิวเมนต์ของคุณ บัญชีที่ประวัติเป็น local ไม่ได้ใช้ร่วมกับใครเลย --continue จากบัญชีแบบนั้นจึงล้มเหลวเสมอ ให้เปิดการใช้ร่วมกันก่อนด้วย ccam share <name> --history on (ดูที่การใช้ร่วมกัน)
ความปลอดภัยและกรณีพิเศษ
- บัญชีที่ไม่มีการเข้าสู่ระบบจะไม่ถูกเลือกเลย หากไม่มีบัญชีอื่นที่เข้าสู่ระบบแล้ว
ccam nextแบบธรรมดาจะหยุดด้วยno logged-in account other than <name> - เมื่อใช้
--continueและไม่มีบัญชีใดใช้ประวัติร่วมกัน:no other account shares conversation history with <name>. Turn it on with `ccam share <name> --history on` - เมื่อใช้
--autoและไม่มีบัญชีที่เข้าสู่ระบบแล้ว:no logged-in account to pickเมื่อทุกบัญชีเต็มหรือไม่ทราบการใช้งาน:no account with known usage and headroom (see `ccam usage`) --autoส่งคำขอผ่านเครือข่ายแม้จะใส่--dry-runโดยจะอ่านเท่านั้น และไม่เคยเขียนไฟล์โทเค็น- บัญชีที่เลือกจะเริ่มผ่านเส้นทางเดียวกับ
ccam <name>จึงผ่านการตรวจแบบเดียวกัน รวมถึงคำเตือนเมื่อมี Claude Code อีกตัวที่ใช้ประวัติเดียวกันกำลังทำงานอยู่ในโฟลเดอร์นี้ last-usedจะถูกเขียนเฉพาะเมื่อ Claude Code เริ่มทำงานจริง--dry-runจะไม่แตะไฟล์นี้ การทดลองรันจึงไม่ทำให้การหมุนเวียนเลื่อนไปข้างหน้า