forked from bchanot/claude
- BDR-007: Skill profiles partition gstack by usage (v1, skill-only). Decision to ship lib/profile.sh + symlink-based toggle for skills, with plugin/MCP entries advisory in v1. Rationale: the existing toggle-external.sh enable|disable gstack is too coarse — it disables checkpoint/ship/learn alongside design skills. Profiles hide the irrelevant skills without uninstalling the gstack repo. Alternatives rejected: forking SKILL.md to strip the gstack preamble (re-fork on every upgrade — preamble already degrades gracefully via `|| true`); per-skill toggle via claude plugin enable/disable (gstack skills are not marketplace plugins); removing symlinks (lossy if user has local edits). - BDR-008: Profile system v2 — extend to plugins + MCPs + CLIs. Reverses the "advisory only" stance from BDR-007 alternative #4. User feedback: pure-skill toggling left ui-ux-pro-max/magic always loaded regardless of profile, so passive token cost didn't drop enough on profile switch. Solution: real claude plugin enable/ disable for an explicit MANAGED_PLUGINS allowlist (3 entries) + PROTECTED_PLUGINS denylist for always-on (caveman, security- guidance, superpowers). MCP magic delegated to toggle-external.sh. Other MCPs stay advisory because each needs specific config. Adds 4 new profiles: web, seo, web-full, backend. - Journal: 2026-05-04 entry summarizing the v1 ship, then a follow-up block for the v2 extension (new profiles, plugin auto-toggle, tie- breaker for `current`). - TODO.md: marked done — v1 (Skill profiles) section and v2 (Profile system v2 — extension plugins/MCPs/CLIs) section, both with their full subtask lists. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>