integrate-coding-agentlisted
Install: claude install-skill nielsmadan/juggler
# Integrate Coding Agent
## Overview
Juggler no longer normalizes agent events itself. **hooklinesinker** (bundled binary, separate
repo at `~/wrksp/hooklinesinker`) owns hook installation, event→phase mapping, and the session
ledger; Juggler consumes protocol-1 status events over its sink and renders them. Adding an
agent therefore forks on one question:
**Is the agent already supported by hooklinesinker?** (`hooklinesinker hooks install --agent`
accepts it / it appears in hooklinesinker's README agent table.)
- **Yes** → Path A below. Juggler-side only, a few hours including docs.
- **No** → Path B: add it to hooklinesinker first, then come back to Path A.
- An agent that *cannot* go through hooklinesinker (no child-process hooks and no scriptable
plugin API) needs a bespoke legacy bridge like Antigravity's — that is a design discussion
with the user, not a checklist; read `AntigravityHooksInstaller.swift` and the legacy
`UnifiedHookPayload` path in `HookServer.swift` before proposing one.
## Path A: agent already in hooklinesinker
No notify script, no installer, no `HookEventMapper` entry, no `AppStorageKeys` flag (only
opt-in agents — Codex, Antigravity — have one), no `uninstall.sh` block. The full set:
### Code
| File | Change |
|---|---|
| `juggler/Services/HooklinesinkerClient.swift` | Add the `HooklinesinkerAgent` case. Raw value **must equal the wire name** (kebab-case, from hooklinesinker's `src/protocol.rs`); the argv test over `allCases` then pins i