Setup
- Go to Organization → Integrations
- Find Slack, click Install, and authorize for your workspace
- Invite @Replicas to the channels where you want to use it (or open a DM with the bot)
#talk-to-replicas channel, adds the person who authorized the connection, and saves it as your organization’s default Replicas channel. If that public channel already exists, Replicas joins and reuses it. If its name is reserved by an archived or inaccessible channel, Replicas tries numbered names such as #talk-to-replicas-2.
Replicas posts a short introduction after setup. Reconnecting does not repeat a delivered introduction. This channel can also receive changelog updates sent by the Replicas team.
Reconnecting verifies the saved channel, restores the bot’s membership if needed, and replaces missing or archived defaults. If channel setup fails, reconnect to retry.
The Slack app requires the channels:manage and channels:join bot scopes for channel setup. Existing connections can reconnect to grant these permissions and set up their default channel.
If you connected Slack before DM, task-fork, or custom emoji support shipped, re-authorize from the same Integrations page so the new im:*, mpim:*, commands, and emoji:read scopes are granted. Until then DMs, the Fork task shortcut, or custom emoji discovery may not be available.
Ensure you have at least one repository configured before mentioning Replicas.
Personal Account Connection
Connect your Slack account from Personal → Connections to link your Slack user ID to your Replicas account. Replicas then uses your personal defaults and credentials even when your Slack email differs from your Replicas email. Email matching remains a fallback for members who have not connected an account. An administrator must add Slack’sopenid, email, and profile User Token Scopes to the Replicas Slack app once before members can authorize personal connections.
How It Works
When you mention @Replicas in a channel:- Replicas adds an 👀 reaction to acknowledge your message
- If multiple environments are configured, Replicas resolves one for you and only posts a dropdown when it cannot, see Environment Selection
- A workspace is created for the task in that environment
- The agent sends a brief acknowledgment, then works on your request
- When done, the agent replies in the thread with results (and a PR link if code changes were made), with a View PR button on the reply that first shares the pull request
slack_concise_replies feature flag for selected organizations. When enabled, agents write like a teammate posting a quick update: one to three plain sentences on what they did and what it means, followed by the PR link. Headers, bullet lists, command logs, and file-by-file recaps are left out unless you ask for them.
Initial acknowledgements and composer-posted completion summaries end with a compact linked [↗︎] that opens the Replicas workspace without expanding a link preview.
Direct Messages
You can also DM the bot 1:1 or in a group DM. Every message you send to Replicas in a DM is treated as a task, so you do not need to type@Replicas. The same flow applies as in channels: Replicas reacts, picks an environment, creates a workspace, and replies in a thread on your message. Replies inside that thread route to the same workspace, see Thread Conversations. Environment selection works identically, see Environment Selection.
Monitored Channels
When Mothership is enabled, its workspace is always available in the app sidebar. Org admins open Mothership settings in that workspace to assign the built-in customer, vendor, or internal preset to each channel Replicas watches. Admins can also create and edit custom presets or add channel-specific instructions on top of any preset. Admins can ask Replicas in Slack to monitor a channel; Slack setup shows the proposed instructions and requires an admin to repeat the target and policy exactly before changing the monitored list. Each approval can be used once. In a monitored channel, including a Slack Connect channel, Replicas reads messages without being mentioned and decides whether to answer, offer to pick a task up, or create a workspace. Replicas must be a member of the channel. Its transcript keeps the Slack conversation intact and identifies Slack and the sender with badges instead of showing internal message metadata. When Mothership creates a workspace from an existing thread, it attributes the workspace and any pull request to the author of the message that triggered the task, not the person who started the thread. Each monitored channel also takes optional custom instructions (up to 2000 characters) that are added to triage for that channel only, for example: “Bug reports land here: spawn a workspace in the web environment and link the Linear issue.” They refine how Replicas weighs and routes the channel’s messages. They never widen what it may do, so it still replies only in the thread it was addressed in and still hands real work to a spawned workspace. For an obvious acknowledgement where a text reply would be redundant, Mothership may react to the message instead. It may also occasionally react to a playful positive moment connected to Replicas, usually when directly addressed but sometimes when the surrounding context makes the connection obvious. It uses reactions sparingly and prefers a fitting custom workspace emoji when one is available; routine chatter, answers, status updates, and substantive responses remain unreacted or receive text replies as appropriate.Environment Selection
Workspaces are created inside an environment, and the env’s binding determines which repository or repository set gets cloned. If your organization has multiple environments, Replicas works through the following in order and asks you to pick only when none of them can decide:- Mothership triage, in channels it monitors. It reads the channel and the thread, so it picks the environment whenever it is confident.
- An inline
[env:name]tag in your message, matched against environment names (e.g.,@Replicas [env:backend] add a login page). - Your personal default, then your organization’s default.
- Automatic routing, which infers the environment from the message context (repo names, file paths, channel name) when confident.
- A dropdown in the thread, so you can select one yourself.
Thread Conversations
Each Slack thread is linked to one workspace. Follow-up mentions in the same thread route to the same workspace, so the agent remembers previous context. On follow-ups, only new messages are sent to the agent rather than the full thread history, keeping the context focused. Routine follow-ups resume work without a separate acknowledgement. New tasks still receive one concise initial acknowledgement that identifies the concrete work starting without restating the full request. When several messages belong to the same ongoing task, Replicas treats them as one update instead of posting a status for each one. Follow-ups still receive text when they ask a direct question or need a meaningful status, outcome, or delivery-failure update. For new tasks, Replicas adds an eyes acknowledgement and starts Slack’s working indicator before slower triage or workspace startup. Slack’s working indicator remains visible while a queued or relayed follow-up is being processed. Follow-ups wake sleeping workspaces and keep using the linked workspace’s coding agent and model. Archived workspaces must be restored first. The selection changes only when you change it in the workspace. In monitored channels, Replicas leaves follow-ups clearly meant only for other people out of the linked workspace. When an actionable follow-up has no clear addressee, including feedback that names another person but could also instruct the workspace, Replicas asks whether you want the workspace to pick it up before sending it to the agent. You can attach or switch a thread’s workspace with the CLI Slack thread commands. In channels where triage is monitoring (see Environment Selection), several messages sent in quick succession reach the workspace as a single message carrying each thing you asked for, with later corrections replacing what they correct. Every accepted follow-up reaches active work immediately, whether it adds a requirement or changes direction. A follow-up is queued instead only when you explicitly ask for it to happen after the current task; if the previous turn already finished, the follow-up starts normally without an interruption. If the workspace is deleted and you mention @Replicas again in that thread, a new workspace is automatically created.Fork a Thread
Open a message’s More actions menu inside an active Replicas task thread and select Fork task to start a separate task without interrupting the original agent. The form starts with the selected message as its instructions and the current channel as its destination. You can edit either before submitting. Alternatively, mention @Replicas in the thread and include!fork anywhere in the message. Text around the marker becomes the new task’s instructions:
Pull Request Notifications
When a PR or MR created from a Slack workspace is merged or closed on GitHub or GitLab, Replicas posts a notification to the originating thread. The notification includes the number, title, link, and the person who merged or closed it. A colored bar on the left of the message reflects the outcome at a glance: purple for merged requests and red for closed ones. If the Slack sender enables Open pull requests in Graphite, agents use Graphite links for GitHub PRs in follow-up responses, and merged or closed notifications use the workspace owner’s preference. GitLab merge request links are unchanged.Workspace Status Reactions
When a linked workspace is archived, Replicas replaces its 👀 reaction with 🗃️ on every linked Slack message so inactive tasks are easy to spot. Messages with an existing ✅ keep that reaction instead. Restoring the workspace removes the archive-box reaction.Context
The context provided to the agent includes:- Your message (with bot mention stripped)
- Thread history — for the first message, the full thread context is included; for follow-up messages, only new messages since the agent last responded are sent
- Images attached to messages in the thread
- Channel name
- User names of participants
Agent access
Workspace agents can download Slack attachments through the authenticated SDK:replicas.slack.call() for supported Slack methods, including file-upload reservation and completion.
Newly created workspaces instruct agents to keep routine Slack updates concise and consult Slack’s live Block Kit catalog before choosing display-only blocks or URL buttons. Existing workspace skill copies are not refreshed.
Workspaces created before the gateway retain compatibility with their existing tokens. Agents should use the SDK when available. Customer-defined tokens remain separate from the organization integration.
Post a Summary from the Composer
In a workspace’s chat composer (or the app prompt composer when creating a workspace), click the chevron on the Send button and choose Send & post to Slack, then pick a channel. The message sends as usual and the agent posts a single completion summary (including any pull request links) to that channel once it finishes the task. Slack must be connected for the option to appear, and it only lists channels the bot can access. Sending with the arrow button (or Enter) skips the Slack post.Intended Usage
Slack works best for quick requests and iterative conversations:- Start tasks with a brief description
- Follow up in the same thread to refine or add requirements
- The agent responds directly in Slack, making it easy to share progress with your team
/plan to request a planning-only response with a plan link. See Plan Mode.