Skip to content

docs(blog): add How to Build an AI Agent for Slack tutorial - #8272

Open
mmabrouk wants to merge 2 commits into
mainfrom
agent/how-to-build-an-ai-agent-for-slack
Open

mmabrouk wants to merge 2 commits into
mainfrom
agent/how-to-build-an-ai-agent-for-slack

Conversation

@mmabrouk

Copy link
Copy Markdown
Member

Summary

Adds the builder tutorial "How to Build an AI Agent for Slack: Step-by-Step Guide (2026)" (/blog/how-to-build-an-ai-agent-for-slack).

What's Included

  • Astro MDX post: web/website/src/content/posts/how-to-build-an-ai-agent-for-slack.mdx (Prettier-verified, zero em dashes, no duplicate frontmatter description).
  • 1600x900 Identity v3.0 Cover: web/website/public/blog/how-to-build-an-ai-agent-for-slack/hero.webp
  • 2 Custom 1600x900 Brand Diagrams:
    • slack-agent-architecture.webp (3-layer progressive disclosure of instructions, skills, and shared agent files + harness/Daytona sandbox + MCP tool permissions)
    • slack-thread-approval-and-triggers.webp (Interactive Slack thread run with 👀 -> Allow reads -> inline Approve / Deny card -> ✅ vs. unattended 08:30 UTC schedule/event automations)

@coderabbitai

coderabbitai Bot commented Nov 12, 2026 •

Copy link
Copy Markdown
Contributor

Explain Change →

No actionable comments were generated in the recent review.

Summary

Summary by CodeRabbit

  • Documentation
    • Added a guide to building and configuring an AI agent for Slack, including scoping a workflow, setting instructions and permissions, configuring tools and approval flows, and connecting a Slack app.
    • The guide covers restricting access, testing mentions, attachments, schedules, and app-event triggers, as well as privacy controls, reusing the agent on other surfaces, and handing it off.

The pull request adds a guide to building a Slack AI agent with Agenta. It covers approach selection, workflow scoping, configuration, permissions, Slack setup, testing, automation, privacy, reuse, and handoff.

Changes: Slack AI agent guide

Layer / File(s) Summary
Plan and configure the agent
web/website/src/content/posts/how-to-build-an-ai-agent-for-slack.mdx
The article compares three approaches to Slack agents, defines a support-triage workflow, and describes agent configuration, instructions, skills, files, and FAQs.
Set permissions and connect Slack
web/website/src/content/posts/how-to-build-an-ai-agent-for-slack.mdx
The article documents baseline and per-tool permissions, approval handling, Slack app connection options, and access restrictions.
Test, automate, and hand off
web/website/src/content/posts/how-to-build-an-ai-agent-for-slack.mdx
The article describes interactive and unattended testing, automation triggers, transcript privacy, reuse across surfaces, and client handoff options.

Estimated code review effort: 2 (Simple) | ~10 minutes

Merge Risk: Moderate · up to 3b906

This tutorial post has open accuracy gaps. It states an outdated Slack AI purchase requirement, skips the steps for adding the tools the walkthrough depends on, and suggests a Slack reply can approve a tool set to Deny. Readers following it could fail to complete the main workflow or be misled about costs and permissions. Fix these before publishing.

Pre-merge checks: Passed 4

Check name Status Explanation
Title check Passed The title names a docs change that adds a blog tutorial, "How to Build an AI Agent for Slack". The changeset adds the MDX post at the matching path, plus its cover and two diagrams. The title is speci…
Description check Passed The description states the change: it adds the tutorial "How to Build an AI Agent for Slack: Step-by-Step Guide (2026)" at a named path. It lists the MDX file, the 1600x900 hero cover, and two diagram…
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
Full details: Title check

Explanation

The title names a docs change that adds a blog tutorial, "How to Build an AI Agent for Slack". The changeset adds the MDX post at the matching path, plus its cover and two diagrams. The title is specific and matches the main change. The conventional-commit prefix "docs(blog)" is accurate for a content addition.

Full details: Description check

Explanation

The description states the change: it adds the tutorial "How to Build an AI Agent for Slack: Step-by-Step Guide (2026)" at a named path. It lists the MDX file, the 1600x900 hero cover, and two diagrams with their contents. It is on-topic and specific to the changeset.

Finishing Touches

Generate unit tests (beta)

  • Commit to this branch
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

Share

Recent review info

Run configuration

Commits

Reviewing files that changed from the base of the PR and between a3f0da6 and 3b906dc.

Files selected for processing: 1

  • web/website/src/content/posts/how-to-build-an-ai-agent-for-slack.mdx

Included review availability: This review used your included allowance. Your plan provides up to 8 included reviews per hour; 6 remain after this review.

@github-actions

github-actions Bot commented Nov 12, 2026 •

Copy link
Copy Markdown
Contributor

Website preview

Preview URL: https://pr-8272-agenta-website-preview.mahmoud-637.workers.dev

Built from 3b906dc68d407bf4891430be0099a0e73b153bd8. This comment updates in place on every push.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 4

Review info

Run configuration

Commits

Reviewing files that changed from the base of the PR and between 4832399 and a3f0da6.

Files selected for processing: 4

  • web/website/public/blog/how-to-build-an-ai-agent-for-slack/hero.webp
  • web/website/public/blog/how-to-build-an-ai-agent-for-slack/slack-agent-architecture.webp
  • web/website/public/blog/how-to-build-an-ai-agent-for-slack/slack-thread-approval-and-triggers.webp
  • web/website/src/content/posts/how-to-build-an-ai-agent-for-slack.mdx

Included review availability: This review used your included allowance. Your plan provides up to 8 included reviews per hour; 7 remain after this review.


| Approach | Setup Effort | Multi-App Actions & Sandboxes | Human Approval in Threads | Client Handoff & Hosting |
| --------------------------------------------------------------- | ----------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- |
| **Native Slack AI & Slackbot Skills** | Minutes (requires paid Slack add-on) | Limited to Slack context and supported MCP clients; no isolated code/browser sandbox | Basic prompt confirmation | Tied to a single Slack workspace and per-user Slack licensing |

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Minor · Functional Correctness · Quick win

Replace the obsolete Slack AI add-on requirement.

Slack includes conversation summaries and huddle notes in paid plans. Advanced features depend on the plan. Slack no longer sells the add-on through its website. Replace “requires paid Slack add-on” with the applicable plan requirement so readers can compare costs correctly. (slack.com)

Tools

LanguageTool

[style] ~47-~47: The double modal “requires paid” is nonstandard (only accepted in certain dialects). Consider “to be paid”.
Context: ... | Minutes (requires paid Slack add-on) ...

(NEEDS_FIXED)


Sometimes you want one specific write action (like saving a scratch note or posting to an internal `#ops-alerts` log channel) to run automatically while every other write action pauses for review.

Open `Configuration -> Tools`, click any connected-app tool or custom MCP server tool, and set **Permission** in the `TOOL DETAILS` pane:

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Major · Functional Correctness · Quick win

Add the app-tool connection steps before setting permissions.

For a new agent, this instruction assumes tools that the tutorial never adds. Without those tools, the Step 5 test cannot perform the HubSpot lookup, Linear search, or ticket creation.

Add the Tools > Add tool > Third-party integration steps. Explain account authorization and action selection for HubSpot, Linear, and GitHub. Include the Slack posting action required by the scheduled digest. Agenta documents tool installation separately from permission configuration. (agenta.ai)

| Run Mode | How It Starts | Read Tools | Channel Post Tool | External System Writes (CRM / Tickets / Email) |
| -------------------------------------------------- | ---------------------------------------------------- | --------------------- | --------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- |
| **Interactive Slack Mention (`@opstriage`)** | Teammate `@mentions` or DMs the bot in Slack | `Allow` (`READ-ONLY`) | Automatic thread reply | `Ask` (human clicks **Approve** in the thread) |
| **Unattended Schedule or Webhook (`Automations`)** | UTC schedule or app event in `Sidebar > Automations` | `Allow` (`READ-ONLY`) | `Allow` (so the digest posts to `#ops-alerts` without stalling) | Draft-only in Slack or `Deny` (let a human review the digest and reply `@opstriage go ahead` in the thread) |

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Minor · Functional Correctness · Quick win

Do not present a Slack reply as approval for a denied tool.

If the reader sets the write tool to Deny, replying @opstriage go ahead cannot authorize that tool. Deny refuses the action regardless of the baseline policy. (agenta.ai)

Separate the two paths. Keep denied actions manual, or explain how to configure an approval-gated interactive agent before requesting the write.

In the agent's top bar (between **Templates** and **Publish**), the privacy menu controls who inside Agenta can see the agent and its Slack transcripts (`Privacy and owner`):

- **`Shared with project`:** Everyone in the Agenta project can read the agent's Slack conversations in Agenta (including direct messages sent to the bot) and send replies from Agenta that post directly back into the Slack thread. Use this for shared team workflows like `#client-support`, `#ops-alerts`, or `#team-marketing`.
- **`Private`:** Everyone permitted in the Slack channel can still `@mention` and talk to the bot in Slack, but the resulting chat transcripts inside Agenta belong exclusively to the agent's owner (plus anyone the owner explicitly invites via **Share -> Can view** or **Can send**). Use this when building an executive assistant or sensitive HR/finance triage bot.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Major · Security & Privacy · Quick win

Qualify the private-chat privacy claim.

The Private bullet says transcripts belong "exclusively" to the owner and invited users. The sharing guide lists two exceptions. Project members who can read traces can read traces of a private chat (docs/docs/guides/14-share-agents-and-chats.mdx:111). Project members who can view channels can read the message logs of a channel connection through the channel API, also for a private agent (:115). Slack chats with a shared agent fall under the channel exception. Readers who choose this mode for HR or finance triage may assume a confidentiality that the product does not provide.

📝 Suggested wording

--- "a/web/website/src/content/posts/how-to-build-an-ai-agent-for-slack.mdx"
+++ "b/web/website/src/content/posts/how-to-build-an-ai-agent-for-slack.mdx"
@@ -292,7 +292,7 @@
 In the agent's top bar (between **Templates** and **Publish**), the privacy menu controls who inside Agenta can see the agent and its Slack transcripts (`Privacy and owner`):
 
 - **`Shared with project`:** Everyone in the Agenta project can read the agent's Slack conversations in Agenta (including direct messages sent to the bot) and send replies from Agenta that post directly back into the Slack thread. Use this for shared team workflows like `#client-support`, `#ops-alerts`, or `#team-marketing`.
-- **`Private`:** Everyone permitted in the Slack channel can still `@mention` and talk to the bot in Slack, but the resulting chat transcripts inside Agenta belong exclusively to the agent's owner (plus anyone the owner explicitly invites via **Share -> Can view** or **Can send**). Use this when building an executive assistant or sensitive HR/finance triage bot.
+- **`Private`:** Everyone permitted in the Slack channel can still `@mention` and talk to the bot in Slack, but the resulting chat transcripts inside Agenta belong to the agent's owner (plus anyone the owner explicitly invites via **Share -> Can view** or **Can send**). Project members with trace access, or with channel view access, can still read some private-chat data. Review the limits in the sharing guide before you use this mode for sensitive HR or finance work.
 
 ### 2. Reuse the same agent on Telegram, WhatsApp, and website embeds
 
Committable suggestion

IMPORTANT
Review the replacement and indentation, then test before committing.

Suggested change
- **`Private`:** Everyone permitted in the Slack channel can still `@mention` and talk to the bot in Slack, but the resulting chat transcripts inside Agenta belong exclusively to the agent's owner (plus anyone the owner explicitly invites via **Share -> Can view** or **Can send**). Use this when building an executive assistant or sensitive HR/finance triage bot.
- **`Private`:** Everyone permitted in the Slack channel can still `@mention` and talk to the bot in Slack, but the resulting chat transcripts inside Agenta belong to the agent's owner (plus anyone the owner explicitly invites via **Share -> Can view** or **Can send**). Project members with trace access, or with channel view access, can still read some private-chat data. Review the limits in the sharing guide before you use this mode for sensitive HR or finance work.

@github-actions

github-actions Bot commented Nov 12, 2026 •

Copy link
Copy Markdown
Contributor

Railway Preview Environment

Item Value
Status stopped
Commit 3b906dc68d407bf4891430be0099a0e73b153bd8
Manual expiry (UTC) Not granted
CI deadline (UTC) Not granted
Workflow https://github.com/Agenta-AI/agenta/actions/runs/43156239189

Dependent tests finished. Post /preview for manual review. Environment absence verified; retained storage requires separate provider accounting.

Post /preview as a new comment to request a one-hour preview. Repeating it while active does not extend the hour.
Preview data is disposable. Expiry is enforced by the next successful cleanup sweep, not an exact timer.
Environment deletion stops its compute. Provider-retained storage and permanent services may still be billed.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant