Problem
When running eightctl on macOS, the keyring token caching doesn't work correctly. Tokens are reported as "saved" but cannot be read back on subsequent commands, causing fresh login attempts each time.
Steps to Reproduce
- Run
eightctl status --verbose
- Observe logs show:
keyring get failed error="The specified item could not be found in the keyring"
authenticating with server
keyring saved token
- Run
eightctl status --verbose again
- Same "keyring get failed" appears - token was not actually persisted
Expected Behavior
After first successful auth, token should be cached and reused on subsequent commands.
Actual Behavior
Every command triggers a fresh login, quickly hitting Eight Sleep's rate limits (429 Too Many Requests).
Environment
- macOS (arm64)
- eightctl version: 0.1.0-dev
- Keychain access was approved when prompted
Workaround
Currently none - users hit rate limits quickly when running multiple commands.
Suggestion
Consider adding file-based token caching as a fallback (e.g., ~/.config/eightctl/token.json) when keyring access fails, similar to how many other CLI tools handle this.
Problem
When running eightctl on macOS, the keyring token caching doesn't work correctly. Tokens are reported as "saved" but cannot be read back on subsequent commands, causing fresh login attempts each time.
Steps to Reproduce
eightctl status --verbosekeyring get failed error="The specified item could not be found in the keyring"authenticating with serverkeyring saved tokeneightctl status --verboseagainExpected Behavior
After first successful auth, token should be cached and reused on subsequent commands.
Actual Behavior
Every command triggers a fresh login, quickly hitting Eight Sleep's rate limits (429 Too Many Requests).
Environment
Workaround
Currently none - users hit rate limits quickly when running multiple commands.
Suggestion
Consider adding file-based token caching as a fallback (e.g.,
~/.config/eightctl/token.json) when keyring access fails, similar to how many other CLI tools handle this.