GitHub Issue To Slack
Fetch recent GitHub issues for a repository, summarize them with AI, and post the summary to a Slack channel so your team sees issue activity without watching the repo.
Use case
You maintain a GitHub repository and want issue activity — open bug reports and recently updated tickets — surfaced in a Slack channel automatically. Run this workflow on a schedule (e.g. every 15 minutes) and the team gets a fresh, readable digest of the repo's current open issues.
What it does each run
- fetch-issues (
github) — calls the GitHublist-issuesoperation for the configured repo, sorted by most recently updated. The connector publishesresult(the API response as a JSON string) andstatus(the HTTP status code). - summarize-issues (
anthropic) — reads{{fetch-issues.result}}and produces a concise, Slack-friendly summary, published asanswer. - post-to-slack (
slack-post) — posts{{summarize-issues.answer}}to the target Slack channel via an incoming webhook. Publishesstatusandresponse. - notify (
message) — sends a contact notification recording the GitHub fetch status ({{fetch-issues.status}}) and the Slack post status ({{post-to-slack.status}}). The workflow also has analertOnErrornotification to theintouchuser so failures page you.
Required credentials
Each connector's apiKey / webhookUrl property is set to the placeholder
<set via credential> in workflow.yaml. You supply the real value — via an InTouch
credential reference or a runtime environment variable. Nothing is hardcoded.
| Task | Property | What you provide |
|---|---|---|
| fetch-issues | apiKey |
A GitHub Personal Access Token with repo read scope |
| summarize-issues | apiKey |
An Anthropic API key |
| post-to-slack | webhookUrl |
A Slack incoming-webhook URL for the target channel |
This workflow depends on connectors that authenticate against external services. The GitHub, Anthropic, and Slack credentials must be configured before the workflow will run.
Configuration
Edit the owner, repo, and state properties on the fetch-issues task and the
channel on post-to-slack to match your repository and Slack workspace. Attach a
schedule (e.g. every 15 minutes during business hours) for continuous delivery.