常用运行时选项
配置模型请求、图片、快照、压缩、更新和文件监听,并识别示例与默认值。
This page has not been translated into English yet. The original Chinese version is shown below.
opencode.json 配置运行时行为。主题、键位和界面提醒放入 tui.json,不要混在同一文件里。
模型请求与轻量任务
provider 配置提供商,model 选择主要模型,small_model 用于标题生成等轻量工作。未指定 small_model 时,会尝试同提供商可用的较便宜模型,找不到则回退主模型。
提供商 options 支持以下请求控制:
| 键 | 行为 | 默认 |
|---|---|---|
timeout | 请求超时,毫秒 | 300000 |
headerTimeout | 等待响应头,收到头后计时结束,不限制后续流式正文 | 300000 |
chunkTimeout | 流式响应相邻 chunk 的等待时间,超时中止 | 300000 |
setCacheKey | 确保指定提供商设置 cache key | 官方此处未明确默认 |
三个超时键均可用 false 关闭。示例中的 600000 或 30000 是自定义值,不是默认。模型选择与 variants 见模型设置。
图片附件限制
默认超出 2000 × 2000 像素或 5242880 base64 字节的图片会被调整。使用 attachment.image 配置 auto_resize、max_width、max_height 和 max_base64_bytes。
将 auto_resize 设为 false 后,过大图片会被拒绝而不是缩放。max_base64_bytes 衡量编码后的 payload,不是原始文件大小。缩放后仍超限时,工具结果图片会被省略,用户输入图片则产生大小错误;两者处理不同。
快照与上下文压缩
snapshot 默认启用,用于记录文件改动和会话内回滚。大型仓库或大量 submodules 可能增加索引时间及磁盘使用;设置 snapshot: false 后,无法通过 UI 回滚代理改动。
compaction 包括:
auto:上下文满时自动压缩,默认true。prune:删除旧工具输出以节省 token,默认false。reserved:为压缩留出的 token 缓冲;官方示例为10000,未将其声明为默认。
压缩上下文与撤销文件修改不是同一操作,不能相互替代。
更新、共享与文件监听
autoupdate 可设为 false 关闭启动时自动下载更新,或设为 "notify" 只通知。官方注明通知模式不适用于通过 Homebrew 等包管理器安装的情况。
share 默认 "manual",只有手动共享才创建共享内容;"auto" 自动共享新会话,"disabled" 禁止共享。
watcher.ignore 接受 glob 数组,用于忽略噪声目录的文件监听。它不是权限禁止规则,不应当作阻止模型读取文件的控制。
Shell、服务与可选组件
shell 可填写绝对路径或简短名称,例如 pwsh;省略时按操作系统发现合适默认,兼容 shell 也用于代理工具调用。
server 控制 serve 和 web 的端口、主机、mDNS 与 CORS。启用 mDNS 且没有指定 hostname 时,默认监听 0.0.0.0;mdnsDomain 默认 opencode.local,CORS 条目必须是完整 origin。部署服务仍需核对认证,不能把发现服务与访问控制混为一谈。
formatter 和 lsp 省略时均保持禁用,设为 true 可开启内置能力,使用对象可配置覆盖。旧 Config 页对权限的“默认全部允许”概述存在例外,以权限专门页的目录外访问、doom loop 和 .env 规则为准。