Skip to content

自定义

OpenCode 高度可配置。本页面涵盖主题、快捷键、命令、代理、格式化工具等。

主题

tui.json 中设置主题:

json
{
  "$schema": "https://opencode.ai/tui.json",
  "theme": "tokyonight"
}

你也可以在 ~/.config/opencode/themes/.opencode/themes/ 中创建自定义主题。

详见主题文档

快捷键

tui.json 中自定义快捷键:

json
{
  "$schema": "https://opencode.ai/tui.json",
  "keybinds": {}
}

主要默认快捷键:

按键操作
Tab在 Build 和 Plan 模式之间切换
@模糊搜索文件引用
/打开命令菜单

详见快捷键文档

命令

斜杠命令

OpenCode 有内置斜杠命令(/init/connect/models/share/undo/redo)。你也可以创建自定义命令。

自定义命令

opencode.json 中定义可复用的命令:

jsonc
{
  "command": {
    "test": {
      "template": "运行完整的测试套件并生成覆盖率报告,显示所有失败项。\n聚焦失败的测试并建议修复方案。",
      "description": "运行测试并生成覆盖率",
      "agent": "build",
      "model": "anthropic/claude-haiku-4-5"
    },
    "component": {
      "template": "创建名为 $ARGUMENTS 的新 React 组件,支持 TypeScript。\n包含正确的类型定义和基本结构。",
      "description": "创建新组件"
    }
  }
}

也可以将命令定义为 Markdown 文件,放在:

  • ~/.config/opencode/commands/ — 全局命令
  • .opencode/commands/ — 项目特定命令

详见命令文档

格式化工具

配置代码格式化工具,在 OpenCode 修改文件后自动运行:

json
{
  "formatter": {
    "prettier": {
      "disabled": true
    },
    "custom-prettier": {
      "command": ["npx", "prettier", "--write", "$FILE"],
      "environment": {
        "NODE_ENV": "development"
      },
      "extensions": [".js", ".ts", ".jsx", ".tsx"]
    }
  }
}

详见格式化工具文档

代理

内置代理

OpenCode 附带两个主要代理:

代理描述
Build可以读取、写入和执行 — 默认模式
Plan只能读取和建议,不做修改

自定义代理

opencode.json 中定义专业代理:

jsonc
{
  "agent": {
    "code-reviewer": {
      "description": "审查代码的最佳实践和潜在问题",
      "model": "anthropic/claude-sonnet-4-5",
      "prompt": "你是一个代码审查员。关注安全性、性能和可维护性。",
      "tools": {
        "write": false,
        "edit": false
      }
    }
  }
}

或在以下位置创建代理 Markdown 文件:

  • ~/.config/opencode/agents/ — 全局代理
  • .opencode/agents/ — 项目特定代理

设置默认代理:

json
{
  "default_agent": "build"
}

详见代理文档

LSP 服务器

OpenCode 自动加载 LSP 服务器,为 LLM 提供代码智能功能。你可以配置可用的服务器。

详见 LSP 文档

插件

插件通过自定义工具、钩子和集成扩展 OpenCode。

从 npm 加载:

json
{
  "plugin": ["opencode-helicone-session", "@my-org/custom-plugin"]
}

或将插件文件放在:

  • .opencode/plugins/ — 项目特定插件
  • ~/.config/opencode/plugins/ — 全局插件

详见插件文档

Skills

Skills 是 SKILL.md 文件,提供 LLM 可以按需加载的专业知识。放在:

  • .opencode/skills/ — 项目特定 skills
  • ~/.config/opencode/skills/ — 全局 skills

详见 Skills 文档

.opencode 目录

项目根目录中的 .opencode 目录组织项目特定的自定义内容:

.opencode/
├── agents/          # 自定义代理定义
├── commands/        # 自定义命令
├── modes/           # 自定义模式
├── plugins/         # 本地插件
├── skills/          # Skill 文件
├── tools/           # 自定义工具定义
└── themes/          # 自定义主题

全局等效目录为 ~/.config/opencode/,具有相同结构。

INFO

目录名支持复数(agents/)和单数(agent/)形式,保持向后兼容。

延伸阅读

Released under the GPLv3 License.