Repository navigation
Releases
Releases · Vernum-Projecten/cc-shift
0.1.5
Immutable
release. Only release title and notes can be modified.
Fixed
- On macOS a switch no longer fails with
security: unknown commandwhen
the login is longer than onesecurity -iline, which happens once Claude
Code keeps the OAuth state of several MCP servers in the login. Such a
login now goes on the command line ofsecurity, as Claude Code does
(#131).
0.1.4
Immutable
release. Only release title and notes can be modified.
Removed
- The early start:
cc-shift early,early on,early offandearly run,
and the scheduled job that started 5-hour windows before the workday.
cc-shift setupandcc-shift uninstalldelete the job and its working
folder that an older version installed, andcc-shift doctorreports one
that is left. A state file that still holds the early start setting loads,
and early starts already in the history still show incc-shift log
(#126).
0.1.3
Immutable
release. Only release title and notes can be modified.
Fixed
cc-shiftswitches before the limit while the main session waits on
background subagents. The status line now also runs every 30 seconds, the
active account's usage is read from the usage endpoint when the status line
has reported no new numbers for a minute, andcc-shift refreshswitches
when that reading is at or past a threshold. Runcc-shift setupagain to
add the 30-second status line to an existing setup;cc-shift doctorsays
when it is missing (#123).- A status line reading that repeats an older, lower number for the same
window no longer lowers the recorded usage (#123). - A turn that hits the 5-hour limit while the week shows a higher percentage
marks the 5-hour window full, no longer the week, and the history names the
5-hour window (#123).
0.1.2
Immutable
release. Only release title and notes can be modified.
Changed
- The next account is the one with the most of its week left, an untouched
account first, so the weeks drain together and several accounts keep some
week to switch to when a 5-hour window fills. An account whose week resets
within 5 hours still goes first, so what is left of it is not lost. A
running 5-hour window no longer goes first (#120).
0.1.1
Immutable
release. Only release title and notes can be modified.
Added
cc-shiftbuilds for Windows. Logins move between the.credentials.json
files Claude Code keeps on Windows, under%USERPROFILE%; a switch stops
with a clear message while Claude Code keeps logins in Windows Credential
Manager. On Windows the rate-limit hook runscc-shift.exedirectly, the
status line works in Git Bash and PowerShell,cc-shift addwaits for
Claude Code,curl.execomes from the Windows system folder, child
programs start without a console window, and the early start runs from
Task Scheduler.- Each release has
.ziparchives ofcc-shift.exefor x64 and Arm64
Windows, and CI builds, lints and tests on Windows as well. cc-shift completion powershellprints a completion script for Windows
PowerShell 5.1 and PowerShell 7, for the commands, the profile names and
the flags.- The README, the crates.io description, docs.rs and the GitHub repository
describe Windows, with aplatform: macOS | Linux | Windowsbadge and the
PowerShell steps to install the Windows binary.
Changed
- The error for a missing home folder names
USERPROFILEon Windows as well
asHOME. cc-shift addrefuses a name that differs from an existing profile only
in case, and on Windows the device namescon,prn,aux,nul,
com1tocom9andlpt1tolpt9.- Temporary JSON files and the IDE module file carry the name
cc-shift
instead of the old namecs.
0.1.0
Immutable
release. Only release title and notes can be modified.
Added
cc-shiftbuilds and runs on Linux. Logins are moved between the
.credentials.jsonfiles Claude Code keeps on Linux (mode 0600, replaced
in one rename so open windows follow with their next message), and the
early start runs from a systemd user timer.- Each release has static Linux binaries for x86_64 and arm64 next to the
macOS ones, and CI builds, lints and tests on Linux as well as macOS. doctorchecks thatcurlis installed, andcc-shiftfindscurlon
PATHwhen/usr/bin/curlis missing, as onNixOS.- A switch holds Claude Code's own refresh lock of
~/.claudewhile it
saves and replaces the active login, so no open window refreshes the login
at that moment. This makes switching safer on macOS and Linux. - Every file carries its copyright holder and its licence (
Apache-2.0) as
SPDX lines, and the repository follows the REUSE 3.3 specification,
checked in CI. - The README, the crates.io description and keywords, docs.rs and the
GitHub repository describe macOS and Linux, with aplatform: macOS | Linux
badge.
Changed
- Messages say "stored login" instead of "Keychain login", and the help says
the early start is run by the scheduled job, so they read right on Linux. - A morning early start that runs more than 3 hours after its set time (a
machine that woke or started late) starts nothing and says so in
cc-shift log.
0.0.9
Immutable
release. Only release title and notes can be modified.
Added
cc-shift early on [--at 06:00] [--accounts 2]starts the 5-hour windows of
a few accounts each workday morning, so they reset during the workday and
give an extra window. Alaunchdagent runs it Monday to Friday; Claude
Code sends one short Haiku message per account in the account's profile.
Off by default;cc-shift early offstops it andcc-shift earlyshows
it.cc-shift log,cc-shift status,doctoranduninstallknow about
it, andearlyis no longer a valid profile name.
Changed
- The README is reordered for new users and shows how to install a prebuilt
binary with its checksum and build attestation. The release archives now
includeNOTICEnext toLICENSE.
Fixed
cc-shift helpprints the version and tagline under the logo, on their
own line, so the help no longer wraps in a narrow terminal.
0.0.8
Immutable
release. Only release title and notes can be modified.
Added
cc-shift --version(also-Vandcc-shift version) prints the running
version, andcc-shift helpopens with an ASCII logo on a terminal.cc-shift logshows the history of switches (with their reason), refreshed
and logged-out logins, and when all accounts were full and free again,
from~/.claude-profiles/history.jsonl;--since,--all,--verbose
and--json.cc-shift statsshows the tokens of all accounts together per project and
model: output with its share, input, cache writes and cache reads, read
from the session transcripts of~/.claudeand every profile, subagents
included, each response counted once.--since 2h|7d|30dand--allpick
the period and add a section per day,--project <name>shows one project
per model and day,--costadds the cost at Anthropic's API prices,
--per-accountadds a block per account from the switch history, and
--jsonprints one document. What it read is cached per file in
~/.claude-profiles/stats-cache.json.statscan no longer name a profile.- A weekly workflow compares Anthropic's pricing page with the price table
and opens an issue when a price changes or a model is added.
Changed
- The switch thresholds are per window and configurable: the 5-hour window
switches at 95% and the 7-day window at 99% by default, each settable from
50 to 100 underthresholdsin~/.claude-profiles/state.json.
0.0.7
Immutable
release. Only release title and notes can be modified.
Added
cc-shift doctorchecks the status line and the hook,claudeand its
version, every profile's login and signed-in account, two profiles signed
in to the same account, the state file, an unfinished switch, logged-out
accounts and the account details in~/.claude.json, and prints the
command that fixes each problem. It exits 1 when a check fails.cc-shift completion zshprints a zsh completion script for the commands,
the profile names afteruseandremove, and the flags.cc-shift remove <name>deletes a profile, its Keychain login and what
the state remembers about it, after you typeyes; the active account
cannot be removed.cc-shift uninstallremoves the status line and the rate-limit hook and
puts back the status line you had before;--allalso deletes every
profile and its Keychain login after you typeyes.
0.0.6
Immutable
release. Only release title and notes can be modified.
Changed
cc-shift statusopens with a summary line (accounts, how many are free,
the active and the next account) and lists the accounts in the order
cc-shiftwill use them, each window as a bar with its percentage and
time to reset, and a state: active, next, ready, full or week full with
when it frees up, logged out, or unknown with the reason.- The status line shows the window's account with a bar for the 5-hour
window, the 7-day percentage, the next account and how many are free. - Colour (green, yellow, red by how full) on a terminal and in the status
line, off whenNO_COLORis set.
Added
cc-shift status --jsonprints the same overview as JSON for scripts:
the active and next account, how many are free, and per account its
state, both windows with RFC 3339 reset times and seconds left, and
whether its numbers are confirmed.