变量与文件引用
在配置中引用环境变量或外部文件,并区分自定义配置路径与目录。
配置支持环境变量与文件内容替换,可以复用提示或把凭据放在独立位置。替换发生后的值仍需符合对应配置字段的要求。
环境变量替换
使用 {env:VARIABLE_NAME}:
{
"$schema": "https://opencode.ai/config.json",
"model": "{env:OPENCODE_MODEL}",
"provider": {
"anthropic": {
"options": {
"apiKey": "{env:ANTHROPIC_API_KEY}"
}
}
}
}变量未设置时,官方规定替换成空字符串,不会保留原文本。上例的 OPENCODE_MODEL 是被引用的环境变量名称;不能由这个示例推断只设置同名变量就一定会自动选择模型,配置中的引用仍是这里的关键。
文件内容替换
使用 {file:path/to/file},例如为 Agent 的 prompt 引用 {file:./prompts/review.txt},或为 API Key 引用 {file:~/.secrets/openai-key}。
相对路径以配置文件所在目录为基准;也支持以 / 或 ~ 开头的绝对路径。文件替换加入的是内容,不是文件名。共享配置前确认引用目标在使用环境中存在,以及使用者有读取权限。
instructions 中的路径列表与把整个字段写成 {file:...} 是不同用法,前者由规则加载机制处理,见规则。
选择配置来源
| 环境变量 | 控制的内容 |
|---|---|
OPENCODE_CONFIG | 自定义运行时配置文件 |
OPENCODE_CONFIG_DIR | 自定义配置目录及其角色、命令、插件等资源 |
OPENCODE_CONFIG_CONTENT | 内联运行时配置 |
OPENCODE_TUI_CONFIG | 自定义 TUI 配置文件 |
这些变量并非同义。自定义文件仍可能被项目或托管设置覆盖,来源关系见配置优先级。