How to Build an AI Agent for Confluence and Slack
Answer team questions by searching your Confluence knowledge base, surface relevant documentation in Slack, and keep channels informed when important pages are updated.
Last updated: February 28, 2026
The workflow problem
Organizations invest heavily in Confluence as their knowledge base. Teams write onboarding guides, architecture decision records, process documents, runbooks, and policy pages. But when someone has a question, they do not go to Confluence. They ask in Slack. “Does anyone know our policy on vendor security reviews?” “Where’s the runbook for restarting the payment service?” “What’s the approval process for AWS spending over $5K?”
These questions trigger a predictable pattern. Someone who knows the answer either types it out from memory (often getting details wrong) or searches Confluence themselves, finds the page, and pastes the link. This takes several minutes and depends on institutional knowledge: knowing the right search terms, the right space, or even that a relevant document exists. If nobody in the channel happens to know, the question goes unanswered and the asker either gives up or files a support ticket.
The scale of this problem is significant. In an organization of a few hundred people, Slack channels collectively handle dozens of answerable-from-documentation questions per day. Each one interrupts someone who has to context-switch from their work to play human search engine. The people who know the most are interrupted the most, creating a perverse incentive where expertise becomes a productivity tax. Meanwhile, the Confluence knowledge base grows stale because there is no feedback loop telling content owners which pages are being referenced or which questions have no corresponding documentation.
Why an AI agent, not just automation
Confluence has a search function, and Slack has a /confluence command that lets users search from chat. But keyword search fails when the asker does not know the exact terminology used in the documentation. Someone asking “how do I add a new engineer to our AWS account?” might not find the Confluence page titled “IAM Role Provisioning Procedure for New Hires” because the terminology does not overlap.
An AI agent understands intent, not just keywords. It interprets the question “how do I add a new engineer to our AWS account?” and identifies that this is about IAM provisioning, new hire onboarding, and AWS access management. It searches Confluence using multiple query strategies and reads candidate pages to find the one that actually answers the question. Then, instead of just posting a link, it extracts the relevant section and presents a concise answer in Slack with a citation back to the source page.
The agent also handles follow-up questions. If someone asks “what about for contractors?” the agent understands that this is a refinement of the previous question and searches for contractor-specific provisioning procedures. This conversational interaction is impossible with a static search integration.
Beyond reactive question-answering, the agent provides proactive documentation. When a Confluence page in the “Engineering Runbooks” space is updated, the agent posts a summary of the changes in #engineering with context about what changed and why it matters. This keeps teams aware of documentation updates without requiring them to watch individual pages.
How it works with ACP
ACP provides your agent with read access to your Confluence knowledge base and messaging capabilities in Slack, turning your documentation into an interactive resource.
Confluence tools available to the agent:
- Search across all accessible spaces using CQL (Confluence Query Language)
- Read full page content including nested headings and structured elements
- Access page metadata: author, last modified date, labels, space
- Read page comments for additional context
- Navigate page hierarchies (parent/child relationships)
- Access attachment metadata on pages
- Read page version history to identify recent changes
- Access space-level information (name, description, permissions)
Slack tools available to the agent:
- Read messages in channels the agent is invited to
- Post messages with rich formatting (blocks, sections, markdown)
- Create threaded replies to maintain conversation context
- React to messages with emoji (for acknowledgment)
- Send direct messages for private answers to sensitive questions
- Read channel purpose and topic for routing context
- Update the agent’s own previous messages
The agent serves as a knowledge bridge between your documentation and your team’s daily conversations. Here is how it works in practice:
Slack message in #engineering from Tom: “Hey, does anyone know how to handle a situation where a customer’s data export job gets stuck? We have a Tier 1 customer whose export has been running for 6 hours.”
Agent processing: The agent identifies this as a question about a stuck data export job. It searches Confluence for pages related to data export, stuck jobs, and troubleshooting procedures.
Confluence search results: The agent finds three relevant pages:
- “Data Export Service – Troubleshooting Runbook” (updated 2 weeks ago)
- “Data Export Architecture Overview” (updated 3 months ago)
- “Known Issues – Q2 2026” (updated yesterday, mentions export timeout bug)
Agent response (threaded reply to Tom):
“Found relevant documentation for stuck data export jobs:
From the Data Export Troubleshooting Runbook: Jobs running longer than 4 hours are likely hitting the memory limit. The recommended steps are:
- Check the job status via
admin/export-jobs/{job_id}endpoint- If status shows ‘processing’ with no progress in the last 30 minutes, restart with the
--chunkedflag to process in smaller batches- For Tier 1 customers, escalate to #data-platform if the chunked restart doesn’t resolve within 1 hour
Also note: The Known Issues page was updated yesterday with a new entry about an export timeout bug affecting accounts with more than 500K records. If this customer has a large dataset, this might be the cause. Fix is scheduled for next week’s release.
Sources:
Governance and security
Documentation often contains sensitive operational, financial, or personnel information. ACP ensures the agent respects access boundaries.
Confluence OAuth scopes: The agent uses read:confluence-content.all for searching and reading page content and read:confluence-space.summary for space metadata. It has no write access to Confluence whatsoever – it cannot create, edit, or delete pages. This read-only model means the agent can surface information but never alter your knowledge base. Access to content respects Confluence’s existing permission model: if a space is restricted to certain groups, the agent can only access it if the authenticating user has permission.
Slack OAuth scopes: The agent uses chat:write for posting responses and channels:history for reading questions in channels. It cannot access direct messages between other users, cannot modify channels, and has no admin permissions. The agent only reads messages in channels it has been explicitly invited to.
Sensitive content filtering: You can configure the agent to exclude specific Confluence spaces from its search scope. HR policy spaces, legal documents, and financial planning spaces can be marked as off-limits even if the authenticating user has access. This prevents the agent from surfacing salary band information, legal strategy documents, or other sensitive content in public Slack channels.
Answer attribution: Every response the agent provides includes a citation linking back to the source Confluence page. This ensures teams can verify the information and provides transparency about where answers originate. The audit trail logs every search query, every page read, and every Slack response, providing full traceability.
Staleness awareness: The agent includes the “last updated” date for every page it references. When citing a page that hasn’t been updated in more than 90 days, the agent adds a note: “This page was last updated on [date]. Content may not reflect current procedures.” This nudges content owners to keep documentation fresh.
Example use cases
-
On-demand knowledge retrieval: Team members ask questions in Slack, and the agent searches Confluence for the answer. Instead of just posting a link, it extracts the relevant section and presents a concise, readable answer with a citation. This works for process questions, technical procedures, policy inquiries, and troubleshooting guidance.
-
New hire onboarding support: New employees post questions in #new-hires and receive instant answers drawn from onboarding documentation, benefits guides, and setup procedures. The agent tracks which questions are asked most frequently and flags documentation gaps to content owners.
-
Proactive page update notifications: When important Confluence pages (runbooks, policy documents, architecture decisions) are updated, the agent posts a summary of the changes in the relevant Slack channel. The summary highlights what changed, not just that the page was edited.
-
Documentation gap identification: When the agent cannot find a Confluence page to answer a question, it logs the unanswered question. Over time, this creates a prioritized list of documentation that needs to be written, directly informed by what teams actually need to know.
-
Incident response acceleration: During incidents, engineers ask the agent for relevant runbooks directly in the incident Slack channel. The agent searches Confluence for runbooks matching the affected service and presents the resolution steps inline, reducing time to remediation.
Getting started
Make your Confluence knowledge base accessible through Slack:
-
Sign up at cloud.agenticcontrolplane.com. Free tier covers both integrations.
-
Connect Confluence and Slack. Authorize both tools on the Data Sources page. For Confluence, authenticate through Atlassian’s OAuth flow. Optionally configure which spaces the agent can and cannot search.
-
Describe your agent. Tell ACP: “Monitor questions in Slack channels and answer them by searching our Confluence knowledge base. Include relevant excerpts and page links in responses. Also notify #engineering when runbook pages are updated.” Your team’s documentation becomes a conversational resource.
Ready to build this agent?
Sign up free, connect your tools, and have this running in minutes.