Goose 项目介绍
Goose 项目介绍
项目定位
Goose 是一个开源的通用 AI Agent,运行在用户本地机器上。它不仅能写代码,还能用于研究、写作、数据分析与任意自动化任务。
核心能力
- 三端统一架构:Electron 桌面应用(macOS / Linux / Windows)、终端 CLI、HTTP API 服务器(
goosed) - 15+ LLM 提供商:Anthropic、OpenAI、Google、Ollama、OpenRouter、Azure、Bedrock 等,支持 API Key 与 ACP 集成(Claude Code、Codex、Gemini CLI 等)
- 70+ MCP 扩展:通过 Model Context Protocol 连接文件系统、Shell、桌面自动化、记忆等
- 安全审查链:多层 Inspector(安全、权限、重复、对抗)在工具执行前拦截
- 自动上下文压缩:Token 超限时自动压缩历史对话,支持最多 2 次恢复重试
- 调度与定时任务:内置 Cron 调度器,支持定时执行 Agent 任务
- 自定义发行版:支持预配置 Provider、Extension 与品牌构建的分发方式
技术栈
| 层面 | 技术 |
|---|---|
| 核心 | Rust 2021 Edition,Rust 1.91+ |
| 异步运行时 | Tokio |
| MCP 协议 | rmcp (Rust MCP SDK) |
| CLI | clap 解析 |
| TUI | Ink (React for Terminal) |
| 桌面端 | Electron + React + TypeScript |
| 服务器 | axum HTTP 框架,SSE 流式输出 |
| 持久化 | SQLite (会话与消息存储) |
| 构建 | Cargo + Hermit + Just |
| 测试 | cargo test + YAML recipe 自测 |
架构概览
快速体验
CLI(最快方式):
curl -fsSL https://github.com/aaif-goose/goose/releases/download/stable/download_cli.sh | bash从源码构建:
git clone https://github.com/aaif-goose/goose.gitcd goosesource bin/activate-hermitcargo buildcargo run --bin goose桌面应用:
just run-ui教程导读
本教程分为两个部分:
AI 应用知识(ai/ 目录)
从 Goose 源码中抽象出的通用 AI Agent 工程知识,每个知识点都有对应的 common 通用教程:
| 章节 | 知识点 | 覆盖类型 |
|---|---|---|
| 01 | Agent 核心循环与流式架构 | 补充 [[agent-design/01-overview]], [[streaming/01-streaming-architecture]] |
| 02 | 多 Provider 适配与声明式注册 | 补充 [[model-provider/01-overview]], [[model-provider/04-declarative-provider-registry]] |
| 03 | MCP 扩展管理与命名空间隔离 | 补充 [[mcp/01-overview]], [[mcp/02-multi-server-mcp]] |
| 04 | 工具调用安全审查链 | 补充 [[sandbox/01-overview]] |
| 05 | 上下文压缩与自动恢复 | 引用 [[context-management/01-overview]] |
| 06 | 会话管理与持久化 | 引用 [[memory-system/01-overview]] |
| 07 | ThinkFilter 流式处理 | 引用 [[streaming/01-streaming-architecture]] |
| 08 | ACP 协议与 JSON-RPC 路由 | 引用 [[mcp/01-overview]] |
编程核心实践(dev/ 目录)
聚焦 Goose 的工程实践和架构决策:
- Rust 异步架构设计
- ACP 自定义协议实现
- 三端统一(Desktop / CLI / Server)的架构
- 声明式 JSON-RPC 路由宏
- 插件式 Inspector 安全链
- 自定义发行版构建系统