feat(agent): deprecate and completely remove cline agent support

- Delete adapters/cline.py and unregister from registry.py
- Remove cline branches from lib.sh and all 8 skill scripts (create, resume, stop, status, reconcile, update_yaml_resumed, resolve_session_id, orc_onboard)
- Narrow own-key mapping dictionaries across lib_py core modules to 4 supported agents
- Delete cline-exclusive tests and retarget shared fixtures to grok/hermes/claude
- Update skills documentation and installation guides (439 passed, 0 failures)
- Archive cline deprecation consensus and review reports
This commit is contained in:
2026-08-28 22:38:48 +09:00
parent e0c0c107f5
commit f57cd5cdde
40 changed files with 530 additions and 411 deletions
@@ -0,0 +1,26 @@
# Re-review: `cline_deprecation_opinion.md` (Rev.3)
- **Reviewer**: `reviewer-creator-grok-01`
- **Job**: `d1fe1a99` (follow-up to `0a056794` `[VERDICT: NOT PASS]`)
- **Artifact**: `.agents/reports/cline_deprecation_opinion.md` (untracked; no skill/framework code in the diff)
## Prior blocking items
| ID | Rev.2 defect | Rev.3 |
|---|---|---|
| **F1** | Claimed no `--api-key`-override exists | **Fixed.** §3.2 and §6.2 cite `-k, --key <api-key>` as spawn/run-start injection, bound as not mid-task refresh / not modal suppression. `--headless`/`--non-interactive` absence still holds against live `cline --help`. |
| **F2** | Claimed claude drift-C has `sibling_claimed` | **Fixed.** §2.3 / §6.1: only agy (~692) and hermes (~742); claude (~637) and cline (~785) both lack it. |
| **F3** | “All three independently demand a drift-C fix either way” | **Fixed.** Hermes: condition of RETAIN. Planner: urgent if RETAIN. Grok: delete the block if REMOVE. |
## Remainder (non-blocking)
- Honest 21 split preserved. Grok **REMOVE** in §1/§4 is accurate (no assignable UUID; unattended/modal gap; no live cline session).
- §5 blast-radius constraints still match `e0916903` (keep `_pane_quiescent` / paste-normalize; retarget `test_c1_*`; no drive-by `cline.py` delete).
- §2 heading still says “fully agree” while point 3 now states a disposition split. Content is honest; heading is slightly loose. Not worth another loop.
- Groks **REMOVE** vote is unchanged. This PASS is on the synthesis, not a vote flip.
No `[ESCALATE: PLANNER]`. GM still owns REMOVE vs conditional-RETAIN.
---
[VERDICT: PASS]
@@ -0,0 +1,38 @@
# Review: Complete `cline` removal
- **Reviewer**: `reviewer-creator-grok-01`
- **Job**: `d78e819e`
- **Scope**: Diff vs `cline_deprecation_opinion.md` §5 blast radius. No skill/framework files were edited by this review.
## §5 checklist
| Requirement | Result |
|---|---|
| Delete `adapters/cline.py`, unregister in `registry.py` | **Met.** Adapters dir is `claude.py` / `agy.py` / `hermes.py` / `grok.py` only. |
| Remove cline from lib.sh + skill scripts | **Met.** Zero `cline` hits under `.agents/skills/` (kind map, spawn-token strip, `send_keys_safe` case, create/resume/stop/status/reconcile/orc_onboard/run_loop, atomic_yaml / verify_session / workspace_uuid own-keys). |
| Drop `cline_re` and cline `--id` / `CLINE_SESSION_ID` arms | **Met.** `is_valid_id` is UUID-only. |
| Keep `_pane_quiescent`, whitespace paste-normalize, paste-skip list (minus cline membership) | **Met.** Skip list is now `claude\|agy\|grok`. Hanging-indent comment depersonalized, logic kept. |
| Retarget, dont drop, TUI fixture tests | **Met for `test_c1_*`.** Strong/weak readiness uses a `mocktiered` facts stub; modal dialog test uses claudes fullscreen upsell; SKS suffix cases use grok/claude/hermes/agy. `test_o31` (node launcher + non-UUID id) was **deleted**, which is correct: that code path no longer exists and cannot be retargeted to a UUID agent. |
| Historical `.agents/reports/**/*cline*` untouched | **Met.** Diff does not touch those trees. `VERSIONS.md` / `IMPROVEMENTS.md` still mention cline as changelog history — leave them. |
| Single coordinated change | **Met.** 31 files, 411/+135. Not a `cline.py`-only delete. |
| Other agents unharmed | **Met.** hermes `--yolo --accept-hooks` spawn fallback, grok assigned-UUID YAML branch, claude/agy paths intact. |
## Tests
```
pytest tests/ → 439 passed in 614.62s
```
Zero failures. Adapter contract, TUI readiness, orc-onboard, tier1/tier2 all green after the 5-tuple shrink.
## Residual nits (do not block)
1. `create_session.sh` fallback `CMD_FULL` case still omits `grok` (primary path is `spawn-spec`). Pre-existing, not introduced by this removal.
2. Create `SKILL.md` `cmd_full` table still lists only claude/agy. Docs lag, not runtime.
3. Changelog files (`VERSIONS.md`, `IMPROVEMENTS.md`) still name cline; that is audit trail, not live surface.
No leftover live dispatch, no deleted shared TUI helpers, no regression in the remaining four agents. No `[ESCALATE: PLANNER]`.
---
[VERDICT: PASS]