> For the complete documentation index, see [llms.txt](https://whitepaper.aitech.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://whitepaper.aitech.io/agentforge/execution-engine.md).

# Execution Engine

Agent Forge's execution engine brings your workflows to life by processing blocks in the correct order, managing data flow, and handling errors gracefully.

{% hint style="info" %}
Every workflow execution follows a deterministic path based on your block connections and logic, ensuring predictable and reliable results.
{% endhint %}

### Documentation Overview

### Key Concepts

#### Topological Execution

Blocks execute in dependency order, similar to how a spreadsheet recalculates cells. The execution engine automatically determines which blocks can run based on completed dependencies.

#### Path Tracking

The engine actively tracks execution paths through your workflow. Router and Condition blocks dynamically update these paths, ensuring only relevant blocks execute.

#### Layer-Based Processing

Instead of executing blocks one-by-one, the engine identifies layers of blocks that can run in parallel, optimizing performance for complex workflows.

#### Execution Context

Each workflow maintains a rich context during execution containing:

* Block outputs and states
* Active execution paths
* Loop and parallel iteration tracking
* Environment variables
* Routing decisions

### Execution Triggers

Workflows can be executed through multiple channels:

* **Manual**: Test and debug directly in the editor
* **Deploy as API**: Create an HTTP endpoint secured with API keys
* **Deploy as Chat**: Create a conversational interface on a custom subdomain
* **Webhooks**: Respond to external events from third-party services
* **Scheduled**: Run on a recurring schedule using cron expressions

#### Deploy as API

When you deploy a workflow as an API, Agent Forge:

* Creates a unique HTTP endpoint: `https://staging.Forge.io/api/workflows/{workflowId}/execute`
* Generates an API key for authentication
* Accepts POST requests with JSON payloads
* Returns workflow execution results as JSON

Example API call:

```bash
curl -X POST https://forge.aitech.io/api/workflows/your-workflow-id/execute \
  -H "X-API-Key: your-api-key" \
  -H "Content-Type: application/json" \
  -d '{"input": "your data here"}'
```

#### Deploy as Chat

Chat deployment creates a conversational interface for your workflow:

* Hosted on a custom subdomain: `https://your-name.simstudio.ai`
* Optional authentication (public, password, or email-based)
* Customizable UI with your branding
* Streaming responses for real-time interaction
* Perfect for AI assistants, support bots, or interactive tools

Each deployment method passes data to your workflow's starter block, beginning the execution flow.

### Best Practices

#### Design for Reliability

* Handle errors gracefully with appropriate fallback paths
* Use environment variables for sensitive data
* Add logging to Function blocks for debugging

#### Optimize Performance

* Minimize external API calls where possible
* Use parallel execution for independent operations
* Cache results with Memory blocks when appropriate

#### Monitor Executions

* Review logs regularly to understand performance patterns
* Track costs for AI model usage
* Use workflow snapshots to debug issues

### What's Next?

Start with [Execution Basics](file:///execution/basics) to understand how workflows run, then explore [Logging and Cost Calculation](file:///execution/advanced) to monitor and optimize your executions.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://whitepaper.aitech.io/agentforge/execution-engine.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
