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

# Surfaces

One engine, many doors: the app, Slack, email, and the agent-facing surfaces.

There is one engine, and several doors into it. Wherever you meet the platform, it is the same iHarness, the same Growth Brain, and the same record. Acting in one place resolves everywhere.

The doors:

* **The web app**, **Slack**, and **email**, where your team already works.
* **Inside Snowflake**, as a native app in your own account.
* **The agent-facing surfaces**: CLI, API, MCP, and your own agents.

Surfaces are an access layer, not a product. You do not move your team into a new tool. The platform shows up where they already work.

## The app

The full working surface: Audience, Plays, Pulse, Measurement, Settings, with chat available on every screen. iHarness reads what you are looking at, so "suppress these" means the list in front of you.

## Slack

One bot, **@iHarness**, the same identity you chat with in the app. Ask questions, receive pulses, and approve from the thread. A conversation started in Slack is the same conversation in the app.

## Email and the return path

The daily digest arrives by mail, and lifecycle email brings you back when something deserves attention. Returning users land in [Pulse](/pulse/queue.md), where whatever needs them is already queued: that is the whole returning journey, by design.

## Your own agents

The platform is built to be operated by agents as well as people, the same questions asked over a wire instead of a screen. Your agent connects through MCP as a custom connector, with a URL and a key. The procedure is in [Bring your own agent](/iharness/bring-your-own-agent.md).

iHarness's own agents work on the inside, and they are predefined. Your agent connects in from the outside and works with the same context.

CLI and API access: [join the waitlist](https://www.icustomer.ai/contact).

## Two journeys, every surface

However many doors there are, there are only two journeys: the first-time journey (onboarding, ending at your first live play) and the returning journey (a reason to come back, already queued). After that, the loop orchestrates itself.


---

# 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 by asking a question.

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

```
GET https://docs.icustomer.ai/concepts/surfaces.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 `automate deployments from our CI pipeline` 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.
