3.20.0 (2026-07-22)
Features
- add native Devin CLI plugin support (#1062) (0fffdc7)
- ce-babysit-pr: add autonomous watch-loop over review, CI, and branch state (#1102) (bc00029)
- ce-brainstorm: surface the workflow spine as tasks (#1165) (d163418)
- ce-code-review: port multi-provider cross-model adversarial mechanics (#1128) (259eedb)
- ce-compound: add lightweight headless depth (#1143) (874555f)
- ce-doc-review: cross-model judgment pass with attested multi-provider selection (#1092) (cc970bc)
- ce-handoff: add session continuity skill (#1162) (cbf7347)
- ce-ideate: generalize issue-tracker ideation to any tracker (#1209) (80550a8)
- ce-plan,ce-brainstorm: dispatch reasoning-heavy steps to Fable on Claude Code (#1091) (ee2fee4)
- ce-plan,ce-brainstorm: elevate reasoning to a chosen model on any harness (#1206) (5f48fb5)
- ce-pov: add repository-grounded model panels (#1145) (51295a6)
- ce-work: add cross-model implementation engine (#1154) (30df24a)
- cline: add native skills install support (#1033) (3519336)
- lfg: route planning and implementation stages per-directive (#1220) (ece51fd)
- pipeline: carry session-settled decisions across the pipeline (#1136) (d380903)
Bug Fixes
- ce-babysit-pr: accept UTC Z timestamps on Python 3.9 (#1173) (f969a4d)
- ce-babysit-pr: bound stalled review signals (#1180) (d1bff96)
- ce-babysit-pr: clarify watch feedback and status (#1139) (9f48988)
- ce-babysit-pr: enforce fixed invocation budgets (#1178) (424acdb)
- ce-babysit-pr: gate checkout handback on push access, not fork status (#1190) (4927d7a)
- ce-babysit-pr: gate settle escalation behind a rejected wake (#1127) (c4f5357)
- ce-babysit-pr: handle dependent PR chains (#1148) (a51d73e)
- ce-babysit-pr: handle moving base during watch (#1181) (8163a96)
- ce-babysit-pr: prevent stacked watcher wakes (#1155) (e745e96)
- ce-babysit-pr: route feedback through agent judgment (#1122) (3684201)
- ce-babysit-pr: spend the invocation budget in active watch time, not wall-clock (#1216) (52be0d1)
- ce-babysit-pr: sweep a validated review-finding class in one pass, not one per round (#1111) (9a2e18d)
- ce-brainstorm: check platform aggregators first (#1160) (40f8451)
- ce-brainstorm: preserve multi-area project continuity (#1210) (7d61a8a)
- ce-brainstorm: stop prompts overstating what the run will do (#1166) (15a11d5)
- ce-code-review,ce-doc-review: make cross-model peers survive the tool-call ceiling (#1135) (4c63fd2)
- ce-code-review: dispatch local reviewers as a foreground concurrent batch (#1214) (987c3be)
- ce-code-review: make codex stdout-recovery JSON extractor string-aware (#1207) (880231f)
- ce-code-review: move codex adversarial peer to gpt-5.6-luna at xhigh (#1208) (10bdacd)
- ce-code-review: recover oversized adversarial reviews (#1200) (b3c38a2)
- ce-code-review: right-size review orchestration (#1159) (80ec750)
- ce-code-review: skip cross-model adversarial peer when the diff is empty (#1205) (e5ed7e6)
- ce-code-review: surface load-bearing line provenance in findings (#1124) (c0414b1)
- ce-code-review: tool-adaptive evidence ladder for callsite recall (#1191) (6493b8d)
- ce-commit-push-pr: reconcile complete branch scope (#1179) (cd2bdd3)
- ce-commit-push-pr: remove single-model attribution (#1132) (3a6486e)
- ce-commit-push-pr: require explicit branding (#1133) (5f21dd0)
- ce-commit-push-pr: respect repository PR templates (#1174) (6ec2c90)
- ce-commit-push-pr: size PR descriptions by reviewer decision cost (#1088) (f794333)
- ce-compound,ce-compound-refresh: don't flag {{...}} in code as scaffold (#1213) (6c7678a)
- ce-compound: auto-select mode and probe session history (#1103) (7f86be9)
- ce-compound: detect Claude sessions with long metadata preambles in extract-skeleton (#1082) (494c377)
- ce-compound: keep Discoverability Check report-only in headless (#1119) (cf6d37f)
- ce-compound: run the session-history probe in headless mode (#1117) (6fb9788)
- ce-doc-review: fail fast when document paths are not on disk (#1079) (415b472)
- ce-doc-review: make findings decidable without close doc knowledge (#1201) (a0d11c4)
- ce-doc-review: make rendered findings self-contained without the document (#1140) (1f29eab)
- ce-doc-review: show bulk preview before confirmation (#1150) (1709383)
- ce-doc-review: withdraw findings the user's earlier answers resolved (#1202) (d4b3401)
- ce-explain: harden portable explainer delivery (#1195) (3e2f372)
- ce-explain: stop over-triggering on operational questions (#1149) (2641f1f)
- ce-plan: make cross-skill invocation host-generic (#1126) (ad3fb4c)
- ce-plan: recommend ce-work over /goal in post-plan menu (#1085) (d9f2569)
- ce-pov: clarify panel privacy and consent (#1167) (37e030a)
- ce-pov: document peer wait arguments (#1168) (32fae6c)
- ce-pov: identify supplied approaches in approach-set verdicts (#1189) (7d83515)
- ce-pov: oracle panel prompting, disclosure, and grounding fixes (#1219) (7403e53)
- ce-pov: preserve independent reviews and Claude auth (#1175) (54d871e)
- ce-proof: migrate to Proof v3 and owner credential lifecycle (#1121) (22c23d2)
- ce-resolve-pr-feedback: post replies as real multiline Markdown (#1199) (5dbce69)
- ce-resolve-pr-feedback: stop replying into an unsubmitted review (#1196) (a5edad4)
- ce-simplify-code: scope necessity checks safely (#1151) (f962eef)
- ce-simplify-code: self-skip no-yield scopes; document auto-invoke (#1113) (556816a)
- ce-test-browser: prefer host-native browser drivers (#1097) (1f6a70d)
- ci: validate the plugin manifest under --strict (#1129) (1a7a4c1)
- cli: bump sonnet and opus model aliases to latest generations (#1083) (b498e7a)
- cli: quote reserved YAML scalar strings in frontmatter (#1215) (47f784e)
- cli: strip legacy Codex tool map instead of upserting it (#1118) (ca47442)
- cross-model: scope peer auth failures to execution context (#1211) (f0e188c)
- droid: match tool names on word boundaries when inferring agent tools (#1176) (a60bd82)
- grok: support compound-engineering as a native Grok Build plugin (#1086) (2cfe3c2)
- grounding: remove shared repo profile cache (#1172) (c184234)
- kiro: don't rewrite absolute paths as slash command skill refs (#1171) (11e3d46)
- lfg: allow agent invocation for the autonomous brainstorm handoff (#1116) (a7d8505)
- lfg: make Step 9 babysit invocation non-skippable on clean-looking CI (#1217) (4f0df6e)
- marketplace: unblock Claude Desktop installation (#1163) (a250abd)
- models: align plugin behavior with GPT-5.6 (#1087) (6129022)
- name what document identifiers refer to in rendered findings and POVs (#1198) (74ba763)
- opencode: register CE skills as /commands in opencode plugin (#1185) (c30fe1d)
- peer-job-runner: clear error when os.fork is unavailable (#1186) (615131c)
- pi: preserve user-managed symlinks and unmanaged paths on install (#1089) (bfa9dd4)
- repo-profile-cache: key entries by profile-input digest (#1134) (426f4d4)
- review: file carried residuals as tracker tickets, linked to the PR (#1221) (692c9cf)
- review: keep cross-model schemas strict-compatible (#1153) (0c1bc0a)
- review: recover from dispatch-script crashes before degrading cross-model checks (#1187) (ddd82d2)
- scratch: isolate reusable temp state by user (#1177) (03603fa)
- skills: gather skill context at runtime, not load-time pre-resolution (#1109) (6f37cc8)
- skills: guard bash blocks against newline-flatten breakage (#1107) (8d81a59)
- skills: make pre-resolution commands shell-portable so skills load under PowerShell (#1078) (7fd155d)
- skills: make SKILL_DIR script calls survive newline flattening (#1105) (cb892f5)
- skills: remove Claude-only $ARGUMENTS from skill bodies (#1110) (c7180ad)
- skills: render invocations for the active harness (#1218) (868fb54)
- targets: extend user-symlink preservation to codex and opencode writers (#1094) (406ead1)
- targets: guard writers against ancestor-symlink traversal on install (#1100) (a231809)
- workflow: preserve task visibility across CE stages (#1170) (8197ca5)