Skip to Content
almyty docs — v1
AgentsAgents

Agents

Agents orchestrate LLM calls, tool executions, conditional logic, and data transformations into repeatable pipelines. almyty supports two agent modes: Workflow agents defined as visual DAGs, and Autonomous agents configured with instructions, tools, and memory.

Agents list empty state

Agent Modes

ModeBest forHow it works
WorkflowDeterministic multi-step pipelinesVisual DAG builder with 10 node types connected by edges
AutonomousOpen-ended reasoning tasksForm-based config: system instructions, attached tools, memory, and optional collaboration with other agents

In the UI

Creating a Workflow Agent

  1. Click Agents in the sidebar
  2. Click Create Agent
  3. Select the Workflow tab
  4. Enter a name and optional description
  5. The canvas opens with a default Input, LLM Call, and Output pipeline
  6. Drag nodes from the left palette, connect them, and configure each node in the right panel
  7. Click Save to store the agent as a draft

Creating an Autonomous Agent

  1. Click Agents in the sidebar
  2. Click Create Agent
  3. Select the Autonomous tab
  4. Enter a name and system instructions describing the agent’s behavior
  5. Attach tools the agent can call
  6. Optionally enable memory and configure collaboration with other agents
  7. Click Save

Managing Agents

From the agents list you can:

  • Activate / Deactivate an agent using the status toggle
  • Duplicate an agent to create a copy
  • Import an agent from JSON using the Import button in the top bar
  • Delete an agent from its detail page

Via the API

Create a Workflow Agent

curl -X POST /agents \ -H "Authorization: Bearer $TOKEN" \ -H "Content-Type: application/json" \ -d '{ "name": "Research Agent", "description": "Searches and summarizes information", "mode": "workflow", "pipeline": { "nodes": [ { "id": "input_1", "type": "input", "data": { "schema": { "type": "object", "properties": { "query": { "type": "string" } }, "required": ["query"] } }}, { "id": "llm_1", "type": "llm_call", "data": { "providerId": "provider-uuid", "systemPrompt": "You are a research assistant.", "userPromptTemplate": "Research: {{input.query}}" }}, { "id": "output_1", "type": "output", "data": { "mapping": "{{nodes.llm_1.output}}" }} ], "edges": [ { "id": "e1", "source": "input_1", "target": "llm_1" }, { "id": "e2", "source": "llm_1", "target": "output_1" } ] } }'

Create an Autonomous Agent

curl -X POST /agents \ -H "Authorization: Bearer $TOKEN" \ -H "Content-Type: application/json" \ -d '{ "name": "Support Agent", "mode": "autonomous", "instructions": "You are a customer support agent. Answer questions using the knowledge base tool.", "toolIds": ["tool-uuid-1", "tool-uuid-2"], "memoryEnabled": true }'

Invoke an Agent

curl -X POST /agents/{id}/invoke \ -H "Authorization: Bearer $TOKEN" \ -H "Content-Type: application/json" \ -d '{ "input": { "query": "What is the weather in Berlin?" } }'

Response:

{ "success": true, "data": { "output": "The current weather in Berlin is 12C with partly cloudy skies.", "executionId": "exec-uuid", "duration": 2340, "tokensUsed": 156 } }

Import and Export

# Export curl /agents/{id}/export \ -H "Authorization: Bearer $TOKEN" > agent.json # Import curl -X POST /agents/import \ -H "Authorization: Bearer $TOKEN" \ -H "Content-Type: application/json" \ -d @agent.json

Agent Lifecycle

StatusDescription
draftAgent is being built, not yet invokable
activeAgent is live and accepting invocations
inactiveAgent is paused, invocations will be rejected
errorAgent has a configuration issue

Execution Model

When a workflow agent is invoked, almyty:

  1. Validates the input against the Input node’s schema
  2. Topologically sorts the pipeline nodes
  3. Executes each node in dependency order, passing data along edges
  4. Resolves template expressions ({{nodes.llm_1.output}}) at runtime
  5. Returns the Output node’s result

When an autonomous agent is invoked, almyty sends the input to the LLM with the configured instructions and tools, letting the model decide which tools to call and how to compose the final response.

Templates

almyty ships with built-in templates to get started quickly:

TemplateDescription
Simple ChatInput, LLM, Output — the simplest possible agent
Research AgentChains multiple LLM calls with web search tools
Tool-AugmentedLLM with tool calling for dynamic API interaction
Multi-Step PipelineConditional branching with data transformations

Select a template when creating an agent to get a pre-wired pipeline.