tina-python 0.7.0__tar.gz → 0.7.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. {tina_python-0.7.0/tina_python.egg-info → tina_python-0.7.1}/PKG-INFO +48 -8
  2. {tina_python-0.7.0 → tina_python-0.7.1}/README.md +47 -7
  3. {tina_python-0.7.0 → tina_python-0.7.1}/pyproject.toml +1 -1
  4. {tina_python-0.7.0 → tina_python-0.7.1}/setup.py +1 -1
  5. {tina_python-0.7.0 → tina_python-0.7.1}/tina/__init__.py +1 -1
  6. {tina_python-0.7.0 → tina_python-0.7.1/tina_python.egg-info}/PKG-INFO +48 -8
  7. {tina_python-0.7.0 → tina_python-0.7.1}/LICENSE +0 -0
  8. {tina_python-0.7.0 → tina_python-0.7.1}/MANIFEST.in +0 -0
  9. {tina_python-0.7.0 → tina_python-0.7.1}/setup.cfg +0 -0
  10. {tina_python-0.7.0 → tina_python-0.7.1}/tina/agent/__init__.py +0 -0
  11. {tina_python-0.7.0 → tina_python-0.7.1}/tina/agent/agent.py +0 -0
  12. {tina_python-0.7.0 → tina_python-0.7.1}/tina/agent/core/__init__.py +0 -0
  13. {tina_python-0.7.0 → tina_python-0.7.1}/tina/agent/core/agent_response.py +0 -0
  14. {tina_python-0.7.0 → tina_python-0.7.1}/tina/agent/core/agent_runtime.py +0 -0
  15. {tina_python-0.7.0 → tina_python-0.7.1}/tina/agent/core/context_manager.py +0 -0
  16. {tina_python-0.7.0 → tina_python-0.7.1}/tina/agent/core/events.py +0 -0
  17. {tina_python-0.7.0 → tina_python-0.7.1}/tina/agent/core/executor.py +0 -0
  18. {tina_python-0.7.0 → tina_python-0.7.1}/tina/agent/core/keyword_actions.py +0 -0
  19. {tina_python-0.7.0 → tina_python-0.7.1}/tina/agent/core/prompt.py +0 -0
  20. {tina_python-0.7.0 → tina_python-0.7.1}/tina/agent/core/state.py +0 -0
  21. {tina_python-0.7.0 → tina_python-0.7.1}/tina/agent/core/tools.py +0 -0
  22. {tina_python-0.7.0 → tina_python-0.7.1}/tina/agent/multimodal_agent.py +0 -0
  23. {tina_python-0.7.0 → tina_python-0.7.1}/tina/core/__init__.py +0 -0
  24. {tina_python-0.7.0 → tina_python-0.7.1}/tina/core/error.py +0 -0
  25. {tina_python-0.7.0 → tina_python-0.7.1}/tina/core/logger.py +0 -0
  26. {tina_python-0.7.0 → tina_python-0.7.1}/tina/llm/__init__.py +0 -0
  27. {tina_python-0.7.0 → tina_python-0.7.1}/tina/llm/base_api.py +0 -0
  28. {tina_python-0.7.0 → tina_python-0.7.1}/tina/llm/base_multimodal_api.py +0 -0
  29. {tina_python-0.7.0 → tina_python-0.7.1}/tina/llm/files_api.py +0 -0
  30. {tina_python-0.7.0 → tina_python-0.7.1}/tina/mcp/__init__.py +0 -0
  31. {tina_python-0.7.0 → tina_python-0.7.1}/tina/mcp/client.py +0 -0
  32. {tina_python-0.7.0 → tina_python-0.7.1}/tina/mcp/mcp_tools_executor.py +0 -0
  33. {tina_python-0.7.0 → tina_python-0.7.1}/tina/py.typed +0 -0
  34. {tina_python-0.7.0 → tina_python-0.7.1}/tina/utils/__init__.py +0 -0
  35. {tina_python-0.7.0 → tina_python-0.7.1}/tina/utils/agent_worker.py +0 -0
  36. {tina_python-0.7.0 → tina_python-0.7.1}/tina/utils/deepseek.py +0 -0
  37. {tina_python-0.7.0 → tina_python-0.7.1}/tina/utils/doc_parser.py +0 -0
  38. {tina_python-0.7.0 → tina_python-0.7.1}/tina/utils/env_reader.py +0 -0
  39. {tina_python-0.7.0 → tina_python-0.7.1}/tina/utils/multi_agent/__init__.py +0 -0
  40. {tina_python-0.7.0 → tina_python-0.7.1}/tina/utils/multi_agent/environment.py +0 -0
  41. {tina_python-0.7.0 → tina_python-0.7.1}/tina/utils/multi_agent/message.py +0 -0
  42. {tina_python-0.7.0 → tina_python-0.7.1}/tina/utils/multi_agent/message_bus.py +0 -0
  43. {tina_python-0.7.0 → tina_python-0.7.1}/tina/utils/multi_agent/web/__init__.py +0 -0
  44. {tina_python-0.7.0 → tina_python-0.7.1}/tina/utils/multi_agent/web/server.py +0 -0
  45. {tina_python-0.7.0 → tina_python-0.7.1}/tina/utils/multimodal_formatter.py +0 -0
  46. {tina_python-0.7.0 → tina_python-0.7.1}/tina/utils/output_parser.py +0 -0
  47. {tina_python-0.7.0 → tina_python-0.7.1}/tina/utils/run_agent_in_cli.py +0 -0
  48. {tina_python-0.7.0 → tina_python-0.7.1}/tina/utils/system_tools.py +0 -0
  49. {tina_python-0.7.0 → tina_python-0.7.1}/tina/utils/tui/__init__.py +0 -0
  50. {tina_python-0.7.0 → tina_python-0.7.1}/tina/utils/tui/context_manager.py +0 -0
  51. {tina_python-0.7.0 → tina_python-0.7.1}/tina/utils/tui/token.py +0 -0
  52. {tina_python-0.7.0 → tina_python-0.7.1}/tina/utils/tui/tui.py +0 -0
  53. {tina_python-0.7.0 → tina_python-0.7.1}/tina/utils/type_mapper.py +0 -0
  54. {tina_python-0.7.0 → tina_python-0.7.1}/tina/utils/url.py +0 -0
  55. {tina_python-0.7.0 → tina_python-0.7.1}/tina/utils/usage.py +0 -0
  56. {tina_python-0.7.0 → tina_python-0.7.1}/tina_python.egg-info/SOURCES.txt +0 -0
  57. {tina_python-0.7.0 → tina_python-0.7.1}/tina_python.egg-info/dependency_links.txt +0 -0
  58. {tina_python-0.7.0 → tina_python-0.7.1}/tina_python.egg-info/requires.txt +0 -0
  59. {tina_python-0.7.0 → tina_python-0.7.1}/tina_python.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: tina-python
3
- Version: 0.7.0
3
+ Version: 0.7.1
4
4
  Summary: tina is in your computer!
5
5
  Home-page: https://gitee.com/wang-churi/tina
6
6
  Author: 王出日
@@ -53,10 +53,13 @@ pip install tina-python
53
53
  # 如果需要使用 MCP(模型上下文协议)服务
54
54
  pip install tina-python[mcp]
55
55
 
56
- # 如果需要 TUI 终端界面
56
+ # 如果需要 TUI 终端界面(独立发行包 tina-tui)
57
57
  pip install tina-python[tui]
58
58
 
59
- # 一次装齐所有可选功能(TUI + MCP)
59
+ # 如果需要多 Agent 环境 + Web 调试控制台(独立发行包 tina-multi-agent)
60
+ pip install tina-python[multi-agent]
61
+
62
+ # 一次装齐所有可选功能(TUI + 多 Agent + MCP)
60
63
  pip install tina-python[all]
61
64
 
62
65
  # 如果需要运行测试
@@ -113,7 +116,7 @@ for chunk in result:
113
116
  - [四、MCP 支持 —— 模型上下文协议](#四mcp-支持--模型上下文协议)
114
117
  - [五、多模态支持](#五多模态支持)
115
118
  - [六、快速开发工具](#六快速开发工具)
116
- - [6.5 终端界面 TUI(可选扩展)](#65-终端界面-tui可选扩展)
119
+ - [七、拓展包(可选)](#七拓展包可选)
117
120
 
118
121
  ---
119
122
 
@@ -141,7 +144,8 @@ tina 是一个轻量、模块化的 AI 智能体框架,专注于让开发者
141
144
  | **MCPClient** | MCP 集成 | 连接 MCP 服务器生态(stdio/SSE) |
142
145
  | **ContextManager** | 上下文管理 | 滚动窗口策略,自动截断 |
143
146
  | **AgentEvents** | 事件系统 | 贯穿 Agent 生命周期的回调钩子 |
144
- | **TUI(可选)** | 终端界面 | 测试你写的 Agent 的交互控制台,也可当作自己的 TUI 使用 |
147
+ | **TUI(可选)** | 终端界面 | 独立包 `tina-tui`:测试 Agent 的交互控制台,也可当作自己的 TUI 使用 |
148
+ | **多 Agent(可选)** | 多 Agent 环境 | 独立包 `tina-multi-agent`:消息总线 + Web 调试控制台 |
145
149
 
146
150
  ---
147
151
 
@@ -707,7 +711,7 @@ tina 支持通过 MCP(Model Context Protocol)连接外部工具生态。
707
711
  pip install tina-python[mcp]
708
712
  ```
709
713
 
710
- > 想一次装齐所有可选功能(TUI + MCP):`pip install tina-python[all]`
714
+ > 想一次装齐所有可选功能(TUI + 多 Agent + MCP):`pip install tina-python[all]`
711
715
 
712
716
  ### 4.2 使用 MCP 客户端
713
717
 
@@ -1031,7 +1035,13 @@ print(message)
1031
1035
  # {"role": "user", "content": [{"type": "text", "text": "..."}, {"type": "image_url", ...}]}
1032
1036
  ```
1033
1037
 
1034
- ### 6.5 终端界面 TUI(可选扩展)
1038
+ ---
1039
+
1040
+ ## 七、拓展包(可选)
1041
+
1042
+ tina 核心保持轻量:终端界面与多 Agent 环境这两块较大的功能,拆成**独立发行包**,按需安装、独立更新与发布。主包内不再包含它们的实现(仅保留 `tina.utils.*` 兼容转发壳)。
1043
+
1044
+ ### 7.1 终端界面 TUI(`tina-tui`)
1035
1045
 
1036
1046
  终端界面由配套包 **`tina-tui`**(基于 [Textual](https://textual.textualize.io/))提供,作为**可选扩展**单独发行:方便你测试自己写的 Agent,也可以直接当作自己的 TUI 来用。核心不依赖它,需要额外安装:
1037
1047
 
@@ -1080,6 +1090,35 @@ run_agent_in_tui(agent, max_tokens=32000)
1080
1090
 
1081
1091
  完整说明(安装、指令、快捷键、自建界面)见 [`docs/tui.md`](./docs/tui.md)。
1082
1092
 
1093
+ ### 7.2 多 Agent 环境(`tina-multi-agent`)
1094
+
1095
+ 多 Agent 场景由独立发行包 **`tina-multi-agent`** 提供:把多个各自独立的 `Agent`(含 `MultimodalAgent`)注册进一个「环境」,通过消息总线互相通信,并带一个 Web 调试控制台用于观测与介入。
1096
+
1097
+ ```bash
1098
+ pip install tina-python[multi-agent] # 等价于安装 tina-multi-agent
1099
+ ```
1100
+
1101
+ ```python
1102
+ from tina import Agent
1103
+ from tina.llm import BaseAPI
1104
+ from tina_multi_agent import MultiAgentEnvironment, MultiAgentWeb
1105
+
1106
+ llm = BaseAPI()
1107
+
1108
+ env = MultiAgentEnvironment(name="room")
1109
+ env.add_agent(Agent(llm=llm, name="alice", system_prompt="你是 alice"))
1110
+ env.add_agent(Agent(llm=llm, name="bob", system_prompt="你是 bob"))
1111
+
1112
+ # 带 Web 控制台启动(自动启动环境):打开 http://127.0.0.1:7077
1113
+ MultiAgentWeb(env, port=7077).run()
1114
+ ```
1115
+
1116
+ - 每个 Agent 一个收信队列;外部指令走 `add_user_message`,同伴消息作为带 `name` 的 assistant 消息注入。
1117
+ - 支持**回合中途注入**(`before_llm_call`)、打断(`env.interrupt`)、工具确认与权限表。
1118
+ - Web 控制台能力、消息总线、`POST /instruction`、`WS /ws` 事件等完整说明见 [`packages/tina-multi-agent/README.md`](./packages/tina-multi-agent/README.md)。
1119
+
1120
+ > 兼容提示:旧路径 `tina.utils.multi_agent` 仍可用(主包内保留转发壳);未安装 `tina-multi-agent` 时会提示安装。
1121
+
1083
1122
  ---
1084
1123
 
1085
1124
  ## 附录
@@ -1101,7 +1140,8 @@ MAX_INPUT=8000
1101
1140
  |------|------|
1102
1141
  | 核心功能 | `httpx`, `python-dotenv` |
1103
1142
  | MCP 支持 | `mcp` |
1104
- | TUI 界面(可选) | `textual` |
1143
+ | TUI 界面(可选,`tina-tui`) | `textual` |
1144
+ | 多 Agent(可选,`tina-multi-agent`) | `fastapi`, `uvicorn`, `websockets` |
1105
1145
  | 测试 | `pytest`, `pytest-asyncio`, `pytest-cov` |
1106
1146
 
1107
1147
  ### 许可证
@@ -15,10 +15,13 @@ pip install tina-python
15
15
  # 如果需要使用 MCP(模型上下文协议)服务
16
16
  pip install tina-python[mcp]
17
17
 
18
- # 如果需要 TUI 终端界面
18
+ # 如果需要 TUI 终端界面(独立发行包 tina-tui)
19
19
  pip install tina-python[tui]
20
20
 
21
- # 一次装齐所有可选功能(TUI + MCP)
21
+ # 如果需要多 Agent 环境 + Web 调试控制台(独立发行包 tina-multi-agent)
22
+ pip install tina-python[multi-agent]
23
+
24
+ # 一次装齐所有可选功能(TUI + 多 Agent + MCP)
22
25
  pip install tina-python[all]
23
26
 
24
27
  # 如果需要运行测试
@@ -75,7 +78,7 @@ for chunk in result:
75
78
  - [四、MCP 支持 —— 模型上下文协议](#四mcp-支持--模型上下文协议)
76
79
  - [五、多模态支持](#五多模态支持)
77
80
  - [六、快速开发工具](#六快速开发工具)
78
- - [6.5 终端界面 TUI(可选扩展)](#65-终端界面-tui可选扩展)
81
+ - [七、拓展包(可选)](#七拓展包可选)
79
82
 
80
83
  ---
81
84
 
@@ -103,7 +106,8 @@ tina 是一个轻量、模块化的 AI 智能体框架,专注于让开发者
103
106
  | **MCPClient** | MCP 集成 | 连接 MCP 服务器生态(stdio/SSE) |
104
107
  | **ContextManager** | 上下文管理 | 滚动窗口策略,自动截断 |
105
108
  | **AgentEvents** | 事件系统 | 贯穿 Agent 生命周期的回调钩子 |
106
- | **TUI(可选)** | 终端界面 | 测试你写的 Agent 的交互控制台,也可当作自己的 TUI 使用 |
109
+ | **TUI(可选)** | 终端界面 | 独立包 `tina-tui`:测试 Agent 的交互控制台,也可当作自己的 TUI 使用 |
110
+ | **多 Agent(可选)** | 多 Agent 环境 | 独立包 `tina-multi-agent`:消息总线 + Web 调试控制台 |
107
111
 
108
112
  ---
109
113
 
@@ -669,7 +673,7 @@ tina 支持通过 MCP(Model Context Protocol)连接外部工具生态。
669
673
  pip install tina-python[mcp]
670
674
  ```
671
675
 
672
- > 想一次装齐所有可选功能(TUI + MCP):`pip install tina-python[all]`
676
+ > 想一次装齐所有可选功能(TUI + 多 Agent + MCP):`pip install tina-python[all]`
673
677
 
674
678
  ### 4.2 使用 MCP 客户端
675
679
 
@@ -993,7 +997,13 @@ print(message)
993
997
  # {"role": "user", "content": [{"type": "text", "text": "..."}, {"type": "image_url", ...}]}
994
998
  ```
995
999
 
996
- ### 6.5 终端界面 TUI(可选扩展)
1000
+ ---
1001
+
1002
+ ## 七、拓展包(可选)
1003
+
1004
+ tina 核心保持轻量:终端界面与多 Agent 环境这两块较大的功能,拆成**独立发行包**,按需安装、独立更新与发布。主包内不再包含它们的实现(仅保留 `tina.utils.*` 兼容转发壳)。
1005
+
1006
+ ### 7.1 终端界面 TUI(`tina-tui`)
997
1007
 
998
1008
  终端界面由配套包 **`tina-tui`**(基于 [Textual](https://textual.textualize.io/))提供,作为**可选扩展**单独发行:方便你测试自己写的 Agent,也可以直接当作自己的 TUI 来用。核心不依赖它,需要额外安装:
999
1009
 
@@ -1042,6 +1052,35 @@ run_agent_in_tui(agent, max_tokens=32000)
1042
1052
 
1043
1053
  完整说明(安装、指令、快捷键、自建界面)见 [`docs/tui.md`](./docs/tui.md)。
1044
1054
 
1055
+ ### 7.2 多 Agent 环境(`tina-multi-agent`)
1056
+
1057
+ 多 Agent 场景由独立发行包 **`tina-multi-agent`** 提供:把多个各自独立的 `Agent`(含 `MultimodalAgent`)注册进一个「环境」,通过消息总线互相通信,并带一个 Web 调试控制台用于观测与介入。
1058
+
1059
+ ```bash
1060
+ pip install tina-python[multi-agent] # 等价于安装 tina-multi-agent
1061
+ ```
1062
+
1063
+ ```python
1064
+ from tina import Agent
1065
+ from tina.llm import BaseAPI
1066
+ from tina_multi_agent import MultiAgentEnvironment, MultiAgentWeb
1067
+
1068
+ llm = BaseAPI()
1069
+
1070
+ env = MultiAgentEnvironment(name="room")
1071
+ env.add_agent(Agent(llm=llm, name="alice", system_prompt="你是 alice"))
1072
+ env.add_agent(Agent(llm=llm, name="bob", system_prompt="你是 bob"))
1073
+
1074
+ # 带 Web 控制台启动(自动启动环境):打开 http://127.0.0.1:7077
1075
+ MultiAgentWeb(env, port=7077).run()
1076
+ ```
1077
+
1078
+ - 每个 Agent 一个收信队列;外部指令走 `add_user_message`,同伴消息作为带 `name` 的 assistant 消息注入。
1079
+ - 支持**回合中途注入**(`before_llm_call`)、打断(`env.interrupt`)、工具确认与权限表。
1080
+ - Web 控制台能力、消息总线、`POST /instruction`、`WS /ws` 事件等完整说明见 [`packages/tina-multi-agent/README.md`](./packages/tina-multi-agent/README.md)。
1081
+
1082
+ > 兼容提示:旧路径 `tina.utils.multi_agent` 仍可用(主包内保留转发壳);未安装 `tina-multi-agent` 时会提示安装。
1083
+
1045
1084
  ---
1046
1085
 
1047
1086
  ## 附录
@@ -1063,7 +1102,8 @@ MAX_INPUT=8000
1063
1102
  |------|------|
1064
1103
  | 核心功能 | `httpx`, `python-dotenv` |
1065
1104
  | MCP 支持 | `mcp` |
1066
- | TUI 界面(可选) | `textual` |
1105
+ | TUI 界面(可选,`tina-tui`) | `textual` |
1106
+ | 多 Agent(可选,`tina-multi-agent`) | `fastapi`, `uvicorn`, `websockets` |
1067
1107
  | 测试 | `pytest`, `pytest-asyncio`, `pytest-cov` |
1068
1108
 
1069
1109
  ### 许可证
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "tina-python"
7
- version = "0.7.0"
7
+ version = "0.7.1"
8
8
  description = "tina is in your computer!"
9
9
  readme = { file = "README.md", content-type = "text/markdown" }
10
10
  requires-python = ">=3.10"
@@ -2,7 +2,7 @@ from setuptools import setup, find_packages
2
2
 
3
3
  setup(
4
4
  name="tina-python",
5
- version="0.7.0",
5
+ version="0.7.1",
6
6
  packages=find_packages(),
7
7
  package_data={"tina": ["py.typed"]},
8
8
  install_requires=["httpx", "python-dotenv"],
@@ -21,4 +21,4 @@ __all__ = [
21
21
  "AgentEvents",
22
22
  "FilesAPI",
23
23
  ]
24
- __version__ = "0.7.0"
24
+ __version__ = "0.7.1"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: tina-python
3
- Version: 0.7.0
3
+ Version: 0.7.1
4
4
  Summary: tina is in your computer!
5
5
  Home-page: https://gitee.com/wang-churi/tina
6
6
  Author: 王出日
@@ -53,10 +53,13 @@ pip install tina-python
53
53
  # 如果需要使用 MCP(模型上下文协议)服务
54
54
  pip install tina-python[mcp]
55
55
 
56
- # 如果需要 TUI 终端界面
56
+ # 如果需要 TUI 终端界面(独立发行包 tina-tui)
57
57
  pip install tina-python[tui]
58
58
 
59
- # 一次装齐所有可选功能(TUI + MCP)
59
+ # 如果需要多 Agent 环境 + Web 调试控制台(独立发行包 tina-multi-agent)
60
+ pip install tina-python[multi-agent]
61
+
62
+ # 一次装齐所有可选功能(TUI + 多 Agent + MCP)
60
63
  pip install tina-python[all]
61
64
 
62
65
  # 如果需要运行测试
@@ -113,7 +116,7 @@ for chunk in result:
113
116
  - [四、MCP 支持 —— 模型上下文协议](#四mcp-支持--模型上下文协议)
114
117
  - [五、多模态支持](#五多模态支持)
115
118
  - [六、快速开发工具](#六快速开发工具)
116
- - [6.5 终端界面 TUI(可选扩展)](#65-终端界面-tui可选扩展)
119
+ - [七、拓展包(可选)](#七拓展包可选)
117
120
 
118
121
  ---
119
122
 
@@ -141,7 +144,8 @@ tina 是一个轻量、模块化的 AI 智能体框架,专注于让开发者
141
144
  | **MCPClient** | MCP 集成 | 连接 MCP 服务器生态(stdio/SSE) |
142
145
  | **ContextManager** | 上下文管理 | 滚动窗口策略,自动截断 |
143
146
  | **AgentEvents** | 事件系统 | 贯穿 Agent 生命周期的回调钩子 |
144
- | **TUI(可选)** | 终端界面 | 测试你写的 Agent 的交互控制台,也可当作自己的 TUI 使用 |
147
+ | **TUI(可选)** | 终端界面 | 独立包 `tina-tui`:测试 Agent 的交互控制台,也可当作自己的 TUI 使用 |
148
+ | **多 Agent(可选)** | 多 Agent 环境 | 独立包 `tina-multi-agent`:消息总线 + Web 调试控制台 |
145
149
 
146
150
  ---
147
151
 
@@ -707,7 +711,7 @@ tina 支持通过 MCP(Model Context Protocol)连接外部工具生态。
707
711
  pip install tina-python[mcp]
708
712
  ```
709
713
 
710
- > 想一次装齐所有可选功能(TUI + MCP):`pip install tina-python[all]`
714
+ > 想一次装齐所有可选功能(TUI + 多 Agent + MCP):`pip install tina-python[all]`
711
715
 
712
716
  ### 4.2 使用 MCP 客户端
713
717
 
@@ -1031,7 +1035,13 @@ print(message)
1031
1035
  # {"role": "user", "content": [{"type": "text", "text": "..."}, {"type": "image_url", ...}]}
1032
1036
  ```
1033
1037
 
1034
- ### 6.5 终端界面 TUI(可选扩展)
1038
+ ---
1039
+
1040
+ ## 七、拓展包(可选)
1041
+
1042
+ tina 核心保持轻量:终端界面与多 Agent 环境这两块较大的功能,拆成**独立发行包**,按需安装、独立更新与发布。主包内不再包含它们的实现(仅保留 `tina.utils.*` 兼容转发壳)。
1043
+
1044
+ ### 7.1 终端界面 TUI(`tina-tui`)
1035
1045
 
1036
1046
  终端界面由配套包 **`tina-tui`**(基于 [Textual](https://textual.textualize.io/))提供,作为**可选扩展**单独发行:方便你测试自己写的 Agent,也可以直接当作自己的 TUI 来用。核心不依赖它,需要额外安装:
1037
1047
 
@@ -1080,6 +1090,35 @@ run_agent_in_tui(agent, max_tokens=32000)
1080
1090
 
1081
1091
  完整说明(安装、指令、快捷键、自建界面)见 [`docs/tui.md`](./docs/tui.md)。
1082
1092
 
1093
+ ### 7.2 多 Agent 环境(`tina-multi-agent`)
1094
+
1095
+ 多 Agent 场景由独立发行包 **`tina-multi-agent`** 提供:把多个各自独立的 `Agent`(含 `MultimodalAgent`)注册进一个「环境」,通过消息总线互相通信,并带一个 Web 调试控制台用于观测与介入。
1096
+
1097
+ ```bash
1098
+ pip install tina-python[multi-agent] # 等价于安装 tina-multi-agent
1099
+ ```
1100
+
1101
+ ```python
1102
+ from tina import Agent
1103
+ from tina.llm import BaseAPI
1104
+ from tina_multi_agent import MultiAgentEnvironment, MultiAgentWeb
1105
+
1106
+ llm = BaseAPI()
1107
+
1108
+ env = MultiAgentEnvironment(name="room")
1109
+ env.add_agent(Agent(llm=llm, name="alice", system_prompt="你是 alice"))
1110
+ env.add_agent(Agent(llm=llm, name="bob", system_prompt="你是 bob"))
1111
+
1112
+ # 带 Web 控制台启动(自动启动环境):打开 http://127.0.0.1:7077
1113
+ MultiAgentWeb(env, port=7077).run()
1114
+ ```
1115
+
1116
+ - 每个 Agent 一个收信队列;外部指令走 `add_user_message`,同伴消息作为带 `name` 的 assistant 消息注入。
1117
+ - 支持**回合中途注入**(`before_llm_call`)、打断(`env.interrupt`)、工具确认与权限表。
1118
+ - Web 控制台能力、消息总线、`POST /instruction`、`WS /ws` 事件等完整说明见 [`packages/tina-multi-agent/README.md`](./packages/tina-multi-agent/README.md)。
1119
+
1120
+ > 兼容提示:旧路径 `tina.utils.multi_agent` 仍可用(主包内保留转发壳);未安装 `tina-multi-agent` 时会提示安装。
1121
+
1083
1122
  ---
1084
1123
 
1085
1124
  ## 附录
@@ -1101,7 +1140,8 @@ MAX_INPUT=8000
1101
1140
  |------|------|
1102
1141
  | 核心功能 | `httpx`, `python-dotenv` |
1103
1142
  | MCP 支持 | `mcp` |
1104
- | TUI 界面(可选) | `textual` |
1143
+ | TUI 界面(可选,`tina-tui`) | `textual` |
1144
+ | 多 Agent(可选,`tina-multi-agent`) | `fastapi`, `uvicorn`, `websockets` |
1105
1145
  | 测试 | `pytest`, `pytest-asyncio`, `pytest-cov` |
1106
1146
 
1107
1147
  ### 许可证
File without changes
File without changes
File without changes
File without changes