# The Diagrid Assistant

The **Diagrid Assistant** answers questions about the resources in your own organization — your projects, apps, workflows, agents, components and MCP servers. You ask in plain language, and it reads the same Diagrid APIs the [console](https://docs.diagrid.io/concepts/console) and the [CLI](https://docs.diagrid.io/references/diagrid/diagrid-cli-intro) read.

It is operated by Diagrid and runs server-side. You do not supply a model provider key, and nothing needs installing.

## What it is for

The assistant is most useful for questions that span many records, where the answer is a search rather than a lookup:

- "Which workflows failed in the last hour?"
- "Show me the AML screenings from today."
- "Which apps have no access policy?"

It is not a replacement for the console or the CLI. It reads the same data and is often the faster way to *find* something you then open in the console.

## What it can and cannot do

**It is read-only.** Every operation it is allowed to call is a read. It cannot start, stop, rerun, terminate or change anything. Asked to, it explains what you would run instead.

**It answers only from your own resources.** It has no knowledge of other organizations, and no general knowledge of your systems beyond what the Diagrid APIs return for you.

**It answers as you.** The assistant carries your identity, not a service account, so it can only see what your own permissions allow. This is why it requires a user login:

```bash
diagrid login
```

An API key will not work — an API key carries no user identity for the assistant to verify.

## Where to find it

**In the console** — open the assistant from the launcher in the Diagrid Web Console. The drawer can be pinned beside your work or expanded full-screen, and it keeps a conversation history.

**From the CLI** — [`diagrid chat`](https://docs.diagrid.io/references/diagrid/cli-reference/chat) starts an interactive session in your terminal:

```bash
diagrid chat
```

## What it is allowed to see

Your organization's **Data shared with AI tools** setting decides which fields reach the assistant at all. It has two levels: **Metadata** (the default) and **Metadata and application data**. Fields are removed from API responses *before* the assistant sees them, so this is a limit on what it can read, not a rule it is asked to follow. What each level allows is listed in [Data shared with AI tools](https://docs.diagrid.io/concepts/ai-data-sharing).

The practical difference shows up in questions about *business* state rather than *operational* state. A workflow's custom status is where your own code records where a run has reached — `awaiting_analyst_review`, `rejected_kyc`, `pending_settlement`. At Metadata that field is withheld, so questions that depend on it cannot be answered:

- "Which onboardings are waiting for manual approval?"
- "Why was this run rejected?"
- "Which runs are stuck at the review step?"

Questions framed around **workflow names and statuses** work at either level, because names are never withheld. If your workflows model each stage as its own registered workflow, "how many enhanced due diligence runs are in progress" is answerable at Metadata.

Changing the level is an organization-wide decision — see [Manage the Diagrid Assistant](https://docs.diagrid.io/operate/platform-operations/diagrid-assistant).

## Getting it enabled

The assistant is enabled per organization by Diagrid. If you do not see it in the console, ask your Diagrid contact to enable it for your organization.

## Next steps

- Try it in the [Diagrid Assistant quickstart](https://docs.diagrid.io/getting-started/quickstarts/diagrid-assistant).
- See how it's enabled and what each data-sharing level shares in [Diagrid Assistant settings](https://docs.diagrid.io/operate/platform-operations/diagrid-assistant).
