opencode-model-profile
v0.1.0
Published
opencode plugin: inject per-model profile markdown into system prompt
Maintainers
Readme
opencode-model-profile
opencode 插件:根据会话当前使用的模型,自动读取 ~/.config/opencode/profile/ 下的
Markdown 文档,把内容追加到该次请求的系统提示词中。
安装
在 opencode.json 中声明插件:
{
"plugin": ["opencode-model-profile"]
}opencode 启动时会用 Bun 自动安装。
使用
创建目录
~/.config/opencode/profile/以模型名为文件名放入 Markdown 文档。例如使用
opencode-go/deepseek-v4-flash时,创建deepseek-v4-flash.md:你是一位专注于后端开发的工程师。回答请使用中文。重新发起对话(文件实时读取,无需重启 opencode),该文档内容会追加到
deepseek-v4-flash每次请求的系统提示词末尾。
匹配规则
- 文件名匹配模型 ID 斜杠后的部分(不论提供商)
- 不区分大小写
- 文件名支持通配符:
*(任意字符)与?(单个字符) - 精确匹配优先:存在与模型名完全一致(去
.md)的文件时,只注入该文件 - 无精确匹配时,所有通配匹配的文件按文件名字典序拼接注入
- 目录不存在或无匹配文件时静默跳过;文件读取失败时记入 opencode 日志(warn)
示例目录:
~/.config/opencode/profile/
├── deepseek-v4-flash.md # 精确匹配 deepseek-v4-flash
├── deepseek-*.md # 通配,匹配所有 deepseek- 开头的模型
└── *vision*.md # 通配,匹配所有含 vision 的模型兼容性
- 依赖 opencode 插件的
experimental.chat.system.transform钩子(实验性 API)。 如 opencode 升级导致该钩子签名变化,请升级本插件。
许可证
本项目基于 SFR 许可证开源:http://www.shared-future.ren/licenses/
