Monroe

Connect your tools

Slack install

Step 1: Install the Slack app

In your dashboard, go to Channels → Slack and click Connect. You'll be redirected to Slack's OAuth consent screen, which lists every scope by name. Grouped by purpose:

Read: channels:history, channels:read, groups:history, groups:read, im:history, im:read, mpim:history, mpim:read: read messages in public, private, direct, and group conversations Monroe is invited to. app_mentions:read for @-mention triggers, files:read to read shared files, users:read + users:read.email to resolve mentions, team:read for workspace metadata, reactions:read to read emoji reactions.

Write: chat:write + chat:write.public to post messages (in invited channels and in public ones Monroe has not been invited to yet, so a /monroe slash command in a fresh channel still works). im:write + mpim:write to send DMs and group DMs. files:write to upload reply attachments. reactions:write to react to messages.

Slash command + App Home: commands powers /monroe <prompt>; channels:join lets Monroe join a public channel programmatically when you give it work there. The App Home tab is the in-Slack teaching surface: it shows how to reach Monroe, your setup pick, and the deliverable controls available after Monroe produces work.

Monroe never asks for admin.* scopes, and it requests no user-token scopes at all. Every scope above is a bot scope, so Monroe only ever acts as itself, never as you. The full list is shown on the OAuth consent screen. If there's ever drift between this doc and what the OAuth flow requests, the consent screen is the source of truth.

Once the install completes, Monroe sends the installer a welcome DM: it introduces itself, suggests the first task you picked during setup, and includes a Run this now button when there is a setup pick.

Step 2: Invite Monroe to channels

By default, Monroe is silent in every channel. Invite it to the ones you want it active in:

/invite @Monroe

Common patterns:

  • #acquisitions: Monroe underwrites deals + drafts IC memos
  • #deal-flow: Monroe screens new OMs against your buy box
  • #asset-management: Monroe reviews rent rolls + budget variance
  • #capital-markets: Monroe sizes debt + tracks covenants

Monroe will only act when @-mentioned, DM'd, or invoked with /monroe. It doesn't auto-respond to random channel activity. Once you've @-mentioned Monroe in a thread, just keep replying there; it follows the conversation without needing another mention.

Step 3: Keep the work moving

After Monroe delivers a work product, just reply in the same thread to keep the work moving: ask a follow-up, request a revision, verify numbers, or send the next instruction. No buttons or re-mention needed. When Monroe itself writes a specific suggested improvement, a Set this up button appears as the one-click confirmation; Monroe then carries out that exact improvement or asks one focused question if schedule, delivery, inputs, approval guardrails, or scope are still missing. File-grade memos, charts, workbooks, and checklists can come back as native Slack attachments.

Step 4: Pick your approval mode

Workspace admins choose how cautious Monroe should be in Settings → Behavior → Approval mode: recommended (email and calendar sends are blocked until you approve in-channel; other writes are draft-first), strict (adds review of risky technical operations), or manual (every flagged operation waits for your OK). See approval gates for the full tiers. Per-channel approver rules are on the roadmap; Enterprise contracts can have them wired server-side today via enterprise@getmonroe.com.

Troubleshooting

  • Your Slack workspace requires admin approval for new apps. Common on Business+ and Enterprise Slack plans: instead of completing, the install sends an approval request to your Slack admins. Ask a workspace admin to approve Monroe (in Slack: Manage apps → Requests), then click Connect again in the dashboard to finish the install.
  • Monroe says it's getting set up. Right after install, your workspace may still be coming online (usually a minute or two). Monroe posts a short notice and picks your message up automatically once it's ready.
  • Monroe doesn't respond in a channel. Did you invite it (/invite @Monroe)? Public channels need an invite even though the OAuth scope allows read.
  • A slash command starts the run outside the channel. /monroe <prompt> works even before Monroe has joined, then Monroe can continue in the response location Slack provides.
  • "Channel not found" errors. Slack changed the channel ID since we cached it. Reconnect the workspace.
  • Slack rate-limit warnings. Monroe respects Slack's tier-1 rate limits. If you're seeing this consistently, contact support.

Next → Teams install.