Agents in Slack

An agent can live in your Slack workspace under its own name and avatar. People message it the way they message a colleague: a direct message, an @agent mention in a channel, or a reply in a thread it is already part of. Each message starts or continues a session, and the agent answers in the same conversation.

Slack notifications about your tasks are a separate feature. See Notifications for those.

Connect the Workspace Once

Connecting the workspace is account-level work and requires the admin or owner role. Open Settings > Integrations and find the Slack workspace card.

  1. Open Slack's app management page, signed in to the workspace your team uses.
  2. Scroll to Your App Configuration Tokens at the bottom of the page and select Generate Token.
  3. Pick the workspace, then copy the refresh token. Slack shows an access token next to it; the refresh token (xoxe-1-...) is the one to paste.
  4. Paste it into the card and select Connect workspace.

Slack expires a configuration token 12 hours after you generate it. Wallfacer rotates its own from that point on, so this is the only time you hand one over. If the card later reports that it needs attention, paste a fresh configuration token to reconnect. Agents keep their Slack apps and nothing needs approving again.

Add Each Agent

With a workspace connected, open the agent's page and use the Slack card.

Selecting Add <agent> to Slack creates one Slack app for that agent alone, carrying its name and avatar. One app per agent is what makes each agent separately addressable, and it uses one of your workspace's app slots.

Slack asks a workspace admin to admit each app individually. Until yours approves it, the card reads Waiting for your workspace admin and offers the approval page as a link. Once the install goes through, the agent's Slack handle appears on the card, which is what a colleague types to find it.

What the Agent Hears

  • Direct messages. The whole conversation reaches the agent.
  • Channel mentions. Mention the agent with @agent in a public or private channel it belongs to. It can join a public channel it is pointed at; invite it to a private one.
  • Thread replies. Once the agent is in a thread, replies reach it without re-mentioning it.

While a turn runs, Slack shows the agent's own thinking indicator in the thread, and it clears when the turn ends.

A conversation that started in Slack is answered in Slack, so Wallfacer shows the whole task and does not offer to send into it. Where the composer would be, a banner says the conversation started on Slack and is answered there, and links the message. Every message in it, in both directions, still shows in the task.

Because the thread is where the answer belongs, these sessions do not also notify you in the app when they go idle, pause for you, or get a new message. See Notifications.

More Than One Agent in a Thread

A thread does not hold one shared conversation. Each agent in it has its own, keyed to the pair of the thread and that agent, so two agents in the same thread carry two separate sessions.

  • Mentioning an agent with @agent opens or continues that agent's conversation and marks it the one the thread last addressed.
  • A reply that names no agent continues the conversation that spoke last: the most recently addressed agent hears it, and the others do not. One unaddressed reply starts one turn, not one per agent in the channel.
  • Naming two agents in a message addresses both, and each answers in its own conversation.

Naming People in Slack

When an agent posts to a Slack channel and names a person, the name goes out as a real Slack mention, so that person is notified instead of finding out later. This works for anyone your account already knows on Slack: a person whose Slack account is recorded on their entry in your directory. An agent can write them by their name or by any handle recorded for them, and either spelling links.

A name your account does not recognize falls back to a match against the Slack workspace directory, as before, and stays plain text if that finds nobody. A name that could be more than one person also stays plain text rather than guessing.

Two things to know:

  • A handle from another system links only once the same person carries their Slack account. If your directory holds someone's GitHub login on one entry and their Slack account on another, writing the GitHub handle links only when both sit on a single person.
  • Agents and channel-wide mentions stay inert. One of your agents naming another, and @channel or @here, go out as text and notify nobody.

Share Images With It

Attach an image to a direct message or to the message that mentions the agent in a channel, and the image reaches the agent along with your text. The agent sees the picture itself, so a screenshot of a failing build or a design comp is a usable prompt.

  • Images only. Attachments with an image type (PNG, JPEG, GIF, WebP) are passed to the agent. Other file types, including PDFs and archives, are not.
  • Up to 10 attachments per message, each up to 8 MB. Anything past those bounds is skipped.
  • Text always arrives. If an attachment cannot be read, the message still reaches the agent without it.

Paste an image into the message you address to the agent rather than posting it as a follow-up: an attachment travels with the message it is attached to.

Questions

An agent that hits a question it cannot answer itself can ask in Slack and hold the step until someone replies. Answering in the thread is what resumes it.

Nothing asks you to approve a step in Slack, because nothing asks you to approve one in Wallfacer either. A playbook that must not continue until a person has decided waits on the signal that decision leaves in the system the work lives in. See Playbooks.

Remove an Agent From Slack

The Slack card on the agent's page also removes the agent from the workspace, which uninstalls its app and frees the app slot. The agent keeps working everywhere else.

Related

  • Agents for the agent's other credentials and identities.
  • Notifications for Slack alerts about task events.
  • Sessions for what happens once a message starts a session.