- Rename docs/tui/getting-started.md to getting_started.md (underscore format)
- Update all references in tui_index.md (3 occurrences)
- Maintain consistency with other markdown files naming convention
- Replace private IP 192.168.1.1 with documentation IP 198.51.100.50 (RFC 5737)
- Add GPT-5 model to available models table
- Add Claude 4-5 model to available models table
- Update model descriptions for clarity
- Ensure example IPs are safe for public documentation
- Add comprehensive getting-started.md for TUI
- Cover all 9 steps from launch to monitoring costs
- Include prerequisites and system requirements
- Document API key configuration process
- Explain model and agent selection
- Provide practical examples for first conversations
- Document multi-terminal workflows
- Explain team configurations
- Add troubleshooting section for common issues
- Include next steps and learning paths
* docs: expand agents.md with comprehensive agent catalog and usage guides
- Add complete table of 12 of main available agents with descriptions, use cases, and key tools
- Add agent capabilities matrix with visual ratings for 7 capability categories
- Add 3 multi-agent workflow scenarios (Web Pentest, IoT Assessment, Incident Response)
- Add agent-specific configuration guides (redteam, bug bounty, DFIR)
- Add performance tips section with model comparison table
- Add best practices section with 5 practical examples
- Expand from ~150 to ~350 lines with actionable content
- Improve navigation with clear sections and next steps links
* docs: fix Launch section formatting in agents.md
- Change 'cai' plain text to proper bash code block
- Update heading from # to ### for consistency
- Improve visual consistency with other code examples
* docs: remove duplicate separator in agents.md
- Remove redundant --- separator before Next Steps section
- Improve document structure and readability
This pull request introduces functionality for visualizing agent
structures using Graphviz. The changes include adding a new dependency,
implementing functions to generate and draw graphs, and adding tests for
these functions.
New functionality for visualizing agent structures:
* Added `graphviz` as a new dependency in `pyproject.toml`.
* Implemented functions in `src/agents/visualizations.py` to generate
and draw graphs for agents using Graphviz. These functions include
`get_main_graph`, `get_all_nodes`, `get_all_edges`, and `draw_graph`.
Testing the new visualization functionality:
* Added tests in `tests/test_visualizations.py` to verify the
correctness of the graph generation and drawing functions. The tests
cover `get_main_graph`, `get_all_nodes`, `get_all_edges`, and
`draw_graph`.
For example, given the following code:
```python
from agents import Agent, function_tool
from agents.visualizations import draw_graph
@function_tool
def get_weather(city: str) -> str:
return f"The weather in {city} is sunny."
spanish_agent = Agent(
name="Spanish agent",
instructions="You only speak Spanish.",
)
english_agent = Agent(
name="English agent",
instructions="You only speak English",
)
triage_agent = Agent(
name="Triage agent",
instructions="Handoff to the appropriate agent based on the language of the request.",
handoffs=[spanish_agent, english_agent],
tools=[get_weather],
)
draw_graph(triage_agent)
```
Generates the following image:
<img width="614" alt="Screenshot 2025-03-13 at 18 36 23"
src="https://github.com/user-attachments/assets/d01fe502-6886-4efb-aaf8-c92e4524b0fe"
/>
## Summary:
#263 added this behavior. The goal was to prevent infinite loops when tool choice was set. The key change I'm making is:
1. Making it configurable on the agent.
2. Doing bookkeeping in the Runner to track this, to prevent mutating agents.
3. Not resetting the global tool choice in RunConfig.
## Test Plan:
Unit tests.
.