跳转到主内容

OpenCode 安装与使用

OpenCode 是一个具备代理能力的编码工具。该工具可作为终端应用、桌面应用和 IDE 插件使用。

AI-School 建议 OpenCode 尤其适用于具有丰富编程经验的教师、管理员和学生。OpenCode 可以比 Aider 更独立地工作,因此能够更快地执行大量修改。

更多信息请参阅 OpenCode 官网OpenCode 官方文档

何时选择 OpenCode?

当用户具备以下条件时选择 OpenCode:

  • 具备终端、代码编辑器和 git 的经验
  • 理解本地文件如何被修改
  • 能在使用前检查修改
  • 想要实现更复杂的编程任务

对于带领初学者进行分组编程的课堂教学,通常更适合使用 Aider。

安装

按照 OpenCode 文档 的最简单安装方法为:

curl -fsSL https://opencode.ai/install | bash

你也可以通过 Node.js 安装 OpenCode:

npm install -g opencode-ai

或在 macOS 与 Linux 上使用 Homebrew:

brew install anomalyco/tap/opencode

连接到 Coderen

OpenCode 支持 自定义的 OpenAI 兼容提供者。在项目目录中创建一个文件 opencode.json

在其中使用 Coderen 端点和允许的模型:

{
"$schema": "https://opencode.ai/config.json",
"provider": {
"ai-school-coderen": {
"npm": "@ai-sdk/openai-compatible",
"name": "AI-School Coderen",
"options": {
"baseURL": "https://europe-west1-ai-school-pro.cloudfunctions.net/coderenOpenAiCompatibleApi/v1",
"apiKey": "{env:AI_SCHOOL_CODEREN_API_KEY}"
},
"models": {
"gpt-5.6-luna": {
"name": "GPT-5.6 Luna"
},
"gpt-5.6-terra": {
"name": "GPT-5.6 Terra"
},
"gpt-5.6-sol": {
"name": "GPT-5.6 Sol"
}
}
}
},
"model": "ai-school-coderen/gpt-5.6-luna",
"small_model": "ai-school-coderen/gpt-5.6-luna"
}

之后将 API 密钥设为环境变量。

你也可以在项目目录中使用一个 .env 文件:

AI_SCHOOL_CODEREN_API_KEY=ais.你的-api密钥

打开一个新终端后,检查 OpenCode 是否能够读取该变量。如果 OpenCode 未发送密钥,AI-School 将返回错误信息,指示需要 Authorization header 携带 Bearer token。

macOS 与 Linux

export AI_SCHOOL_CODEREN_API_KEY="ais.你的-api密钥"

Windows

setx AI_SCHOOL_CODEREN_API_KEY "ais.你的-api密钥"

之后再打开一个新终端。

启动 OpenCode

进入项目目录:

cd 路径/到/你的/项目

启动 OpenCode:

opencode

在 OpenCode 中使用模型选择来选择 AI-School Coderen 模型(如果尚未自动选择)。

解决问题

Authorization header with Bearer token is required

这条信息通常意味着 OpenCode 未发送 API 密钥。请检查:

  • AI_SCHOOL_CODEREN_API_KEY 是否正是这个名称
  • 值是否以 ais. 开头
  • 是否在执行 setx 之后打开了新的终端
  • 项目目录中是否存在启动 OpenCode 的 .env 文件

Unknown parameter

某些工具会额外发送提供者特定参数。如果收到如 “Unknown parameter” 的提示,请从 OpenCode 配置中移除此设置,或使用更简单的提供者配置。Coderen 端点期望的是符合 OpenAI 的聊天请求,包含模型、消息和常用的基础设置。

使用 OpenCode 的安全实践

由于 OpenCode 具备代理能力,检查修改内容非常重要。

推荐做法:

  1. 在 git 仓库中工作。
  2. 从小任务开始。
  3. 在使用代码前检查差异。
  4. 修改后测试应用程序。
  5. 只提交你能够理解的修改。

对于经验不足的学生,建议在教师的带领下先演示使用 OpenCode。

WhatsApp