feat: show Claude Code accounts in list and forecast#37
Merged
Conversation
Extends PR #35 (Specialize authmux launches by skill profile) so a Soul skill profile can target the local hermes-agent skills tree in addition to codex and claude. - SkillAgent gains "hermes"; isSkillAgent narrows third-party strings. - resolveDefaultSkillTarget("hermes") maps to AUTHMUX_HERMES_HOME or HERMES_AGENT_HOME or ~/Documents/hermes-agent, plus "/skills". - activateSkillProfile auto-fills the target when agent is hermes so the shell activator only needs --target. Soul activate-profile.sh keeps its existing case for codex|claude; agent=hermes works because we always pass --target and the activator only branches on agent for the default target. - authmux skills --agent gains "hermes". - Tests cover isSkillAgent, resolveDefaultSkillTarget, and an end-to-end hermes activation against a tmp target. Out of scope (deferred): bundling MCP servers alongside skills in the same profile. Soul's install-codex-mcps.py / install-claude-mcps.py write a full placeholder block without profile filtering, so the MCP side needs a soul-side design pass before authmux can wire it in.
Spec for adding `authmux skills pick` and wiring it into the codex + claude-account-* shell hooks so users get an interactive profile chooser on agent launch instead of silent activation. Out of scope: MCP bundling, hermes wrapper, new profile content. Same boundaries as PR #35. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
12-task phased plan split across three parallel tracks: A) TS core (skills pick command + helpers) B) shell hooks (codex + claude-account-* aliases) C) docs (README + spec implementation marker) Spec: docs/superpowers/specs/2026-05-19-skill-profile-picker-design.md. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Add claude-health.ts module that reads ~/.claude-accounts/*/ .credentials.json to report subscription type, token expiry, and health status. - authmux list: shows Claude accounts with ✓/✗ health indicator - authmux forecast: shows Claude account health section - Exports pickHealthiestClaude() for programmatic use
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds
claude-health.tsmodule that reads~/.claude-accounts/*/.credentials.jsonto report subscription type, token expiry, and health status.authmux list: shows Claude accounts with ✓/✗ health indicatorauthmux forecast: shows Claude account health sectionpickHealthiestClaude()for programmatic use