2026 年 8 月 5 日,GitHub Trending 上有个名字很有意思的项目冲到了前排——goose(一只鹅),48,118 stars,单日涨了 699 颗。它的描述只有一句话:your native open source AI agent — desktop app, CLI, and API。
它值得关注的地方不只是涨星速度,而是它刚刚搬进了 Linux 基金会,成立了专门的 Agentic AI Foundation(AAIF)。这意味着 goose 从 Block(Square 母公司)的内部工具,变成了一个不属于任何一家商业公司、有中立治理的开放项目。在「每家大厂都想把你锁进自己 Agent 生态」的 2026 年,这是个稀缺属性。
先搞懂:goose 和 Claude Code、Cursor 有什么不同?
很多人第一反应是「又一个 AI 编程工具」。但 goose 的定位其实更宽——它是通用 Agent,代码只是它能干的活之一,研究、写作、自动化、数据分析都在射程内。核心差异看这张表:
| 对比维度 | goose | 典型闭源 Agent |
|---|---|---|
| 治理归属 | Linux 基金会 AAIF,中立 | 单一厂商 |
| 模型选择 | 15+ 供应商,可换可自建 | 通常绑定自家模型 |
| 运行位置 | 完全本地,数据不出机器 | 多为云端 |
| 入口形态 | 桌面 App + CLI + 嵌入式 API | 多为单一形态 |
| 计费 | 用自己的 Key 按量付费,无月费 | 订阅制 |
| 扩展 | 70+ MCP 扩展,可自写 | 官方插件市场 |
技术栈上,goose 核心用 Rust 写成,UI 层是 TypeScript(React),保证了跨平台一致性和启动速度。
Step 1:安装 goose(桌面版或命令行版)
桌面版适合可视化操作,CLI 适合塞进脚本和 CI。两者共用同一份配置,装哪个都行。
【桌面版】
访问 goose-docs.ai 的安装页,下载对应平台的包:
· macOS → Silicon / Intel 两个 zip,解压直接运行
· Windows → zip 解压后运行可执行文件
· Linux → DEB(Ubuntu/Debian)/ RPM(RHEL/Fedora)/ Flatpak
Debian 系示例:
sudo dpkg -i goose_*.deb
【命令行版】macOS / Linux 一条命令:
curl -fsSL https://github.com/block/goose/releases/download/stable/download_cli.sh | bash
验证安装:
goose --version
Step 2:配置模型供应商
goose 不自带模型,第一次运行要告诉它「用谁家的脑子」。执行配置命令后会进入交互式菜单:
goose configure
菜单会依次问你:
1. Configure Providers(配置供应商)
2. 从列表里选一家:
Anthropic / OpenAI / Google / Ollama /
OpenRouter / Azure / Bedrock / ...(15+ 家)
3. 粘贴 API Key
4. 选择具体模型
之后想换供应商:
goose configure --provider
Step 3:跑通你的第一个会话
goose session
进入交互界面后,直接用自然语言连续下指令:
> 帮我写一个读取 CSV 并输出统计摘要的 Python 脚本
> 给它加上 argparse,让文件路径能从命令行传入
> 执行看看,用 sample.csv 测试
goose 会自动规划 → 写文件 → 执行 → 把结果回报给你。
常用命令:
goose session # 启动交互式会话
goose run # 直接运行一个 Recipe
goose configure # 重新配置
它是真的会动手改你的文件、执行你的命令的。第一次用建议在一个空目录或测试仓库里跑,先建立信任感,再放到主力项目上。goose 有审批机制,涉及危险操作时会先问你,别一路无脑回车。
Step 4:全本地方案——接 Ollama,数据一点不出门
这是 goose 最被低估的能力:它能和 Ollama 无缝集成,让整条链路完全本地化,代码和数据一个字节都不上传云端。
# 1. 安装 Ollama
curl -fsSL https://ollama.com/install.sh | sh
# 2. 拉一个支持工具调用的模型(关键!)
ollama pull qwen2.5:7b-instruct
# 3. 启动服务,把上下文开大一点
OLLAMA_CONTEXT_LENGTH=32768 ollama serve
# 4. 让 goose 指向本地
export GOOSE_PROVIDER=ollama
export GOOSE_MODEL=qwen2.5:7b-instruct
export OLLAMA_HOST=http://localhost:11434
goose
本地模型一定要选支持 tool calling 的。Agent 的命根子是工具调用,不支持的模型跑起来会各种抽风。推荐 Qwen2.5、Llama3.2、Mistral-Nemo。实在要用不支持的模型,goose 提供 Tool Shim 技术(通过 Jinja 模板补齐能力),但效果不如原生支持。
Step 5:装 MCP 扩展,给 goose 加手加脚
goose 是 MCP(Model Context Protocol)生态集成最深的项目之一,官方与社区已有 70+ 文档化扩展:文件系统、数据库查询、API 调用、Git 操作等。自己写一个也很简单:
# my_tools_server.py —— 一个最小的 Python MCP 服务器
from mcp.server.fastmcp import FastMCP
mcp = FastMCP("my-tools")
@mcp.tool()
def query_database(sql: str) -> dict:
"""执行 SQL 查询"""
return {"result": [...]}
if __name__ == "__main__":
mcp.run()
写完注册进去即可:
goose extension add ./my_tools_server.py
Step 6:用 Recipe 把重复任务固化下来
如果某个任务你每周都要跑一遍(比如「拉最新数据 → 清洗 → 出周报」),别每次都重新打一遍提示词。goose 的 Recipe 就是把这套流程存成可复用的配方:
# 运行一个 Recipe
goose run --recipe weekly-report.yaml
# 仓库里的 workflow_recipes/ 目录有官方示例可以抄
# Recipe 里通常包含:
# - 任务目标描述
# - 需要挂载的扩展
# - 参数占位符
# - 期望的产出格式
Step 7:接进你的 IDE(ACP 协议)
goose 支持 ACP(Agent Client Protocol)——一个与编程 Agent 通信的标准。这带来两个方向的能力:
方向一:goose 作为 ACP server 被 IDE 连接
Zed / JetBrains / VS Code → 连上 goose
在编辑器里直接调用 goose 的能力
方向二:goose 把别的 Agent 当成 provider
Claude Code、Codex 等 ACP agent
→ 挂到 goose 底下作为执行后端
踩坑与选型建议
| 现象 / 疑问 | 说明 & 解决 |
|---|---|
| 本地模型工具调用一直失败 | 换支持 tool calling 的模型,或启用 Tool Shim |
| 上下文老是不够用 | Ollama 启动时设 OLLAMA_CONTEXT_LENGTH=32768 |
| 不想每次输 API Key | 用现有 ChatGPT 订阅登录,或写进 goose configure |
| 担心它乱改文件 | 先在测试仓库跑,善用审批机制与工作区隔离 |
| 该选 goose 还是闭源工具 | 看重数据不出域 / 不锁厂商 / 无月费 → goose |
一句话总结:goose 反的是「API 即服务」那条路——不做云平台、不收订阅费,把 Agent 能力完全塞回你自己的机器。对数据敏感、想长期避免供应商锁定的团队,这是 2026 年最值得纳入评估的开源选项之一。