@xinshu/openagi 0.0.1 → 0.0.2-dev.0
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.
- package/.npmignore +8 -0
- package/LICENSE.md +196 -18
- package/README.md +405 -41
- package/cli.js +1889 -11
- package/package.json +39 -27
- package/sdk-tools.d.ts +267 -27
- package/vendor/ripgrep/x64-win32/rg.exe +0 -0
- package/cli.mjs +0 -2
- package/sdk.d.ts +0 -33
- package/sdk.mjs +0 -18
package/README.md
CHANGED
|
@@ -1,60 +1,424 @@
|
|
|
1
|
-
# OpenAGI
|
|
1
|
+
# OpenAGI - AI Coding
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
<div align="center">
|
|
4
|
+
<img src="./logo.svg" alt="OpenAGI Logo" width="400" />
|
|
5
|
+
</div>
|
|
4
6
|
|
|
5
|
-
##
|
|
7
|
+
## 🎯 项目介绍
|
|
6
8
|
|
|
7
|
-
|
|
9
|
+
OpenAGI 是开源 AI 编程助手。采用 TypeScript + React + Ink 现代化架构,提供强大的 AI 辅助编程能力,支持文件操作、系统交互、智能搜索等丰富功能。
|
|
10
|
+
|
|
11
|
+
<img width="90%" alt="image" src="https://github.com/user-attachments/assets/fdce7017-8095-429d-b74e-07f43a6919e1" />
|
|
12
|
+
|
|
13
|
+
<img width="90%" alt="2c0ad8540f2872d197c7b17ae23d74f5" src="https://github.com/user-attachments/assets/f220cc27-084d-468e-a3f4-d5bc44d84fac" />
|
|
14
|
+
|
|
15
|
+
<img width="90%" alt="f266d316d90ddd0db5a3d640c1126930" src="https://github.com/user-attachments/assets/90ec7399-1349-4607-b689-96613b3dc3e2" />
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
<img width="90%" alt="image" src="https://github.com/user-attachments/assets/b30696ce-5ab1-40a0-b741-c7ef3945dba0" />
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
## 📢 更新日志
|
|
22
|
+
|
|
23
|
+
**2025-08-29**:我们已添加 Windows 支持!所有 Windows 用户现在可以在他们的计算机上使用 Git Bash、Unix 子系统或 WSL(Windows 子系统 for Linux)运行 OpenAGI。
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
## 🤝 AGENTS.md 标准支持
|
|
27
|
+
|
|
28
|
+
**OpenAGI 骄傲地支持由 OpenAI 发起的 [AGENTS.md 标准协议](https://agents.md)** - 一种用于指导编程代理的简单、开放格式,已被 20k+ 开源项目使用。
|
|
29
|
+
|
|
30
|
+
### 与多种标准的完全兼容
|
|
31
|
+
|
|
32
|
+
- ✅ **AGENTS.md** - 原生支持 OpenAI 发起的标准格式
|
|
33
|
+
- ✅ **CLAUDE.md** - 与 Claude Code 的 `.claude` 配置完全向后兼容
|
|
34
|
+
- ✅ **子代理系统** - 高级代理委派和任务编排
|
|
35
|
+
- ✅ **跨平台** - 可与 20+ AI 模型和提供商配合使用
|
|
36
|
+
|
|
37
|
+
使用 `# 您的文档请求` 自动生成和维护您的 AGENTS.md 文件,同时保持与现有 `.claude` 工作流的兼容性。
|
|
38
|
+
|
|
39
|
+
## 概述
|
|
40
|
+
|
|
41
|
+
OpenAGI 是一个强大的 AI 助手,驻留在您的终端中。它可以理解您的代码库、编辑文件、运行命令并为您处理整个工作流程。
|
|
42
|
+
|
|
43
|
+
> **⚠️ 安全提示**:OpenAGI 默认以 YOLO 模式运行(相当于 Claude Code 的 `--dangerously-skip-permissions` 标志),绕过所有权限检查以实现最大生产力。YOLO 模式仅建议在受信任的安全环境中处理非关键项目时使用。如果您正在处理重要文件或使用能力存疑的模型,我们强烈建议使用 `openagi --safe` 启用权限检查和所有操作的手动批准。
|
|
44
|
+
>
|
|
45
|
+
> **📊 模型性能**:为了获得最佳性能,我们建议使用专为自主任务完成设计的更新、更强大的模型。避免使用像 GPT-4o 或 Gemini 2.5 Pro 这样的旧版问答优化模型,它们针对回答问题而非持续独立任务执行进行了优化。应选择专门为代理工作流程和扩展推理能力训练的模型。
|
|
46
|
+
|
|
47
|
+
<img width="600" height="577" alt="image" src="https://github.com/user-attachments/assets/8b46a39d-1ab6-4669-9391-14ccc6c5234c" />
|
|
48
|
+
|
|
49
|
+
## 功能特性
|
|
50
|
+
|
|
51
|
+
### 核心能力
|
|
52
|
+
- 🤖 **AI 驱动助手** - 使用先进的 AI 模型理解和响应您的请求
|
|
53
|
+
- 🔄 **多模型协作** - 灵活切换和组合多个 AI 模型以利用它们的独特优势
|
|
54
|
+
- 🦜 **专家模型咨询** - 使用 `@ask-model-name` 咨询特定 AI 模型以获得专业分析
|
|
55
|
+
- 👤 **智能代理系统** - 使用 `@run-agent-name` 将任务委派给专业子代理
|
|
56
|
+
- 📝 **代码编辑** - 通过智能建议和改进直接编辑文件
|
|
57
|
+
- 🔍 **代码库理解** - 分析您的项目结构和代码关系
|
|
58
|
+
- 🚀 **命令执行** - 运行 shell 命令并实时查看结果
|
|
59
|
+
- 🛠️ **工作流程自动化** - 通过简单的提示处理复杂的开发任务
|
|
60
|
+
|
|
61
|
+
### 编辑舒适度
|
|
62
|
+
- `Ctrl+G` 在您偏好的编辑器中打开消息(尊重 `$EDITOR`/`$VISUAL`;回退到 code/nano/vim/notepad),并在关闭时将文本返回到提示符。
|
|
63
|
+
- `Shift+Enter` 在提示符内插入换行符而不发送;直接 Enter 提交。`Ctrl+M` 切换活动模型。
|
|
64
|
+
|
|
65
|
+
### 🎯 先进的智能补全系统
|
|
66
|
+
我们的最先进补全系统提供无与伦比的编码辅助:
|
|
67
|
+
|
|
68
|
+
#### 智能模糊匹配
|
|
69
|
+
- **连字符感知匹配** - 输入 `dao` 即可匹配 `run-agent-dao-qi-harmony-designer`
|
|
70
|
+
- **缩写支持** - `dq` 匹配 `dao-qi`,`nde` 匹配 `node`
|
|
71
|
+
- **数字后缀处理** - `py3` 智能匹配 `python3`
|
|
72
|
+
- **多算法融合** - 结合 7+ 种匹配算法以获得最佳结果
|
|
73
|
+
|
|
74
|
+
#### 智能上下文检测
|
|
75
|
+
- **无需 @ 符号** - 直接输入 `gp5` 即可匹配 `@ask-gpt-5`
|
|
76
|
+
- **自动前缀添加** - Tab/Enter 自动为代理和模型添加 `@`
|
|
77
|
+
- **混合补全** - 在命令、文件、代理和模型之间无缝切换
|
|
78
|
+
- **智能优先级** - 根据相关性和使用频率对结果进行排名
|
|
79
|
+
|
|
80
|
+
#### Unix 命令优化
|
|
81
|
+
- **500+ 常用命令** - 精心策划的常用 Unix/Linux 命令数据库
|
|
82
|
+
- **系统交集** - 仅显示您的系统上实际存在的命令
|
|
83
|
+
- **优先级评分** - 常用命令排在前面(git、npm、docker 等)
|
|
84
|
+
- **实时加载** - 从系统 PATH 动态发现命令
|
|
85
|
+
|
|
86
|
+
### 用户体验
|
|
87
|
+
- 🎨 **交互式 UI** - 具有语法高亮的精美终端界面
|
|
88
|
+
- 🔌 **工具系统** - 可扩展架构,针对不同任务提供专业工具
|
|
89
|
+
- 💾 **上下文管理** - 智能上下文处理以保持对话连续性
|
|
90
|
+
- 📋 **AGENTS.md 集成** - 使用 `# 文档请求` 自动生成和维护项目文档
|
|
91
|
+
|
|
92
|
+
## 安装
|
|
93
|
+
|
|
94
|
+
```bash
|
|
95
|
+
npm install -g @xinshu/openagi
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
安装后,您可以使用以下任何命令:
|
|
99
|
+
- `openagi` - 主命令
|
|
100
|
+
- `agi` - OpenAGI With Agent(替代命令)
|
|
101
|
+
|
|
102
|
+
### Windows 说明
|
|
103
|
+
|
|
104
|
+
- 安装 Git for Windows 以提供 Bash(类似 Unix)环境:https://git-scm.com/download/win
|
|
105
|
+
- OpenAGI 在可用时自动优先使用 Git Bash/MSYS 或 WSL Bash。
|
|
106
|
+
- 如果两者都不可用,它将回退到您的默认 shell,但许多功能在 Bash 下效果最佳。
|
|
107
|
+
- 使用 VS Code 的集成终端而不是旧版命令提示符(cmd):
|
|
108
|
+
- 更好的字体渲染和图标支持。
|
|
109
|
+
- 与 cmd 相比,路径和编码的怪癖更少。
|
|
110
|
+
- 尽可能选择"Git Bash"作为 VS Code 终端 shell。
|
|
111
|
+
- 可选:如果您通过 npm 全局安装,请避免全局前缀路径中的空格以防止 shim 问题。
|
|
112
|
+
- 示例:`npm config set prefix "C:\\npm"` 并重新安装全局包。
|
|
113
|
+
|
|
114
|
+
## 使用方法
|
|
115
|
+
|
|
116
|
+
### 交互式模式
|
|
117
|
+
启动交互式会话:
|
|
118
|
+
```bash
|
|
119
|
+
openagi
|
|
120
|
+
# 或
|
|
121
|
+
agi
|
|
8
122
|
|
|
9
123
|
```
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
124
|
+
|
|
125
|
+
### 非交互式模式
|
|
126
|
+
快速获取响应:
|
|
127
|
+
```bash
|
|
128
|
+
openagi -p "解释这个函数" path/to/file.js
|
|
129
|
+
# 或
|
|
130
|
+
agi -p "解释这个函数" path/to/file.js
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
### 使用 @ 提及系统
|
|
134
|
+
|
|
135
|
+
OpenAGI 支持强大的 @ 提及系统以实现智能补全:
|
|
136
|
+
|
|
137
|
+
#### 🦜 专家模型咨询
|
|
138
|
+
```bash
|
|
139
|
+
# 咨询特定 AI 模型以获得专家意见
|
|
140
|
+
@ask-claude-sonnet-4 我应该如何优化这个 React 组件的性能?
|
|
141
|
+
@ask-gpt-5 这种身份验证方法的安全影响是什么?
|
|
142
|
+
@ask-o1-preview 分析这个算法的复杂性
|
|
23
143
|
```
|
|
24
144
|
|
|
25
|
-
|
|
145
|
+
#### 👤 专业代理委派
|
|
146
|
+
```bash
|
|
147
|
+
# 将任务委派给专业子代理
|
|
148
|
+
@run-agent-simplicity-auditor 审查这段代码是否存在过度工程化
|
|
149
|
+
@run-agent-architect 为这个系统设计微服务架构
|
|
150
|
+
@run-agent-test-writer 为这些模块创建全面的测试
|
|
151
|
+
```
|
|
26
152
|
|
|
153
|
+
#### 📁 智能文件引用
|
|
27
154
|
```bash
|
|
28
|
-
#
|
|
29
|
-
|
|
155
|
+
# 使用自动补全引用文件和目录
|
|
156
|
+
@src/components/Button.tsx
|
|
157
|
+
@docs/api-reference.md
|
|
158
|
+
@.env.example
|
|
159
|
+
```
|
|
30
160
|
|
|
31
|
-
|
|
32
|
-
|
|
161
|
+
@ 提及系统在您输入时提供智能补全,显示可用的模型、代理和文件。
|
|
162
|
+
|
|
163
|
+
### AGENTS.md 文档模式
|
|
33
164
|
|
|
34
|
-
|
|
35
|
-
|
|
165
|
+
使用 `#` 前缀生成和维护您的 AGENTS.md 文档:
|
|
166
|
+
|
|
167
|
+
```bash
|
|
168
|
+
# 生成设置说明
|
|
169
|
+
# 我如何设置开发环境?
|
|
170
|
+
|
|
171
|
+
# 创建测试文档
|
|
172
|
+
# 这个项目的测试程序是什么?
|
|
173
|
+
|
|
174
|
+
# 记录部署过程
|
|
175
|
+
# 解释部署管道和要求
|
|
176
|
+
```
|
|
177
|
+
|
|
178
|
+
此模式自动将响应格式化为结构化文档,并将它们附加到您的 AGENTS.md 文件中。
|
|
179
|
+
|
|
180
|
+
### Docker 使用
|
|
181
|
+
|
|
182
|
+
#### 替代方案:从本地源构建
|
|
183
|
+
|
|
184
|
+
```bash
|
|
185
|
+
# 克隆仓库
|
|
186
|
+
git clone https://github.com/xingshuzhice/openagi.git
|
|
187
|
+
cd openagi
|
|
188
|
+
|
|
189
|
+
# 在本地构建镜像
|
|
190
|
+
docker build --no-cache -t openagi .
|
|
191
|
+
|
|
192
|
+
# 在您的项目目录中运行
|
|
193
|
+
cd your-project
|
|
194
|
+
docker run -it --rm \
|
|
195
|
+
-v $(pwd):/workspace \
|
|
196
|
+
-v ~/.openagi:/root/.openagi \
|
|
197
|
+
-v ~/.openagi.json:/root/.openagi.json \
|
|
198
|
+
-w /workspace \
|
|
199
|
+
openagi
|
|
36
200
|
```
|
|
37
201
|
|
|
38
|
-
|
|
202
|
+
#### Docker 配置详情
|
|
203
|
+
|
|
204
|
+
Docker 设置包括:
|
|
205
|
+
|
|
206
|
+
- **卷挂载**:
|
|
207
|
+
- `$(pwd):/workspace` - 挂载您当前的项目目录
|
|
208
|
+
- `~/.openagi:/root/.openagi` - 在运行之间保留您的 openagi 配置目录
|
|
209
|
+
- `~/.openagi.json:/root/.openagi.json` - 在运行之间保留您的 openagi 全局配置文件
|
|
210
|
+
|
|
211
|
+
- **工作目录**:在容器内设置为 `/workspace`
|
|
212
|
+
|
|
213
|
+
- **交互模式**:使用 `-it` 标志进行交互式终端访问
|
|
214
|
+
|
|
215
|
+
- **清理**:`--rm` 标志在退出后删除容器
|
|
216
|
+
|
|
217
|
+
**注意**:OpenAGI 同时使用 `~/.openagi` 目录存储额外数据(如内存文件)和 `~/.openagi.json` 文件进行全局配置。
|
|
218
|
+
|
|
219
|
+
第一次运行 Docker 命令时,它将构建镜像。后续运行将使用缓存镜像以加快启动速度。
|
|
220
|
+
|
|
221
|
+
您可以使用入门来设置模型,或使用 `/model`。
|
|
222
|
+
如果您在列表中看不到想要的模型,可以在 `/config` 中手动设置
|
|
223
|
+
只要您有类似 openai 的端点,它就应该工作。
|
|
224
|
+
|
|
225
|
+
### 命令
|
|
226
|
+
|
|
227
|
+
- `/help` - 显示可用命令
|
|
228
|
+
- `/model` - 更改 AI 模型设置
|
|
229
|
+
- `/config` - 打开配置面板
|
|
230
|
+
- `/cost` - 显示令牌使用情况和成本
|
|
231
|
+
- `/clear` - 清除对话历史
|
|
232
|
+
- `/init` - 初始化项目上下文
|
|
233
|
+
|
|
234
|
+
## 多模型智能协作
|
|
235
|
+
|
|
236
|
+
与只支持单一模型的官方 Claude 不同,OpenAGI 实现了**真正的多模型协作**,让您充分利用不同 AI 模型的独特优势。
|
|
237
|
+
|
|
238
|
+
### 🏗️ 核心技术架构
|
|
239
|
+
|
|
240
|
+
#### 1. **ModelManager 多模型管理器**
|
|
241
|
+
我们设计了统一的 `ModelManager` 系统,支持:
|
|
242
|
+
- **模型配置文件**:每个模型都有独立的配置文件,包含 API 端点、身份验证、上下文窗口大小、成本参数等。
|
|
243
|
+
- **模型指针**:用户可以在 `/model` 命令中为不同目的配置默认模型:
|
|
244
|
+
- `main`:主代理的默认模型
|
|
245
|
+
- `task`:子代理的默认模型
|
|
246
|
+
- `reasoning`:保留供将来 ThinkTool 使用
|
|
247
|
+
- `quick`:用于简单 NLP 任务的快速模型(安全识别、标题生成等)
|
|
248
|
+
- **动态模型切换**:支持运行时模型切换,无需重启会话,保持上下文连续性
|
|
249
|
+
|
|
250
|
+
#### 2. **TaskTool 智能任务分配**
|
|
251
|
+
我们专门设计的 `TaskTool`(架构师工具)实现了:
|
|
252
|
+
- **子代理机制**:可以启动多个子代理并行处理任务
|
|
253
|
+
- **模型参数传递**:用户可以在请求中指定子代理应使用哪个模型
|
|
254
|
+
- **默认模型配置**:子代理默认使用 `task` 指针配置的模型
|
|
255
|
+
|
|
256
|
+
#### 3. **AskExpertModel 专家咨询工具**
|
|
257
|
+
我们专门设计了 `AskExpertModel` 工具:
|
|
258
|
+
- **专家模型调用**:允许在对话期间临时调用特定专家模型解决难题
|
|
259
|
+
- **模型隔离执行**:专家模型响应独立处理,不影响主对话流程
|
|
260
|
+
- **知识整合**:将专家模型见解整合到当前任务中
|
|
261
|
+
|
|
262
|
+
#### 🎯 灵活的模型切换
|
|
263
|
+
- **Tab 键快速切换**:在输入框中按 Tab 键快速切换当前对话的模型
|
|
264
|
+
- **`/model` 命令**:使用 `/model` 命令配置和管理多个模型配置文件,为不同目的设置默认模型
|
|
265
|
+
- **用户控制**:用户可以随时指定特定模型进行任务处理
|
|
266
|
+
|
|
267
|
+
#### 🔄 智能工作分配策略
|
|
268
|
+
|
|
269
|
+
**架构设计阶段**
|
|
270
|
+
- 使用 **o3 模型** 或 **GPT-5 模型** 探索系统架构并制定清晰明确的技术方案
|
|
271
|
+
- 这些模型在抽象思维和系统设计方面表现出色
|
|
272
|
+
|
|
273
|
+
**方案细化阶段**
|
|
274
|
+
- 使用 **gemini 模型** 深入探索生产环境设计细节
|
|
275
|
+
- 利用其在实际工程和平衡推理方面的深厚积累
|
|
276
|
+
|
|
277
|
+
**代码实现阶段**
|
|
278
|
+
- 使用 **Qwen Coder 模型**、**Kimi k2 模型**、**GLM-4.5 模型** 或 **Claude Sonnet 4 模型** 进行具体代码编写
|
|
279
|
+
- 这些模型在代码生成、文件编辑和工程实现方面表现强劲
|
|
280
|
+
- 支持通过子代理并行处理多个编码任务
|
|
281
|
+
|
|
282
|
+
**问题解决**
|
|
283
|
+
- 遇到复杂问题时,咨询 **o3 模型**、**Claude Opus 4.1 模型** 或 **Grok 4 模型** 等专家模型
|
|
284
|
+
- 获得深入的技术见解和创新解决方案
|
|
285
|
+
|
|
286
|
+
#### 💡 实际应用场景
|
|
287
|
+
|
|
288
|
+
```bash
|
|
289
|
+
# 示例 1:架构设计
|
|
290
|
+
"使用 o3 模型帮我设计一个高并发消息队列系统架构"
|
|
291
|
+
|
|
292
|
+
# 示例 2:多模型协作
|
|
293
|
+
"首先使用 GPT-5 模型分析这个性能问题的根本原因,然后使用 Claude Sonnet 4 模型编写优化代码"
|
|
294
|
+
|
|
295
|
+
# 示例 3:并行任务处理
|
|
296
|
+
"使用 Qwen Coder 模型作为子代理同时重构这三个模块"
|
|
297
|
+
|
|
298
|
+
# 示例 4:专家咨询
|
|
299
|
+
"这个内存泄漏问题很棘手,单独询问 Claude Opus 4.1 模型寻求解决方案"
|
|
300
|
+
|
|
301
|
+
# 示例 5:代码审查
|
|
302
|
+
"让 Kimi k2 模型审查这个 PR 的代码质量"
|
|
303
|
+
|
|
304
|
+
# 示例 6:复杂推理
|
|
305
|
+
"使用 Grok 4 模型帮我推导这个算法的时间复杂度"
|
|
306
|
+
|
|
307
|
+
# 示例 7:方案设计
|
|
308
|
+
"让 GLM-4.5 模型设计一个微服务分解方案"
|
|
309
|
+
```
|
|
310
|
+
|
|
311
|
+
### 🛠️ 关键实现机制
|
|
312
|
+
|
|
313
|
+
#### **配置系统**
|
|
314
|
+
```typescript
|
|
315
|
+
// 多模型配置支持示例
|
|
316
|
+
{
|
|
317
|
+
"modelProfiles": {
|
|
318
|
+
"o3": { "provider": "openai", "model": "o3", "apiKey": "..." },
|
|
319
|
+
"claude4": { "provider": "anthropic", "model": "claude-sonnet-4", "apiKey": "..." },
|
|
320
|
+
"qwen": { "provider": "alibaba", "model": "qwen-coder", "apiKey": "..." }
|
|
321
|
+
},
|
|
322
|
+
"modelPointers": {
|
|
323
|
+
"main": "claude4", // 主对话模型
|
|
324
|
+
"task": "qwen", // 任务执行模型
|
|
325
|
+
"reasoning": "o3", // 推理模型
|
|
326
|
+
"quick": "glm-4.5" // 快速响应模型
|
|
327
|
+
}
|
|
328
|
+
}
|
|
329
|
+
```
|
|
330
|
+
|
|
331
|
+
#### **成本跟踪系统**
|
|
332
|
+
- **使用统计**:使用 `/cost` 命令查看每个模型的令牌使用情况和成本
|
|
333
|
+
- **多模型成本比较**:实时跟踪不同模型的使用成本
|
|
334
|
+
- **历史记录**:保存每个会话的成本数据
|
|
335
|
+
|
|
336
|
+
#### **上下文管理器**
|
|
337
|
+
- **上下文继承**:切换模型时保持对话连续性
|
|
338
|
+
- **上下文窗口适应**:根据不同模型的上下文窗口大小自动调整
|
|
339
|
+
- **会话状态保持**:确保多模型协作期间的信息一致性
|
|
340
|
+
|
|
341
|
+
### 🚀 多模型协作的优势
|
|
342
|
+
|
|
343
|
+
1. **最大化效率**:每个任务由最合适的模型处理
|
|
344
|
+
2. **成本优化**:简单任务使用轻量级模型,复杂任务使用强大的模型
|
|
345
|
+
3. **并行处理**:多个模型可以同时处理不同的子任务
|
|
346
|
+
4. **灵活切换**:根据任务需求切换模型,无需重启会话
|
|
347
|
+
5. **利用优势**:结合不同模型的优势以获得最佳整体结果
|
|
348
|
+
|
|
349
|
+
### 📊 与官方实现的比较
|
|
350
|
+
|
|
351
|
+
| 功能 | OpenAGI | 官方 Claude |
|
|
352
|
+
|---------|------|-----------------|
|
|
353
|
+
| 支持的模型数量 | 无限,可配置任何模型 | 仅支持单一 Claude 模型 |
|
|
354
|
+
| 模型切换 | ✅ Tab 键快速切换 | ❌ 需要重启会话 |
|
|
355
|
+
| 并行处理 | ✅ 多个子代理并行工作 | ❌ 单线程处理 |
|
|
356
|
+
| 成本跟踪 | ✅ 多个模型分别统计 | ❌ 单一模型成本 |
|
|
357
|
+
| 任务模型配置 | ✅ 不同目的不同默认模型 | ❌ 所有任务使用相同模型 |
|
|
358
|
+
| 专家咨询 | ✅ AskExpertModel 工具 | ❌ 不支持 |
|
|
359
|
+
|
|
360
|
+
这种多模型协作能力使 OpenAGI 成为真正的 **AI 开发工作台**,而不仅仅是一个单一的 AI 助手。
|
|
361
|
+
|
|
362
|
+
## 开发
|
|
363
|
+
|
|
364
|
+
OpenAGI 使用现代工具构建,开发需要 [Bun](https://bun.sh)。
|
|
365
|
+
|
|
366
|
+
### 安装 Bun
|
|
367
|
+
|
|
368
|
+
```bash
|
|
369
|
+
# macOS/Linux
|
|
370
|
+
curl -fsSL https://bun.sh/install | bash
|
|
371
|
+
|
|
372
|
+
# Windows
|
|
373
|
+
powershell -c "irm bun.sh/install.ps1 | iex"
|
|
374
|
+
```
|
|
375
|
+
|
|
376
|
+
### 设置开发环境
|
|
377
|
+
|
|
378
|
+
```bash
|
|
379
|
+
# 克隆仓库
|
|
380
|
+
git clone https://github.com/xingshuzhice/openagi.git
|
|
381
|
+
cd openagi
|
|
382
|
+
|
|
383
|
+
# 安装依赖
|
|
384
|
+
bun install
|
|
385
|
+
|
|
386
|
+
# 以开发模式运行
|
|
387
|
+
bun run dev
|
|
388
|
+
```
|
|
389
|
+
|
|
390
|
+
### 构建
|
|
391
|
+
|
|
392
|
+
```bash
|
|
393
|
+
bun run build
|
|
394
|
+
```
|
|
395
|
+
|
|
396
|
+
### 测试
|
|
397
|
+
|
|
398
|
+
```bash
|
|
399
|
+
# 运行测试
|
|
400
|
+
bun test
|
|
401
|
+
|
|
402
|
+
# 测试 CLI
|
|
403
|
+
./cli.js --help
|
|
404
|
+
```
|
|
405
|
+
|
|
406
|
+
## 贡献
|
|
407
|
+
|
|
408
|
+
我们欢迎贡献!详情请参阅我们的[贡献指南](CONTRIBUTING.md)。
|
|
39
409
|
|
|
40
|
-
|
|
41
|
-
2. Add the directory to your PATH, or
|
|
42
|
-
3. Create a symlink: `ln -s /path/to/dist/cli.js /usr/local/bin/openagi`
|
|
410
|
+
## 许可证
|
|
43
411
|
|
|
44
|
-
|
|
412
|
+
Apache 2.0 许可证 - 详情请参阅 [LICENSE](LICENSE)。
|
|
45
413
|
|
|
46
|
-
|
|
47
|
-
- **Self-contained**: All npm dependencies bundled into cli.js
|
|
48
|
-
- **Optional dependencies**: Platform-specific binaries in node_modules/@img/
|
|
49
|
-
- **SDK included**: TypeScript definitions and ES module SDK
|
|
50
|
-
- **Vendor tools**: Binary utilities in vendor/ directory
|
|
414
|
+
## 致谢
|
|
51
415
|
|
|
52
|
-
|
|
416
|
+
- 部分代码来自 @dnakov 的 anonkode
|
|
417
|
+
- 部分 UI 学习自 gemini-cli
|
|
418
|
+
- 部分系统设计学习自 claude code
|
|
53
419
|
|
|
54
|
-
|
|
55
|
-
- **ALL** application dependencies are bundled into `cli.js`
|
|
56
|
-
- Only Node.js built-in modules are external
|
|
57
|
-
- Platform-specific optional dependencies for image processing are in node_modules/
|
|
58
|
-
- No additional `npm install` required!
|
|
420
|
+
## 支持
|
|
59
421
|
|
|
60
|
-
|
|
422
|
+
- 📚 [文档](docs/)
|
|
423
|
+
- 🐛 [报告问题](https://github.com/xingshuzhice/openagi/issues)
|
|
424
|
+
- 💬 [讨论](https://github.com/xingshuzhice/openagi/discussions)
|