Integrations

Slack integration

Install and use the Performance Blocks Slack integration to DM Henry, capture observations from messages, and receive summary deliveries.

Plan availability: This integration is available on the Agentic plan. Team plan customers can upgrade in Settings → Billing.

The Slack integration brings Henry agent into the chat surface where most teams already coordinate. Once installed, every Slack user in your workspace can DM Henry, run slash commands to capture observations, and receive summary deliveries in channels. The integration is designed so that the most common capture — "praise this person for that thing" — is a single line, not a context switch.

This article covers what the integration does, how an admin installs it, how individual users link their account, the slash command pattern, capturing from message threads, receiving notifications, and what to do when something goes wrong.

What the Slack integration does

The integration adds three capabilities to your Slack workspace:

  1. DM with Henry. Open a direct message with the Henry app and treat it like a chat with a smart assistant. Ask for a teammate's recent observations, draft a summary, run a guided flow, or capture a quick note.
  2. Capture observations from message context. When you see a message worth recording — praise, a customer complaint, a tricky decision — you can route it to Henry without leaving the thread. Henry pre-fills the observation with the message content, the people involved, and a link back to the source.
  3. Receive summary deliveries. Channels can subscribe to summary digests so weekly or monthly summaries arrive where the team already reads.

Henry in Slack is the same Henry as the web app. It has the same context (your team, your knowledge base, your blocks) and the same guided flows. The only difference is the surface.

Prerequisites

Before installing, confirm:

  • Your org is on the Agentic plan.
  • An org admin has enabled henryAgentEnabled and henryAgentSlack in Settings → Features.
  • You have admin permission in your Slack workspace (or have someone who does).

If henryAgentSlack is greyed out in Settings, the master henryAgentEnabled toggle is off — turn that on first.

Installing the Slack app (admin step)

The Slack integration is installed once per workspace by an admin via OAuth. The flow is initiated from inside Performance Blocks so that the install is bound to your specific organization.

  1. Go to Settings → Integrations → Slack.
  2. Click Connect Slack. A new tab opens to the OAuth provider's authorize page.
  3. Sign in to Slack if prompted, and choose the workspace you want to install into.
  4. Review the requested permissions and click Allow.
  5. The browser is redirected back to Performance Blocks. The Slack panel now shows the workspace name and a green "Connected" status.

A few notes about the install:

  • Slack admins may have approval rules that require an admin to whitelist the app before non-admin users can see it. If your install hangs at "Pending approval," ask your Slack workspace admin to approve the app request.
  • The OAuth grant is scoped to one Slack workspace. If your company has multiple workspaces (for example, a production workspace and a guest workspace), repeat the install once per workspace.
  • The connection is stored against your Performance Blocks organization. Disconnecting from Slack also revokes access in Performance Blocks.

After install, the Henry app is visible in the Slack workspace's app directory and in the Apps section of the Slack sidebar.

Connecting individual Slack accounts

Installing the app makes Henry available in the workspace, but each user must still link their Slack identity to their Performance Blocks user account. This is what allows Henry to act on the right person's behalf — capturing observations as you, scoped to your team.

The first time you DM the Henry app or use a slash command, Henry replies with a one-time link:

Hi! I need to connect your Slack account to Performance Blocks. Click here to link your accounts.

  1. Click the link.
  2. You are taken to Performance Blocks. If you are already signed in, the link completes immediately. If not, sign in first.
  3. Henry confirms the link in your Slack DM.

Once linked, Henry knows who you are and which team you can act on. The link is per-Slack-user; managers and employees both link their own accounts.

If a user leaves your Slack workspace, their link is automatically severed. If they leave Performance Blocks, the same is true.

Slash commands

The integration registers a top-level slash command for Henry. The exact verbs are visible by typing the slash command and pausing — Slack will autocomplete subcommands. The pattern is consistent with the rest of Henry's verbs:

/henry observe          Capture a quick observation
/henry summary          Generate a summary for a teammate
/henry ask              Ask Henry a question about your team
/henry help             List the available subcommands

Each subcommand opens a Slack modal so you can fill in details without leaving the channel. For example, /henry observe opens a form with fields for who the observation is about, what happened, and any tags or blocks to attach.

Slash commands are visible in every channel and DM where the Henry app has been added or where you have permission to use them. If a command is not autocompleting, type the literal text and submit — Slack will tell you whether the command is recognized.

Capturing observations from message context

The most powerful Slack capture pattern is recording an observation from an existing message thread. You don't have to retype what was said — Henry already knows.

There are two ways to do this:

Message action (right-click / overflow menu)

  1. Hover over the message in Slack.
  2. Click the More actions icon (the three dots) and choose Capture observation with Henry from the list.
  3. A modal appears with the message content pre-filled. Henry attempts to identify the person mentioned (e.g., the recipient of the praise) and pre-selects them.
  4. Edit the observation text if needed, choose tags or blocks, and submit.

The captured observation includes a link back to the original Slack message so reviewers can see the source thread.

Forward to Henry DM

  1. Click the Share message icon on a message.
  2. Choose the Henry app DM as the destination.
  3. Send. Henry replies with a draft observation and asks for confirmation before saving.

Both flows result in the same end state: an observation in Performance Blocks attributed to you, about the right person, with a link to the source.

Things to know about message-context capture:

  • Only messages you have permission to read can be captured. Henry does not bypass channel privacy.
  • The pre-fill is a best-effort guess. Always review who Henry has selected as the subject before saving.
  • For threads with multiple participants, Henry will ask you which person the observation is about.

Receiving summary deliveries in Slack

Channels can subscribe to summary digests. This is configured per channel:

  1. In the channel where you want deliveries to land, type /henry subscribe.
  2. A modal asks what you want delivered: weekly team summaries, monthly summaries, or a custom cadence.
  3. Choose a delivery time (defaults to 9 AM in your channel's timezone).
  4. Confirm.

Henry posts a single message at the chosen cadence with a short digest and links to the full summaries in the web app. To unsubscribe, type /henry unsubscribe in the same channel.

Subscription rules:

  • Anyone in the channel can subscribe; only the subscriber or an admin can unsubscribe.
  • A channel can have multiple active subscriptions (e.g., weekly team summary plus monthly per-person summaries).
  • Henry only delivers content the channel members are entitled to view. If the channel includes people outside the team, Henry restricts the digest accordingly.

Notifications and DM behavior

Beyond scheduled summaries, Henry can DM you about a few specific events:

  • A summary you requested has finished generating.
  • A guided flow you started in the web app needs your input.
  • A captured observation needs clarification (e.g., Henry could not identify the subject).

These are direct messages to you only, not channel posts. You can mute Henry's DMs from the Slack notification settings if you want to check in on your own schedule.

Disconnecting and revoking

There are three layers of disconnect, depending on what you want to do.

Disconnect your individual account

If you want to unlink your Slack identity from Performance Blocks but leave the workspace install in place:

  1. In Performance Blocks, go to Settings → My account → Connected accounts.
  2. Find the Slack entry and click Unlink.

Or, in Slack, DM Henry the word unlink. Henry will confirm and remove the link.

After unlinking, slash commands and DMs to Henry will prompt you to link again the next time you try to use them.

Disconnect the workspace install (admin)

If you want to remove the Henry app from your Slack workspace entirely:

  1. Go to Settings → Integrations → Slack.
  2. Click Disconnect.
  3. Confirm. The app is uninstalled from Slack and the OAuth token is revoked.

You can also uninstall from the Slack side, in the workspace's Apps management page. Either side of the disconnect propagates to the other.

Full revoke (compliance)

If you need a hard revoke for a security incident or compliance request, the disconnect button is the right action — it revokes the OAuth token, removes the workspace credential, and unlinks every individual account in one operation. The action is recorded in Audit logs.

Troubleshooting

Common issues and what to do.

"Henry says my account is not linked"

You see a prompt to link your account every time you try to use a slash command. This usually means:

  • You are signed into Slack with one identity (e.g., a personal email) and Performance Blocks with another (e.g., your work email). Confirm both are the same person and the same email is on the user record.
  • You completed the link flow but the redirect failed. Try the link again from a fresh DM to Henry.
  • The account was previously unlinked. The link is one-time per user; redoing it is safe.

"I don't see the slash commands"

If /henry is not autocompleting:

  • Confirm the workspace install is active in Settings → Integrations → Slack (admin view).
  • Confirm henryAgentSlack is on in Settings → Features.
  • Try typing the literal command and submitting — sometimes Slack's autocomplete cache is stale and the command works even when it doesn't autocomplete.
  • If your Slack workspace requires admin approval for new app commands, the command may be pending approval. Check with your Slack admin.

"Henry doesn't see my channels"

Henry only acts on messages you explicitly route to it (DM, slash command, or message action). It does not subscribe to channels in the background. If you want Henry to be aware of a channel for any reason, invite the Henry app to the channel by typing /invite @henry.

"Summaries aren't arriving in the subscribed channel"

Check that:

  • The Henry app is still in the channel. If it was kicked, the subscription stops.
  • The cadence you chose has actually elapsed since you subscribed (a weekly subscription created Wednesday delivers the following Monday by default).
  • The summary digest has content. If no observations or summaries were generated in the period, Henry skips the post rather than sending an empty message.

"Permission errors when capturing from a message"

Henry can only capture from messages you can read. If you see a "missing permission" error on a message-action capture, verify your Slack permissions on that channel.

For anything not covered here, the Slack panel in Settings → Integrations → Slack has a diagnostics view that shows the last several Slack API calls and their results. Share that information with support if you need help.

© 2026 Performance Blocks. All rights reserved.