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.iml. 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 API key for any supported AI provider (Anthropic, OpenAI, Gemini, Mistral, Ollama or OpenRouter) |
| 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.
AI provider
Any supported AI provider works here. This template ships configured for the
anthropic tool; swap that task's tool to anthropic, openai, gemini, mistral,
ollama or openrouter to use the provider you already have, and point its
credential at your own key. The step is a plain summarise/classify call — nothing in
it is vendor specific. See requires.ai in the manifest.