2.0 KiB
2.0 KiB
Session Log -- 2026-04-24
Summary
Simplified claude-profile by removing the provider selection phase and time horizon question. Provider config now embedded in profile directories via provider.env. Also moved WezTerm theme emission to fire immediately after profile selection.
Decisions
- Decision: Embed provider config in profiles via
provider.envrather than shared YAML files -- Rationale: profiles are already the natural isolation boundary; different providers = different profiles. Eliminates an entire interactive phase. - Decision: Hardcode Anthropic driver→model_id mapping, use
provider.envonly for non-Anthropic -- Rationale: Anthropic is the default path and needs zero config. Only non-standard providers need extra config. - Decision: Decouple WezTerm theme name from profile name via
wezterm-themefile -- Rationale: profile names changed (e.g.,oreillyit→oreillyit-anthropic) but WezTerm theme table still uses old names. One-line file in profile dir maps the new name to the theme key. - Decision: Always use
ANTHROPIC_API_KEYas the env var for non-Anthropic provider keys -- Rationale: Claude Code reads this env var; simplifies provider.env to not need a configurable key name.
Gotchas Discovered
- [claude-profile] Symptom:
CLAUDE_TIME_HORIZONwas asked interactively and written toactive-mode.envbut never consumed by any downstream tool -- Fix: removed entirely (dead code) - [claude-profile] Symptom:
CLAUDE_PROVIDERinactive-mode.envwas only read by the statusline for non-Anthropic short-name display -- Fix: removed from both; provider distinction is now at the profile level
Key Context
- 41 dryrun tests pass after all changes
- Files outside the repo were also updated:
~/.claude/status/statusline.sh(removed CLAUDE_PROVIDER parsing),~/.claude-*/wezterm-themefiles created,~/.claude-oreillyit-minimax/provider.envcreated - The
custom-claude-skills/skills/switch-mode/SKILL.mdwas updated to remove CLAUDE_PROVIDER and CLAUDE_TIME_HORIZON from its active-mode.env template