CJYLZS/dsh-opencode-go-autosync3

dsh-opencode-go-autosync

将 opencode-go 模型从官方 API 同步至 llm-pi-ai 供应商 opencode-go-autosync,支持在设置中一键创建或更新,并可预览上游模型。

AI 分析

核心用途是自动同步和配置 Opencode Go 的模型列表。适合使用 Opencode 服务的用户,免去手动配置模型参数的繁琐步骤。

包名
dsh-opencode-go-autosync
版本
0.1.0
最近更新
2026年8月28日

安装

$npx -p @deepseek-ai/dsh dsh plugin --profile web add github:CJYLZS/dsh-opencode-go-autosync

使用

  1. 打开 DSH 设置页 → Plugins,找到 Opencode Go 同步 卡片。
  2. 一键创建/更新。首次会创建 opencode-go-autosync,再次点击仅刷新模型列表。
  3. 预览上游 可不落盘查看上游模型数。

目标供应商名默认为 opencode-go-autosync,可在插件配置中改为任意名字(如 opencode-go-custom)。

API Key 配置

本插件不存密钥,只把供应商的 apiKeyEnv 指向一个环境变量名,密钥由 DSH 凭据体系解析。

1. 设置供应商的凭据引用

  • 设置页:模型 → 选中 opencode-go-autosyncapiKeyEnvOPENCODE_API_KEY(或 OPENCODE_GO_CUSTOM_API_KEY 等自定义名)。
  • 或直接编辑 ~/.dsh/settings.yaml
llm-pi-ai:
  providers:
    opencode-go-autosync:
      apiKeyEnv: OPENCODE_API_KEY
      api: openai-completions
      baseURL: https://opencode.ai/zen/go/v1
      compat:
        thinkingFormat: openai
        supportsReasoningEffort: true

插件首次创建时会自动写入上述 api / baseURL / compat / apiKeyEnv 默认值(apiKeyEnv 取上游 env[0],默认为 OPENCODE_API_KEY)。

2. 写入密钥值

任选其一(优先级:设置凭据 > 环境变量):

  • 推荐:DSH 设置页的凭据/密钥管理中,为 OPENCODE_API_KEY 填入真实 key(存入 ~/.dsh/.credentials.yaml,设置页脱敏显示)。
  • 或在启动 DSH 的环境中导出:
export OPENCODE_API_KEY="sk-..."
pnpm dsh --profile web
  • 或写入 ~/.dsh/.env / 项目 .env(被 loadLayeredEnv 载入):
OPENCODE_API_KEY=sk-...

验证:设置页中该供应商显示已配置;对话选 opencode-go-autosync 下任意模型可正常出流。

插件配置

cordis.patch.ymlopencode-go-syncconfig

字段默认说明
sourceURLhttps://models.opencode.ai/api.json上游目录地址
sourceProvideropencode-go上游 JSON 中的 provider key
targetProvideropencode-go-autosync写入 llm-pi-ai.providers. 的目标名
targetApiKeyEnv上游 env[0]覆盖目标的 apiKeyEnv(不设则用上游默认值)
targetBaseURL上游 api覆盖目标的 baseURL
targetCompat{thinkingFormat: openai, supportsReasoningEffort: true}覆盖目标的 compat
extraIds[]额外保留的私有模型 id(如 hy3-preview),上游没有时仍以空条目写入
autoSyncfalse是否定时自动同步
autoSyncIntervalMs21600000 (6h)自动同步间隔,最小 60s

示例(profiles/web/cordis.patch.yml 覆盖):

- id: opencode-go-sync
  config:
    extraIds: [hy3-preview, muse-spark-1.2]
    autoSync: true
    autoSyncIntervalMs: 43200000