# infiAgent

> An open-source infinite-horizon agent framework for building long-running, domain-specific AI agents by editing configuration files.

infiAgent, also called MLA (Multi-Level Agent), is a Python agent framework from polyuiislab for long-running, complex tasks. Agents are defined through YAML configuration files rather than code, and the framework is distributed as an open-source GPL-3.0 repository, with a runtime installable from PyPI per the README.

## What It Is

infiAgent lets users assemble general-purpose or semi-specialized agents, such as a research agent (Researcher) that handles literature search, experiments, figures, and LaTeX paper writing, or a computer-work assistant (OpenCowork) for tasks like organizing folders or building presentations. Agents run through a CLI, a Docker-based Web UI, a Python SDK, or a JSONL streaming mode intended for IDE plugins.

## How the Architecture Works

The README describes a tree-structured hierarchy of single-purpose agents with minimal tool sets, where parent agents delegate to child agents serially. Rather than compressing conversation history, a thinking module periodically records the state of the file workspace and agents keep only recent actions. Long documents are queried through tools such as answer_from_pdf instead of being loaded into context, and outputs are saved as files. Task state is persisted so interrupted runs can be resumed.

## Models, Skills and Memory

llm_config.yaml supports multiple providers per configuration, per-model API keys and base URLs, and separate models for execution, thinking, compression, and image understanding. Recent notes describe multi-deployment failover and atomic, crash-safe state writes. The framework follows the Agent Skills open standard, so skill folders can be discovered and loaded on demand. Memory is file-directory based: launching in the same workspace preserves history across sessions, with task history also indexed in a local SQLite database.

## Setup Path

The README documents a Docker image that starts a Web UI on port 4242, a CLI mode, and a local pip installation requiring Python 3.9+ with Playwright Chromium. The Python SDK exposes run, add_message, fresh, reset_task, and task_snapshot calls for task-scoped control. The README warns that execute_command can run any command, and recommends Docker if a task may modify system files.

## Features
- Configuration-file-defined agents
- Multi-level hierarchical and flat agent architectures
- Resume and breakpoint recovery for interrupted tasks
- Agent Skills open standard support
- File-directory-based persistent memory
- Multi-provider LLM configuration with failover
- Per-agent model settings for execution, thinking, compression and image understanding
- Switchable Thinking / ReAct execution mode
- Task-history search via local SQLite database
- Python SDK with background tasks and hooks
- MCP server integration
- CLI, Docker Web UI and JSONL streaming modes
- Human-in-the-loop handling and tool execution confirmation
- Researcher system for generating academic papers in LaTeX

## Integrations
LiteLLM, Crawl4AI, Playwright, Docker, OpenRouter, Google Gemini, Qwen (DashScope), MCP servers, Agent Skills standard

## Platforms
WINDOWS, MACOS, LINUX, WEB, API, VSC_EXTENSION, DEVELOPER_SDK, CLI

## Pricing
Open Source

## Version
3.12.24

## Links
- Website: https://github.com/polyuiislab/infiAgent
- Repository: https://github.com/polyuiislab/infiAgent
- EveryDev.ai: https://www.everydev.ai/tools/infiagent
