Skip to content

配置参考:完整的配置文件 Schema 说明 ​

本页提供 oh-my-opencode 配置文件的完整字段定义和说明。

配置文件位置

  • 项目级:.opencode/oh-my-opencode.json
  • 用户级(macOS/Linux):~/.config/opencode/oh-my-opencode.json
  • 用户级(Windows):%APPDATA%\opencode\oh-my-opencode.json

项目级配置优先于用户级配置。

启用自动补全

在配置文件顶部添加 $schema 字段可获得 IDE 自动补全:

json
{
  "$schema": "https://raw.githubusercontent.com/code-yeongyu/oh-my-opencode/master/assets/oh-my-opencode.schema.json"
}

根级字段 ​

字段类型必填默认值描述
$schemastring否-JSON Schema 链接,用于自动补全
disabled_mcpsstring[]否[]禁用的 MCP 列表
disabled_agentsstring[]否[]禁用的代理列表
disabled_skillsstring[]否[]禁用的技能列表
disabled_hooksstring[]否[]禁用的钩子列表
disabled_commandsstring[]否[]禁用的命令列表
agentsobject否-代理覆盖配置
categoriesobject否-Category 自定义配置
claude_codeobject否-Claude Code 兼容性配置
sisyphus_agentobject否-Sisyphus 代理配置
comment_checkerobject否-注释检查器配置
experimentalobject否-实验性功能配置
auto_updateboolean否true自动更新检查
skillsobject|array否-Skills 配置
ralph_loopobject否-Ralph Loop 配置
background_taskobject否-后台任务并发配置
notificationobject否-通知配置
git_masterobject否-Git Master 技能配置
browser_automation_engineobject否-浏览器自动化引擎配置
tmuxobject否-Tmux 会话管理配置

agents - 代理配置 ​

覆盖内置代理的设置。每个代理支持以下字段:

通用代理字段 ​

字段类型必填描述
modelstring否覆盖代理使用的模型(已弃用,推荐使用 category)
variantstring否模型变体
categorystring否从 Category 继承模型和配置
skillsstring[]否注入到代理提示中的技能列表
temperaturenumber否0-2,控制随机性
top_pnumber否0-1,核采样参数
promptstring否完全覆盖默认系统提示
prompt_appendstring否追加到默认提示后面
toolsobject否工具权限覆盖({toolName: boolean})
disableboolean否禁用该代理
descriptionstring否代理描述
modeenum否subagent / primary / all
colorstring否Hex 颜色(如 #FF0000)
permissionobject否代理权限限制

permission - 代理权限 ​

字段类型必填值描述
editstring否ask/allow/deny文件编辑权限
bashstring/object否ask/allow/deny 或 per-commandBash 执行权限
webfetchstring否ask/allow/denyWeb 请求权限
doom_loopstring否ask/allow/deny无限循环检测覆盖权限
external_directorystring否ask/allow/deny访问外部目录权限

可配置的代理列表 ​

代理名说明
sisyphus主编排器代理
prometheus战略规划师代理
oracle战略顾问代理
librarian多仓库研究专家代理
explore快速代码库探索专家代理
multimodal-looker媒体分析专家代理
metis前规划分析代理
momus规划审查者代理
atlas主编排器代理
sisyphus-junior类别生成的任务执行器代理

配置示例 ​

jsonc
{
  "agents": {
    "sisyphus": {
      "model": "anthropic/claude-opus-4-5",
      "temperature": 0.1,
      "skills": ["git-master"]
    },
    "oracle": {
      "model": "openai/gpt-5.2",
      "permission": {
        "edit": "deny",
        "bash": "ask"
      }
    },
    "multimodal-looker": {
      "disable": true
    }
  }
}

categories - Category 配置 ​

定义 Categories(模型抽象),用于动态代理组合。

Category 字段 ​

字段类型必填描述
descriptionstring否Category 的目的描述(显示在 delegate_task 提示中)
modelstring否覆盖 Category 使用的模型
variantstring否模型变体
temperaturenumber否0-2,温度
top_pnumber否0-1,核采样
maxTokensnumber否最大 Token 数
thinkingobject否Thinking 配置 {type, budgetTokens}
reasoningEffortenum否low / medium / high / xhigh
textVerbosityenum否low / medium / high
toolsobject否工具权限
prompt_appendstring否追加提示
is_unstable_agentboolean否标记为不稳定代理(强制后台模式)

thinking 配置 ​

字段类型必填值描述
typestring是enabled/disabled是否启用 Thinking
budgetTokensnumber否-Thinking budget token 数

内置 Categories ​

Category默认模型Temperature描述
visual-engineeringgoogle/gemini-3-pro0.7前端、UI/UX、设计任务
ultrabrainopenai/gpt-5.2-codex0.1高智商推理任务
artistrygoogle/gemini-3-pro0.7创意和艺术任务
quickanthropic/claude-haiku-4-50.1快速、低成本任务
unspecified-lowanthropic/claude-sonnet-4-50.1未指定类型的中等任务
unspecified-highanthropic/claude-opus-4-50.1未指定类型的高质量任务
writinggoogle/gemini-3-flash0.1文档和写作任务

配置示例 ​

jsonc
{
  "categories": {
    "visual-engineering": {
      "model": "google/gemini-3-pro",
      "temperature": 0.7,
      "prompt_append": "Use shadcn/ui components and Tailwind CSS."
    },
    "data-science": {
      "model": "anthropic/claude-sonnet-4-5",
      "temperature": 0.2,
      "description": "Data analysis and ML tasks"
    }
  }
}

claude_code - Claude Code 兼容配置 ​

控制 Claude Code 兼容性层的各个功能。

字段 ​

字段类型必填默认值描述
mcpboolean否-是否加载 .mcp.json 文件
commandsboolean否-是否加载 Commands
skillsboolean否-是否加载 Skills
agentsboolean否-是否加载 Agents(预留)
hooksboolean否-是否加载 settings.json hooks
pluginsboolean否-是否加载 Marketplace 插件
plugins_overrideobject否-禁用特定插件({pluginName: boolean})

配置示例 ​

jsonc
{
  "claude_code": {
    "mcp": true,
    "commands": true,
    "skills": true,
    "hooks": false,
    "plugins": true,
    "plugins_override": {
      "some-plugin": false
    }
  }
}

sisyphus_agent - Sisyphus 代理配置 ​

控制 Sisyphus 编排系统的行为。

字段 ​

字段类型必填默认值描述
disabledboolean否false禁用 Sisyphus 编排系统
default_builder_enabledboolean否false启用 OpenCode-Builder 代理
planner_enabledboolean否true启用 Prometheus(Planner)代理
replace_planboolean否true将默认 plan 代理降级为 subagent

配置示例 ​

jsonc
{
  "sisyphus_agent": {
    "disabled": false,
    "default_builder_enabled": false,
    "planner_enabled": true,
    "replace_plan": true
  }
}

background_task - 后台任务配置 ​

控制后台代理管理系统的并发行为。

字段 ​

字段类型必填默认值描述
defaultConcurrencynumber否-默认最大并发数
providerConcurrencyobject否-Provider 级并发限制({providerName: number})
modelConcurrencyobject否-Model 级并发限制({modelName: number})
staleTimeoutMsnumber否180000超时时间(毫秒),最小 60000

优先级顺序 ​

modelConcurrency > providerConcurrency > defaultConcurrency

配置示例 ​

jsonc
{
  "background_task": {
    "defaultConcurrency": 5,
    "providerConcurrency": {
      "anthropic": 3,
      "openai": 5,
      "google": 10
    },
    "modelConcurrency": {
      "anthropic/claude-opus-4-5": 2,
      "google/gemini-3-flash": 10
    },
    "staleTimeoutMs": 180000
  }
}

git_master - Git Master 技能配置 ​

控制 Git Master 技能的行为。

字段 ​

字段类型必填默认值描述
commit_footerboolean否true在提交消息中添加 "Ultraworked with Sisyphus" footer
include_co_authored_byboolean否true在提交消息中添加 "Co-authored-by: Sisyphus" trailer

配置示例 ​

jsonc
{
  "git_master": {
    "commit_footer": true,
    "include_co_authored_by": true
  }
}

browser_automation_engine - 浏览器自动化配置 ​

选择浏览器自动化提供程序。

字段 ​

字段类型必填默认值描述
providerenum否playwright浏览器自动化提供程序

provider 可选值 ​

值描述安装要求
playwright使用 Playwright MCP 服务器自动安装
---------

配置示例 ​

jsonc
{
  "browser_automation_engine": {
    "provider": "playwright"
  }
}

tmux - Tmux 会话配置 ​

控制 Tmux 会话管理行为。

字段 ​

字段类型必填默认值描述
enabledboolean否false是否启用 Tmux 会话管理
layoutenum否main-verticalTmux 布局
main_pane_sizenumber否60主窗格大小(20-80)
main_pane_min_widthnumber否120主窗格最小宽度
agent_pane_min_widthnumber否40代理窗格最小宽度

layout 可选值 ​

值描述
main-horizontal主窗格在顶部,代理窗格在底部堆叠
main-vertical主窗格在左侧,代理窗格在右侧堆叠(默认)
tiled所有窗格相同大小的网格
even-horizontal所有窗格水平排列
even-vertical所有窗格垂直堆叠

配置示例 ​

jsonc
{
  "tmux": {
    "enabled": false,
    "layout": "main-vertical",
    "main_pane_size": 60,
    "main_pane_min_width": 120,
    "agent_pane_min_width": 40
  }
}

ralph_loop - Ralph Loop 配置 ​

控制 Ralph Loop 循环工作流的行为。

字段 ​

字段类型必填默认值描述
enabledboolean否false是否启用 Ralph Loop 功能
default_max_iterationsnumber否100默认最大迭代次数(1-1000)
state_dirstring否-自定义状态文件目录(相对于项目根目录)

配置示例 ​

jsonc
{
  "ralph_loop": {
    "enabled": false,
    "default_max_iterations": 100,
    "state_dir": ".opencode/"
  }
}

notification - 通知配置 ​

控制系统通知行为。

字段 ​

字段类型必填默认值描述
force_enableboolean否false强制启用 session-notification,即使检测到外部通知插件

配置示例 ​

jsonc
{
  "notification": {
    "force_enable": false
  }
}

comment_checker - 注释检查器配置 ​

控制注释检查器行为。

字段 ​

字段类型必填默认值描述
custom_promptstring否-自定义提示,替换默认警告消息。使用 占位符表示检测到的注释 XML

配置示例 ​

jsonc
{
  "comment_checker": {
    "custom_prompt": "Please review these redundant comments: {{comments}}"
  }
}

experimental - 实验性功能配置 ​

控制实验性功能的启用。

字段 ​

字段类型必填默认值描述
aggressive_truncationboolean否-启用更激进的截断行为
auto_resumeboolean否-启用自动恢复(从思考块错误或思考禁用违规中恢复)
truncate_all_tool_outputsboolean否false截断所有工具输出,而不仅仅是白名单工具
dynamic_context_pruningobject否-动态上下文修剪配置

dynamic_context_pruning 配置 ​

字段类型必填默认值描述
enabledboolean否false启用动态上下文修剪
notificationenum否detailed通知级别:off / minimal / detailed
turn_protectionobject否-Turn 保护配置
protected_toolsstring[]否-永不修剪的工具列表
strategiesobject否-修剪策略配置

turn_protection 配置 ​

字段类型必填默认值描述
enabledboolean否true启用 turn 保护
turnsnumber否3保护最近 N 轮的工具输出(1-10)

strategies 配置 ​

字段类型必填默认值描述
deduplicationobject否-去重策略配置
supersede_writesobject否-写入覆盖策略配置
purge_errorsobject否-错误清理策略配置

deduplication 配置 ​

字段类型必填默认值描述
enabledboolean否true移除重复的工具调用(相同工具 + 相同参数)

supersede_writes 配置 ​

字段类型必填默认值描述
enabledboolean否true在后续读取时修剪写入输入
aggressiveboolean否false激进模式:如果 ANY 后续读取则修剪 ANY 写入

purge_errors 配置 ​

字段类型必填默认值描述
enabledboolean否true在 N 轮后修剪错误的工具输入
turnsnumber否5修剪错误工具输入的轮数(1-20)

配置示例 ​

jsonc
{
  "experimental": {
    "aggressive_truncation": true,
    "auto_resume": true,
    "truncate_all_tool_outputs": false,
    "dynamic_context_pruning": {
      "enabled": false,
      "notification": "detailed",
      "turn_protection": {
        "enabled": true,
        "turns": 3
      },
      "protected_tools": [
        "task",
        "todowrite",
        "todoread",
        "lsp_rename",
        "session_read",
        "session_write",
        "session_search"
      ],
      "strategies": {
        "deduplication": {
          "enabled": true
        },
        "supersede_writes": {
          "enabled": true,
          "aggressive": false
        },
        "purge_errors": {
          "enabled": true,
          "turns": 5
        }
      }
    }
  }
}

skills - Skills 配置 ​

配置 Skills(专业技能)的加载和行为。

配置格式 ​

Skills 支持两种格式:

格式 1:简单数组

jsonc
{
  "skills": ["skill1", "skill2", "skill3"]
}

格式 2:对象配置

jsonc
{
  "skills": {
    "sources": [
      "path/to/skills",
      {
        "path": "another/path",
        "recursive": true,
        "glob": "*.md"
      }
    ],
    "enable": ["skill1", "skill2"],
    "disable": ["skill3"]
  }
}

Skill 定义字段 ​

字段类型必填描述
descriptionstring否Skill 描述
templatestring否Skill 模板
fromstring否来源
modelstring否使用的模型
agentstring否使用的代理
subtaskboolean否是否为子任务
argument-hintstring否参数提示
licensestring否许可证
compatibilitystring否兼容性
metadataobject否元数据
allowed-toolsstring[]否允许的工具列表
disableboolean否禁用该 Skill

内置 Skills ​

Skill描述
playwright浏览器自动化(默认)
agent-browser浏览器自动化(Vercel CLI)
frontend-ui-ux前端 UI/UX 设计
git-masterGit 专家

禁用列表 ​

以下字段用于禁用特定功能模块。

disabled_mcps - 禁用的 MCP 列表 ​

jsonc
{
  "disabled_mcps": ["websearch", "context7", "grep_app"]
}

disabled_agents - 禁用的代理列表 ​

jsonc
{
  "disabled_agents": ["oracle", "multimodal-looker"]
}

disabled_skills - 禁用的技能列表 ​

jsonc
{
  "disabled_skills": ["playwright"]
}

disabled_hooks - 禁用的钩子列表 ​

jsonc
{
  "disabled_hooks": ["comment-checker", "agent-usage-reminder"]
}

disabled_commands - 禁用的命令列表 ​

jsonc
{
  "disabled_commands": ["init-deep", "start-work"]
}

附录:源码参考 ​

点击展开查看源码位置

更新时间:2026-01-26

功能文件路径行号
配置 Schema 定义src/config/schema.ts1-378
JSON Schemaassets/oh-my-opencode.schema.json1-51200
配置文档docs/configurations.md1-595

关键类型:

  • OhMyOpenCodeConfig:主配置类型
  • AgentOverrideConfig:代理覆盖配置类型
  • CategoryConfig:Category 配置类型
  • BackgroundTaskConfig:后台任务配置类型
  • PermissionValue:权限值类型(ask/allow/deny)

关键枚举:

  • BuiltinAgentNameSchema:内置代理名称枚举
  • BuiltinSkillNameSchema:内置技能名称枚举
  • BuiltinCategoryNameSchema:内置 Category 名称枚举
  • HookNameSchema:钩子名称枚举
  • BrowserAutomationProviderSchema:浏览器自动化提供程序枚举

下一课预告 ​

下一课我们学习 内置 MCP 服务器。

你会学到:

  • 3 个内置 MCP 服务器的功能和使用方法
  • Exa Websearch、Context7、grep.app 的配置和最佳实践
  • 如何使用 MCP 搜索文档和代码