Files
compose-anything/builds/goose/README.zh.md
2026-01-02 22:06:24 +08:00

4.8 KiB
Raw Permalink Blame History

goose

English Documentation

goose 是由 Block 公司开发的 AI 驱动的开发者助手。它通过自然语言交互帮助开发者完成编码任务,提供智能代码生成、调试协助和项目导航功能。

功能特性

  • AI 驱动开发:利用先进的语言模型提供编程协助
  • 多 AI 提供商支持:支持 OpenAI、Anthropic 和 Google AI
  • 交互式 CLI:通过直观的命令行界面与 goose 交互
  • 项目理解:分析和理解您的代码库上下文
  • 代码生成:生成代码片段和实现
  • 调试帮助:协助故障排查和错误解决

前置要求

  • 已安装 Docker 和 Docker Compose
  • 来自受支持的 AI 提供商之一的 API 密钥:
    • OpenAI API 密钥(用于 GPT 模型)
    • Anthropic API 密钥(用于 Claude 模型)
    • Google API 密钥(用于 Gemini 模型)

快速开始

  1. 复制示例环境文件:

    cp .env.example .env
    
  2. 编辑 .env 并配置您的 API 凭据:

    # 使用 OpenAI
    OPENAI_API_KEY=your_openai_api_key_here
    GOOSE_PROVIDER=openai
    GOOSE_MODEL=gpt-4
    
    # 或使用 Anthropic
    ANTHROPIC_API_KEY=your_anthropic_api_key_here
    GOOSE_PROVIDER=anthropic
    GOOSE_MODEL=claude-3-sonnet
    
    # 或使用 Google
    GOOGLE_API_KEY=your_google_api_key_here
    GOOSE_PROVIDER=google
    GOOSE_MODEL=gemini-pro
    
  3. 构建 Docker 镜像:

    docker compose build
    
  4. 运行 goose

    docker compose run --rm goose
    

使用示例

交互式会话

启动与 goose 的交互式会话:

docker compose run --rm goose session start

执行任务

运行特定任务或查询:

docker compose run --rm goose run "解释 app.py 中的主函数"

获取帮助

查看可用命令:

docker compose run --rm goose --help

配置说明

环境变量

变量 说明 默认值
GOOSE_VERSION goose Docker 镜像版本 1.18.0
TZ 容器时区 UTC
GOOSE_PROVIDER AI 提供商openai、anthropic、google openai
GOOSE_MODEL 使用的 AI 模型 gpt-4
OPENAI_API_KEY OpenAI API 密钥 -
OPENAI_API_BASE 自定义 OpenAI API 基础 URL -
ANTHROPIC_API_KEY Anthropic API 密钥 -
GOOGLE_API_KEY Google API 密钥 -
GOOSE_CPU_LIMIT CPU 限制 2.00
GOOSE_MEMORY_LIMIT 内存限制 2G

使用您的项目

挂载您的项目目录以使用您的代码:

docker compose run --rm -v $(pwd):/workspace goose

或将其添加到 docker-compose.yaml 的 volumes 部分:

volumes:
  - ./your-project:/workspace
  - goose_config:/home/goose/.config/goose

持久化配置

配置和会话数据存储在命名卷中:

  • goose_config:用户配置和偏好设置
  • goose_workspace:工作区文件和项目数据

重置配置:

docker compose down -v

资源限制

默认资源分配:

  • CPU 限制2.00 核心
  • CPU 预留0.50 核心
  • 内存限制2G
  • 内存预留512M

根据您的系统能力在 .env 中调整这些值。

安全注意事项

  1. API 密钥:切勿将包含 API 密钥的 .env 文件提交到版本控制系统
  2. 工作区访问goose 可以访问挂载的工作区目录中的文件
  3. 网络:默认情况下容器不暴露端口
  4. 用户权限:以非 root 用户UID 1000运行以增强安全性

支持的 AI 模型

OpenAI

  • gpt-4(推荐)
  • gpt-4-turbo
  • gpt-3.5-turbo

Anthropic

  • claude-3-opus
  • claude-3-sonnet(推荐)
  • claude-3-haiku

Google

  • gemini-pro

故障排查

API 认证错误

确保您的 API 密钥在 .env 中正确设置,并与您选择的提供商匹配。

内存不足

如果遇到内存问题,请在 .env 中增加 GOOSE_MEMORY_LIMIT

构建失败

初始构建可能需要 15-30 分钟,因为它从源代码编译 goose。请确保您有稳定的互联网连接。

参考资料

许可证

goose 在 Apache-2.0 许可证下发布。详情请参阅官方仓库

此 Docker Compose 配置按原样提供以方便使用,并遵循项目的许可条款。