Company brain on Slack

A shared agent connected to your wiki and trackers (Notion, Linear, GitHub, Slack) so anyone on the team can ask "how do we do X here?" and get an answer cited from the docs — or have it filed as a ticket on the spot.

Outcome

A shared agent in a Slack channel that any teammate can ask about company processes, policies, and product knowledge. Answers cite the source doc. The agent can also act on what it reads: file access requests, open Linear tickets, post to other Slack channels, even open PRs to update the underlying docs when they're wrong.

Prerequisites

  • A Slack workspace connected to Nairi. See Connecting Nairi to Slack.
  • An LLM provider connected. Claude Sonnet via the Anthropic integration is the recommended pick. See Connecting your LLM provider.
  • A wiki on Notion, Confluence, or Google Drive — whatever your team actually writes in.
  • (Optional) A Linear / Jira / GitHub account if you want the agent to act, not just read.

Step 1 — Connect the wiki

The agent needs to read the source of truth. Most wikis are available as one-click OAuth toolkits on the MCP Marketplace.

Open Settings → MCP Marketplace and connect whichever you use:

  • Notion — Pick the workspaces and pages the bot is allowed to read. Scope tight: a "all pages" install is fast to set up but pulls in things you didn't mean to expose.
  • Confluence — Same idea, scoped to specific spaces.
  • Google Drive — Scope to specific folders or shared drives.

One-click OAuth handles the credentials. The connection lives at the org level, so any agent in your org can use it.

If your wiki is internal-only and isn't on the marketplace, configure it as a custom MCP instead and paste the API token directly into the sensitive MCP config's env block — the agent only sees the MCP's tool surface, never the config itself.

Step 2 — Connect the action tools

Reading is half the value. The other half is letting the agent do things on what it reads — file the access request, open the ticket, post in the right channel. Connect each from the MCP Marketplace as well:

  • Linear — Create issues, comment, transition status, list teams.
  • Jira — If your team uses Jira instead of Linear.
  • GitHub — Open PRs to update the wiki repo (for docs-as-code teams). The agent also gets repo clone access via the Nairi GitHub App if you want it to read code and CLAUDE.md/AGENTS.md files.
  • Slack actions — Post in other channels, search messages, manage canvases. (The Nairi Slack integration handles @-mentions and replies; this MCP adds the proactive-write surface.)

You don't need all of them. Start with whichever two verbs ("file a ticket", "post in a channel") the team would value most.

Step 3 — Create the agent

Open Fleet → New agent and fill in:

  • Name — something the team will recognise. brain or ask works.
  • LLM integration — Anthropic (Claude Sonnet). Long-context Q&A over your wiki benefits from Sonnet.
  • Repository — optional. Set this only if you want the agent to read code (for docs-as-code wikis, or to surface CLAUDE.md/AGENTS.md content alongside Notion docs).
  • MCPs — attach the wiki MCP from Step 1, plus the action MCPs from Step 2.
  • Channel — bind to #ask-nairi (or your equivalent), or leave it and let the channel self-bind on the first @-mention.

See How to deploy an agent for the full editor walkthrough.

Step 4 — Base prompt

Keep it short. The prompt sets identity, source-of-truth discipline, and the safety dial for write actions; the rules in Step 5 carry the local policy.

You are our company brain on Slack.

For "how do we…" / "where do I…" / "what's our policy on…":
- Answer strictly from our wiki, codebase, and policies.
- Always cite the source you pulled the answer from (link).
- If you can't find it in the docs, say so and recommend who to
  ask. Do not invent policy.
- If the docs are contradictory, surface the conflict instead of
  picking one.

When the user asks you to take action (file a ticket, post a
request, update a doc):
- Confirm the action and target before doing it.
- After doing it, post the link to what you created.
- Never take destructive actions (delete, archive, close) without
  explicit "yes, do it" from the user in the same thread.

Step 5 — Rules to direct the agent

The base prompt is identity. The rules are the local policy — what's confidential, who escalates to whom, how the agent should sound, which docs override which. Open Settings → Artifacts → Rules and attach a few. Suggested starting set:

Knowledge map

The most useful rule. Tells the agent which source covers which topic, so it doesn't search the whole company graph for every question.

# Knowledge map

When answering a question, look in these sources in this order:

- Engineering processes, dev setup, on-call: GitHub repos
  (CLAUDE.md, AGENTS.md, docs/), then the "Engineering" Notion
  space.
- People, HR, benefits, payroll: "People" Notion space.
- Sales, pricing, plans, SLAs: "Sales playbook" Notion space.
  In conflict, the Pricing page (linked from the playbook) is
  the source of truth.
- Security, compliance, vendor reviews: "Security" Notion space.
  These pages override everything else.
- Customer-facing copy / brand voice: "Brand" Notion space.

If the question doesn't map to any of these, say so before
guessing.

Confidentiality

What not to share, even when an internal teammate asks.

# Confidentiality

The following are never to be pasted into Slack, even in a
private channel:

- Customer PII (emails, names, payment details, support tickets).
- Hiring pipeline data (candidate names, offer numbers, interview
  notes).
- Compensation data outside the bands published on the People
  wiki.
- Anything from the "Board materials" or "Strategy" Notion spaces.

When asked about any of these, summarise from public-facing copy
only and tell the asker who owns the full data.

Escalation

Who to send people to when the docs don't cover it.

# Escalation map

When the wiki doesn't have an answer, recommend the right human:

- Security or vulnerability reports → @security in Slack;
  copy security@yourco.com.
- HR / people / benefits → @people-ops.
- Billing or invoice questions → @finance.
- Anything involving the cap table or fundraising → @ceo
  directly.
- Engineering platform / infra → @sre.

Default fallback if none of the above: post in #ask-anything.

Action safety

For when the agent is doing, not just answering.

# Action safety

Before any write action (Linear ticket, doc edit, cross-channel
post):

- State what you're about to do and where, in one line.
- Wait for "yes" / "go" / "confirm" from the user in the same
  thread.
- After acting, paste the link back.

Never:
- Delete or archive anything.
- Close a Linear issue someone else opened.
- Post to #announcements, #leadership, or any channel marked
  "no bots" in its description.

Tone

Sets how the agent sounds. Affects answers more than you'd expect.

# Tone

- Welcoming, especially with new joiners. No jargon dump.
- One short paragraph, then the relevant link. Don't paste the
  whole doc.
- Use the same first name the asker uses; otherwise no name.
- Skip the "Great question!" opener.

You don't need all five on day one. Start with the knowledge map and the action safety rule, then add confidentiality + escalation once a couple of people are using it.

See Adding rules for the full editor reference.

Step 6 — First run

In your #ask-nairi channel:

@Nairi im a new joiner, what are the first steps I should do?

The agent should:

  1. React with then 👀.
  2. Reply with the onboarding steps, citing the Notion page it pulled them from.
  3. Offer to file the access request in #access-requests (or whichever channel your knowledge map points at) — but wait for "yes" before posting.
  4. On confirmation, post the access request and paste the link back into the thread.

If the agent answered from the wrong source, the knowledge map is the lever. Make the section header explicit ("Sales playbook → Pricing page is source of truth") and try again.

Customisation

  • Doc maintenance loop. When the agent gets the same question twice and the answer isn't in the docs, have it open a Linear ticket on the wiki team to add the missing section. The longer the agent runs, the better the docs get.
  • New-joiner buddy. Drop the agent into a private channel with each new hire on day one, seeded with the onboarding guide. They get a 24/7 buddy for their first two weeks without anyone having to babysit.
  • Cross-team translation. With both engineering and sales docs attached, the agent can answer "what's our SLA on enterprise plans?" in a customer thread without anyone context-switching to a different system.
  • Scheduled status digest. Wire a scheduled job that runs every Monday morning, summarises last week's shipped Linear projects from the wiki + the GitHub repos, and posts it to #weekly-update.

Can't find what you're looking for? Email support@nairi.ai.

On this page