# Manage clients from the assistant

Ask the Salfio assistant — in Slack or the dashboard chat — to create and update clients, labels, notes, and channel assignments instead of clicking through the dashboard.

The Salfio assistant answers questions about your clients from the data Salfio captures. It can also *act*: the same management surface the Salfio API exposes is available conversationally, in the Slack @mention/DM and in the dashboard chat.

## What you can ask it to do

**Change things**

- Create a client — "Create a client for Acme with domain acme.com."
- Update a client — rename it, change its domain, or move it between `prospect`, `active`, and `churned`.
- Set labels — "Put the VIP label on Acme" (labels must already exist; create new ones in the dashboard).
- Add a note — "Add a note to Acme: agreed to start the pilot on Monday." The note lands in the client's activity stream, attributed to you.
- Manage assignment rules — bind or unbind a Slack channel so its messages are assigned to the right client automatically.

**Look things up**

- Find any client by name — including ones that haven't been active recently.
- Organization facts — your plan, your team members.
- Integration status — "Which integrations are connected?" or "Which Slack channels can Salfio see?"

Everything is scoped to your organization, and writes are recorded as the person who asked — a note you dictate in Slack shows you as its author in the dashboard.

## Destructive actions ask first

Deleting a client or rewriting a channel's assignment rules is hard to undo, so the assistant always spells out what will change and waits for your explicit confirmation in the conversation before doing it.

Scheduled [task routines](/docs/task-routines) run unattended, so those destructive actions are not available to them at all — a routine can add notes or read anything, but it can never delete a client.

## Where this works

- **Slack** — @mention Salfio in a channel or send it a DM. See [Connect your workspace](/docs/getting-started/connect-workspace).
- **Dashboard chat** — click **Ask Salfio** in the bar at the bottom of any dashboard page. Each chat can be scoped to a single customer or to all accounts from the selector in the composer; the scope locks once the first message is sent. Open chats stay in the bottom bar while you navigate, and closed conversations remain available from the history icon next to **Ask Salfio**.

## Related

- [Assign a Slack channel to a client over the API](/docs/guides/assign-slack-channel) — the same channel-binding flow, scripted over the REST API instead.
- [Task routines](/docs/task-routines) — schedule recurring prompts whose output is delivered to Slack.
- [Connect from Claude.ai web](/docs/mcp/connect-claude-web) — the external-assistant counterpart: the same tools over MCP.

## Related pages

- [Administrator Tools](./administrator-tools.md)
- [Agent Tools](./mcp-external-servers.md)
- [Assign a Slack channel to a client over the API](./guides-assign-slack-channel.md)
- [Authenticated health check](./api-reference-gethealth.md)
- [Authentication](./api-authentication.md)
- [Cards](./cards.md)
- [Changelog](./changelog.md)
- [Changelog](../changelog.md)
- [Connect a workspace](./getting-started-connect-workspace.md)
- [Connect an integration](./getting-started-connect-integration.md)

# Agent Instructions

This portal answers questions programmatically. To receive a synthesized,
source-cited answer instead of crawling page by page, append the `?ask=`
query parameter to any page URL on this site:

    /guides/quickstart?ask=how+do+I+authenticate

Optional parameters:

- `&goal=<what-you-are-trying-to-do>` steers the answer toward your
  objective (e.g. `&goal=write+a+python+client`).
- `&version=<label>` scopes the answer to a mounted version when the
  portal publishes more than one.

The response is `text/markdown`: the answer followed by a `# Sources` list
of the portal pages it was grounded in. Status codes are the contract:

- `200` — the answer; `402` — the portal owner’s plan or answer credits are
  exhausted (surface this to your operator; do NOT retry); `429` — you are
  rate-limited; back off for the `Retry-After` seconds; `503` — the answer
  lane is temporarily unavailable; fall back to crawling the `.md` pages.

For the full corpus map read `llms.txt` at the site root; for the tool
surface (search + page fetch as MCP tools) see `/mcp`.
