From claude-skills
Use when generating a weekly Slack digest, summarizing channel activity, finding key discussions, or checking what happened in Slack. Trigger phrases: slack digest, slack summary, channel digest, what happened in slack.
How this skill is triggered — by the user, by Claude, or both
Slash command
/claude-skills:slack-digestThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Produce a weekly digest of key Slack threads from configured channels using Slack semantic search MCP tools. The digest surfaces high-engagement threads, groups by topic, and highlights unanswered questions.
Produce a weekly digest of key Slack threads from configured channels using Slack semantic search MCP tools. The digest surfaces high-engagement threads, groups by topic, and highlights unanswered questions.
See _shared/report-config.md for the standard config resolution pattern.
Config schema (~/.claude/skills/slack-digest/config.json):
channel_ids: list of Slack channel ID stringslookback_days: number (default: 7)Required scope: at least one channel_ids entry.
Search Slack channels. See _shared/slack-search.md for the standard Slack search workflow. Use query terms: "discussion update question issue decision" with size=20 per channel. Count replies per thread from the full thread fetch — this is the engagement signal.
Classify threads. For each thread, determine:
? or start with "does anyone", "how do we"; decisions contain "let's go with", "we decided", "agreed"; incidents contain "incident", "outage", "SEV", "pages".Identify unanswered questions. A thread is "unanswered" if: it was classified as a question AND has fewer than 3 replies AND no reply contains a clear answer (code block, link, or statement without a trailing ?).
Group threads by topic category. Within each category, sort by engagement (highest first).
Generate report. Output markdown:
## Slack Digest — {date}
Channels: {channel names or IDs} | Period: last {lookback_days} days | Threads analyzed: {N}
### Summary
- Total threads: {N} | High engagement: {N} | Unanswered questions: {N}
### Unanswered Questions (action needed)
(For each: channel, thread summary, who asked, when, permalink)
### Key Decisions
(For each: thread summary, decision outcome, participants, permalink)
### Incidents & Outages
(For each: thread summary, status, permalink)
### Active Discussions
(For each: thread summary, reply count, key participants, permalink)
### Announcements & FYI
(Compact list: summary, permalink)
Deliver as HTML. Follow the shared HTML delivery pattern in _shared/html-delivery.md. Report name: slack-digest. TLDR includes thread count, unanswered questions count, and top discussion topic.
Terminate. Report is complete when all channels are searched and threads are grouped with permalinks.
fetch-slack-thread to get the complete conversation before classifying.| Excuse | Reality |
|---|---|
| "I searched the channel and summarized the top results." | RAG results are relevance-ranked, not engagement-ranked. You must fetch full threads to count replies and assess engagement. |
| "There were too many threads so I sampled a few." | Increase the size parameter. The digest must cover the full set of significant threads. |
| "I classified the thread from the snippet alone." | Snippets miss context. Fetch the full thread before classifying resolution status. |
| "No unanswered questions found, so I skipped that section." | Still include the section with "None" — it's positive signal that questions are getting answered. |
| "I can't get the channel name from the ID." | Use the channel_id in the report. The reader knows their own channels. Don't block on cosmetic lookups. |
| Label | Meaning |
|---|---|
report_complete | All channels searched, threads fetched and classified, grouped with permalinks |
report_partial | Some channels searched but thread fetch failed for some — noted which |
no_threads_found | No threads in the time window — channels may be low-traffic or IDs wrong |
api_error | Slack RAG API unreachable or returning errors |
--no-html or upload failed with noted fallback)npx claudepluginhub npow/claude-skills --plugin claude-skillsCreates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.