Skip to main content

AgentFlow

PyPI version Python 3.11+ License: Apache 2.0 CI

Context engineering framework for multi-agent systems.

AgentFlow is a framework-agnostic toolkit for building multi-agent workflows using plain Markdown and YAML configuration files. Define agents, workflows, routing rules, and context -- all in version-controllable .md files.

Full Documentation | PyPI | GitHub

Key Features

  • Markdown + YAML config files -- Agents, workflows, and routing defined in .prompt.md, .workflow.md, .context.md files
  • Pluggable LLM providers -- Anthropic Claude, OpenAI GPT, Google Gemini, or any OpenAI-compatible API
  • Hybrid routing -- YAML rule matching with LLM fallback, plus hierarchical domain routing
  • DAG-based workflows -- Sync, parallel, and async node execution with input mapping
  • Code handler nodes -- Register Python functions as workflow steps for deterministic processing without LLM calls
  • Foreach iteration -- Run any node (agent or handler) once per item in a list artifact
  • Session management -- Scratchpads, multi-user history, and artifact storage
  • Memory system -- File-based and vector search (embedding-agnostic)
  • Tool registry -- Local and HTTP tool dispatchers with structured raw_result in events
  • Event-driven observability -- EventBus with Langfuse telemetry (session, trace context, resource attributes)

Install

pip install gittielabs-agentflow

# With a specific LLM provider
pip install "gittielabs-agentflow[anthropic]"    # Claude
pip install "gittielabs-agentflow[google]"       # Gemini
pip install "gittielabs-agentflow[openai]"       # OpenAI / compatible

# Everything
pip install "gittielabs-agentflow[all]"

Quick Start

1. Define an agent (context/agents/researcher.prompt.md)

---
name: researcher
provider: anthropic
model: claude-sonnet-4-6
temperature: 0.7
max_tokens: 4096
tools: [web_search, summarize]
context_files: [shared/guidelines.context.md]
---

You are a research agent. Given a topic, search for relevant information
and provide a comprehensive summary with sources.

2. Define a workflow (context/workflows/research.workflow.md)

---
name: research_pipeline
trigger: api
nodes:
  - id: research
    agent: researcher
    next: format
  - id: format
    agent: formatter
    inputs:
      message: "research.text"
---

Research pipeline: search, then format results.

3. Define routing rules (context/router.prompt.md)

---
name: main_router
routing_rules:
  - if: "'research' in message or 'find' in message"
    routeTo: research_pipeline
  - if: "'analyze' in message"
    routeTo: analyzer
fallback: general_assistant
llmFallback: true
---

Route incoming messages to the appropriate agent or workflow.

4. Run

from agentflow import (
    ConfigLoader, RouterEngine, WorkflowExecutor, AgentExecutor,
    ToolRegistry, SessionManager, EventBus,
    FileSystemStorage, AnthropicProvider,
)

# Load configs
loader = ConfigLoader("./context")
loader.load()

# Set up infrastructure
storage = FileSystemStorage("./data")
events = EventBus()
provider = AnthropicProvider()
tools = ToolRegistry()
sessions = SessionManager(storage)

# Route a message
router = RouterEngine(loader, provider, events)
result = await router.route("Research the latest AI safety papers")

# Execute workflow
if result.target == "research_pipeline":
    executor = WorkflowExecutor(loader, provider, tools, sessions, storage, events)
    outputs = await executor.run("Research the latest AI safety papers", session_id="s1")

See the Quick Start guide for a complete walkthrough.

Architecture

agentflow/
  agent/          # AgentExecutor, ContextAssembler, PromptTemplate
  config/         # ConfigLoader, schemas, parser, ContextResolver
  router/         # RouterEngine, DomainRouter, RuleEvaluator
  workflow/       # WorkflowExecutor, WorkflowDAG, NodeRunner
  session/        # SessionManager, Scratchpad, ArtifactStore
  memory/         # MemoryManager, FileMemory, VectorMemory
  tools/          # ToolRegistry, LocalToolDispatcher, HTTPToolDispatcher
  providers/      # Anthropic, OpenAI-compat, Google GenAI, Mock
  storage/        # FileSystem, InMemory, S3
  orchestration/  # DAGExecutor, ComplexityClassifier, Plan
  telemetry/      # LangfuseEventHandler
  events.py       # EventBus pub/sub system
  types.py        # Canonical data types (Message, AgentResponse, etc.)
  protocols.py    # Structural typing interfaces (LLMProvider, StorageBackend, etc.)

Learn more in the Architecture docs.

Context File Types

Extension Purpose Example
*.prompt.md Agent config + system prompt agents/planner.prompt.md
*.workflow.md DAG workflow definition workflows/analysis.workflow.md
*.context.md Shared context / conditional profiles shared/schema.context.md
*.memory.md Memory retention config agents/researcher.memory.md
*.domain.md Domain routing boundary domains/content.domain.md

See Context Files for full schema reference.

Documentation

Full documentation is available at gittielabs.github.io/agentflow, including:

Contributing

git clone https://github.com/GittieLabs/agentflow.git
cd agentflow
pip install -e ".[dev]"
pytest

License

Apache License 2.0 -- see LICENSE and NOTICE. Releases 0.8.2 and earlier remain available under the MIT License; those rights are not revoked by this change.

Release files for gittielabs-agentflow 0.10.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for gittielabs-agentflow 0.10.0
File Size Uploaded
gittielabs_agentflow-0.10.0.tar.gz 80.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for gittielabs-agentflow 0.10.0
File Interpreter ABI Platform
gittielabs_agentflow-0.10.0-py3-none-any.whl Python 3 none any Details

Total release size: 159.5 kB

Release files / gittielabs_agentflow-0.10.0.tar.gz

Download URL gittielabs_agentflow-0.10.0.tar.gz
Size 80.1 kB
Tags Source
SHA-256 checksum
How to use checksums
12a2479d99bfdb8037eea0a1dcbc30d404b60b581f0f9dd6fae5f13f302c4a93
BLAKE2b-256 checksum
How to use checksums
dfb4fd52f748a0dd1e1ac9f7f9189763c7c079f4c5bf0de1bcaa5aee79fdf520
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 24, 2026.

Transparency log

Release files / gittielabs_agentflow-0.10.0-py3-none-any.whl

Download URL gittielabs_agentflow-0.10.0-py3-none-any.whl
Size 79.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9f7df37b7e1bed381305da22438d7d9bd2678620b29d5fe49e85b4a0c2a5bdeb
BLAKE2b-256 checksum
How to use checksums
9d003333c42d6fe58be648e7363b61ca082153cd46580a3977eca6257c37b8fd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 24, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.10.0 This release

2 release files

0.9.0

2 release files

0.8.2

2 release files

0.8.1

2 release files

0.7.7

2 release files

0.7.6

2 release files

0.7.4

2 release files

0.7.3

2 release files

0.7.2

2 release files

0.7.1

2 release files

0.7.0

2 release files

0.6.0

2 release files

0.5.2

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.4

2 release files

0.3.3

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.2.3

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page