Create AI agent conversations with AutoGen
✓Works with OpenClaudeYou are an AI agent framework specialist. The user wants to set up AutoGen and create their first multi-agent conversation system.
What to check first
- Run
pip list | grep pyautogento verify AutoGen is not already installed - Check Python version with
python --version— AutoGen requires Python 3.8+ - Verify you have an OpenAI API key set as
OPENAI_API_KEYenvironment variable withecho $OPENAI_API_KEY
Steps
- Install AutoGen with
pip install pyautogen(usepip install pyautogen[extra]for optional dependencies like code execution) - Set your OpenAI API key:
export OPENAI_API_KEY='your-key-here'on Linux/Mac orset OPENAI_API_KEY=your-key-hereon Windows - Import the required AutoGen classes:
from autogen import AssistantAgent, UserProxyAgent, config_list_from_json - Create a configuration list for LLM models using either
config_list_from_json()or manually definingconfig_list = [{"model": "gpt-4", "api_key": "..."}] - Instantiate a UserProxyAgent that acts as the human interface with
max_consecutive_auto_reply=10to prevent infinite loops - Create AssistantAgent instances for each specialized AI agent role with
system_messagedefining their expertise - Initiate conversation between agents using the
initiate_chat()method, passing the initial message - Review the conversation history in
agent.chat_historyto see all exchanges and decisions made by the agents
Code
import os
from autogen import AssistantAgent, UserProxyAgent
# Configure LLM settings
config_list = [
{
"model": "gpt-4",
"api_key": os.getenv("OPENAI_API_KEY"),
}
]
# Create UserProxyAgent (represents human in the conversation)
user_proxy = UserProxyAgent(
name="Admin",
system_message="You are a helpful admin. You ask for clarification and provide feedback.",
human_input_mode="NEVER", # Prevents waiting for user input
max_consecutive_auto_reply=10,
code_execution_config={"work_dir": "autogen_workspace"},
)
# Create first AssistantAgent - specialized in coding
coder = AssistantAgent(
name="Coder",
system_message="You are an expert Python developer. Write clean, efficient code with docstrings.",
llm_config={"config_list": config_list, "temperature": 0.7},
)
# Create second AssistantAgent - specialized in review
reviewer = AssistantAgent(
name="Reviewer",
system_message="You are a code reviewer. Analyze code for bugs, security, and best practices.",
llm_
Note: this example was truncated in the source. See the GitHub repo for the latest full version.
Common Pitfalls
- Letting agents loop indefinitely without a hard step limit — set
max_iterationsto 10-20 for most workflows - Passing entire conversation history every iteration — costs explode. Use summarization or sliding window
- Not validating tool outputs before passing them to the next step — one bad output corrupts the entire chain
- Trusting the agent's self-evaluation — agents are notoriously bad at knowing when they're wrong
- Forgetting that agents can hallucinate tool calls that don't exist — always validate tool names against your registry
When NOT to Use This Skill
- When a single LLM call would suffice — agents add 5-10x latency and cost
- When the task has well-defined steps that don't need branching logic — use a workflow engine instead
- For high-stakes decisions without human review — agents make confident mistakes
How to Verify It Worked
- Run the agent on 10+ test cases including edge cases — track success rate, average steps, and total cost
- Compare agent output to human baseline — if a human can do it faster and cheaper, you don't need an agent
- Inspect the full reasoning trace, not just the final output — agents often arrive at correct answers via wrong reasoning
Production Considerations
- Set hard cost ceilings per agent run — a runaway agent can burn $50+ in minutes
- Log every tool call, every model call, every state transition — debugging agents without logs is impossible
- Have a kill switch — agents should be cancelable mid-run without corrupting state
- Monitor token usage trends — context bloat is the #1 cause of agent cost overruns
Related AI Agents Skills
Other Claude Code skills in the same category — free to download.
CrewAI Setup
Build multi-agent systems with CrewAI framework
LangGraph Workflow
Build stateful AI agent workflows with LangGraph
AI Agent Tools
Create custom tools for AI agents (search, calculator, API)
AI Agent Memory
Implement agent memory with vector stores and summaries
AI Agent Evaluation
Evaluate AI agent performance with benchmarks and metrics
AI Agent Observability
Add tracing, logging, and metrics to AI agents so you can debug failures
AI Agent Retry Strategy
Build robust retry logic for LLM and tool calls in AI agents
pydantic-ai
Build production-ready AI agents with PydanticAI — type-safe tool use, structured outputs, dependency injection, and multi-model support.
Want a AI Agents skill personalized to YOUR project?
This is a generic skill that works for everyone. Our AI can generate one tailored to your exact tech stack, naming conventions, folder structure, and coding patterns — with 3x more detail.