Agent Studio
The visual canvas where every Fruxon agent is designed, configured, and tested
Studio is where agents are built. It's a visual canvas — drop nodes, write prompts, attach tools, run a test, deploy. The canvas is the source of truth: there's nothing about an agent that lives outside it.
The canvas
The big area in the middle is your workflow.
- Pan — drag the background.
- Zoom — scroll, or use the zoom controls bottom-right.
- Select — click a node to open its configuration panel.
- Multi-select — drag a marquee or shift-click.
- Auto-layout — clean up node positions with the layout button (or ask Copilot to do it).
Connections between nodes are derived, not drawn — Fruxon reads the placeholders in your prompts and tool configs and wires the dataflow accordingly. You don't have to drag wires.
Nodes
Every workflow has the same spine: an Entry Point, one or more Agent Steps, and an Exit Point.
Entry Point
The starting node. Defines the typed inputs the agent accepts.
- Name — how you reference it in placeholders (
{{input.<name>}}) - Type —
string,number,boolean,object,array - Required — whether the agent fails fast if missing
- Default — fallback value when not provided
- Description — surfaces in the API schema and to sub-agent callers
Keep the entry point lean. A focused agent has 1–4 well-named parameters.
Agent Step
Where the LLM work happens.
| Setting | Purpose |
|---|---|
| Name | Used in placeholders ({{step.<name>.output}}). Keep it short and meaningful. |
| System Prompt | Sets behavior, constraints, persona, output format. |
| User Prompt | The per-call message, typically full of placeholders against inputs and prior steps. |
| LLM Config | Pick a published, tenant-scoped LLM config (provider + model + temperature / top-p / max tokens / reasoning mode). See LLM Providers. The step records a reference, not a snapshot — updating the config rolls into the step on the next run. |
| Per-step overrides | Optional knobs that override the picked config for this step only (e.g., a higher max_tokens). The base config remains the default; overrides are visible in the trace. |
| Max Tool Loops | Cap on tool-call iterations per execution (1–100, default 25). Raise for complex tasks; lower to bound runaway loops. |
| Tools | Direct tool attachments — see Tools & Skills. |
| Skills | Activatable capability bundles. |
| Knowledge Base | Per-step retrieval — pick assets and data sources the step can search. Different steps can attach different KBs; a step with no KB has no retrieval cost. See Assets. |
| Memory | Per-step memory toggle — see Memory. |
| Session | Per-step conversation history — see Sessions. |
| Quality check | Inline LLM-as-judge with optional retry-with-feedback. See Inline Judge. |
Exit Point
Shapes the response sent back to the caller. Map fields from any step output, input, or asset:
result ← {{step.briefing.output}}
sources ← {{step.research.tool_calls}}The exit's shape is what API callers and sub-agent parents see.
Tool steps and sub-agents
Tools and sub-agents aren't separate node shapes on the canvas — they're attached to Agent Steps:
- Sub-agents — invoke another agent from a step (Sub-agents).
- Tools — APIs, predefined tools, code tools, MCP, code execution, and more, attached to a step (Tools & Skills).
- Human approval — configure on any tool to pause execution until a human approves the call.
Connecting a tool to credentials
Every tool that calls an external service needs an integration connection (a tenant-level config carrying the credential, sandbox routing, and OAuth scopes). You wire credentials with a connection picker, not by pasting auth into the step:
- Configure once at the tenant level. In Integrations, set up one or more configs for each integration. Each is a card with its own name, credentials, granted OAuth scopes, and
sandboxModestrategy. The same integration can have multiple configs (e.g., "Salesforce — Prod", "Salesforce — Sandbox"). - Pick the connection per agent. In the agent's Integrations panel, pick which config the agent uses for each integration. This is the per-agent binding.
- Override per-tool when needed. A specific tool on a specific step can override the agent-wide binding — useful when one read-only step should use a sandbox config while the rest of the agent uses prod.
- Pin the connection on a step to lock it against accidental rebinds when the agent-wide default changes.
The picker shows each config as a card with its sandbox status and OAuth scope summary, so it's clear which environment a step is actually talking to before you save.
Placeholders
Placeholders are how data moves between nodes. Anywhere a string is accepted, you can reference:
{{input.<name>}} # entry-point parameters
{{step.<name>.output}} # output of a previous step
{{step.<name>.tool_calls}} # detailed tool-call records
{{secret.<NAME>}} # organization secrets
{{asset.<name>}} # literal asset contentPlaceholders that don't resolve render as empty strings — a common silent bug. Always check the trace if a step is producing weird output.
Configuration panel
The right-side panel shows whatever's selected. Different node types expose different sections:
- Connectors — channels delivering this agent (Slack, Teams, Telegram, etc.)
- Integrations — connection picker. Pick which tenant-level config each integration uses for this agent. Per-tool overrides are configured on the step. See the picker pattern above.
- AI Providers — the tenant LLM configs (LLM Providers) wired into this agent. Per-step picking happens on the step itself.
- Knowledge Base — assets and data sources attached for retrieval (Assets). Per-step picking happens on the step.
- Access Requests — onboarding queue for users on the connectors
Saving & revisions
Every save creates a revision — an immutable snapshot. Production traffic continues to hit the deployed revision; saving doesn't change what's live.
| Action | Shortcut |
|---|---|
| Save | ⌘/Ctrl + S |
| Undo | ⌘/Ctrl + Z |
| Redo | ⌘/Ctrl + Shift + Z |
| Test | ⌘/Ctrl + Enter |
Testing from Studio
The Test panel runs the current canvas state (saved or unsaved) with sample inputs and shows the full trace. See Testing for the full guide.
Copilot
The Copilot drawer at the bottom of the canvas is an AI assistant that can build and modify your workflow from natural-language prompts — add steps, attach tools, change prompts, import flows from other platforms. See Copilot.
Multiple workflows per agent
An agent can have multiple workflows — for example, one for normal handling and one for error fallback or human-handoff. Switch between them from the workflow selector at the top of the canvas.
Workflows are first-class. They share parameters, memory, and connectors but have distinct flows. Use them to keep large agents readable.
Next steps
- Creating Agents — full walkthrough of a new agent
- Tools & Skills — what agents can do
- AI Providers — wiring up the LLM
- Copilot — build with natural language
- Testing — interactive validation