Source: Apr 2026 conventions audit
Problem
cc has no CHANGELOG.md. Marketplace publishers benefit from a structured changelog because:
- Users see what changed when reviewing `claude plugin update cc`
- Future cc-using skills/plugins can declare version pins
- Anthropic's plugin marketplace UX may surface CHANGELOG content
Fix
`plugins/cc/CHANGELOG.md` following keep-a-changelog format. Backfill from git history:
```markdown
Changelog
[3.1.0] - 2026-04-28
Changed
- Single `cc` MCP tool with action-discriminated args (was 5 separate tools)
- Slash command moved to skill (`skills/sessions/SKILL.md`)
- Lifecycle unifies heartbeat/tail/watcher/db tear-down
Added
- TTL cache for liveSessions + recentFilesFor (prompt-cache stability)
- 35 unit tests for action / cache / lifecycle
Removed
- `subscribe`, `unsubscribe`, `ask`, `answer` verbs (never wired)
- `cc_cleanup` from MCP surface (still runs on shutdown)
Deprecated
- Legacy tool names `cc_sessions` / `cc_send` / `cc_announce` / `cc_check` still accepted with stderr warning; removed in v3.2
[3.0.1] - 2026-04-28
- Plugin cache invalidation via version bump
[3.0.0] - 2026-04-26
- Migration from v2 verb-dispatch tool to 5 typed tools (now reverted in 3.1)
- State directory moved to `~/.claude/channels/cc/` per imessage convention
```
Acceptance criteria
Source: Apr 2026 conventions audit
Problem
cc has no CHANGELOG.md. Marketplace publishers benefit from a structured changelog because:
Fix
`plugins/cc/CHANGELOG.md` following keep-a-changelog format. Backfill from git history:
```markdown
Changelog
[3.1.0] - 2026-04-28
Changed
Added
Removed
Deprecated
[3.0.1] - 2026-04-28
[3.0.0] - 2026-04-26
```
Acceptance criteria