前言¶
當前 DSH 在原生輸入框中對圖片輸入存在限制(主要依賴 text-only admission)。dsh-luna-vision-bridge 是一個純 Host 側的 DSH LLM adapter。它註冊了一個新的 luna-vision-bridge provider,使得原生 DSH 輸入框可以繼續使用粘貼圖片、拖放、縮略圖、刪除、Enter 和發送按鈕。圖片進入 DSH 原生 attachment store 後,由 Codex Luna 轉成文字,再交給任意一個已註冊的純文本模型(下游 target,可配置多個並在模型選擇器切換)。
核心功能¶
- 純 Host 側 DSH LLM adapter。
- 註冊新的
luna-vision-bridgeprovider。 - 支持原生圖片輸入(粘貼、拖放等)。
- 使用 Codex Luna 轉寫圖片爲文字。
- 將圖片轉寫文本交給下游純文本模型。
- 提供 Web 設置界面配置下游模型。
工作原理¶
插件通過攔截 DSH 的 addImages 和 submit 流程,在 Host 層完成圖片處理。
DSH 原生 addImages / submit
│
▼
DSH attachment store(校驗並持久化原圖)
│
▼
luna-vision-bridge adapter
1. 讀取經過校驗的附件
2. 寫入 0600 臨時文件
3. 調用插件內置 scripts/read-image-luna.sh
4. 腳本啓動 codex exec --json / gpt-5.6-luna
5. 刪除臨時文件
6. 將圖片塊替換爲帶安全邊界的識圖文本
│
▼
target provider / target model(任意純文本下游,按所選模型路由)
前置條件¶
- 每個下游 target 的 provider 已在 DSH 註冊且純文本可用(如
deepseek-official)。 codexCLI 可以從啓動 DSH 的 Host 環境執行,並已完成認證。
安裝¶
插件已發佈到 npm。
dsh plugin add --profile web @ycp424c/dsh-luna-vision-bridge
插件包內帶有 cordis.patch.yml bundle。安裝後,在模型選擇器會出現 Luna Vision Bridge provider。若當前 DSH 版本未自動掛載外部 bundle,可將包名追加到 ~/.dsh/profiles/web/cordis.patch.yml 的 bundles 中,並重啓 dsh web。
配置¶
插件提供 Web 界面和配置文件兩種配置方式。
Web 界面(推薦)¶
打開 Web 界面的 設置 → “Luna Vision Bridge”,無需編輯配置文件。
- 表單預填一行默認組合(未配置時默認
DeepSeek / DeepSeek-V4-Flash)。 - 編輯配置項:
-Provider 顯示名:橋接 provider 在模型選擇器裏的顯示名,默認Luna Vision Bridge。
-下游模型:一行一個組合,包含provider、model、顯示名(可選)。
-橋接模型 id(可選):默認<provider>-<model>,必須互不相同。 - 點擊保存,模型選擇器立即出現新組合。
配置文件方式¶
所有字段都有默認值;零配置即得到單個 DeepSeek 下游。
在 ~/.dsh/profiles/web/cordis.patch.yml 中配置:
- id: luna-vision-bridge
name: '@ycp424c/dsh-luna-vision-bridge'
inject: [llm, attachments]
config:
providerName: Luna Vision Bridge
targets:
- provider: deepseek-official
model: deepseek-v4-flash
name: DeepSeek V4 Flash + Luna
bridgeModel: deepseek-v4-flash
全局字段配置示例:
# Luna 轉寫與緩存(全局):
# 默認自動解析爲插件包內的 scripts/read-image-luna.sh;通常無需配置
codexCommand: codex
lunaModel: gpt-5.6-luna
timeoutMs: 180000
cacheDescriptions: true
cacheDir: ~/.dsh/cache/luna-vision-bridge
cacheNamespace: v1
注意事項與限制¶
- 臨時方案:這是爲當前 DSH 圖片輸入限制準備的臨時兼容方案,不是建議長期依賴的正式架構。當 DSH 官方提供原生讀圖能力時,應優先遷移並停用本插件。
- 轉寫端適配:轉寫端只適配 Codex CLI 和
gpt-5.6-luna;下游可以是任意純文本 provider,但本插件不是通用視覺 provider 框架。 - 安全性:臨時文件權限爲 0600/0700,識圖結束後立即刪除。原圖仍由 DSH 原生 attachment store 管理。同一附件與提示詞使用 content-addressed cache。
- 依賴:依賴 Host 環境中的 codex CLI。