$ show TencentCloudADP/youtu-agent
Youtu-Agent is a comprehensive AI agent framework developed by Tencent Cloud's Youtu Lab, designed for building, orchestrating, and evaluating LLM-powered agents. It provides a modular toolkit system, multi-agent orchestration patterns (simple, orchestra, orchestrator, workforce), a reusable configuration system (Hydra+YAML), and support for various environments (local shell, Docker, E2B sandbox, browser). The framework also includes a research-grade evaluation pipeline with benchmarks like GAIA, SWE-bench, WebWalkerQA, and a training-free GRPO module for agent self-improvement through experience distillation. Two front-end applications accompany the backend: a React-based chat UI and a Next.js evaluation analysis dashboard, both communicating via WebSocket and REST APIs. While the primary character is an application framework, Youtu-Agent has a strong data/research dimension: it ingests benchmark datasets, runs model-based judges, stores trajectories in SQL/PostgreSQL, and implements a meta-learning loop that extracts 'experiences' from agent behaviors. This hybrid nature makes it suitable both for production agent deployment and for conducting RL/benchmarking experiments. The codebase is well-organized into distinct modules (agents, tools, config, eval, practice, tracing, utils), uses modern Python packaging (uv, pyproject.toml), and includes extensive example configs and scripts. External dependencies include the openai-agents SDK, various LLM providers (OpenAI, Anthropic, etc. via litellm), search APIs (Serper, Jina, Google), document parsers (Chunkr, Unstructured), and MCP servers. Deployment supports Docker and multiple environment types. The repository is actively maintained with CI/CD, documentation (mkdocs), and a growing set of features.
The LLM identified 4 files worth highlighting for reuse:
Provides AsyncBaseToolkit, an abstract base class for implementing asynchronous toolkits. It uses a @register_tool decorator to auto-discover tools, generates tool definitions in multiple formats (OpenAI, MCP, agents SDK), and supports lifecycle cleanup. This pattern is cleanly decoupled, allowing any toolkit to be dropped into new projects with minimal adaptation.
Implements ConfigLoader using Hydra's compose API to load hierarchical YAML configurations for agents, tools, models, evaluations, and practice settings. Supports environment variable interpolation, default lists, and schema validation via Pydantic models. The pattern is reusable for any project needing structured, overridable configuration from multiple files.
Defines DataClassWithStreamEvents, a base class for managing concurrent streaming events (text, tool calls, errors) using asyncio tasks and queues. It provides cancellation, error notification, and a clean event interface. This pattern can be extracted to build any streaming response system (e.g., for chatbots or real-time processing).
Implements Training-Free GRPO, a meta-learning pipeline that improves agent instructions by summarizing rollouts, computing group advantages, updating experience pools, and generating new YAML configs with embedded experiences. The modular design (DataManager → RolloutManager → ExperienceUpdater) and verification function protocol make it adaptable to different tasks and domains.