Home
Connect all the agents!
Key Features¶
🔌 ACP Integration¶
First-class support for the Agent Client Protocol (ACP):
- Integrate directly into IDEs like Zed, VS Code, and others
- Wrap external agents (Claude Code, Goose, Codex, fast-agent) as nodes
- Unified node abstraction - ACP agents work like native agents
- Compose ACP agents into teams with native agents
📝 Easy Agent Configuration¶
LLMling-agent excels at static YAML-based agent configuration:
- Define agents with extreme detail in pure YAML (Pydantic-backed)
- Expansive JSON schema for IDE autocompletion and validation, backed by an extremely detailed schema.
- Multi-Agent setups with native as well as remote (ACP / AGUI) agents
🧩 Unified Node Architecture¶
Everything is a MessageNode - enabling seamless composition:
- Native agents with a large set of default tools
- ACP agents
- AG-UI agents
- Teams (parallel and sequential)
- Human-in-the-loop-agents
- All nodes share the same interface
Dependencies¶
| Name | Summary | Marker |
|---|---|---|
| ast-grep-py | Structural Search and Rewrite code at large scale using precise AST pattern. | extra == "coding" |
| toprompt | Convert python objects to LLM-friendly descriptions | |
| sounddevice | Play and Record Sound with Python | extra == "tts" |
| jinjarope | Jinja2 utilities, loaders & fsspec integration. | |
| evented | Event emitters. | |
| anyenv | Compatibility layer for some basic operations to allow painless operation in PyOdide and Python pre-releases | |
| httpx | The next generation HTTP client. | |
| yamling | Enhanced YAML loading and dumping. | |
| logfire | The best Python observability tool! 🪵🔥 | |
| fastapi | FastAPI framework, high performance, easy to learn, fast to code, ready for production | extra == "server" |
| composio | SDK for integrating Composio with your applications. | extra == "composio" |
| uvicorn | The lightning-fast ASGI server. | extra == "server" |
| platformdirs | A small Python package for determining appropriate platform-specific dirs, e.g. a user data dir. |
|
| tree-sitter | Python bindings to the Tree-sitter parsing library | extra == "tree-sitter" |
| epregistry | A registry for entry points (cached and generically typed) | |
| grep-ast | A tool to grep through the AST of a source file | extra == "tree-sitter" |
mcpx-py |
An mcp.run client for Python | extra == "mcp-run" |
| openai | The official Python library for the openai API | extra == "tts" |
| promptantic | Generate pydantic models using prompts | |
| tree-sitter-cpp | C++ grammar for tree-sitter | extra == "tree-sitter" |
| pydantic | Data validation using Python type hints | |
promptlayer |
PromptLayer is a platform for prompt engineering and tracks your LLM requests. | extra == "promptlayer" |
| tree-sitter-c | C grammar for tree-sitter | extra == "tree-sitter" |
| searchly | Search tools for agents | |
| apprise | Push Notifications that work with just about every platform! | extra == "notifications" |
| clipman | Python3 module for working with clipboard. Created because pyperclip is discontinued. | extra == "clipboard" |
| markitdown | Utility tool for converting various files to Markdown | python_full_version < "3.14" and extra == "markitdown" |
| autoevals | Universal library for evaluating AI models | extra == "braintrust" |
| rustworkx | A High-Performance Graph Library for Python | extra == "tree-sitter" |
| psygnal | Fast python callback/event system modeled after Qt Signals | |
| braintrust | SDK for integrating Braintrust | extra == "braintrust" |
| tree-sitter-yaml | YAML grammar for tree-sitter | extra == "tree-sitter" |
| keyring | Store and access your passwords safely. | extra == "oauth" |
| slashed | Slash commands and autocompletions | |
| llmling-models | Pydantic-AI models for LLMling-agent | |
ag-ui-protocol |
extra == "ag-ui" |
|
| textual | Modern Text User Interface framework | extra == "textual" |
| fasta2a | Convert an AI Agent into a A2A server! ✨ | extra == "a2a" |
| numpy | Fundamental package for array computing in Python | extra == "tts" |
| typer | Typer, build great CLIs. Easy to code. Based on Python type hints. | |
| fsspec | File-system specification | |
| mcp | Model Context Protocol SDK | |
| upathtools | UPath utilities | |
| python-dotenv | Read key-value pairs from a .env file and set them as environment variables | |
| sqlmodel | SQLModel, SQL databases in Python, designed for simplicity, compatibility, and robustness. | |
| tree-sitter-typescript | TypeScript and TSX grammars for tree-sitter | extra == "tree-sitter" |
| fastmcp | The fast, Pythonic way to build MCP servers and clients. | |
| schemez | Pydantic shim for config stuff | |
| tokonomics | Calcuate costs for LLM Usage based on token count | |
| tree-sitter-go | Go grammar for tree-sitter | extra == "tree-sitter" |
| tree-sitter-json | JSON grammar for tree-sitter | extra == "tree-sitter" |
| typeagent | Incremental message indexing and querying pipelines using Structured RAG | extra == "memory" |
| docstring_parser | Parse Python docstrings in reST, Google and Numpydoc format | |
| structlog | Structured Logging for Python | |
| tiktoken | tiktoken is a fast BPE tokeniser for use with OpenAI's models | extra == "tiktoken" |
| starlette | The little ASGI library that shines. | extra == "a2a" |
| tree-sitter-javascript | JavaScript grammar for tree-sitter | extra == "tree-sitter" |
| exxec | Execution environments | |
| docler | Abstractions & Tools for OCR / document processing | |
| pydantic-ai-slim | Agent Framework / shim to use Pydantic with LLMs, slim package | |
| rich | Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal | |
| SQLAlchemy | Database Abstraction Library | |
langfuse |
A client library for accessing langfuse | extra == "langfuse" |
| tree-sitter-python | Python grammar for tree-sitter | extra == "tree-sitter" |
| tree-sitter-rust | Rust grammar for tree-sitter | extra == "tree-sitter" |
| Jinja2 | A very fast and expressive template engine. |
License¶
MIT License - see LICENSE for details.
Quick Start¶
Basic Agent Configuration¶
# agents.yml
agents:
assistant:
name: "Technical Assistant"
model: openai:gpt-4
system_prompts:
- You are a helpful technical assistant.
toolsets:
- type: file_access