> For the complete documentation index, see [llms.txt](https://docs.eesel.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.eesel.ai/use-cases/internal-operations.md).

# Internal Operations

Set up an internal knowledge base AI that answers your team's questions in Slack, Google Chat or Microsoft Teams from your wiki, documents and apps, with the source linked.

An internal knowledge base AI answers your team's questions from your wiki and documents, inside the chat app they already use. eesel's agent reads Confluence, Notion, Google Drive, uploaded files and every other app you connect, then answers in the Slack thread with the source linked.

It works for IT, HR and ops questions alike, so everyone on the team can ask it instead of hunting for the right page or the right person.

In this example a teammate asks about SSO in Slack, and the answer cites the Confluence page it came from.

<figure><img src="https://3732419023-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F2xXO0947TYoPIhGoBgSE%2Fuploads%2Fgit-blob-107a22cc2e8de270b811dcb01821622a331fc0c4%2Finternal-ops-hero.png?alt=media" alt="A team chat channel where someone asks whether the company supports SSO for enterprise customers, and eesel AI answers with a linked setup guide and cites the Confluence page it came from"><figcaption><p>A Slack question answered in the thread, with the source page linked.</p></figcaption></figure>

**Works with:** [Slack](/integrations/communication/slack.md), [Microsoft Teams](/integrations/communication/microsoft-teams.md), [Google Chat](/integrations/communication/google-chat.md), [Confluence](/integrations/knowledge/confluence.md), [Notion](/integrations/knowledge/notion.md), [Google Drive](/integrations/knowledge/google-drive.md), [uploaded files](/integrations/knowledge/uploading-files.md).

**Ideal for:** hard-to-navigate knowledge bases, onboarding new hires, policy lookups, and the repeat questions every team fields (IT, HR, ops).

## Set up your internal support AI

{% stepper %}
{% step %}

### Create an agent

Open the agent dropdown at the top left and choose **Create Agent**. We recommend a separate agent for internal knowledge. Its instructions then stay focused on your team, not your customers. One agent can hold both roles if you prefer.
{% endstep %}

{% step %}

### Tell it about your business

There are two ways to give it your team's knowledge.

**Connect the apps where the knowledge lives.** Ask your agent to add your wiki pages, for example [Confluence](/integrations/knowledge/confluence.md). It posts a connect link, and a person approves it in the browser.

<figure><img src="https://3732419023-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F2xXO0947TYoPIhGoBgSE%2Fuploads%2Fgit-blob-8079c41d3a2901ed2c8195f1f71efdff4f03836f%2Fconfluence-connect-chat.png?alt=media" alt="The dashboard chat where the user asks to add Confluence pages as knowledge and the agent posts a Connect Confluence link"><figcaption><p>The agent posts the Connect Confluence link.</p></figcaption></figure>

The integration page then shows the connection and how many documents it read.

<figure><img src="https://3732419023-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F2xXO0947TYoPIhGoBgSE%2Fuploads%2Fgit-blob-fe2ac400475d0060d463f0489830678b96de41d1%2Fconfluence-integration-page.png?alt=media" alt="The Confluence integration page in the dashboard showing Connected with the site name, Start a chat buttons, and a Confluence source row with a document count and a toggle"><figcaption><p>The Confluence integration page, with the source and its document count.</p></figcaption></figure>

**Upload or create files.** Upload the documents you would hand a new starter.

<figure><img src="https://3732419023-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F2xXO0947TYoPIhGoBgSE%2Fuploads%2Fgit-blob-a34bd11986951152eb329f759662a5bd41173722%2Ffiles-upload-modal.png?alt=media" alt="The dashboard chat with the Upload Files modal open in front of it, showing a drag and drop area, a Choose a file button, the 25MB limit, and three files ready to upload"><figcaption><p>The upload area, opened from the chat, with files ready to go.</p></figcaption></figure>

You can also ask your agent to write a document. It saves the file in the Files editor.

<figure><img src="https://3732419023-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F2xXO0947TYoPIhGoBgSE%2Fuploads%2Fgit-blob-bb6f355b08f924e8d1b0f8f51fba3bd24bb80b2b%2Ffiles-agent-written.png?alt=media" alt="A policy document the agent wrote, open in the Files editor with Saved, Share and Export controls, and the chat that asked for it listed under Recents"><figcaption><p>A file your agent wrote and saved, open in the Files editor.</p></figcaption></figure>
{% endstep %}

{% step %}

### Connect it to your team chat

Ask your agent to connect Slack, then tell it which Slack channels to be active in. On Google Chat, add the eesel app to a space and connect it, as on [Google Chat](/integrations/communication/google-chat.md). Microsoft Teams is available on request, so [contact us](https://eesel.ai/contact).

<figure><img src="https://3732419023-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F2xXO0947TYoPIhGoBgSE%2Fuploads%2Fgit-blob-c04a1cc36dbc7243c0b546eeb85ef3826f94ce63%2Fslack-connect-chat.png?alt=media" alt="The dashboard chat where the user asks to connect Slack and the agent posts an Add to Slack link to open and approve in the browser"><figcaption><p>The agent posts the Add to Slack link in the chat.</p></figcaption></figure>

Open the link. A person approves this in the browser.

<figure><img src="https://3732419023-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F2xXO0947TYoPIhGoBgSE%2Fuploads%2Fgit-blob-7ad344df7886604f9c2e9a1c711d0e9330ce09be%2Fslack-oauth-approve.png?alt=media" alt="Slack&#x27;s permission screen asking to allow the eesel AI app to access Slack, with a not-approved-by-Slack notice, a workspace picker, the permission list and an Allow button"><figcaption><p>Slack's permission screen, with the workspace picker and the permission list.</p></figcaption></figure>
{% endstep %}

{% step %}

### Brief it on the job

Tell it what tone to use, which sources to trust first, and when to escalate to a person. Ask for a standing rule in chat and it saves the rule to its own instructions.

<figure><img src="https://3732419023-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F2xXO0947TYoPIhGoBgSE%2Fuploads%2Fgit-blob-bbe39e6bfb794c408fefd4449f22093fb0d576ed%2Fconfluence-instruction-chat.png?alt=media" alt="The dashboard chat where the user asks the agent to always link the source Confluence page, and the agent saves it to its instructions"><figcaption><p>Ask in chat for a habit, and your agent saves it to its instructions.</p></figcaption></figure>

Open the Instructions page to read or edit the saved rule yourself.

<figure><img src="https://3732419023-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F2xXO0947TYoPIhGoBgSE%2Fuploads%2Fgit-blob-0378cc28202939b0fbd9f147c772e37d70d5158b%2Fconfluence-instruction-saved.png?alt=media" alt="The Instructions page in the dashboard, showing the saved instruction text"><figcaption><p>The saved instruction on the Instructions page.</p></figcaption></figure>
{% endstep %}

{% step %}

### Ask it in a channel

Anyone on your team can @mention the eesel app in a Slack channel and ask a question. It answers in the thread and links the source page.

<figure><img src="https://3732419023-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F2xXO0947TYoPIhGoBgSE%2Fuploads%2Fgit-blob-26276d2b2d5d7223b694877a7830bb50847ad630%2Fconfluence-slack-thread.png?alt=media" alt="A Slack channel where a teammate mentions the eesel app with a question, and it answers in the thread and links the source Confluence page"><figcaption><p>A Slack thread answered from your wiki, with the source page linked.</p></figcaption></figure>

It stays in the thread after that. Ask it to change how it answers, for example to keep answers short.

<figure><img src="https://3732419023-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F2xXO0947TYoPIhGoBgSE%2Fuploads%2Fgit-blob-f0b5965c77d7fb6f546a06dbde1beaea29eb0791%2Fconfluence-slack-followup.png?alt=media" alt="The same Slack thread later, where the teammate asks for shorter answers and the eesel app adjusts and answers again"><figcaption><p>The same thread, where it takes feedback and answers again.</p></figcaption></figure>
{% endstep %}
{% endstepper %}

{% hint style="info" %}
**From Claude Code, Cursor or a terminal.** The same setup works as commands: `eesel login`, then `eesel integrations connect slack`, which prints the approval link for a person to open. The approval is a human step: print the link for a person, wait for the connection status to change, and do not retry the link. `eesel files` uploads your documents, and `eesel automations` lists your automations. Turning the mention automation on has no command, so use the dashboard chat for that. Full command reference: [The eesel CLI](/apis-and-developer-resources/cli.md). Step-by-step: [Set up from Claude Code or the terminal](/getting-started/set-up-from-a-coding-agent.md). From an MCP client: [Claude Code and MCP clients](/apis-and-developer-resources/claude-code-and-mcp-clients.md).
{% endhint %}

## What it can do

### Answer

It searches everything it is connected to at once, and every answer links its source. If it cannot find something, it says so.

| It can                            | For example                                                |
| --------------------------------- | ---------------------------------------------------------- |
| **Answer from your knowledge**    | "What is our refund policy for orders under $50?"          |
| **Search every app at once**      | Pulls from Confluence, Notion and Drive in a single answer |
| **Summarise a thread or channel** | "Catch me up on what I missed here"                        |
| **Find old decisions**            | "Did we ever decide how to handle this?"                   |

### Act

| It can                       | For example                                                  |
| ---------------------------- | ------------------------------------------------------------ |
| **Create and route tickets** | "Raise a ticket for this and assign it to billing"           |
| **Write content**            | "Write a blog post about this feature"                       |
| **Run skills and reports**   | "Run the ticket trends report and post it here"              |
| **Look up records**          | "What is the status of order 4821?"                          |
| **Combine apps**             | "Find this week's tickets about this bug and summarise them" |

One request can cross apps that do not talk to each other.

You stay in control the whole way. Adjust your AI agent's access to knowledge and its action permissions to your liking. See [Actions and Approvals](/instructions-and-memory/actions-and-approvals.md).

### Notice

Put it on a [schedule](/automations-and-schedules/automations-and-schedules.md) or hook it to an event, and it works without being asked.

| It can                       | For example                                           |
| ---------------------------- | ----------------------------------------------------- |
| **Watch your SLAs**          | Pings the channel before a ticket breaches, not after |
| **Flag spikes**              | Tells you when a topic starts trending in support     |
| **Post recurring summaries** | A digest every Monday, before your meeting            |
| **Chase what is slipping**   | Tells the person who owns it, not the whole channel   |

### Extend

[Skills](/skills/skills.md) are packaged workflows, such as a simulation, a trend report or a blog post. They run on demand, on a schedule, or off a trigger. Build your own by describing it in chat. [Custom API access](/apis-and-developer-resources/network-access.md) lets your agent reach internal apps eesel does not integrate with.

## Example use cases

* **New hire onboarding.** "What is our PTO policy?" and "How do I set up VPN?"
* **Sales enablement.** "What integrations do we support?" and "Do we have a SOC 2 cert?"
* **IT support.** "How do I reset my email password?"
* **SLA watch.** Pings the channel before a ticket breaches.
* **Project manager.** Pulls status from every app, checks it against your goals, and pings the owners of anything slipping.
* **Scheduled reporting.** Collects the numbers, writes the summary, posts it every Monday.

## FAQ

<details>

<summary>How do I add an AI agent to Slack for internal questions?</summary>

Ask your agent in the dashboard chat to connect Slack, approve the Slack permission screen, and tell it which channels to be active in. Then anyone on your team can @mention the eesel app in a channel and get an answer in the thread.

See [Set up your internal support AI](#set-up-your-internal-support-ai).

</details>

<details>

<summary>Does it work in Google Chat?</summary>

Yes. Add the eesel app to a Google Chat space, connect the space to your agent, and your team @mentions it there. See [Google Chat](/integrations/communication/google-chat.md).

</details>

<details>

<summary>Does it work in Microsoft Teams?</summary>

Yes, Microsoft Teams is available on request. [Contact us](https://eesel.ai/contact) to turn it on. Slack works out of the box.

</details>

<details>

<summary>What can the internal knowledge base AI read?</summary>

It reads every source you connect to it: wikis like Confluence and Notion, Google Drive, files you upload, and documents it writes for you. It searches all of them at once for each question.

See [Integrations](/integrations/overview.md) for every app it can read.

</details>

<details>

<summary>Does it show where each answer came from?</summary>

Yes. Every answer links the page or document it came from, and if it cannot find something, it says so instead of guessing.

</details>

<details>

<summary>Can it read every Slack channel?</summary>

No. It only answers in channels it has been added to, and it asks before it joins a new one. When it searches Slack, it looks in public channels it is in, plus private channels the person asking is also in.

See [Slack](/integrations/communication/slack.md).

</details>

<details>

<summary>How much does an AI for internal support cost?</summary>

Each Slack conversation it handles is one task, and there is no seat fee, so your whole team can use it. Every workspace starts with $50 of free usage.

See [Pricing](/pricing/overview.md) for the price per task.

</details>

<details>

<summary>Should I use a separate agent for internal questions?</summary>

We recommend it. A separate agent keeps its instructions focused on your team rather than your customers, though one agent can hold both roles if you prefer.

</details>

<details>

<summary>Can I ask my internal knowledge base from Claude or ChatGPT?</summary>

Yes. Add your eesel workspace to Claude or ChatGPT and ask the same agent from there.

See [Use eesel from Claude and other AI assistants](/apis-and-developer-resources/use-eesel-from-claude-and-other-assistants.md), [Use eesel from ChatGPT](/apis-and-developer-resources/use-eesel-from-chatgpt.md), and [Claude Code and MCP clients](/apis-and-developer-resources/claude-code-and-mcp-clients.md).

</details>

## Related pages

* [Slack](/integrations/communication/slack.md)
* [Confluence](/integrations/knowledge/confluence.md)
* [Notion](/integrations/knowledge/notion.md)
* [Google Drive](/integrations/knowledge/google-drive.md)
* [Uploading Files](/integrations/knowledge/uploading-files.md)
* [Integrations](/integrations/overview.md)
* [Set up from Claude Code or the terminal](/getting-started/set-up-from-a-coding-agent.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.eesel.ai/use-cases/internal-operations.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `build a script that syncs our docs to a CMS` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
