Skip to content

Agents

In Flow, agents are governed AI personas for chat and automation. You configure each one as a filesystem package under AI → Agents (AGENT.md with YAML frontmatter plus a Markdown system prompt, optional schedules.json, optional avatars/ image pointed at by frontmatter icon, and sibling files). Every tool call is audited; every agent runs inside the permissions you set.

To draft a package outside Flow and upload the folder, see Author agents. External AI tools start from the Fontana docs skill, which sends an agent-building task to the agent authoring skill.

Agent definitions follow the open AGENTS.md pattern. The Agents explorer opens the correct editor card for each path; saving re-ingests the derived runtime catalog.

Fontana ships ready-to-use agents you can tailor for your organisation:

  • Fontana agent (system/fontana-agent) - the assistant on every page, including /ai/chat, unmapped routes, and general routing (including agent schedules). When you start a chat on a Flow surface such as Dashboard, Files, Knowledge Graph, Skills, or an Admin route, Fontana agent activates that page’s skill, so one agent carries the page-specific tools without a separate agent per page.
  • Workflow agent (system/workflow-agent) - the agent on /workflow; the workflow canvas is the one surface with its own agent. The new-chat picker selects it there. You can change the agent before the first send; your choice sticks until you navigate again.
  • Canvas agent - specialist for building and editing workflow graphs (nodes, edges, ports, and canvas config). It remains a sub-agent of system/workflow-agent, typically invoked by delegation.
  • Image, audio, and video agents - specialists that create a picture, a spoken clip, or a short video from your request. Chat stores the file with the message and plays it in the thread, including on the sub-agent card in the main conversation. Speech uses the agent’s own voice when one is configured. The audio agent speaks when that agent has no voice.

On AI → Agents (/agents) with no agent selected, Flow shows a welcome plus your last three chats that belong to an agent. Each tile reopens that thread; the overflow menu copies the link, opens a new tab, marks unread as read, or deletes the chat. The expanded left-sidebar AI list opens that agent’s chat on Agents (/agents?agent=). AI → Agent packages (/ai/agents) is the package explorer. The catalog Settings list can open Usage, Embeddings, API Keys, and Chat Channels in the same pane. In a chat drawer, Agent Settings on the agent toolbar opens that agent’s editor on AI → Agents.

When you send a message on an existing thread from a different page than the thread’s current owner, Flow switches the thread to that page’s agent automatically. Intentional non-page transfers still use handoff (chat_handoffThread) to allowlisted agents. Chat history is per-user across pages (not siloed by workflow).

On Skills, the Skills page skill lets Fontana agent manage namespaces, packages, and files with the same RBAC as the Skills UI. Page selection (namespace, folder, file) is sent as structured chat context. When you ask to open a named skill, Fontana agent resolves it via the skill catalog and navigates to that skill’s SKILL.md (not only the Skills home page).

On Agents, the Agents page skill lets Fontana agent create and manage portable agent packages the same way: it picks a non-reserved namespace (users when only Fontana system exists; otherwise it asks), writes AGENT.md with role-ready system prompts and defaults that include handoff to system/fontana-agent for Fontana product requests, and opens the package in the explorer. It does not author into the reserved system namespace (or legacy default if present).

Fontana-shipped agents and abilities live under system/, and every platform update reconciles that namespace: a package Fontana no longer ships is removed, and moving your own agent package into system or creating a skill there is refused. Keep your own packages in your own namespaces.

You can clone these defaults, adjust prompts, and switch abilities and Skills on or off as your operating model requires.

For recurring scheduled prompts on a persistent chat thread, see Agent schedules. For mailboxes and send/receive tools, see Agent email.

In AI → Agents, you edit the package files that define each persona:

Setting What you control
Id and display name Stable identity and the label users see in chat
Avatar Roster head on an accent ring (the same catalog face in the Agents sidebar, chat bubbles, hover tooltips, and pickers). Optional raster under the package avatars/ folder; frontmatter icon points at the file. Upload or remove from the agent card header.
Description and system prompt Short summary plus Markdown instructions that define tone, scope, and operating rules
Language model Approved model override; leave empty to use the deployment default
Skills and abilities One list of everything the agent can do. Abilities are Fontana’s own packages (Email, Messaging, Knowledge Graph, Agent memory, Data, Files, Projects, Workflow documents, Agents, System One, Fontana Browser, Coding, MCP connections, Skill authoring, plus one per MCP connection you add); Skills are the packages you author. Switch one Enabled or Off, and expand it to configure its settings and whether it loads on the first turn. Related packages share one card: Abilities and Fontana pages each have a single On/Off for the whole group and a count of how many are on. Expand the card to switch one package on its own and open its settings. A search that matches a package inside a group opens that group. See Skills and Tools and MCP
Auto-load on first LLM turn Inside an enabled ability or skill. On: its instructions and tools are there from the first message, and the agent can close it later when the job is done. Off (the default for most): the agent activates it when the task needs it, so its tools cost nothing until then. Knowledge Graph is the one ability that auto-loads by default
Available in Under Advanced settings. Tiles for where you can pick the agent: Chat (chat pickers, your default agent, handoff targets, chat channels, schedules), AI node (workflow AI nodes), KG extract (Knowledge Graph ontology agent), and Internal (background workers Fontana calls itself, hidden from every picker). Hover a tile to see what it covers. An agent needs at least one; a new agent starts in Chat.
Permissions Allow-list of the same permissions as a person’s role. When someone invokes the agent, the usable set is that person’s permissions overlapped with the allow-list.
Vector source Keywords that help route and discover this agent and related workflow templates
Call settings Optional JSONC for generateText fields (temperature, maxOutputTokens, topP, topK, presencePenalty, frequencyPenalty, stopSequences, seed). Uncomment a key to set it. Unused keys are stored as _temperature-style placeholders in AGENT.md so the raw frontmatter stays a parseable mapping. Runtime calls use only unprefixed keys.
Reasoning effort Off through Max segmented control under Language model (gray to purple). Per-thread chat controls can override.
Context strategy Default uses platform defaults; Custom sets token limit, compress target, minimum recent user messages, tool-result retention (rounds), and KG body retention (turns). Stale file reads and KG bodies are evicted deterministically; conversation is summarised when still over budget.
KB injection score threshold Minimum similarity score for automatic Knowledge Graph injection on each turn; per-thread overrides available

Agents receive Knowledge Graph context in two ways, described fully on Knowledge Graph:

  • Automatic pre-turn injection - hybrid search over assigned namespaces before each message when you turn on auto-search for the agent, gated by its KB injection score threshold, so likely-relevant approved documents are already in context.
  • Agentic search - during the work, agents can call Knowledge Graph retrieval directly: hybrid search (full-text, vector, and relationship expansion), outline navigation over long structured documents, and entity navigation, each returning path citations back to the exact source section.

You assign namespaces per agent so regulated corpora stay segregated and retrieval stays least-privilege.

Long threads use a layered context model: durable goals and completed task summaries sit in a compact block after your latest message; stale file reads and KG evidence bodies are evicted automatically or when the agent calls evict context; only conversation text is summarised when the thread is still over budget. Compaction failures appear as failed tool rows in the transcript (no silent pruning).

Agents can search community workflow templates by semantic similarity and, with user consent, read workflow configuration from the canvas. That lets assistants help you design and refine pipelines with awareness of graph structure, node types, and connections.

Runtime execution data is queried separately from canvas configuration, so design assistance and live run results stay strictly separated. With the Workflow capability assigned, an agent can also list, read, and update Exception Management tickets for a workflow you can access.

While an agent works on an open workflow, its face shows in the project header. On the canvas, one cursor sits with its tip on the bottom centre of the node that agent is working on. The pointer stays the same size when you zoom the canvas, uses that agent’s tone colour, and nudges when the agent calls that same node again. A query that names a node, including a workflow config lookup for that node’s id, moves the cursor there. The same face appears on a port grid or an exception row the call touches. The face stays solid while that chat is still running. After the chat goes idle, a finished call stays visible, faded, with how long ago it completed, and then drops off. Click a face to open that agent’s chat, including the thread when the work belongs to one. Show Agent Cursors in the project actions menu is on unless you turn it off. Turning it off hides the canvas cursors. The header, grids, and exception faces stay. The same switch is on the workflow preferences page.

When an agent (or any other markdown surface in Flow) includes a fenced Mermaid diagram, you can zoom, pan, fit, export SVG or PNG, copy the diagram, and open it fullscreen from the hover controls on the preview. Inline previews do not zoom on mouse wheel (the page keeps scrolling); fullscreen keeps wheel zoom. Raw shows the Mermaid source in the same preview box; the control then reads Diagram to return to the chart. Language-less ASCII pipeline trees (box-drawing lines with pipeline arrows) render as the same interactive flowchart.

The composer decides how a message you send lands while a reply or tool run is in progress. The cog beside the prompt sets the send mode, and Auto is the default: it interrupts while the agent is writing its reply and steers while tools are running. Enter and the purple button always use the mode you picked.

  • Steer lands your message in the thread right away; the agent answers it as soon as the current step settles.
  • Interrupt cancels the running turn and any pending tools, then answers your new message immediately.
  • Queue holds the message until the current turn finishes. Queued messages appear in a drawer on top of the prompt box where you can drag to reorder, edit, remove, or send one now. One queued message is sent each time the agent goes idle. Stop pauses the queue; the next completed turn resumes it.

The same cog holds the composer preferences: auto-apply canvas suggestions, auto-read replies, and clearing every message in the thread.

If the server restarts in the middle of a turn, the thread recovers on its own: unanswered tool calls are closed with a visible error and any message you sent meanwhile is answered once the thread is idle again.

Open the agent package and choose Permissions. The list is grouped by area: all permissions, a whole area, then each permission. You can turn on a permission outside your own role, so a colleague who holds it can use the agent for that work. Your own session still uses only the overlap of your role and this list. Admin → Roles and your profile keep the grid and the YAML view as well.

A new agent starts with every catalog permission on the allow-list. Invocation still limits the agent to what you hold. A sub-agent and a handoff target are limited the same way: your permissions overlapped with that agent’s allow-list. The agent that called or handed off does not remove permissions you still hold.

Profile has an Account section and a Permissions section. Permissions uses the same grid, and you cannot edit it there. Activity logs record the usable set for each invocation, and whether each tool call was allowed or denied.

Complex work can span multiple agents without losing governance:

  • Sub-agents run delegated tasks in child threads while the parent conversation continues under audit.
  • Handoff transfers the same thread to another in-app agent when the task surface changes (for example from planning to canvas editing).

Peer-agent federation with external platforms uses separate interop protocols. See Agent Interop for A2A, ACP, and related patterns.