Add the assistant: a chat that drives the MCP tools in-process
Docs / docs (push) Successful in 42s
Playwright Tests / test-playwright (1, 2) (push) Failing after 2m42s
Playwright Tests / test-playwright (2, 2) (push) Failing after 10s
pre-commit / pre-commit (push) Failing after 2m33s
Test Backend / test-backend (push) Failing after 2m48s
Compose Smoke Test / test-compose (push) Failing after 9s
Playwright Tests / merge-reports (push) Failing after 2m17s
Docs / docs (push) Successful in 42s
Playwright Tests / test-playwright (1, 2) (push) Failing after 2m42s
Playwright Tests / test-playwright (2, 2) (push) Failing after 10s
pre-commit / pre-commit (push) Failing after 2m33s
Test Backend / test-backend (push) Failing after 2m48s
Compose Smoke Test / test-compose (push) Failing after 9s
Playwright Tests / merge-reports (push) Failing after 2m17s
A provider set under Settings (OpenAI-compatible; key encrypted in flow-data/ai.json) turns on an Assistant panel in the sidebar. Each turn runs the FastMCP tools in-process as the person chatting, streams the rounds over SSE and keeps one transcript per user. The panel floats on any screen and shares the editor's lane: a settings panel keeps the top half, the chat the bottom. The MCP client is now built once, for the endpoint and the chat. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
@@ -95,6 +95,25 @@ door could write one the canvas cannot open.
|
||||
The caller's token rides along on every hop, so the API sees the agent's own
|
||||
identity rather than a service account. The audit trail on Home names it.
|
||||
|
||||
## The assistant
|
||||
|
||||
The same tools drive the chat inside the dashboard. An operator sets a
|
||||
provider under **Settings → Assistant** (anything OpenAI-compatible: OpenAI,
|
||||
Anthropic, OpenRouter, a local Ollama), and an **Assistant** entry appears in
|
||||
the sidebar for everyone. The panel opens on any screen and keeps its place
|
||||
from screen to screen; on a flow, it knows which one you are looking at.
|
||||
|
||||
The model calls the tools above, in-process, as **you**: every call carries
|
||||
your own token, so the chat can do nothing you could not do yourself, and its
|
||||
edits show up in the editor as drafts the moment they are saved. It is told to
|
||||
publish only when asked, but it has the tool, so read what it did before
|
||||
saying so. The trace under each answer lists every call it made.
|
||||
|
||||
The conversation is one per person, kept on the instance beside the
|
||||
configuration, and the bin in the panel's header starts it over. `MCP_ENABLED`
|
||||
is not needed for it: the endpoint is for agents outside, the chat for the
|
||||
one inside.
|
||||
|
||||
## A note on working this way
|
||||
|
||||
The pattern that works is the same one that works with a person: let the agent
|
||||
|
||||
@@ -25,7 +25,7 @@ phone the sidebar collapses to a sheet.
|
||||
| **Alerts** | where failures get sent |
|
||||
| **Admin** | users (superusers only) |
|
||||
| **Search** | anything in this instance, by name |
|
||||
| **Settings** | your account, appearance, and remote access |
|
||||
| **Settings** | your account, appearance, remote access, and the assistant |
|
||||
|
||||
### Search
|
||||
|
||||
|
||||
@@ -129,3 +129,10 @@ follow the system).
|
||||
**Remote access** is where an instance is paired with a portal, remote
|
||||
users are admitted, and the link is cut again. That has [its own
|
||||
page](portal.md).
|
||||
|
||||
**Assistant** turns on the chat that builds and edits flows: pick a provider,
|
||||
paste a key, fetch the model list and choose one. The key is stored encrypted
|
||||
on the instance and never shown again. One provider serves everyone who signs
|
||||
in here, and until one is set nothing in the interface mentions the feature.
|
||||
How the chat works, and what it may do, is on the [agents
|
||||
page](../code/agents.md#the-assistant).
|
||||
|
||||
Reference in New Issue
Block a user