Skip to content

chameleon 4.5.15

Choose a tag to compare

@github-actions github-actions released this 26 Jul 09:05

Added

  • Chameleon and superpowers compose when both are installed. The two plugins occupy
    complementary layers — superpowers shapes process, chameleon shapes output and supplies facts —
    but neither knew the other existed at runtime, so a session got two independent contracts and no
    rule for sequencing them. The only cross-references lived inside chameleon skill bodies, which
    are read after the skill is already invoked, too late to route. SessionStart now appends a
    ~174-token routing paragraph naming which skill owns review, receiving review, and debugging,
    and stating that /chameleon-deep-work is self-contained so brainstorming is not in its path —
    a contract that was previously undefined, since deep-work forbids questions and brainstorming is
    a gate of nothing but questions. The full version lives in using-chameleon; the digest carries
    its summary. CHAMELEON_PEER_ROUTING=0 disables it.
  • Peer detection answers "will it be active", not "do its files exist." Existence checks only —
    no byte of the peer plugin's content is ever read or rendered. Claude Code's own registry is
    authoritative when readable, so a leftover cache directory cannot keep the block alive after an
    uninstall; a plugin switched off via enabledPlugins in the USER-level ~/.claude/settings.json
    reads as absent. That check is user-level only: a plugin disabled in a project's own
    .claude/settings.json still reads as enabled, so the block can appear in a session where
    superpowers does not load. Both rungs are bounded, because SessionStart's wrapper caps the whole
    Python emission at 3 seconds and loses the entire injection on overrun.
  • The routing block is added only to a digest that survived the budget fit whole, and only if it
    then fits in what remains — so optional prose can never cost curated digest content, and can
    never outlive it either. Both directions are closed by construction rather than by window.