DeepSeek Harness 代碼學習插件:dsh-coding-plugin

前言

DeepSeek Harness(DSH)的設計理念是“一切皆插件”。在使用過程中,開發者經常需要在對話流中直接執行代碼、完成課程關卡或分析代碼邏輯。如果頻繁切換窗口或使用外部工具,會打斷對話的連貫性。dsh-coding-plugin 是一個面向編程學習者的 DSH 動態 Cordis 插件,它通過右側懸浮窗的方式,將代碼編輯器、多語言執行、課程評判與分析功能集成在當前會話中。

插件定位

dsh-coding-plugin 由 Paimonshen 維護,採用 MIT 許可證。它是一個代碼學習插件,核心價值在於通過動態 Cordis 插件機制,在 DSH 桌面版客戶端中提供懸浮窗編輯、執行與分析能力。

核心功能

右側懸浮窗
會話內輸入 /coding 激活插件,右下角展開 7 頁籤面板,支持拖拽與八向縮放。

代碼執行
支持 Python、JavaScript、TypeScript、PowerShell。打開面板會自動預熱解釋器,結果以“一體式結果卡”展示,包含狀態頭(退出碼、耗時)及輸出體(stdout 與 stderr 同卡展示)。

分析直投對話
點擊編輯器頁的「📨 分析(發到對話)」按鈕,代碼內容會作爲用戶消息進入當前會話,由對話主模型直接輸出分析結果。

課程系統與進度追蹤
支持導入 JSON 課程包,關卡自動評判(包含/等於/不包含),並提供提示與參考答案。支持記錄關卡狀態、完成時間、嘗試次數,並導出 JSON 或 Markdown 格式的進度與筆記。

模型工具與交互
插件註冊了 coding_run、coding_submit、coding_progress、coding_note、coding_lesson、coding_snippet、coding_analyze 7 個工具,允許在對話中直接調用。

安裝與啓用

插件已發佈至 npm,可通過 DSH 插件管理器安裝:

dsh plugin add dsh-coding-plugin

安裝完成後,在任意會話中輸入 /coding 即可激活懸浮窗並查看使用指導。輸入 /coding close 可關閉。

典型用法

運行代碼
在編輯器頁選擇語言,編寫代碼後點擊「▶ 運行」。

導入課程
在課程頁粘貼 examples/course-sample.json 的內容進行導入,然後在關卡頁提交答案。

對話內指令
直接在對話中下達指令,例如“用 python 跑這段代碼”、“提交關卡”、“導出進度”、“記筆記”或“分析這段代碼”。

注意事項

數據存儲
用戶數據僅保存在當前工作區的 .dsh-coding/ 目錄下(如 state.json、progress.json/md),不會上傳至雲端。

執行限制
代碼執行沿用 DSH 沙箱策略,命令超時時間設爲 20 秒。Client 沙箱禁用原生定時器,一律使用 Cordis 的 timer 服務;Host 禁用阻塞的 shell.run。

會話與進程
動態插件在 DSH 進程重啓後會丟失,需重新輸入 /coding 激活。分析直投對話功能要求目標會話處於運行狀態。

環境依賴
--experimental-strip-types 依賴 Node.js 版本大於等於 22.6。源碼只允許單引號與反引號,禁止雙引號、反斜槓與行註釋。

總結

該插件通過懸浮窗的形式,將開發與學習工具無縫嵌入對話流,適合需要頻繁調試代碼或完成結構化編程課程的場景。更多細節可參考插件目錄或源碼倉庫。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜