Skip to content

Releases: SkylerFee/dsh-llm-opencode-go-live

v0.1.0-alpha.4

v0.1.0-alpha.4 Pre-release
Pre-release

Choose a tag to compare

@SkylerFee SkylerFee released this 30 Sep 07:14
Immutable release. Only release title and notes can be modified.
227542d

Fourth alpha of the OpenCode Go live model catalog plugin for DeepSeek Harness. This release updates installation and release documentation; plugin runtime behavior is unchanged.

Changed

  • The English and Chinese quick starts and usage guides now show a direct source installation from the DSH repository root. The commands clone the default main branch beside DSH, build the plugin, and install its directory without shell variables.
  • The guides recommend a built source checkout or its tarball. Installing directly from GitHub source still requires build-script approval in the consuming pnpm profile.
  • The development and release guides document the PR, CI, tag, and pre-release flow.
  • The package version, README badges, and tarball examples are updated to 0.1.0-alpha.4.

Verification

  • pnpm run check: TypeScript build and 20 offline tests passed.
  • pnpm pack --dry-run: the package includes lib/index.js and excludes tests and node_modules.
  • The 0.1.0-alpha.4 tarball installed into an isolated DSH Web profile; the profile lists the plugin, and its built entry point passes node --check.
  • Live Models.dev refresh, the Web settings page, and real OpenCode Go model calls were not rerun for this documentation-only release.

v0.1.0-alpha.3

v0.1.0-alpha.3 Pre-release
Pre-release

Choose a tag to compare

@SkylerFee SkylerFee released this 29 Sep 08:17
Immutable release. Only release title and notes can be modified.

Third alpha of the OpenCode Go live model catalog plugin for DeepSeek Harness. This one is a packaging fix: installing from git now produces a plugin that loads.

Added

  • The usage guide documents the pnpm build-script allowlist a git install needs, how to confirm the build actually ran, and the fact that pnpm 10 and pnpm 11 print different allowlist keys for a git-hosted dependency. The READMEs and both guides now reference v0.1.0-alpha.3.
  • A regression test asserts the package builds lib/ through prepack, so the fix cannot silently revert.

Fixed

  • Installing from git now produces a usable plugin. A git install fetches sources rather than built artifacts, and pnpm runs a git dependency's prepublish, prepack, and publish hooks — but not its prepare hook — so the build never ran: the install reported success while main and exports pointed at a lib/index.js that did not exist, and the plugin could not load at all. The build hook is now prepack, which pnpm does run; pnpm pack and local checkouts build exactly as before.

v0.1.0-alpha.2

v0.1.0-alpha.2 Pre-release
Pre-release

Choose a tag to compare

@SkylerFee SkylerFee released this 29 Sep 02:04

Second alpha of the OpenCode Go live model catalog plugin for DeepSeek Harness.

The plugin reads the opencode-go provider catalog from Models.dev, validates the whole batch, and registers a separate opencode-go-live route with its own Models settings card. The built-in opencode-go route is untouched, and the two routes never share a credential record.

What it does

  • Restores the last saved catalog snapshot at startup, then refreshes from Models.dev (up to four retries, 15 seconds apart) and every 6 hours afterwards (catalog.refreshIntervalMs).
  • Publishes a snapshot only after the full batch validates and converts, replacing it atomically; a failed fetch, conversion, or save keeps the last successful catalog instead of clearing it.
  • Gives every catalog model an explicit policy: known models inherit protocol, endpoint, and compatibility fields from the installed pi-ai table, unknown models use the generic OpenCode Completions endpoint, and entries that are deprecated, lack usable limits, or cannot accept text are rejected with a diagnostic rather than silently skipped.
  • Resolves media inputs through the host's durable attachment service: a read_image tool result or a pasted screenshot is decoded, sized to the profile's request-image budget, and sent as image content the way it is on the built-in routes. With no attachment service mounted a request carrying an image fails with UNSUPPORTED_CONTENT instead of being silently dropped, and file attachments are never sent as bytes — request assembly projects them to handle text.
  • Reuses pi-ai's OpenCode Go transport for requests and passes the DSH session id as x-opencode-session.
  • Ships its own browser entry, so the API key is edited in Settings → Models instead of a config file.

Install

pnpm dsh plugin --profile web add github:SkylerFee/dsh-llm-opencode-go-live#v0.1.0-alpha.2

A local checkout, or a tarball built with pnpm pack, installs with the same command.

Credentials and local state

  • The API key is resolved per request through the DSH credentials service under OPENCODE_GO_LIVE_API_KEY. That reference is deliberately distinct from the OPENCODE_GO_API_KEY that the Models page derives for the built-in opencode-go route, so the two routes never read one credential record.
  • The catalog snapshot lives at cache/opencode-go-live.json under the Harness home — ~/.dsh/cache/opencode-go-live.json by default, or under $DSH_HOME when that variable is set. It contains the check time, the converted models, and diagnostics; it never contains the key, conversation requests, or responses.
  • Installation does not change the default model.

Requirements

  • DeepSeek Harness with the llm and credentials services; the Models card also needs settings.
  • Node.js 22.19 or newer (the floor pi-ai declares) and pnpm.

Notes

  • Pre-release: the catalog contents follow whatever Models.dev publishes for opencode-go, so the model list can change between plugin versions.
  • Fetching the catalog needs no API key; the key is resolved only when a request reaches the OpenCode Go API.
  • Listing a model does not establish that the upstream API will authorize it.
  • This package is not published to a registry. Install it from git, a tarball, or a local checkout.
  • The README now shows the card's key editor and model list, plus the session model picker, as screenshots.

中文说明

DeepSeek Harness 的 OpenCode Go 动态模型目录插件第二个 alpha 版本。

插件从 Models.dev 读取 opencode-go 供应商目录,整批校验后注册独立的 opencode-go-live 路由,并提供插件自己的 Models 设置卡片。内置 opencode-go 路由不受影响,两条路由不会共用同一条凭据记录。

功能

  • 启动时先恢复上次保存的目录快照,随后从 Models.dev 刷新(失败最多重试 4 次,间隔 15 秒),之后每 6 小时刷新一次(catalog.refreshIntervalMs)。
  • 只有整批校验与转换都通过后才发布快照,并以原子方式替换;抓取、转换或保存失败时保留上一次成功目录,而不是清空。
  • 每个目录模型都有明确策略:已知模型从 pi-ai 内置表继承协议、端点与兼容字段,未知模型使用通用 OpenCode Completions 端点;已弃用、缺少可用上限,或无法接受文本输入的条目会带诊断被拒绝,而不是静默跳过。
  • 媒体输入经宿主的 durable 附件服务解析:read_image 工具结果或粘贴的截图会按 profile 的请求图片预算解码缩放后作为图片内容发送,与内置路由一致。未挂载附件服务时,携带图片的请求以 UNSUPPORTED_CONTENT 明确失败而不是被静默丢弃;文件附件从不以原始字节发送,由请求组装层投影为句柄文本。
  • 请求复用 pi-ai 的 OpenCode Go 传输实现,并把 DSH 会话 ID 作为 x-opencode-session 传给上游。
  • 自带浏览器入口,API Key 在 Settings → Models 页面编辑,无需改配置文件。

安装

pnpm dsh plugin --profile web add github:SkylerFee/dsh-llm-opencode-go-live#v0.1.0-alpha.2

本地 checkout 或 pnpm pack 产出的 tarball 用同样的命令安装。

凭据与本地状态

  • API Key 在每次请求时由 DSH 凭据服务按 OPENCODE_GO_LIVE_API_KEY 解析。该引用刻意区别于 Models 页为内置 opencode-go 路由派生的 OPENCODE_GO_API_KEY,两条路由不会读取同一条凭据记录。
  • 目录快照位于 Harness home 下的 cache/opencode-go-live.json(默认即 ~/.dsh/cache/opencode-go-live.json,设置 $DSH_HOME 时位于其下)。快照只包含检查时间、转换后的模型和诊断,不含密钥、对话请求或响应内容。
  • 安装不会更改默认模型。

环境要求

  • 需要带 llm 与 credentials 服务的 DeepSeek Harness;Models 卡片还需要 settings 服务。
  • Node.js 22.19 及以上(pi-ai 声明的最低版本)和 pnpm。

说明

  • 预发布版本:目录内容取决于 Models.dev 为 opencode-go 发布的内容,因此模型列表可能随插件版本变化。
  • 获取目录不需要 API Key;只有请求真正到达 OpenCode Go API 时才会解析密钥。
  • 能列出模型不代表上游 API 会授权该请求。
  • 本包未发布到 registry,请从 git、tarball 或本地 checkout 安装。
  • README 现在以截图展示了卡片的密钥编辑与模型列表,以及会话中的模型选择器。

v0.1.0-alpha.1

v0.1.0-alpha.1 Pre-release
Pre-release

Choose a tag to compare

@SkylerFee SkylerFee released this 28 Sep 09:39

First release of the OpenCode Go live model catalog plugin for DeepSeek Harness.

The plugin reads the opencode-go provider catalog from Models.dev, validates the whole batch, and registers a separate opencode-go-live route with its own Models settings card. The built-in opencode-go route is untouched, and the two routes never share a credential record.

What it does

  • Restores the last saved catalog snapshot at startup, then refreshes from Models.dev (up to four retries, 15 seconds apart) and every 6 hours afterwards (catalog.refreshIntervalMs).
  • Publishes a snapshot only after the full batch validates and converts, replacing it atomically; a failed fetch, conversion, or save keeps the last successful catalog instead of clearing it.
  • Gives every catalog model an explicit policy: known models inherit protocol, endpoint, and compatibility fields from the installed pi-ai table, unknown models use the generic OpenCode Completions endpoint, and entries that are deprecated, lack usable limits, or cannot accept text are rejected with a diagnostic rather than silently skipped.
  • Reuses pi-ai's OpenCode Go transport for requests and passes the DSH session id as x-opencode-session.
  • Ships its own browser entry, so the API key is edited in Settings → Models instead of a config file.

Install

pnpm dsh plugin --profile web add github:SkylerFee/dsh-llm-opencode-go-live#v0.1.0-alpha.1

A local checkout, or a tarball built with pnpm pack, installs with the same command.

Credentials and local state

  • The API key is resolved per request through the DSH credentials service under OPENCODE_GO_LIVE_API_KEY. That reference is deliberately distinct from the OPENCODE_GO_API_KEY that the Models page derives for the built-in opencode-go route, so the two routes never read one credential record.
  • The catalog snapshot lives at cache/opencode-go-live.json under the Harness home — ~/.dsh/cache/opencode-go-live.json by default, or under $DSH_HOME when that variable is set. It contains the check time, the converted models, and diagnostics; it never contains the key, conversation requests, or responses.
  • Installation does not change the default model.

Requirements

  • DeepSeek Harness with the llm and credentials services; the Models card also needs settings.
  • Node.js 22.19 or newer (the floor pi-ai declares) and pnpm.

Notes

  • Pre-release: the catalog contents follow whatever Models.dev publishes for opencode-go, so the model list can change between plugin versions.
  • Fetching the catalog needs no API key; the key is resolved only when a request reaches the OpenCode Go API.
  • Listing a model does not establish that the upstream API will authorize it.
  • This package is not published to a registry. Install it from git, a tarball, or a local checkout.

中文说明

DeepSeek Harness 的 OpenCode Go 动态模型目录插件首个版本。

插件从 Models.dev 读取 opencode-go 供应商目录,整批校验后注册独立的 opencode-go-live 路由,并提供插件自己的 Models 设置卡片。内置 opencode-go 路由不受影响,两条路由不会共用同一条凭据记录。

功能

  • 启动时先恢复上次保存的目录快照,随后从 Models.dev 刷新(失败最多重试 4 次,间隔 15 秒),之后每 6 小时刷新一次(catalog.refreshIntervalMs)。
  • 只有整批校验与转换都通过后才发布快照,并以原子方式替换;抓取、转换或保存失败时保留上一次成功目录,而不是清空。
  • 每个目录模型都有明确策略:已知模型从 pi-ai 内置表继承协议、端点与兼容字段,未知模型使用通用 OpenCode Completions 端点;已弃用、缺少可用上限,或无法接受文本输入的条目会带诊断被拒绝,而不是静默跳过。
  • 请求复用 pi-ai 的 OpenCode Go 传输实现,并把 DSH 会话 ID 作为 x-opencode-session 传给上游。
  • 自带浏览器入口,API Key 在 Settings → Models 页面编辑,无需改配置文件。

安装

pnpm dsh plugin --profile web add github:SkylerFee/dsh-llm-opencode-go-live#v0.1.0-alpha.1

本地 checkout 或 pnpm pack 产出的 tarball 用同样的命令安装。

凭据与本地状态

  • API Key 在每次请求时由 DSH 凭据服务按 OPENCODE_GO_LIVE_API_KEY 解析。该引用刻意区别于 Models 页为内置 opencode-go 路由派生的 OPENCODE_GO_API_KEY,两条路由不会读取同一条凭据记录。
  • 目录快照位于 Harness home 下的 cache/opencode-go-live.json(默认即 ~/.dsh/cache/opencode-go-live.json,设置 $DSH_HOME 时位于其下)。快照只包含检查时间、转换后的模型和诊断,不含密钥、对话请求或响应内容。
  • 安装不会更改默认模型。

环境要求

  • 需要带 llm 与 credentials 服务的 DeepSeek Harness;Models 卡片还需要 settings 服务。
  • Node.js 22.19 及以上(pi-ai 声明的最低版本)和 pnpm。

说明

  • 预发布版本:目录内容取决于 Models.dev 为 opencode-go 发布的内容,因此模型列表可能随插件版本变化。
  • 获取目录不需要 API Key;只有请求真正到达 OpenCode Go API 时才会解析密钥。
  • 能列出模型不代表上游 API 会授权该请求。
  • 本包未发布到 registry,请从 git、tarball 或本地 checkout 安装。