ag2-overview
Skill252 starsChanged 6 months agoApache-2.0View on GitHub
Map of AG2 beta capabilities and which sibling skill to reach for. Load first when the user mentions building with AG2 beta (autogen.beta) but the specific feature isn't yet clear — agents, tools, model config, delegation, memory, observers, structured output, HITL, AG-UI, telemetry, or testing.
- Reads credentials
- Installs packages
We split this skill into the rules it gives an agent
5 rules. About 0 are common, 2 are distinctive, and 3 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈2
Distinctive · estimate
This author's own choices. Worth a look.
3
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 48
Do not use from __future__ import annotations.
- Distinctive: line 49
All top-level imports — no function-level imports unless explicitly allowed.
- Distinctive: line 50
No nested functions in runtime execution paths (decorator factories are fine).
- Very specific: line 51
No side effects in __init__ — apply them at runtime.
- Very specific: line 57
If a skill's recipe is incomplete for the case at hand, the source docs are at website/docs/beta/.
≈ “Common” is an estimate: at least 1 in 5 of the 308,232 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
AG2 Beta — capability map
AG2 beta (autogen.beta) is an async, protocol-driven agent framework. The full reference docs live under website/docs/beta/. This skill is the index of sibling skills that cover the common build paths.
When to use
Read this file first when a request mentions "AG2 beta", "autogen.beta", or building agents in this repo and you don't yet know which feature is needed. Use the table below to pick the right specialised skill, then load that skill's SKILL.md for the recipe.
Before you start
Anything you build with AG2 needs three things in place. Get these right once and the rest of the skills run cleanly:
- Install the right provider extra —
pip install "ag2[openai]",ag2[anthropic],ag2[gemini], etc. The*Configclass will raiseImportError: ... requires optional dependencieswithout it. - Set the matching API key —
OPENAI_API_KEY,ANTHROPIC_API_KEY,GEMINI_API_KEY(orGOOGLE_API_KEY). Loading from a project-root.envviafrom dotenv import load_dotenv; load_dotenv()is the common pattern. - Sanity-check the install —
python -c "import sys, autogen; print(sys.executable, autogen.__version__)". If you have multiple Python environments, this confirms whichag2your script will actually import.
Full per-provider table (install + env var + config class) lives in ag2-quickstart → "Prerequisites".
Pick the right skill
| User intent | Skill | What it covers |
Build an Agent from scratch, pick a model | ag2-quickstart | Agent, ModelConfig, ask() / reply.ask() chaining, providers, env vars |
| Give the Agent a custom Python tool | ag2-add-custom-tool | @tool, sync/async, ToolResult, Context, Inject, Variable, Depends |
| Use shipped tools (web search, code exec, MCP, etc.) | ag2-use-builtin-tools | WebSearchTool, WebFetchTool, CodeExecutionTool, MCPServerTool, ImageGenerationTool, MemoryTool, FilesystemToolkit, DuckDuckSearchTool, ExaToolkit, TavilySearchTool |
| Run shell commands from an agent | ag2-shell-tool | LocalShellTool (any provider), provider-side ShellTool, sandboxing (allowed/blocked/ignore/readonly) |
| Get typed Pydantic / dataclass output | ag2-structured-output | response_schema=, ResponseSchema, @response_schema, PromptedSchema, reply.content(), retries |
| Multi-agent: parallel subtasks or named delegates | ag2-subagent-delegation | tasks=TaskConfig(), run_subtasks(parallel=True), Agent.as_tool(), persistent_stream |
| Pause for human input or gate a tool with approval | ag2-hitl | context.input(), hitl_hook, approval_required() middleware |
| Logging, retry, history-trim, custom interception | ag2-middleware | BaseMiddleware, LoggingMiddleware, RetryMiddleware, HistoryLimiter, TokenLimiter, tool middleware |
| Test agents and tools | ag2-testing | TestConfig, mocking LLM responses, simulating ToolCallEvent |
| Persistent memory across runs, history compaction, assembly | ag2-knowledge-and-memory | KnowledgeStore, KnowledgeConfig, WorkingMemoryAggregate, AssemblyPolicy, SlidingWindowPolicy, TokenBudgetPolicy, TailWindowCompact, SummarizeCompact |
| Observability, alerts, halts | ag2-observers-and-alerts | BaseObserver, TokenMonitor, LoopDetector, EventWatch, CadenceWatch, AlertPolicy, HaltEvent |
| Send images / audio / video / PDFs in | ag2-multimodal-input | ImageInput, AudioInput, VideoInput, DocumentInput, FilesAPI |
| Web frontend via the AG-UI protocol | ag2-ag-ui | AGUIStream, FastAPI mount, CopilotKit |
| OpenTelemetry traces / metrics | ag2-telemetry | TelemetryMiddleware, GenAI semconv attributes, content capture |
Project conventions for any skill that writes code into the AG2 repo
These are repo-wide rules from CLAUDE.md. Apply them whenever generating code that lands in autogen/beta/:
- Do not use
from __future__ import annotations. - All top-level imports — no function-level imports unless explicitly allowed.
- No nested functions in runtime execution paths (decorator factories are fine).
- No side effects in
__init__— apply them at runtime. - Internal filesystem paths use
pathlib.Path; public signatures acceptstr | os.PathLike[str]. - Common reusable APIs come from the
autogen.betatop-level (e.g.from autogen.beta import Agent, tool, Context); advanced/specialised APIs come from sub-modules (autogen.beta.middleware,autogen.beta.config, etc.).
Beta-doc cross-reference
If a skill's recipe is incomplete for the case at hand, the source docs are at website/docs/beta/. Each sibling skill points to its primary .mdx files in its own "Going deeper" section.
In this repository15 other files it gives its agents.
- ag2-add-custom-toolSkill
- ag2-ag-uiSkill
- ag2-hitlSkill
- ag2-knowledge-and-memorySkill
- ag2-middlewareSkill
- ag2-multimodal-inputSkill
- ag2-observers-and-alertsSkill
- ag2-quickstartSkill
- ag2-shell-toolSkill
- ag2-structured-outputSkill
- ag2-subagent-delegationSkill
- ag2-telemetrySkill
- ag2-testingSkill
- ag2-use-builtin-toolsSkill
- calculatorSkill
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

