[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-2483":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":17,"stars7d":18,"stars30d":19,"stars90d":16,"forks30d":16,"starsTrendScore":20,"compositeScore":21,"rankGlobal":10,"rankLanguage":10,"license":10,"archived":22,"fork":22,"defaultBranch":23,"hasWiki":22,"hasPages":22,"topics":24,"createdAt":10,"pushedAt":10,"updatedAt":30,"readmeContent":31,"aiSummary":32,"trendingCount":16,"starSnapshotCount":16,"syncStatus":33,"lastSyncTime":34,"discoverSource":35},2483,"owl","camel-ai\u002Fowl","camel-ai","🦉 OWL: Optimized Workforce Learning for General Multi-Agent Assistance in Real-World Task Automation","",null,"Python",19840,2284,130,80,0,3,17,67,15,45,false,"main",[25,26,27,28,29],"agent","artificial-intelligence","multi-agent-systems","task-automation","web-interaction","2026-06-12 02:00:41","\u003Cdiv align=\"center\">\n\n\u003C\u002Fdiv>\n\n\u003Ch1 align=\"center\">\n\t🦉 OWL: Optimized Workforce Learning for General Multi-Agent Assistance in Real-World Task Automation\n\u003C\u002Fh1>\n\n\u003Cdiv align=\"center\">\n\n[![Documentation][docs-image]][docs-url]\n[![Discord][discord-image]][discord-url]\n[![X][x-image]][x-url]\n[![Reddit][reddit-image]][reddit-url]\n[![Wechat][wechat-image]][wechat-url]\n[![Wechat][owl-image]][owl-url]\n[![Hugging Face][huggingface-image]][huggingface-url]\n[![Star][star-image]][star-url]\n[![Package License][package-license-image]][package-license-url]\n[![Citation](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FCitation-arXiv%3A2505.23885-purple)](https:\u002F\u002Farxiv.org\u002Fabs\u002F2505.23885)\n\n\u003C\u002Fdiv>\n\n\u003Chr>\n\n\u003Cdiv align=\"center\">\n\u003Ch4 align=\"center\">\n\n[中文阅读](https:\u002F\u002Fgithub.com\u002Fcamel-ai\u002Fowl\u002Ftree\u002Fmain\u002FREADME_zh.md) |\n[Community](https:\u002F\u002Fgithub.com\u002Fcamel-ai\u002Fowl#community) |\n[Installation](#️-installation) |\n[Examples](https:\u002F\u002Fgithub.com\u002Fcamel-ai\u002Fowl\u002Ftree\u002Fmain\u002Fowl) |\n[Paper](https:\u002F\u002Farxiv.org\u002Fabs\u002F2505.23885) |\n[Citation](https:\u002F\u002Fgithub.com\u002Fcamel-ai\u002Fowl#citation) |\n[Contributing](https:\u002F\u002Fgithub.com\u002Fcamel-ai\u002Fowl\u002Fgraphs\u002Fcontributors) |\n[CAMEL-AI](https:\u002F\u002Fwww.camel-ai.org\u002F) |\n\n\u003C\u002Fh4>\n\n\u003Cdiv align=\"center\" style=\"background-color: #f0f7ff; padding: 10px; border-radius: 5px; margin: 15px 0;\">\n  \u003Ch3 style=\"color: #1e88e5; margin: 0;\">\n    🏆 OWL achieves \u003Cspan style=\"color: #d81b60; font-weight: bold; font-size: 1.2em;\">69.09\u003C\u002Fspan> average score on GAIA benchmark and ranks \u003Cspan style=\"color: #d81b60; font-weight: bold; font-size: 1.2em;\">🏅️ #1\u003C\u002Fspan> among open-source frameworks! 🏆\n  \u003C\u002Fh3>\n\u003C\u002Fdiv>\n\n\u003Cdiv align=\"center\">\n\n🦉 OWL is a cutting-edge framework for multi-agent collaboration that pushes the boundaries of task automation, built on top of the [CAMEL-AI Framework](https:\u002F\u002Fgithub.com\u002Fcamel-ai\u002Fcamel).\n\nOur vision is to revolutionize how AI agents collaborate to solve real-world tasks. By leveraging dynamic agent interactions, OWL enables more natural, efficient, and robust task automation across diverse domains.\n\nIf you find this repo useful, please consider citing our work ([citation](#-cite)).\n\u003C\u002Fdiv>\n\n![](.\u002Fassets\u002Fowl_architecture.png)\n\n\u003Cbr>\n\n\u003C\u002Fdiv>\n\n\u003C!-- # Key Features -->\n\n# 📋 Table of Contents\n\n- [📋 Table of Contents](#-table-of-contents)\n- [🔥 News](#-news)\n- [🎬 Demo Video](#-demo-video)\n- [✨️ Core Features](#️-core-features)\n- [🛠️ Installation](#️-installation)\n  - [**Prerequisites**](#prerequisites)\n    - [Install Python](#install-python)\n  - [**Installation Options**](#installation-options)\n    - [Option 1: Using uv (Recommended)](#option-1-using-uv-recommended)\n    - [Option 2: Using venv and pip](#option-2-using-venv-and-pip)\n    - [Option 3: Using conda](#option-3-using-conda)\n    - [Option 4: Using Docker](#option-4-using-docker)\n      - [**Using Pre-built Image (Recommended)**](#using-pre-built-image-recommended)\n      - [**Building Image Locally**](#building-image-locally)\n      - [**Using Convenience Scripts**](#using-convenience-scripts)\n  - [**Setup Environment Variables**](#setup-environment-variables)\n    - [Setting Environment Variables Directly](#setting-environment-variables-directly)\n    - [Alternative: Using a `.env` File](#alternative-using-a-env-file)\n    - [**MCP Desktop Commander Setup**](#mcp-desktop-commander-setup)\n- [🚀 Quick Start](#-quick-start)\n  - [Basic Usage](#basic-usage)\n  - [Running with Different Models](#running-with-different-models)\n    - [Model Requirements](#model-requirements)\n      - [Supported Models](#supported-models)\n    - [Example Tasks](#example-tasks)\n- [🧰 Toolkits and Capabilities](#-toolkits-and-capabilities)\n  - [Model Context Protocol (MCP)](#model-context-protocol-mcp)\n    - [**Install Node.js**](#install-nodejs)\n    - [Windows](#windows)\n    - [Linux](#linux)\n    - [Mac](#mac)\n    - [**Install Playwright MCP Service**](#install-playwright-mcp-service)\n  - [Available Toolkits](#available-toolkits)\n  - [Available Toolkits](#available-toolkits-1)\n    - [Multimodal Toolkits (Require multimodal model capabilities)](#multimodal-toolkits-require-multimodal-model-capabilities)\n    - [Text-Based Toolkits](#text-based-toolkits)\n  - [Customizing Your Configuration](#customizing-your-configuration)\n- [🌐 Web Interface](#-web-interface)\n  - [Starting the Web UI](#starting-the-web-ui)\n  - [Features](#features)\n- [🧪 Experiments](#-experiments)\n- [📄 License](#-license)\n- [🤝 Contributing](#-contributing)\n- [🔥 Community](#-community)\n- [❓ FAQ](#-faq)\n  - [General Questions](#general-questions)\n  - [Experiment Questions](#experiment-questions)\n- [📚 Exploring CAMEL Dependency](#-exploring-camel-dependency)\n  - [Accessing CAMEL Source Code](#accessing-camel-source-code)\n- [🖊️ Cite](#️-cite)\n- [⭐ Star History](#-star-history)\n\n# 🔥 News\n\n\u003Cdiv align=\"center\" style=\"background-color: #e8f5e9; padding: 15px; border-radius: 10px; border: 2px solid #4caf50; margin: 20px 0;\">\n  \u003Ch3 style=\"color: #2e7d32; margin: 0; font-size: 1.3em;\">\n    🧩 \u003Cb>NEW: COMMUNITY AGENT CHALLENGES!\u003C\u002Fb> 🧩\n  \u003C\u002Fh3>\n  \u003Cp style=\"font-size: 1.1em; margin: 10px 0;\">\n    Showcase your creativity by designing unique challenges for AI agents! \u003Cbr>\n    Join our community and see your innovative ideas tackled by cutting-edge AI.\n  \u003C\u002Fp>\n  \u003Cp>\n    \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fcamel-ai\u002Fowl\u002Fblob\u002Fmain\u002Fcommunity_challenges.md\" style=\"background-color: #2e7d32; color: white; padding: 8px 15px; text-decoration: none; border-radius: 5px; font-weight: bold;\">View & Submit Challenges\u003C\u002Fa>\n  \u003C\u002Fp>\n\u003C\u002Fdiv>\n\n\u003C!-- \u003Cdiv style=\"background-color: #e3f2fd; padding: 12px; border-radius: 8px; border-left: 4px solid #1e88e5; margin: 10px 0;\">\n  \u003Ch4 style=\"color: #1e88e5; margin: 0 0 8px 0;\">\n    🎉 Latest Major Update - March 15, 2025\n  \u003C\u002Fh4>\n  \u003Cp style=\"margin: 0;\">\n    \u003Cb>Significant Improvements:\u003C\u002Fb>\n    \u003Cul style=\"margin: 5px 0 0 0; padding-left: 20px;\">\n      \u003Cli>Restructured web-based UI architecture for enhanced stability 🏗️\u003C\u002Fli>\n      \u003Cli>Optimized OWL Agent execution mechanisms for better performance 🚀\u003C\u002Fli>\n    \u003C\u002Ful>\n    \u003Ci>Try it now and experience the improved performance in your automation tasks!\u003C\u002Fi>\n  \u003C\u002Fp>\n\u003C\u002Fdiv> -->\n\n- **[2025.09.22]**: Exicited to announce that OWL has been accepted by NeurIPS 2025!🚀 Check the latest paper [here](https:\u002F\u002Farxiv.org\u002Fabs\u002F2505.23885).\n- **[2025.07.21]**: We open-sourced the training dataset and model checkpoints of OWL project. Training code coming soon. [huggingface link](https:\u002F\u002Fhuggingface.co\u002Fcollections\u002Fcamel-ai\u002Foptimized-workforce-learning-682ef4ab498befb9426e6e27).\n- **[2025.05.27]**: We released the technical report of OWL, including more details on the workforce (framework) and optimized workforce learning (training methodology). [paper](https:\u002F\u002Farxiv.org\u002Fabs\u002F2505.23885).\n- **[2025.05.18]**: We open-sourced an initial version for replicating workforce experiment on GAIA [here](https:\u002F\u002Fgithub.com\u002Fcamel-ai\u002Fowl\u002Ftree\u002Fgaia69).\n- **[2025.04.18]**: We uploaded OWL's new GAIA benchmark score of **69.09%**, ranking #1 among open-source frameworks. Check the technical report [here](https:\u002F\u002Fhypnotic-mind-6bd.notion.site\u002FOWL-Optimized-Workforce-Learning-for-General-Multi-Agent-Assistance-in-Real-World-Task-Automation-1d4004aeb21380158749c7f84b20643f).\n- **[2025.03.27]**: Integrate SearxNGToolkit performing web searches using SearxNG search engine.\n- **[2025.03.26]**: Enhanced Browser Toolkit with multi-browser support for \"chrome\", \"msedge\", and \"chromium\" channels.\n- **[2025.03.25]**: Supported Gemini 2.5 Pro, added example run code\n- **[2025.03.21]**: Integrated OpenRouter model platform, fix bug with Gemini tool calling.\n- **[2025.03.20]**: Accept header in MCP Toolkit, support automatic playwright installation.\n- **[2025.03.16]**: Support Bing search, Baidu search.\n- **[2025.03.12]**: Added Bocha search in SearchToolkit, integrated Volcano Engine model platform, and enhanced Azure and OpenAI Compatible models with structured output and tool calling.\n- **[2025.03.11]**: We added MCPToolkit, FileWriteToolkit, and TerminalToolkit to enhance OWL agents with MCP tool calling, file writing capabilities, and terminal command execution.\n- **[2025.03.09]**: We added a web-based user interface that makes it easier to interact with the system.\n- **[2025.03.07]**: We open-sourced the codebase of the 🦉 OWL project.\n- **[2025.03.03]**: OWL achieved the #1 position among open-source frameworks on the GAIA benchmark with a score of 58.18.\n\n# 🎬 Demo Video\n\nhttps:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002F2a2a825d-39ea-45c5-9ba1-f9d58efbc372\n\nhttps:\u002F\u002Fprivate-user-images.githubusercontent.com\u002F55657767\u002F420212194-e813fc05-136a-485f-8df3-f10d9b4e63ec.mp4\n\nThis video demonstrates how to install OWL locally and showcases its capabilities as a cutting-edge framework for multi-agent collaboration: https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=8XlqVyAZOr8\n\n# ✨️ Core Features\n\n- **Online Search**: Support for multiple search engines (including Wikipedia, Google, DuckDuckGo, Baidu, Bocha, etc.) for real-time information retrieval and knowledge acquisition.\n- **Multimodal Processing**: Support for handling internet or local videos, images, and audio data.\n- **Browser Automation**: Utilize the Playwright framework for simulating browser interactions, including scrolling, clicking, input handling, downloading, navigation, and more.\n- **Document Parsing**: Extract content from Word, Excel, PDF, and PowerPoint files, converting them into text or Markdown format.\n- **Code Execution**: Write and execute Python code using interpreter.\n- **Built-in Toolkits**: Access to a comprehensive set of built-in toolkits including:\n  - **Model Context Protocol (MCP)**: A universal protocol layer that standardizes AI model interactions with various tools and data sources\n  - **Core Toolkits**: ArxivToolkit, AudioAnalysisToolkit, CodeExecutionToolkit, DalleToolkit, DataCommonsToolkit, ExcelToolkit, GitHubToolkit, GoogleMapsToolkit, GoogleScholarToolkit, ImageAnalysisToolkit, MathToolkit, NetworkXToolkit, NotionToolkit, OpenAPIToolkit, RedditToolkit, SearchToolkit, SemanticScholarToolkit, SymPyToolkit, VideoAnalysisToolkit, WeatherToolkit, BrowserToolkit, and many more for specialized tasks\n\n# 🛠️ Installation\n\n## **Prerequisites**\n\n### Install Python\n\nBefore installing OWL, ensure you have Python installed (version 3.10, 3.11, or 3.12 is supported):\n\n> **Note for GAIA Benchmark Users**: When running the GAIA benchmark evaluation, please use the `gaia58.18` branch which includes a customized version of the CAMEL framework in the `owl\u002Fcamel` directory. This version contains enhanced toolkits with improved stability specifically optimized for the GAIA benchmark compared to the standard CAMEL installation.\n\n```bash\n# Check if Python is installed\npython --version\n\n# If not installed, download and install from https:\u002F\u002Fwww.python.org\u002Fdownloads\u002F\n# For macOS users with Homebrew:\nbrew install python@3.10\n\n# For Ubuntu\u002FDebian:\nsudo apt update\nsudo apt install python3.10 python3.10-venv python3-pip\n```\n\n## **Installation Options**\n\nOWL supports multiple installation methods to fit your workflow preferences.\n\n### Option 1: Using uv (Recommended)\n\n```bash\n# Clone github repo\ngit clone https:\u002F\u002Fgithub.com\u002Fcamel-ai\u002Fowl.git\n\n# Change directory into project directory\ncd owl\n\n# Install uv if you don't have it already\npip install uv\n\n# Create a virtual environment and install dependencies\nuv venv .venv --python=3.10\n\n# Activate the virtual environment\n# For macOS\u002FLinux\nsource .venv\u002Fbin\u002Factivate\n# For Windows\n.venv\\Scripts\\activate\n\n# Install CAMEL with all dependencies\nuv pip install -e .\n```\n\n### Option 2: Using venv and pip\n\n```bash\n# Clone github repo\ngit clone https:\u002F\u002Fgithub.com\u002Fcamel-ai\u002Fowl.git\n\n# Change directory into project directory\ncd owl\n\n# Create a virtual environment\n# For Python 3.10 (also works with 3.11, 3.12)\npython3.10 -m venv .venv\n\n# Activate the virtual environment\n# For macOS\u002FLinux\nsource .venv\u002Fbin\u002Factivate\n# For Windows\n.venv\\Scripts\\activate\n\n# Install from requirements.txt\npip install -r requirements.txt --use-pep517\n```\n\n### Option 3: Using conda\n\n```bash\n# Clone github repo\ngit clone https:\u002F\u002Fgithub.com\u002Fcamel-ai\u002Fowl.git\n\n# Change directory into project directory\ncd owl\n\n# Create a conda environment\nconda create -n owl python=3.10\n\n# Activate the conda environment\nconda activate owl\n\n# Option 1: Install as a package (recommended)\npip install -e .\n\n# Option 2: Install from requirements.txt\npip install -r requirements.txt --use-pep517\n```\n\n### Option 4: Using Docker\n\n#### **Using Pre-built Image (Recommended)**\n\n```bash\n# This option downloads a ready-to-use image from Docker Hub\n# Fastest and recommended for most users\ndocker compose up -d\n\n# Run OWL inside the container\ndocker compose exec owl bash\ncd .. && source .venv\u002Fbin\u002Factivate\nplaywright install-deps\nxvfb-python examples\u002Frun.py\n```\n\n#### **Building Image Locally**\n\n```bash\n# For users who need to customize the Docker image or cannot access Docker Hub:\n# 1. Open docker-compose.yml\n# 2. Comment out the \"image: mugglejinx\u002Fowl:latest\" line\n# 3. Uncomment the \"build:\" section and its nested properties\n# 4. Then run:\ndocker compose up -d --build\n\n# Run OWL inside the container\ndocker compose exec owl bash\ncd .. && source .venv\u002Fbin\u002Factivate\nplaywright install-deps\nxvfb-python examples\u002Frun.py\n```\n\n#### **Using Convenience Scripts**\n\n```bash\n# Navigate to container directory\ncd .container\n\n# Make the script executable and build the Docker image\nchmod +x build_docker.sh\n.\u002Fbuild_docker.sh\n\n# Run OWL with your question\n.\u002Frun_in_docker.sh \"your question\"\n```\n\n## **Setup Environment Variables**\n\nOWL requires various API keys to interact with different services.\n\n### Setting Environment Variables Directly\n\nYou can set environment variables directly in your terminal:\n\n- **macOS\u002FLinux (Bash\u002FZsh)**:\n\n  ```bash\n  export OPENAI_API_KEY=\"your-openai-api-key-here\"\n  # Add other required API keys as needed\n  ```\n\n- **Windows (Command Prompt)**:\n\n  ```batch\n  set OPENAI_API_KEY=your-openai-api-key-here\n  ```\n\n- **Windows (PowerShell)**:\n  ```powershell\n  $env:OPENAI_API_KEY = \"your-openai-api-key-here\"\n  ```\n\n> **Note**: Environment variables set directly in the terminal will only persist for the current session.\n\n### Alternative: Using a `.env` File\n\nIf you prefer using a `.env` file instead, you can:\n\n1. **Copy and Rename the Template**:\n\n   ```bash\n   # For macOS\u002FLinux\n   cd owl\n   cp .env_template .env\n\n   # For Windows\n   cd owl\n   copy .env_template .env\n   ```\n\n   Alternatively, you can manually create a new file named `.env` in the owl directory and copy the contents from `.env_template`.\n\n2. **Configure Your API Keys**:\n   Open the `.env` file in your preferred text editor and insert your API keys in the corresponding fields.\n\n> **Note**: For the minimal example (`examples\u002Frun_mini.py`), you only need to configure the LLM API key (e.g., `OPENAI_API_KEY`).\n\n### **MCP Desktop Commander Setup**\n\nIf using MCP Desktop Commander within Docker, run:\n\n```bash\nnpx -y @wonderwhy-er\u002Fdesktop-commander setup --force-file-protocol\n```\n\nFor more detailed Docker usage instructions, including cross-platform support, optimized configurations, and troubleshooting, please refer to [DOCKER_README.md](.container\u002FDOCKER_README_en.md).\n\n# 🚀 Quick Start\n\n## Basic Usage\n\nAfter installation and setting up your environment variables, you can start using OWL right away:\n\n```bash\npython examples\u002Frun.py\n```\n\n## Running with Different Models\n\n### Model Requirements\n\n- **Tool Calling**: OWL requires models with robust tool calling capabilities to interact with various toolkits. Models must be able to understand tool descriptions, generate appropriate tool calls, and process tool outputs.\n\n- **Multimodal Understanding**: For tasks involving web interaction, image analysis, or video processing, models with multimodal capabilities are required to interpret visual content and context.\n\n#### Supported Models\n\nFor information on configuring AI models, please refer to our [CAMEL models documentation](https:\u002F\u002Fdocs.camel-ai.org\u002Fkey_modules\u002Fmodels.html#supported-model-platforms-in-camel).\n\n> **Note**: For optimal performance, we strongly recommend using OpenAI models (GPT-4 or later versions). Our experiments show that other models may result in significantly lower performance on complex tasks and benchmarks, especially those requiring advanced multi-modal understanding and tool use.\n\nOWL supports various LLM backends, though capabilities may vary depending on the model's tool calling and multimodal abilities. You can use the following scripts to run with different models:\n\n```bash\n# Run with Claude model\npython examples\u002Frun_claude.py\n\n# Run with Qwen model\npython examples\u002Frun_qwen_zh.py\n\n# Run with Deepseek model\npython examples\u002Frun_deepseek_zh.py\n\n# Run with other OpenAI-compatible models\npython examples\u002Frun_openai_compatible_model.py\n\n# Run with Gemini model\npython examples\u002Frun_gemini.py\n\n# Run with Azure OpenAI\npython examples\u002Frun_azure_openai.py\n\n# Run with Ollama\npython examples\u002Frun_ollama.py\n```\n\nFor a simpler version that only requires an LLM API key, you can try our minimal example:\n\n```bash\npython examples\u002Frun_mini.py\n```\n\nYou can run OWL agent with your own task by modifying the `examples\u002Frun.py` script:\n\n```python\n# Define your own task\ntask = \"Task description here.\"\n\nsociety = construct_society(question)\nanswer, chat_history, token_count = run_society(society)\n\nprint(f\"\\033[94mAnswer: {answer}\\033[0m\")\n```\n\nFor uploading files, simply provide the file path along with your question:\n\n```python\n# Task with a local file (e.g., file path: `tmp\u002Fexample.docx`)\ntask = \"What is in the given DOCX file? Here is the file path: tmp\u002Fexample.docx\"\n\nsociety = construct_society(question)\nanswer, chat_history, token_count = run_society(society)\nprint(f\"\\033[94mAnswer: {answer}\\033[0m\")\n```\n\nOWL will then automatically invoke document-related tools to process the file and extract the answer.\n\n### Example Tasks\n\nHere are some tasks you can try with OWL:\n\n- \"Find the latest stock price for Apple Inc.\"\n- \"Analyze the sentiment of recent tweets about climate change\"\n- \"Help me debug this Python code: [your code here]\"\n- \"Summarize the main points from this research paper: [paper URL]\"\n- \"Create a data visualization for this dataset: [dataset path]\"\n\n# 🧰 Toolkits and Capabilities\n\n## Model Context Protocol (MCP)\n\nOWL's MCP integration provides a standardized way for AI models to interact with various tools and data sources:\n\nBefore using MCP, you need to install Node.js first.\n\n### **Install Node.js**\n\n### Windows\n\nDownload the official installer: [Node.js](https:\u002F\u002Fnodejs.org\u002Fen).\n\nCheck \"Add to PATH\" option during installation.\n\n### Linux\n\n```bash\nsudo apt update\nsudo apt install nodejs npm -y\n```\n\n### Mac\n\n```bash\nbrew install node\n```\n\n### **Install Playwright MCP Service**\n\n```bash\nnpm install -g @executeautomation\u002Fplaywright-mcp-server\nnpx playwright install-deps\n```\n\nTry our comprehensive MCP examples:\n\n- `examples\u002Frun_mcp.py` - Basic MCP functionality demonstration (local call, requires dependencies)\n- `examples\u002Frun_mcp_sse.py` - Example using the SSE protocol (Use remote services, no dependencies)\n\n## Available Toolkits\n\n> **Important**: Effective use of toolkits requires models with strong tool calling capabilities. For multimodal toolkits (Web, Image, Video), models must also have multimodal understanding abilities.\n\nOWL supports various toolkits that can be customized by modifying the `tools` list in your script:\n\n```python\n# Configure toolkits\ntools = [\n    *BrowserToolkit(headless=False).get_tools(),  # Browser automation\n    *VideoAnalysisToolkit(model=models[\"video\"]).get_tools(),\n    *AudioAnalysisToolkit().get_tools(),  # Requires OpenAI Key\n    *CodeExecutionToolkit(sandbox=\"subprocess\").get_tools(),\n    *ImageAnalysisToolkit(model=models[\"image\"]).get_tools(),\n    SearchToolkit().search_duckduckgo,\n    SearchToolkit().search_google,  # Comment out if unavailable\n    SearchToolkit().search_wiki,\n    SearchToolkit().search_bocha,\n    SearchToolkit().search_baidu,\n    *ExcelToolkit().get_tools(),\n    *DocumentProcessingToolkit(model=models[\"document\"]).get_tools(),\n    *FileWriteToolkit(output_dir=\".\u002F\").get_tools(),\n]\n```\n\n## Available Toolkits\n\nKey toolkits include:\n\n### Multimodal Toolkits (Require multimodal model capabilities)\n\n- **BrowserToolkit**: Browser automation for web interaction and navigation\n- **VideoAnalysisToolkit**: Video processing and content analysis\n- **ImageAnalysisToolkit**: Image analysis and interpretation\n\n### Text-Based Toolkits\n\n- **AudioAnalysisToolkit**: Audio processing (requires OpenAI API)\n- **CodeExecutionToolkit**: Python code execution and evaluation\n- **SearchToolkit**: Web searches (Google, DuckDuckGo, Wikipedia)\n- **DocumentProcessingToolkit**: Document parsing (PDF, DOCX, etc.)\n\nAdditional specialized toolkits: ArxivToolkit, GitHubToolkit, GoogleMapsToolkit, MathToolkit, NetworkXToolkit, NotionToolkit, RedditToolkit, WeatherToolkit, and more. For a complete list, see the [CAMEL toolkits documentation](https:\u002F\u002Fdocs.camel-ai.org\u002Fkey_modules\u002Ftools).\n\n## Customizing Your Configuration\n\nTo customize available tools:\n\n```python\n# 1. Import toolkits\nfrom camel.toolkits import BrowserToolkit, SearchToolkit, CodeExecutionToolkit\n\n# 2. Configure tools list\ntools = [\n    *BrowserToolkit(headless=True).get_tools(),\n    SearchToolkit().search_wiki,\n    *CodeExecutionToolkit(sandbox=\"subprocess\").get_tools(),\n]\n\n# 3. Pass to assistant agent\nassistant_agent_kwargs = {\"model\": models[\"assistant\"], \"tools\": tools}\n```\n\nSelecting only necessary toolkits optimizes performance and reduces resource usage.\n\n# 🌐 Web Interface\n\n\u003Cdiv align=\"center\" style=\"background-color: #f0f7ff; padding: 15px; border-radius: 10px; border: 2px solid #1e88e5; margin: 20px 0;\">\n  \u003Ch3 style=\"color: #1e88e5; margin: 0;\">\n    🚀 Enhanced Web Interface Now Available!\n  \u003C\u002Fh3>\n  \u003Cp style=\"margin: 10px 0;\">\n    Experience improved system stability and optimized performance with our latest update.\n    Start exploring the power of OWL through our user-friendly interface!\n  \u003C\u002Fp>\n\u003C\u002Fdiv>\n\n## Starting the Web UI\n\n```bash\n# Start the Chinese version\npython owl\u002Fwebapp_zh.py\n\n# Start the English version\npython owl\u002Fwebapp.py\n\n# Start the Japanese version\npython owl\u002Fwebapp_jp.py\n```\n\n## Features\n\n- **Easy Model Selection**: Choose between different models (OpenAI, Qwen, DeepSeek, etc.)\n- **Environment Variable Management**: Configure your API keys and other settings directly from the UI\n- **Interactive Chat Interface**: Communicate with OWL agents through a user-friendly interface\n- **Task History**: View the history and results of your interactions\n\nThe web interface is built using Gradio and runs locally on your machine. No data is sent to external servers beyond what's required for the model API calls you configure.\n\n# 🧪 Experiments\n\nTo reproduce OWL's GAIA benchmark score:\n\nWe also provide an enhanced OWL in the `main` branch, so you can directly benefit from upgraded toolkits and increased stability even without switching branches. \nFor the original GAIA-specific performance, we recommend our `gaia69` branch.\n\nWhen running the benchmark evaluation:\n\n1. Switch to the `gaia69` branch:\n\n   ```bash\n   git checkout gaia69\n   ```\n\n2. Run the evaluation script:\n   ```bash\n   python run_gaia_workforce_claude.py\n   ```\n\nThis will execute the same configuration that achieved our top-ranking performance on the GAIA benchmark.\n\n# 📄 License\n\nThe source code is licensed under Apache 2.0.\n\n# 🤝 Contributing\n\nWe welcome contributions from the community! Here's how you can help:\n\n1. Read our [Contribution Guidelines](https:\u002F\u002Fgithub.com\u002Fcamel-ai\u002Fcamel\u002Fblob\u002Fmaster\u002FCONTRIBUTING.md)\n2. Check [open issues](https:\u002F\u002Fgithub.com\u002Fcamel-ai\u002Fcamel\u002Fissues) or create new ones\n3. Submit pull requests with your improvements\n\n**Current Issues Open for Contribution:**\n\n- [#1915](https:\u002F\u002Fgithub.com\u002Fcamel-ai\u002Fcamel\u002Fissues\u002F1915)\n- [#2190](https:\u002F\u002Fgithub.com\u002Fcamel-ai\u002Fcamel\u002Fissues\u002F2190)\n- [#2165](https:\u002F\u002Fgithub.com\u002Fcamel-ai\u002Fcamel\u002Fissues\u002F2165)\n- [#2121](https:\u002F\u002Fgithub.com\u002Fcamel-ai\u002Fcamel\u002Fissues\u002F2121)\n- [#1908](https:\u002F\u002Fgithub.com\u002Fcamel-ai\u002Fcamel\u002Fissues\u002F1908)\n- [#1538](https:\u002F\u002Fgithub.com\u002Fcamel-ai\u002Fcamel\u002Fissues\u002F1538)\n- [#1481](https:\u002F\u002Fgithub.com\u002Fcamel-ai\u002Fcamel\u002Fissues\u002F1481)\n\nTo take on an issue, simply leave a comment stating your interest.\n\n# 🔥 Community\n\nJoin us ([_Discord_](https:\u002F\u002Fdiscord.camel-ai.org\u002F) or [_WeChat_](https:\u002F\u002Fghli.org\u002Fcamel\u002Fwechat.png)) in pushing the boundaries of finding the scaling laws of agents.\n\nJoin us for further discussions!\n\n\u003C!-- ![](.\u002Fassets\u002Fcommunity.png) -->\n\u003Cimg src=\".\u002Fassets\u002Fcommunity_code.jpeg\" width=\"50%\" \u002F>\n\n# ❓ FAQ\n\n## General Questions\n\n**Q: Why don't I see Chrome running locally after starting the example script?**\n\nA: If OWL determines that a task can be completed using non-browser tools (such as search or code execution), the browser will not be launched. The browser window will only appear when OWL determines that browser-based interaction is necessary.\n\n**Q: Which Python version should I use?**\n\nA: OWL supports Python 3.10, 3.11, and 3.12.\n\n**Q: How can I contribute to the project?**\n\nA: See our [Contributing](#-contributing) section for details on how to get involved. We welcome contributions of all kinds, from code improvements to documentation updates.\n\n## Experiment Questions\n\n**Q: Which CAMEL version should I use for replicate the role playing result?**\n\nA: We provide a modified version of CAMEL (owl\u002Fcamel) in the gaia58.18 branch. Please make sure you use this CAMEL version for your experiments.\n\n**Q: Why are my experiment results lower than the reported numbers?**\n\nA: Since the GAIA benchmark evaluates LLM agents in a realistic world, it introduces a significant amount of randomness. Based on user feedback, one of the most common issues for replication is, for example, agents being blocked on certain webpages due to network reasons.\nWe have uploaded a keywords matching script to help quickly filter out these errors [here](https:\u002F\u002Fgithub.com\u002Fcamel-ai\u002Fowl\u002Fblob\u002Fgaia58.18\u002Fowl\u002Ffilter_failed_cases.py).\nYou can also check this [technical report](https:\u002F\u002Fhypnotic-mind-6bd.notion.site\u002FOWL-Optimized-Workforce-Learning-for-General-Multi-Agent-Assistance-in-Real-World-Task-Automation-1d4004aeb21380158749c7f84b20643f?pvs=74) for more details when evaluating LLM agents in realistic open-world environments.\n\n# 📚 Exploring CAMEL Dependency\n\nOWL is built on top of the [CAMEL](https:\u002F\u002Fgithub.com\u002Fcamel-ai\u002Fcamel) Framework, here's how you can explore the CAMEL source code and understand how it works with OWL:\n\n## Accessing CAMEL Source Code\n\n```bash\n# Clone the CAMEL repository\ngit clone https:\u002F\u002Fgithub.com\u002Fcamel-ai\u002Fcamel.git\ncd camel\n```\n\n# 🖊️ Cite\n\nIf you find this repo useful, please cite:\n\n```\n@misc{hu2025owl,\n      title={OWL: Optimized Workforce Learning for General Multi-Agent Assistance in Real-World Task Automation},\n      author={Mengkang Hu and Yuhang Zhou and Wendong Fan and Yuzhou Nie and Bowei Xia and Tao Sun and Ziyu Ye and Zhaoxuan Jin and Yingru Li and Qiguang Chen and Zeyu Zhang and Yifeng Wang and Qianshuo Ye and Bernard Ghanem and Ping Luo and Guohao Li},\n      year={2025},\n      eprint={2505.23885},\n      archivePrefix={arXiv},\n      primaryClass={cs.AI},\n      url={https:\u002F\u002Farxiv.org\u002Fabs\u002F2505.23885},\n}\n```\n\n# ⭐ Star History\n\n[![Star History Chart](https:\u002F\u002Fapi.star-history.com\u002Fsvg?repos=camel-ai\u002Fowl&type=Date)](https:\u002F\u002Fstar-history.com\u002F#camel-ai\u002Fowl&Date)\n\n[docs-image]: https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FDocumentation-EB3ECC\n[docs-url]: https:\u002F\u002Fcamel-ai.github.io\u002Fcamel\u002Findex.html\n[star-image]: https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002Fcamel-ai\u002Fowl?label=stars&logo=github&color=brightgreen\n[star-url]: https:\u002F\u002Fgithub.com\u002Fcamel-ai\u002Fowl\u002Fstargazers\n[package-license-image]: https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FLicense-Apache_2.0-blue.svg\n[package-license-url]: https:\u002F\u002Fgithub.com\u002Fcamel-ai\u002Fowl\u002Fblob\u002Fmain\u002Flicenses\u002FLICENSE\n[colab-url]: https:\u002F\u002Fcolab.research.google.com\u002Fdrive\u002F1AzP33O8rnMW__7ocWJhVBXjKziJXPtim?usp=sharing\n[colab-image]: https:\u002F\u002Fcolab.research.google.com\u002Fassets\u002Fcolab-badge.svg\n[huggingface-url]: https:\u002F\u002Fhuggingface.co\u002Fcamel-ai\n[huggingface-image]: https:\u002F\u002Fimg.shields.io\u002Fbadge\u002F%F0%9F%A4%97%20Hugging%20Face-CAMEL--AI-ffc107?color=ffc107&logoColor=white\n[discord-url]: https:\u002F\u002Fdiscord.camel-ai.org\u002F\n[discord-image]: https:\u002F\u002Fimg.shields.io\u002Fdiscord\u002F1082486657678311454?logo=discord&labelColor=%20%235462eb&logoColor=%20%23f5f5f5&color=%20%235462eb\n[wechat-url]: https:\u002F\u002Fghli.org\u002Fcamel\u002Fwechat.png\n[wechat-image]: https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FWeChat-CamelAIOrg-brightgreen?logo=wechat&logoColor=white\n[x-url]: https:\u002F\u002Fx.com\u002FCamelAIOrg\n[x-image]: https:\u002F\u002Fimg.shields.io\u002Ftwitter\u002Ffollow\u002FCamelAIOrg?style=social\n[twitter-image]: https:\u002F\u002Fimg.shields.io\u002Ftwitter\u002Ffollow\u002FCamelAIOrg?style=social&color=brightgreen&logo=twitter\n[reddit-url]: https:\u002F\u002Fwww.reddit.com\u002Fr\u002FCamelAI\u002F\n[reddit-image]: https:\u002F\u002Fimg.shields.io\u002Freddit\u002Fsubreddit-subscribers\u002FCamelAI?style=plastic&logo=reddit&label=r%2FCAMEL&labelColor=white\n[ambassador-url]: https:\u002F\u002Fwww.camel-ai.org\u002Fcommunity\n[owl-url]: .\u002Fassets\u002Fqr_code.jpg\n[owl-image]: https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FWeChat-OWLProject-brightgreen?logo=wechat&logoColor=white\n","OWL 是一个用于多智能体协作的前沿框架，旨在通过优化的工作流程学习来实现现实世界中的任务自动化。它基于 CAMEL-AI 框架构建，核心功能包括动态智能体交互和高效的任务处理能力，特别适用于需要多个 AI 代理协同工作的复杂场景中，如客户服务、生产调度等。OWL 在 GAIA 基准测试中取得了69.09分的平均成绩，在开源框架中排名第一，展现了其在提高任务执行效率与准确性方面的卓越性能。该项目使用 Python 开发，适合对多智能体系统及任务自动化感兴趣的研究人员和技术开发者探索应用。",2,"2026-06-11 02:50:04","top_language"]