Skip to main content

Agentic Mode

Agentic Mode

Agentic mode transforms a character from a single-response assistant into an autonomous agent that can plan, execute tools, analyze results, and iterate — all in a single conversation turn.


What Is Agentic Mode

Normally, a character receives a message and produces one response. With agentic mode enabled, the character enters a multi-turn loop:

  1. Receive the user's message
  2. Generate a response (which may include tool triggers)
  3. Detect tool triggers in the response
  4. Execute the tools (terminal commands, MCP calls, web searches, etc.)
  5. Feed the tool results back to the LLM
  6. Repeat from step 2 until:
    • The character responds without any tool triggers (task complete)
    • The maximum step limit is reached
    • The token budget is exhausted

Each iteration is a full character call — identity, personality, memory, and all tool access are preserved throughout the loop.


Enabling Agentic Mode

  1. Open the Visual Builder for your character
  2. Add the Agentic node from the palette
  3. Click the node to configure:
Setting Default Range Description
Max Steps 5 1-100 Maximum LLM → tool → LLM cycles per activation
Total Token Budget 50,000 Configurable Maximum tokens across all steps (prevents runaway cost)
  1. Ensure the character also has the tool nodes it needs (Terminal, MCP, M2M, etc.) — the agentic loop can only use tools that are enabled on the canvas

How It Looks in Practice

When you send a message to an agentic character in Strings:

  1. The chat shows an agentic indicator while the loop runs
  2. The character's intermediate tool calls are processed in the background
  3. You receive the final response — the character's answer after completing all steps

In streaming mode, you'll see agentic_start and agentic_step events that track progress.

Example

You ask: "Check if the web server is running and fix the config if it's not"

The character might:

  1. Run [TRIGGER:terminal:systemctl status nginx] → sees it's stopped
  2. Run [TRIGGER:terminal:cat /etc/nginx/nginx.conf] → reads the config
  3. Identify the issue in the config
  4. Provide a final response explaining what it found and recommending a fix

All of this happens in a single conversation turn.


Safety Constraints

Agentic mode has built-in safeguards:

  • Step limit — prevents infinite loops. Default 5 steps, configurable up to 100.
  • Token budget — caps total token usage across all steps. Default 50,000 tokens. If the budget is exhausted, the loop stops and the character returns its best answer so far.
  • Billing-safe — each step respects the character's token_limits.max_output and your account balance. The system caps output tokens to what you can afford.
  • No intermediate storage — only the final output enters conversation memory. Intermediate steps are logged for debugging but not persisted as messages.
  • Tool gating — the agentic loop can only use tools whose nodes are on the canvas.

Spark Sub-Agents

Characters with the Spark node can spawn focused background sub-agents. A spark is a fire-and-forget agentic loop that runs in the background:

Character says: [TRIGGER:spark:research competitor pricing and summarize]
  → A background sub-agent starts with its own agentic loop
  → The main conversation continues without waiting
  → When the spark completes, its results are picked up in the character's next response

Spark Safety

  • No recursion — sparks cannot spawn sub-sparks
  • No messaging — sparks cannot send M2M messages or self-modify prompts
  • Concurrency capped — max 3 simultaneous sparks per character (configurable 1-5)
  • Rate limited — max 4 spawns per hour per character (configurable 1-20)
  • Budget enforced — each spark respects the agentic token budget
  • Auto-expire — results expire after 5 minutes if not consumed

Configuring Spark

Add the Spark node to the canvas and configure:

Setting Default Description
Max Concurrent 3 Maximum simultaneous sub-agents
Max Spawns Per Hour 4 Rate limit on new sparks
Max Turns Per Spark 5 LLM → tool cycles per spark
Inherit Tools true Whether sub-agents get the parent's tool access (when off, reasoning only)

When to Use Agentic Mode

Good for:

  • Multi-step investigations ("check this, then fix that")
  • Research tasks ("find information across multiple sources")
  • Complex workflows that need tool chaining
  • Autonomous monitoring with Spark sub-agents

Not needed for:

  • Simple Q&A conversations
  • Single-tool invocations (the character can use tools without agentic mode — it just won't iterate)
  • Characters that should always get human confirmation before acting

Cost awareness: Each agentic step is an LLM call. A 5-step agentic loop costs roughly 5x a single response. Set appropriate step limits and token budgets for cost control.

Updated on Mar 21, 2026