Set up the PostHog Slack app
Contents
You need two integrations to use @PostHog in Slack: one workspace-wide Slack connection per PostHog project (set up by a project admin), and a personal GitHub connection per teammate who wants to ship code.
- 1
Connect Slack to your project
RequiredHead to the Slack integration page in PostHog and click Add to Slack. Approve the requested scopes – you'll need to be a project admin to install.

To talk to the bot in a channel, @-mention it – Slack will prompt you to invite it – or invite it explicitly with
/invite @PostHog. When it joins a channel it posts a short greeting with example prompts. When new teammates join your Slack workspace, they get a welcome DM from the bot introducing itself and what it can do. You can also skip channels entirely and DM the bot directly.The first time the bot sees a mention, it matches your Slack email to your PostHog account, so make sure you're signed in to the same org on both sides.
Slack email doesn't match your PostHog email?Link the accounts instead. When email matching fails, the bot replies with a Link my PostHog account button – click it and sign in with Slack to connect the two. You can also link (or unlink) anytime from the App Home tab under Linked accounts, or from Settings → Personal integrations in PostHog. A linked account always wins over email matching.
Slack Connect channels require one-time approvalIn externally-shared (Slack Connect) channels, the bot asks for one-time approval before answering. The first time someone mentions
@PostHogin a shared channel, the bot posts an ephemeral prompt visible only to the mentioner. An org member clicks Allow PostHog in this channel to enable it – after that, mentions in the channel work normally without further prompts.This prevents the bot from accidentally surfacing data to external members of the channel.
Reconnect if you installed before 2026-05-04The bot picked up new OAuth scopes on 2026-05-04 (
app_mentions:read,users:read,users:read.email,chat:write,channels:history,groups:history,reactions:write). If your workspace was connected before that date, head back to Add to Slack and re-approve – otherwise the bot will fail with a missing-scope error on the next mention. - 2
Connect your personal GitHub
RequiredA personal GitHub integration is required for the coding agent to run. Without one, the bot refuses to start any repo-bound task and replies in-thread:
I can't start this task yet – you haven't connected your personal GitHub. Connect it so I can open the pull request as you, then mention me again.
This is a hard block on the whole task, not just the PR step – the agent doesn't plan, edit, or run anything until you've connected GitHub. Each teammate who wants to ship code connects their own account at Settings → Personal integrations and clicks Connect GitHub. You can connect multiple accounts or organizations – the agent uses them for repo access, commit attribution, and pull request authorship.
PRs can't be authored under the bot itself – the agent always commits and opens PRs as whichever teammate triggered the task.
GitHub's Save button is disabled?If GitHub's Save button is greyed out at the end of the install flow, toggle between All repositories and Only select repositories to wake it up – it's a quirk of the GitHub OAuth UI.
If you start a task before connecting, the agent stops and posts a Connect GitHub button in the thread. Click it, finish the OAuth flow, and re-mention the bot – the task picks up where it left off.
- 3
Pick a project
OptionalA single Slack workspace can be connected to more than one PostHog project. When that happens, the bot won't guess which project your mention belongs to – it asks you to pick one first:
This Slack workspace is connected to multiple PostHog projects:
•
42– Acme · Production •7– Acme · StagingPick one on the app's Home tab, or set your default with
/posthog project <id>.Pick a project once and the bot remembers it for you across channels and threads in this workspace. The Home tab has a dropdown under Project routing. The commands do the same thing from wherever you are:
Command What it does /posthog projectShow which PostHog project your mentions route to in this workspace, and list the alternatives /posthog project <id>Set the PostHog project your mentions route to in this workspace /posthog project workspace <id>Set the workspace-wide default project (Slack admins/owners only) A slash command is visible only to you, so you can change your routing without posting a message everyone in the channel sees. It reads the same in a DM.
The bot resolves a target with this precedence: the project your message names → thread context (continuing an existing task) → your personal default → workspace-wide default (set by a Slack admin) → the only connected project → the list above. Personal defaults always win over the workspace fallback, so each teammate can route their own mentions independently.
If your workspace is only connected to a single PostHog project, you can skip this step – the bot routes there automatically.
- 4
Next steps
RecommendedOnce both integrations are connected and (if needed) you've picked a project, you're ready to start a task. The full command reference covers everything
@PostHogaccepts.