[**中文主页**](https://github.com/agentscope-ai/agentscope/blob/main/README_zh.md) | [**Tutorial**](https://doc.agentscope.io/) | [**Roadmap**](https://github.com/agentscope-ai/agentscope/blob/main/docs/roadmap.md) | [**FAQ**](https://doc.agentscope.io/tutorial/faq.html)
<p align="center">
<img
src="https://img.alicdn.com/imgextra/i1/O1CN01nTg6w21NqT5qFKH1u_!!6000000001621-55-tps-550-550.svg"
alt="AgentScope Logo"
width="200"
/>
</p>
<h2 align="center">AgentScope: Agent-Oriented Programming for Building LLM Applications</h2>
<p align="center">
<a href="https://arxiv.org/abs/2402.14034">
<img
src="https://img.shields.io/badge/cs.MA-2402.14034-B31C1C?logo=arxiv&logoColor=B31C1C"
alt="arxiv"
/>
</a>
<a href="https://pypi.org/project/agentscope/">
<img
src="https://img.shields.io/badge/python-3.10+-blue?logo=python"
alt="pypi"
/>
</a>
<a href="https://pypi.org/project/agentscope/">
<img
src="https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fpypi.org%2Fpypi%2Fagentscope%2Fjson&query=%24.info.version&prefix=v&logo=pypi&label=version"
alt="pypi"
/>
</a>
<a href="https://doc.agentscope.io/">
<img
src="https://img.shields.io/badge/Docs-English%7C%E4%B8%AD%E6%96%87-blue?logo=markdown"
alt="docs"
/>
</a>
<a href="https://agentscope.io/">
<img
src="https://img.shields.io/badge/GUI-AgentScope_Studio-blue?logo=look&logoColor=green&color=dark-green"
alt="workstation"
/>
</a>
<a href="./LICENSE">
<img
src="https://img.shields.io/badge/license-Apache--2.0-black"
alt="license"
/>
</a>
</p>
<p align="center">
<img src="https://trendshift.io/api/badge/repositories/10079" alt="modelscope%2Fagentscope | Trendshift" style="width: 250px; height: 55px;" width="250" height="55"/>
</p>
## ✨ Why AgentScope?
Easy for beginners, powerful for experts.
<p align="center">
<img src="./assets/images/agentscope_v1_0822.png" alt="AgentScope Framework" width="80%"/>
</p>
- **Transparent to Developers**: Transparent is our **FIRST principle**. Prompt engineering, API invocation, agent building, workflow orchestration, all are visible and controllable for developers. No deep encapsulation or implicit magic.
- **[Realtime Steering](https://doc.agentscope.io/tutorial/task_agent.html#realtime-steering)**: Native support for realtime interruption and customized handling.
- **More Agentic**: Support [agentic tools management](https://doc.agentscope.io/tutorial/task_tool.html), [agentic long-term memory control](https://doc.agentscope.io/tutorial/task_long_term_memory.html) and agentic RAG, etc.
- **Model Agnostic**: Programming once, run with all models.
- **LEGO-style Agent Building**: All components are **modular** and **independent**.
- **Multi-Agent Oriented**: Designed for **multi-agent**, **explicit** message passing and workflow orchestration, NO deep encapsulation.
- **Highly Customizable**: Tools, prompt, agent, workflow, third-party libs & visualization, customization is encouraged everywhere.
Quick overview of important features in **AgentScope 1.0**:
| Module | Feature | Tutorial |
|------------|------------------------------------------------------------------------------------|-------------------------------------------------------------------------|
| model | Support async invocation | [Model](https://doc.agentscope.io/tutorial/task_model.html) |
| | Support reasoning model | |
| | Support streaming/non-streaming returns | |
| tool | Support async/sync tool functions | [Tool](https://doc.agentscope.io/tutorial/task_tool.html) |
| | Support streaming/non-streaming returns | |
| | Support user interruption | |
| | Support post-processing | |
| | Support group-wise tools management | |
| | Support agentic tools management by meta tool | |
| MCP | Support streamable HTTP/SSE/StdIO transport | [MCP](https://doc.agentscope.io/tutorial/task_mcp.html) |
| | Support both **stateful** and **stateless** mode MCP Client | |
| | Support client- & function-level fine-grained control | |
| agent | Support async execution | |
| | Support parallel tool calls | |
| | Support realtime steering interruption and customized handling | |
| | Support automatic state management | |
| | Support agent-controlled long-term memory | |
| | Support agent hooks | |
| tracing | Support OpenTelemetry-based tracing in LLM, tools, agent and formatter | [Tracing](https://doc.agentscope.io/tutorial/task_tracing.html) |
| | Support connecting to third-party tracing platforms (e.g. Arize-Phoenix, Langfuse) | |
| memory | Support long-term memory | [Memory](https://doc.agentscope.io/tutorial/task_long_term_memory.html) |
| session | Provide session/application-level automatic state management | [Session](https://doc.agentscope.io/tutorial/task_state.html) |
| evaluation | Provide distributed and parallel evaluation | [Evaluation](https://doc.agentscope.io/tutorial/task_eval.html) |
| formatter | Support multi-agent prompt formatting with tools API | [Prompt Formatter](https://doc.agentscope.io/tutorial/task_prompt.html) |
| | Support truncation-based formatter strategy | |
| ... | | |
## 📢 News
- **[2025-09]** **AgentScope Runtime** is open-sourced now! Enabling effective agent deployment with sandboxed tool execution for production-ready AI applications. Check out the [GitHub repo](https://github.com/agentscope-ai/agentscope-runtime).
- **[2025-09]** **AgentScope Studio** is open-sourced now! Check out the [GitHub repo](https://github.com/agentscope-ai/agentscope-studio).
- **[2025-08]** The new tutorial of v1 is online now! Check out the [tutorial](https://doc.agentscope.io) for more details.
- **[2025-08]** 🎉🎉 AgentScope v1 is released now! This version fully embraces the asynchronous execution, providing many new features and improvements. Check out [changelog](https://github.com/agentscope-ai/agentscope/blob/main/docs/changelog.md) for detailed changes.
## 💬 Contact
Welcome to join our community on
| [Discord](https://discord.gg/eYMpfnkG8h) | DingTalk |
|----------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------|
| <img src="https://gw.alicdn.com/imgextra/i1/O1CN01hhD1mu1Dd3BWVUvxN_!!6000000000238-2-tps-400-400.png" width="100" height="100"> | <img src="https://img.alicdn.com/imgextra/i1/O1CN01LxzZha1thpIN2cc2E_!!6000000005934-2-tps-497-477.png" width="100" height="100"> |
<!-- START doctoc generated TOC please keep comment here to allow auto update -->
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
## 📑 Table of Contents
- [🚀 Quickstart](#-quickstart)
- [💻 Installation](#-installation)
- [🛠️ From source](#-from-source)
- [📦 From PyPi](#-from-pypi)
- [📝 Example](#-example)
- [👋 Hello AgentScope!](#-hello-agentscope)
- [🎯 Realtime Steering](#-realtime-steering)
- [🛠️ Fine-Grained MCP Control](#-fine-grained-mcp-control)
- [🧑🤝🧑 Multi-Agent Conversation](#-multi-agent-conversation)
- [💻 AgentScope Studio](#-agentscope-studio)
- [📖 Documentation](#-documentation)
- [⚖️ License](#-license)
- [📚 Publications](#-publications)
- [✨ Contributors](#-contributors)
<!-- END doctoc generated TOC please keep comment here to allow auto update -->
## 🚀 Quickstart
### 💻 Installation
> AgentScope requires **Python 3.10** or higher.
#### 🛠️ From source
```bash
# Pull the source code from GitHub
git clone -b main https://github.com/agentscope-ai/agentscope.git
# Install the package in editable mode
cd agentscope
pip install -e .
```
#### 📦 From PyPi
```bash
pip install agentscope
```
## 📝 Example
### 👋 Hello AgentScope!
Start with a conversation between user and a ReAct agent 🤖 named "Friday"!
```python
from agentscope.agent import ReActAgent, UserAgent
from agentscope.model import DashScopeChatModel
from agentscope.formatter import DashScopeChatFormatter
from agentscope.memory import InMemoryMemory
from agentscope.tool import Toolkit, execute_python_code, execute_shell_command
import os, asyncio
async def main():
toolkit = Toolkit()
toolkit.register_tool_function(execute_python_code)
toolkit.register_tool_function(execute_shell_command)
agent = ReActAgent(
name="Friday",
sys_prompt="You're a helpful assistant named Friday.",
model=DashScopeChatModel(
model_name="qwen-max",
api_key=os.environ["DASHSCOPE_API_KEY"],
stream=True,
),
memory=InMemoryMemory(),
formatter=DashScopeChatFormatter(),
toolkit=toolkit,
)
user = UserAgent(name="user")
msg = None
while True:
msg = await agent(msg)
msg = await user(msg)
if msg.get_text_content() == "exit":
break
asyncio.run(main())
```
### 🎯 Realtime Steering
Natively support **realtime interruption** in ``ReActAgent`` with robust memory preservation, and convert interruption into an **observable event** for agent to seamlessly resume conversations.
<p align="center">
<img src="./assets/images/realtime_steering_zh.gif" alt="Realtime Steering" width="49%"/>
<img src="./assets/images/realtime_steering_en.gif" alt="Realtime Steering" width="49%"/>
</p>
### 🛠️ Fine-Grained MCP Control
Developers can obtain the MCP tool as a **local callable function**, and use it anywhere (e.g. call directly, pass to agent, wrap into a more complex tool, etc.)
```python
from agentscope.mcp import HttpStatelessClient
from agentscope.tool import Toolkit
import os
async def fine_grained_mcp_control():
# Initialize the MCP client
client = HttpStatelessClient(
name="gaode_mcp",
transport="streamable_http",
url=f"https://mcp.amap.com/mcp?key={os.environ['GAODE_API_KEY']}",
)
# Obtain the MCP tool as a **local callable function**, and use it anywhere
func = await client.get_callable_function(func_name="maps_geo")
# Option 1: Call directly
await func(address="Tiananmen Square", city="Beijing")
# Option 2: Pass to agent as a tool
toolkit = Toolkit()
toolkit.register_tool_function(func)
# ...
# Option 3: Wrap into a more complex tool
# ...
```
### 🧑🤝🧑 Multi-Agent Conversation
AgentScope provides ``MsgHub`` and pipelines to streamline multi-agent conversations, offering efficient message routing and seamless information sharing
```python
from agentscope.pipeline import MsgHub, sequential_pipeline
from agentscope.message import Msg
import asyncio
async def multi_agent_conversation():
# Create agents
agent1 = ...
agent2 = ...
agent3 = ...
agent4 = ...
# Create a message hub to manage multi-agent conversation
async with MsgHub(
participants=[agent1, agent2, agent3],
announcement=Msg("Host", "Introduce yourselves.", "assistant")
) as hub:
# Speak in a sequential manner
await sequential_pipeline([agent1, agent2, agent3])
# Dynamic manage the participants
hub.add(agent4)
hub.delete(agent3)
await hub.broadcast(Msg("Host", "Goodbye!", "assistant"))
asyncio.run(multi_agent_conversation())
```
### 💻 AgentScope Studio
Use the following command to install and start AgentScope Studio, to trace and visualize your agent application.
```bash
npm install -g @agentscope/studio
as_studio
```
<p align="center">
<img
src="./assets/images/home.gif"
width="49%"
alt="home"
/>
<img
src="./assets/images/projects.gif"
width="49%"
alt="projects"
/>
<img
src="./assets/images/runtime.gif"
width="49%"
alt="runtime"
/>
<img
src="./assets/images/friday.gif"
width="49%"
alt="friday"
/>
</p>
## 📖 Documentation
- Tutorial
- [Installation](https://doc.agentscope.io/tutorial/quickstart_installation.html)
- [Key Concepts](https://doc.agentscope.io/tutorial/quickstart_key_concept.html)
- [Create Message](https://doc.agentscope.io/tutorial/quickstart_message.html)
- [ReAct Agent](https://doc.agentscope.io/tutorial/quickstart_agent.html)
- Workflow
- [Conversation](https://doc.agentscope.io/tutorial/workflow_conversation.html)
- [Multi-Agent Debate](https://doc.agentscope.io/tutorial/workflow_multiagent_debate.html)
- [Concurrent Agents](https://doc.agentscope.io/tutorial/workflow_concurrent_agents.html)
- [Routing](https://doc.agentscope.io/tutorial/workflow_routing.html)
- [Handoffs](https://doc.agentscope.io/tutorial/workflow_handoffs.html)
- FAQ
- [FAQ](https://doc.agentscope.io/tutorial/faq.html)
- Task Guides
- [Model](https://doc.agentscope.io/tutorial/task_model.html)
- [Prompt Formatter](https://doc.agentscope.io/tutorial/task_prompt.html)
- [Tool](https://doc.agentscope.io/tutorial/task_tool.html)
- [Memory](https://doc.agentscope.io/tutorial/task_memory.html)
- [Long-Term Memory](https://doc.agentscope.io/tutorial/task_long_term_memory.html)
- [Agent](https://doc.agentscope.io/tutorial/task_agent.html)
- [Pipeline](https://doc.agentscope.io/tutorial/task_pipeline.html)
- [State/Session Management](https://doc.agentscope.io/tutorial/task_state.html)
- [Agent Hooks](https://doc.agentscope.io/tutorial/task_hook.html)
- [MCP](https://doc.agentscope.io/tutorial/task_mcp.html)
- [AgentScope Studio](https://doc.agentscope.io/tutorial/task_studio.html)
- [Tracing](https://doc.agentscope.io/tutorial/task_tracing.html)
- [Evaluation](https://doc.agentscope.io/tutorial/task_eval.html)
- [Embedding](https://doc.agentscope.io/tutorial/task_embedding.html)
- [Token](https://doc.agentscope.io/tutorial/task_token.html)
- API
- [API Docs](https://doc.agentscope.io/api/agentscope.html)
- [Examples](https://github.com/agentscope-ai/agentscope/tree/main/examples)
- Game
- [Nine-player Werewolves](https://github.com/agentscope-ai/agentscope/tree/main/examples/game/werewolves)
- Workflow
- [Multi-agent Debate](https://github.com/agentscope-ai/agentscope/tree/main/examples/workflows/multiagent_debate)
- [Multi-agent Conversation](https://github.com/agentscope-ai/agentscope/tree/main/examples/workflows/multiagent_conversation)
- Evaluation
- [ACEBench](https://github.com/agentscope-ai/agentscope/tree/main/examples/evaluation/ace_bench)
- Functional
- [ReAct Agent](https://github.com/agentscope-ai/agentscope/tree/main/examples/react_agent)
- [MCP](https://github.com/agentscope-ai/agentscope/tree/main/examples/functionality/agent_with_mcp)
- [Structured Output](https://github.com/agentscope-ai/agentscope/tree/main/examples/functionality/structured_output)
- [Long-Term Memory](https://github.com/agentscope-ai/agentscope/tree/main/examples/functionality/long_term_memory)
## ⚖️ License
AgentScope is released under Apache License 2.0.
## 📚 Publications
If you find our work helpful for your research or application, please cite our papers.
- [AgentScope 1.0: A Developer-Centric Framework for Building Agentic Applications](https://arxiv.org/abs/2508.16279)
- [AgentScope: A Flexible yet Robust Multi-Agent Platform](https://arxiv.org/abs/2402.14034)
```
@article{agentscope_v1,
author = {
Dawei Gao,
Zitao Li,
Yuexiang Xie,
Weirui Kuang,
Liuyi Yao,
Bingchen Qian,
Zhijian Ma,
Yue Cui,
Haohao Luo,
Shen Li,
Lu Yi,
Yi Yu,
Shiqi He,
Zhiling Luo,
Wenmeng Zhou,
Zhicheng Zhang,
Xuguang He,
Ziqian Chen,
Weikai Liao,
Farruh Isakulovich Kushnazarov,
Yaliang Li,
Bolin Ding,
Jingren Zhou}
title = {AgentScope 1.0: A Developer-Centric Framework for Building Agentic Applications},
journal = {CoRR},
volume = {abs/2508.16279},
year = {2025},
}
@article{agentscope,
author = {
Dawei Gao,
Zitao Li,
Xuchen Pan,
Weirui Kuang,
Zhijian Ma,
Bingchen Qian,
Fei Wei,
Wenhao Zhang,
Yuexiang Xie,
Daoyuan Chen,
Liuyi Yao,
Hongyi Peng,
Zeyu Zhang,
Lin Zhu,
Chen Cheng,
Hongzhu Shi,
Yaliang Li,
Bolin Ding,
Jingren Zhou}
title = {AgentScope: A Flexible yet Robust Multi-Agent Platform},
journal = {CoRR},
volume = {abs/2402.14034},
year = {2024},
}
```
## ✨ Contributors
All thanks to our contributors:
<a href="https://github.com/agentscope-ai/agentscope/graphs/contributors">
<img src="https://contrib.rocks/image?repo=agentscope-ai/agentscope&max=999&columns=12&anon=1" />
</a>
Raw data
{
"_id": null,
"home_page": "https://github.com/agentscope-ai/agentscope",
"name": "agentscope",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.10",
"maintainer_email": null,
"keywords": "deep-learning, multi agents, agents",
"author": "SysML team of Alibaba Tongyi Lab ",
"author_email": "gaodawei.gdw@alibaba-inc.com",
"download_url": "https://files.pythonhosted.org/packages/7a/80/1a86fe2fcfddec6bcac8b589fb25ecab12044355d457f62bc36ed4b74ec1/agentscope-1.0.2.tar.gz",
"platform": null,
"description": "[**\u4e2d\u6587\u4e3b\u9875**](https://github.com/agentscope-ai/agentscope/blob/main/README_zh.md) | [**Tutorial**](https://doc.agentscope.io/) | [**Roadmap**](https://github.com/agentscope-ai/agentscope/blob/main/docs/roadmap.md) | [**FAQ**](https://doc.agentscope.io/tutorial/faq.html)\n\n<p align=\"center\">\n <img\n src=\"https://img.alicdn.com/imgextra/i1/O1CN01nTg6w21NqT5qFKH1u_!!6000000001621-55-tps-550-550.svg\"\n alt=\"AgentScope Logo\"\n width=\"200\"\n />\n</p>\n\n<h2 align=\"center\">AgentScope: Agent-Oriented Programming for Building LLM Applications</h2>\n\n<p align=\"center\">\n <a href=\"https://arxiv.org/abs/2402.14034\">\n <img\n src=\"https://img.shields.io/badge/cs.MA-2402.14034-B31C1C?logo=arxiv&logoColor=B31C1C\"\n alt=\"arxiv\"\n />\n </a>\n <a href=\"https://pypi.org/project/agentscope/\">\n <img\n src=\"https://img.shields.io/badge/python-3.10+-blue?logo=python\"\n alt=\"pypi\"\n />\n </a>\n <a href=\"https://pypi.org/project/agentscope/\">\n <img\n src=\"https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fpypi.org%2Fpypi%2Fagentscope%2Fjson&query=%24.info.version&prefix=v&logo=pypi&label=version\"\n alt=\"pypi\"\n />\n </a>\n <a href=\"https://doc.agentscope.io/\">\n <img\n src=\"https://img.shields.io/badge/Docs-English%7C%E4%B8%AD%E6%96%87-blue?logo=markdown\"\n alt=\"docs\"\n />\n </a>\n <a href=\"https://agentscope.io/\">\n <img\n src=\"https://img.shields.io/badge/GUI-AgentScope_Studio-blue?logo=look&logoColor=green&color=dark-green\"\n alt=\"workstation\"\n />\n </a>\n <a href=\"./LICENSE\">\n <img\n src=\"https://img.shields.io/badge/license-Apache--2.0-black\"\n alt=\"license\"\n />\n </a>\n</p>\n\n<p align=\"center\">\n<img src=\"https://trendshift.io/api/badge/repositories/10079\" alt=\"modelscope%2Fagentscope | Trendshift\" style=\"width: 250px; height: 55px;\" width=\"250\" height=\"55\"/>\n</p>\n\n## \u2728 Why AgentScope?\n\nEasy for beginners, powerful for experts.\n\n<p align=\"center\">\n<img src=\"./assets/images/agentscope_v1_0822.png\" alt=\"AgentScope Framework\" width=\"80%\"/>\n</p>\n\n- **Transparent to Developers**: Transparent is our **FIRST principle**. Prompt engineering, API invocation, agent building, workflow orchestration, all are visible and controllable for developers. No deep encapsulation or implicit magic.\n- **[Realtime Steering](https://doc.agentscope.io/tutorial/task_agent.html#realtime-steering)**: Native support for realtime interruption and customized handling.\n- **More Agentic**: Support [agentic tools management](https://doc.agentscope.io/tutorial/task_tool.html), [agentic long-term memory control](https://doc.agentscope.io/tutorial/task_long_term_memory.html) and agentic RAG, etc.\n- **Model Agnostic**: Programming once, run with all models.\n- **LEGO-style Agent Building**: All components are **modular** and **independent**.\n- **Multi-Agent Oriented**: Designed for **multi-agent**, **explicit** message passing and workflow orchestration, NO deep encapsulation.\n- **Highly Customizable**: Tools, prompt, agent, workflow, third-party libs & visualization, customization is encouraged everywhere.\n\nQuick overview of important features in **AgentScope 1.0**:\n\n| Module | Feature | Tutorial |\n|------------|------------------------------------------------------------------------------------|-------------------------------------------------------------------------|\n| model | Support async invocation | [Model](https://doc.agentscope.io/tutorial/task_model.html) |\n| | Support reasoning model | |\n| | Support streaming/non-streaming returns | |\n| tool | Support async/sync tool functions | [Tool](https://doc.agentscope.io/tutorial/task_tool.html) |\n| | Support streaming/non-streaming returns | |\n| | Support user interruption | |\n| | Support post-processing | |\n| | Support group-wise tools management | |\n| | Support agentic tools management by meta tool | |\n| MCP | Support streamable HTTP/SSE/StdIO transport | [MCP](https://doc.agentscope.io/tutorial/task_mcp.html) |\n| | Support both **stateful** and **stateless** mode MCP Client | |\n| | Support client- & function-level fine-grained control | |\n| agent | Support async execution | |\n| | Support parallel tool calls | |\n| | Support realtime steering interruption and customized handling | |\n| | Support automatic state management | |\n| | Support agent-controlled long-term memory | |\n| | Support agent hooks | |\n| tracing | Support OpenTelemetry-based tracing in LLM, tools, agent and formatter | [Tracing](https://doc.agentscope.io/tutorial/task_tracing.html) |\n| | Support connecting to third-party tracing platforms (e.g. Arize-Phoenix, Langfuse) | |\n| memory | Support long-term memory | [Memory](https://doc.agentscope.io/tutorial/task_long_term_memory.html) |\n| session | Provide session/application-level automatic state management | [Session](https://doc.agentscope.io/tutorial/task_state.html) |\n| evaluation | Provide distributed and parallel evaluation | [Evaluation](https://doc.agentscope.io/tutorial/task_eval.html) |\n| formatter | Support multi-agent prompt formatting with tools API | [Prompt Formatter](https://doc.agentscope.io/tutorial/task_prompt.html) |\n| | Support truncation-based formatter strategy | |\n| ... | | |\n\n## \ud83d\udce2 News\n- **[2025-09]** **AgentScope Runtime** is open-sourced now! Enabling effective agent deployment with sandboxed tool execution for production-ready AI applications. Check out the [GitHub repo](https://github.com/agentscope-ai/agentscope-runtime).\n- **[2025-09]** **AgentScope Studio** is open-sourced now! Check out the [GitHub repo](https://github.com/agentscope-ai/agentscope-studio).\n- **[2025-08]** The new tutorial of v1 is online now! Check out the [tutorial](https://doc.agentscope.io) for more details.\n- **[2025-08]** \ud83c\udf89\ud83c\udf89 AgentScope v1 is released now! This version fully embraces the asynchronous execution, providing many new features and improvements. Check out [changelog](https://github.com/agentscope-ai/agentscope/blob/main/docs/changelog.md) for detailed changes.\n\n## \ud83d\udcac Contact\n\nWelcome to join our community on\n\n| [Discord](https://discord.gg/eYMpfnkG8h) | DingTalk |\n|----------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------|\n| <img src=\"https://gw.alicdn.com/imgextra/i1/O1CN01hhD1mu1Dd3BWVUvxN_!!6000000000238-2-tps-400-400.png\" width=\"100\" height=\"100\"> | <img src=\"https://img.alicdn.com/imgextra/i1/O1CN01LxzZha1thpIN2cc2E_!!6000000005934-2-tps-497-477.png\" width=\"100\" height=\"100\"> |\n\n<!-- START doctoc generated TOC please keep comment here to allow auto update -->\n<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->\n## \ud83d\udcd1 Table of Contents\n\n- [\ud83d\ude80 Quickstart](#-quickstart)\n - [\ud83d\udcbb Installation](#-installation)\n - [\ud83d\udee0\ufe0f From source](#-from-source)\n - [\ud83d\udce6 From PyPi](#-from-pypi)\n- [\ud83d\udcdd Example](#-example)\n - [\ud83d\udc4b Hello AgentScope!](#-hello-agentscope)\n - [\ud83c\udfaf Realtime Steering](#-realtime-steering)\n - [\ud83d\udee0\ufe0f Fine-Grained MCP Control](#-fine-grained-mcp-control)\n - [\ud83e\uddd1\u200d\ud83e\udd1d\u200d\ud83e\uddd1 Multi-Agent Conversation](#-multi-agent-conversation)\n - [\ud83d\udcbb AgentScope Studio](#-agentscope-studio)\n- [\ud83d\udcd6 Documentation](#-documentation)\n- [\u2696\ufe0f License](#-license)\n- [\ud83d\udcda Publications](#-publications)\n- [\u2728 Contributors](#-contributors)\n\n<!-- END doctoc generated TOC please keep comment here to allow auto update -->\n\n## \ud83d\ude80 Quickstart\n\n### \ud83d\udcbb Installation\n\n> AgentScope requires **Python 3.10** or higher.\n\n#### \ud83d\udee0\ufe0f From source\n\n```bash\n# Pull the source code from GitHub\ngit clone -b main https://github.com/agentscope-ai/agentscope.git\n\n# Install the package in editable mode\ncd agentscope\npip install -e .\n```\n\n#### \ud83d\udce6 From PyPi\n\n```bash\npip install agentscope\n```\n\n## \ud83d\udcdd Example\n\n### \ud83d\udc4b Hello AgentScope!\n\nStart with a conversation between user and a ReAct agent \ud83e\udd16 named \"Friday\"!\n\n```python\nfrom agentscope.agent import ReActAgent, UserAgent\nfrom agentscope.model import DashScopeChatModel\nfrom agentscope.formatter import DashScopeChatFormatter\nfrom agentscope.memory import InMemoryMemory\nfrom agentscope.tool import Toolkit, execute_python_code, execute_shell_command\nimport os, asyncio\n\n\nasync def main():\n toolkit = Toolkit()\n toolkit.register_tool_function(execute_python_code)\n toolkit.register_tool_function(execute_shell_command)\n\n agent = ReActAgent(\n name=\"Friday\",\n sys_prompt=\"You're a helpful assistant named Friday.\",\n model=DashScopeChatModel(\n model_name=\"qwen-max\",\n api_key=os.environ[\"DASHSCOPE_API_KEY\"],\n stream=True,\n ),\n memory=InMemoryMemory(),\n formatter=DashScopeChatFormatter(),\n toolkit=toolkit,\n )\n\n user = UserAgent(name=\"user\")\n\n msg = None\n while True:\n msg = await agent(msg)\n msg = await user(msg)\n if msg.get_text_content() == \"exit\":\n break\n\nasyncio.run(main())\n```\n\n### \ud83c\udfaf Realtime Steering\n\nNatively support **realtime interruption** in ``ReActAgent`` with robust memory preservation, and convert interruption into an **observable event** for agent to seamlessly resume conversations.\n\n<p align=\"center\">\n <img src=\"./assets/images/realtime_steering_zh.gif\" alt=\"Realtime Steering\" width=\"49%\"/>\n <img src=\"./assets/images/realtime_steering_en.gif\" alt=\"Realtime Steering\" width=\"49%\"/>\n</p>\n\n### \ud83d\udee0\ufe0f Fine-Grained MCP Control\n\nDevelopers can obtain the MCP tool as a **local callable function**, and use it anywhere (e.g. call directly, pass to agent, wrap into a more complex tool, etc.)\n\n```python\nfrom agentscope.mcp import HttpStatelessClient\nfrom agentscope.tool import Toolkit\nimport os\n\nasync def fine_grained_mcp_control():\n # Initialize the MCP client\n client = HttpStatelessClient(\n name=\"gaode_mcp\",\n transport=\"streamable_http\",\n url=f\"https://mcp.amap.com/mcp?key={os.environ['GAODE_API_KEY']}\",\n )\n\n # Obtain the MCP tool as a **local callable function**, and use it anywhere\n func = await client.get_callable_function(func_name=\"maps_geo\")\n\n # Option 1: Call directly\n await func(address=\"Tiananmen Square\", city=\"Beijing\")\n\n # Option 2: Pass to agent as a tool\n toolkit = Toolkit()\n toolkit.register_tool_function(func)\n # ...\n\n # Option 3: Wrap into a more complex tool\n # ...\n```\n\n### \ud83e\uddd1\u200d\ud83e\udd1d\u200d\ud83e\uddd1 Multi-Agent Conversation\n\nAgentScope provides ``MsgHub`` and pipelines to streamline multi-agent conversations, offering efficient message routing and seamless information sharing\n\n```python\nfrom agentscope.pipeline import MsgHub, sequential_pipeline\nfrom agentscope.message import Msg\nimport asyncio\n\nasync def multi_agent_conversation():\n # Create agents\n agent1 = ...\n agent2 = ...\n agent3 = ...\n agent4 = ...\n\n # Create a message hub to manage multi-agent conversation\n async with MsgHub(\n participants=[agent1, agent2, agent3],\n announcement=Msg(\"Host\", \"Introduce yourselves.\", \"assistant\")\n ) as hub:\n # Speak in a sequential manner\n await sequential_pipeline([agent1, agent2, agent3])\n # Dynamic manage the participants\n hub.add(agent4)\n hub.delete(agent3)\n await hub.broadcast(Msg(\"Host\", \"Goodbye!\", \"assistant\"))\n\nasyncio.run(multi_agent_conversation())\n```\n\n### \ud83d\udcbb AgentScope Studio\n\nUse the following command to install and start AgentScope Studio, to trace and visualize your agent application.\n\n```bash\nnpm install -g @agentscope/studio\n\nas_studio\n```\n\n<p align=\"center\">\n <img\n src=\"./assets/images/home.gif\"\n width=\"49%\"\n alt=\"home\"\n />\n <img\n src=\"./assets/images/projects.gif\"\n width=\"49%\"\n alt=\"projects\"\n />\n <img\n src=\"./assets/images/runtime.gif\"\n width=\"49%\"\n alt=\"runtime\"\n />\n <img\n src=\"./assets/images/friday.gif\"\n width=\"49%\"\n alt=\"friday\"\n />\n</p>\n\n\n## \ud83d\udcd6 Documentation\n\n- Tutorial\n - [Installation](https://doc.agentscope.io/tutorial/quickstart_installation.html)\n - [Key Concepts](https://doc.agentscope.io/tutorial/quickstart_key_concept.html)\n - [Create Message](https://doc.agentscope.io/tutorial/quickstart_message.html)\n - [ReAct Agent](https://doc.agentscope.io/tutorial/quickstart_agent.html)\n- Workflow\n - [Conversation](https://doc.agentscope.io/tutorial/workflow_conversation.html)\n - [Multi-Agent Debate](https://doc.agentscope.io/tutorial/workflow_multiagent_debate.html)\n - [Concurrent Agents](https://doc.agentscope.io/tutorial/workflow_concurrent_agents.html)\n - [Routing](https://doc.agentscope.io/tutorial/workflow_routing.html)\n - [Handoffs](https://doc.agentscope.io/tutorial/workflow_handoffs.html)\n- FAQ\n - [FAQ](https://doc.agentscope.io/tutorial/faq.html)\n- Task Guides\n - [Model](https://doc.agentscope.io/tutorial/task_model.html)\n - [Prompt Formatter](https://doc.agentscope.io/tutorial/task_prompt.html)\n - [Tool](https://doc.agentscope.io/tutorial/task_tool.html)\n - [Memory](https://doc.agentscope.io/tutorial/task_memory.html)\n - [Long-Term Memory](https://doc.agentscope.io/tutorial/task_long_term_memory.html)\n - [Agent](https://doc.agentscope.io/tutorial/task_agent.html)\n - [Pipeline](https://doc.agentscope.io/tutorial/task_pipeline.html)\n - [State/Session Management](https://doc.agentscope.io/tutorial/task_state.html)\n - [Agent Hooks](https://doc.agentscope.io/tutorial/task_hook.html)\n - [MCP](https://doc.agentscope.io/tutorial/task_mcp.html)\n - [AgentScope Studio](https://doc.agentscope.io/tutorial/task_studio.html)\n - [Tracing](https://doc.agentscope.io/tutorial/task_tracing.html)\n - [Evaluation](https://doc.agentscope.io/tutorial/task_eval.html)\n - [Embedding](https://doc.agentscope.io/tutorial/task_embedding.html)\n - [Token](https://doc.agentscope.io/tutorial/task_token.html)\n- API\n - [API Docs](https://doc.agentscope.io/api/agentscope.html)\n- [Examples](https://github.com/agentscope-ai/agentscope/tree/main/examples)\n - Game\n - [Nine-player Werewolves](https://github.com/agentscope-ai/agentscope/tree/main/examples/game/werewolves)\n - Workflow\n - [Multi-agent Debate](https://github.com/agentscope-ai/agentscope/tree/main/examples/workflows/multiagent_debate)\n - [Multi-agent Conversation](https://github.com/agentscope-ai/agentscope/tree/main/examples/workflows/multiagent_conversation)\n - Evaluation\n - [ACEBench](https://github.com/agentscope-ai/agentscope/tree/main/examples/evaluation/ace_bench)\n - Functional\n - [ReAct Agent](https://github.com/agentscope-ai/agentscope/tree/main/examples/react_agent)\n - [MCP](https://github.com/agentscope-ai/agentscope/tree/main/examples/functionality/agent_with_mcp)\n - [Structured Output](https://github.com/agentscope-ai/agentscope/tree/main/examples/functionality/structured_output)\n - [Long-Term Memory](https://github.com/agentscope-ai/agentscope/tree/main/examples/functionality/long_term_memory)\n\n## \u2696\ufe0f License\n\nAgentScope is released under Apache License 2.0.\n\n## \ud83d\udcda Publications\n\nIf you find our work helpful for your research or application, please cite our papers.\n\n- [AgentScope 1.0: A Developer-Centric Framework for Building Agentic Applications](https://arxiv.org/abs/2508.16279)\n\n- [AgentScope: A Flexible yet Robust Multi-Agent Platform](https://arxiv.org/abs/2402.14034)\n\n```\n@article{agentscope_v1,\n author = {\n Dawei Gao,\n Zitao Li,\n Yuexiang Xie,\n Weirui Kuang,\n Liuyi Yao,\n Bingchen Qian,\n Zhijian Ma,\n Yue Cui,\n Haohao Luo,\n Shen Li,\n Lu Yi,\n Yi Yu,\n Shiqi He,\n Zhiling Luo,\n Wenmeng Zhou,\n Zhicheng Zhang,\n Xuguang He,\n Ziqian Chen,\n Weikai Liao,\n Farruh Isakulovich Kushnazarov,\n Yaliang Li,\n Bolin Ding,\n Jingren Zhou}\n title = {AgentScope 1.0: A Developer-Centric Framework for Building Agentic Applications},\n journal = {CoRR},\n volume = {abs/2508.16279},\n year = {2025},\n}\n\n@article{agentscope,\n author = {\n Dawei Gao,\n Zitao Li,\n Xuchen Pan,\n Weirui Kuang,\n Zhijian Ma,\n Bingchen Qian,\n Fei Wei,\n Wenhao Zhang,\n Yuexiang Xie,\n Daoyuan Chen,\n Liuyi Yao,\n Hongyi Peng,\n Zeyu Zhang,\n Lin Zhu,\n Chen Cheng,\n Hongzhu Shi,\n Yaliang Li,\n Bolin Ding,\n Jingren Zhou}\n title = {AgentScope: A Flexible yet Robust Multi-Agent Platform},\n journal = {CoRR},\n volume = {abs/2402.14034},\n year = {2024},\n}\n```\n\n## \u2728 Contributors\n\nAll thanks to our contributors:\n\n<a href=\"https://github.com/agentscope-ai/agentscope/graphs/contributors\">\n <img src=\"https://contrib.rocks/image?repo=agentscope-ai/agentscope&max=999&columns=12&anon=1\" />\n</a>\n",
"bugtrack_url": null,
"license": "Apache-2.0",
"summary": "AgentScope: A Flexible yet Robust Multi-Agent Platform.",
"version": "1.0.2",
"project_urls": {
"Download": "https://github.com/agentscope-ai/agentscope/archive/v1.0.2.tar.gz",
"Homepage": "https://github.com/agentscope-ai/agentscope"
},
"split_keywords": [
"deep-learning",
" multi agents",
" agents"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "0bf3c34a75d3bccdd885f7a73779631d8e8b44b62fd58c7f14acae550efeda36",
"md5": "4045d650f28d06ea95ee0df8a4d0c39a",
"sha256": "569ab6e33802900d9339b8ee0fb48851343e745097ddffe039d4ed1a837e5e06"
},
"downloads": -1,
"filename": "agentscope-1.0.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "4045d650f28d06ea95ee0df8a4d0c39a",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10",
"size": 191345,
"upload_time": "2025-09-06T03:26:54",
"upload_time_iso_8601": "2025-09-06T03:26:54.203283Z",
"url": "https://files.pythonhosted.org/packages/0b/f3/c34a75d3bccdd885f7a73779631d8e8b44b62fd58c7f14acae550efeda36/agentscope-1.0.2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "7a801a86fe2fcfddec6bcac8b589fb25ecab12044355d457f62bc36ed4b74ec1",
"md5": "6fbb001e22aa2675fab58966a6d0954d",
"sha256": "b5568b29df9820ca1ddebbb944eee5a5efec4dc0abfbda3e2c05629e8f1eb696"
},
"downloads": -1,
"filename": "agentscope-1.0.2.tar.gz",
"has_sig": false,
"md5_digest": "6fbb001e22aa2675fab58966a6d0954d",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.10",
"size": 134183,
"upload_time": "2025-09-06T03:26:55",
"upload_time_iso_8601": "2025-09-06T03:26:55.903844Z",
"url": "https://files.pythonhosted.org/packages/7a/80/1a86fe2fcfddec6bcac8b589fb25ecab12044355d457f62bc36ed4b74ec1/agentscope-1.0.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-09-06 03:26:55",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "agentscope-ai",
"github_project": "agentscope",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "agentscope"
}