这是Alou3项目的Rust语言重新实现版本,提供更快的运行速度和更好的性能。该项目是一个在终端运行的AI智能体,支持MCP工具集成和DeepSeek API。
- 高性能: 使用Rust语言实现,提供更快的启动速度和运行性能
- MCP工具支持: 完整的MCP (Model Context Protocol) 工具集成
- DeepSeek API: 支持DeepSeek AI模型的API调用
- 异步处理: 基于Tokio的异步运行时,支持高并发
- 内存安全: Rust的内存安全保证,避免常见的内存错误
- 跨平台: 支持Windows、macOS和Linux
- 命令行界面: 友好的CLI界面,支持交互式聊天
- Rust 1.70+
- 网络连接(用于API调用)
- DeepSeek API密钥
git clone <repository-url>
cd alou3-rustcargo build --release创建 .env 文件或设置环境变量:
# 必需
export DEEPSEEK_API_KEY=your_deepseek_api_key_here
# 可选
export DEEPSEEK_API_ENDPOINT=https://api.deepseek.com/v1
export ALOU_DEBUG=false
export ALOU_WORKSPACE_DIRS=/path/to/workspace1,/path/to/workspace2# 启动交互式聊天模式
cargo run
# 执行单个命令
cargo run -- exec "读取文件 /path/to/file.txt"
# 列出可用工具
cargo run -- tools
# 测试MCP连接
cargo run -- test
# 初始化配置
cargo run -- init# 启用调试模式
cargo run -- --debug
# 启用详细输出
cargo run -- --verbose
# 指定工作目录
cargo run -- --workdir /path/to/project
# 指定配置文件
cargo run -- --config /path/to/config.json在聊天模式下,您可以使用以下命令:
help或h- 显示帮助信息tools或t- 列出所有可用工具clear或c- 清屏exit、quit或q- 退出程序
项目使用 mcp.json 文件配置MCP服务器:
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": ["@modelcontextprotocol/server-filesystem", "/Users"],
"timeout": 30000,
"trust": true
},
"memory": {
"command": "npx",
"args": ["@modelcontextprotocol/server-memory"],
"timeout": 30000,
"trust": true
}
}
}| 变量名 | 必需 | 默认值 | 描述 |
|---|---|---|---|
DEEPSEEK_API_KEY |
是 | - | DeepSeek API密钥 |
DEEPSEEK_API_ENDPOINT |
否 | https://api.deepseek.com/v1 |
DeepSeek API端点 |
ALOU_DEBUG |
否 | false |
启用调试模式 |
ALOU_WORKSPACE_DIRS |
否 | 当前目录 | 工作区目录列表 |
alou3-rust/
├── src/
│ ├── main.rs # 主入口文件
│ ├── lib.rs # 库入口文件
│ ├── types.rs # 类型定义
│ ├── tools.rs # 工具trait和实现
│ ├── workspace_context.rs # 工作区上下文
│ ├── mcp_config.rs # MCP配置管理
│ ├── mcp_tool.rs # MCP工具实现
│ ├── mcp_client.rs # MCP客户端
│ ├── tool_registry.rs # 工具注册表
│ ├── deepseek_client.rs # DeepSeek客户端
│ └── agent.rs # 智能体实现
├── Cargo.toml # 项目配置
└── README.md # 项目说明
- 文件操作: 读取、写入、搜索文件
- 代码分析: 分析代码结构、查找问题
- 系统命令: 执行shell命令
- 网络请求: 获取网页内容、API调用
- 内存管理: 保存和检索重要信息
通过MCP协议集成的工具:
- filesystem: 文件系统操作
- memory: 内存管理
- fetch: 网络请求
- 其他: 根据配置自动发现
# 发布版本(推荐)
cargo build --release
# 启用所有优化
RUSTFLAGS="-C target-cpu=native" cargo build --release- 使用
--release标志运行 - 设置合适的超时时间
- 启用连接池
- 使用异步I/O
# 运行所有测试
cargo test
# 运行特定测试
cargo test test_name
# 运行集成测试
cargo test --test integration_tests# 运行基准测试
cargo bench
# 性能分析
cargo install cargo-flamegraph
cargo flamegraph --bin alou3-rust-
API密钥错误
错误: DeepSeek API key is required 解决: 设置 DEEPSEEK_API_KEY 环境变量 -
MCP服务器连接失败
错误: Error connecting to MCP server 'filesystem' 解决: 检查MCP服务器是否正确安装和配置 -
工具发现失败
错误: No tools found 解决: 检查mcp.json配置文件
启用调试模式获取详细日志:
cargo run -- --debug --verbose欢迎贡献代码!请遵循以下步骤:
- Fork 项目
- 创建特性分支 (
git checkout -b feature/amazing-feature) - 提交更改 (
git commit -m 'Add amazing feature') - 推送到分支 (
git push origin feature/amazing-feature) - 打开 Pull Request
本项目采用 Apache-2.0 许可证。详见 LICENSE 文件。
- 原Alou3 TypeScript项目
- Rust社区
- MCP协议规范
- DeepSeek团队
如果您遇到问题或有建议,请:
- 查看 Issues
- 创建新的Issue
- 联系维护者
注意: 这是Alou3项目的Rust重新实现版本,专注于性能和稳定性。如果您需要更多功能,请参考原TypeScript版本。