# Set up a channel for Linear **Linear:** MAN-14 — https://linear.app/manglasabang/issue/MAN-14/set-up-a-channel-for-linear **Status:** Done **Project:** junwonhome ## Description Polling daemon at `channels/linear/` that watches for new comments on any Linear issue and responds via ClaudeBridge. ## How it works 1. Polls Linear GraphQL API every 60s for comments created since the last poll 2. Filters out Ace's own comments (only responds to others) 3. Dedup: if Ace already replied after a comment, skips it (prevents duplicates on restart) 4. For each new comment: fetches the full issue + all comments for context → spawns a ClaudeBridge session → Claude reads the issue and responds → response posted as a Linear comment 5. Per-issue session continuity via ClaudeBridge resume (follow-up comments on the same issue reuse context) ## Files * `channels/linear/index.ts` — main daemon * `channels/linear/run.sh` — shell launcher (sources keychain) * `channels/linear/install.sh` — launchd service installer * `channels/linear/com.manglasabang.linear.plist` — launchd config * `secretariat/keychain/linear.env` — API key ## Runs as launchd service `com.manglasabang.linear` — auto-restarts on crash, starts on boot."