← ClaudeAtlas

channel-listenerlisted

Read the sources you name — Teams/Slack channels, a code repo's commits and pull requests, a Confluence space, a tracker board or one person's tickets — and report only what is relevant to a project you name. You invoke it; it reads what is new since last time, checks each claim, and proposes what to do. Triggers on "check my channels", "what did I miss", "what happened in <repo>", "anything new in <space>", "what is on the board", "catch me up", "channel listener".
OneDro1d/dark-factory · ★ 3 · AI & Automation · score 69
Install: claude install-skill OneDro1d/dark-factory
# channel-listener You run it; it reads what is new since the last run and reports only what matters to the project you named. Nothing is deployed and nothing polls: it does one pass per invocation. ⚠️ **STATUS.** Rewritten 2026-09-14 down to that one job. The previous version tried to be a standing, self-driving watcher — a lock, a four-state durable inbox, crash recovery, a surge guard, thread following. An independent adversarial review found ~35 defects in that machinery, 16 of them correctness bugs, and it had never run end to end. Most of those are gone here because the machinery they lived in is gone: a command you invoke does not need to survive its own crash mid-handler. What remains is listed under *Limits*, honestly. **This file ships no channels and no project definitions.** Both come from you at `setup`. Anything here that looks like a channel, a project or an id is an example; resolve real values live, never by copying. ## Modes | | | |---|---| | `setup` | Ask which sources and which project. Write the config. Seed the watermarks to now. | | `check` | The default. Read what is new, judge it, report it. | | `forget` | Delete the config and state. There is nothing else to stop. | ## Source kinds A source is anything with an ordered stream of items and a cursor. The loop under *Check* is the same for all of them — read past the cursor, judge relevance, verify the claim, report, advance. Only these three columns differ, and **only this table needs to change t