前言¶
在 DeepSeek Harness(DSH)裏做學科會話時,常見痛點不是「模型不會解題」,而是成稿形態:根號寫成 Unicode √ 時橫線蓋不住被開方式,分數寫成 1/2 或斜槓式 (…)/(…),受力圖、電路圖只能另開工具手畫。把這些步驟拆成多次複製粘貼,既慢又難保證打印清晰度。
dsh-subjkit 把同一套 Python 排版引擎掛進 DSH:會話裏直接調用工具生成矢量公式、學科圖示和可打印 PDF,並附帶兩個內置技能,說明何時用、公式與圖示字段怎麼寫。下面介紹它是什麼、能做什麼,以及如何安裝與啓用。
這是什麼¶
dsh-subjkit 是維護者 LoveElysiaFH 發佈的 DSH 插件包(package.json 中聲明 dsh.bundle.patch,入口 src/index.js 在 apply(ctx) 裏向宿主註冊工具),不是把技能文件改個名冒充插件。社區目錄分類爲工作流;GitHub 倉庫 LoveElysiaFH/dsh-subjkit 當前 package 版本爲 0.3.0。README 寫明作者主要自用、環境以 Windows 爲主,換機器時便於同步;使用前宜自行閱讀源碼與許可證。
定位:給 DSH 各學科會話用的排版 + 圖示工具包——數學公式排成矢量圖,物理/化學/生物/語文等圖示按 JSON 規格輸出,最終可輸出可打印 PDF。
核心功能¶
三個會話工具¶
裝上插件後,新會話中多出三個工具(參數與命令行選項一一對應):
| 工具 | 作用 | 主要參數 |
|---|---|---|
subject_pdf |
Markdown → 打印用 PDF;公式轉矢量路徑,可拆奇偶頁、出 PNG 預覽 | input(必填)、output、split、preview、title、subtitle、footer |
subject_figure |
物理/數學/化學/生物/語文圖示 → SVG / PNG | spec(必填)、output、dpi |
subject_check |
找出正文裏的裸符號、1/2、x^2,報「行:列 + 建議寫法」 |
input(必填) |
插件通過 spawn 調用同一套 Python CLI(subjkit.py),結果經 --result-json 臨時文件回傳;命令行與會話內跑的是同一套排版引擎。
兩個內置技能¶
插件啓動時一併註冊技能,「裝插件」與「裝技能」在同一步完成:
math-typeset:公式排版、試卷 PDF、根號/分數修復;subject-diagram:各科圖示模板與字段約定。
工具負責執行;技能負責使用時機與寫法說明。
排版與圖示能力(README 已說明)¶
公式與 PDF:行內 $...$、獨立 $$...$$;根號用 \sqrt{...},分數用 \frac{}{};支持標題、列表、表格、引用、圖片、\newpage;--split 可額外生成奇數頁/偶數頁 PDF 便於單面打印。
圖示類型(subject_figure / subjkit.py fig)包括:circuit、force、incline、optics、plot、geometry、numberline、venn、apparatus、molecule、cell、flow、grid 等;複雜圖用 JSON spec,參數錯誤時返回中文說明與最小示例而非裸 traceback。
檢查:subject_check / subjkit.py check 按 error/warn/info 分級;出 PDF 前默認跑 paper 檔檢查,有 error 會拒絕出圖;學情類文檔可用 --profile report 等選項避免誤報比值與箭頭。
安裝與啓用¶
環境要求¶
README 寫明:Windows 10/11、Python 3.10+、Node.js 18+、Microsoft Edge(用於 HTML 轉 PDF)。首次需在插件倉庫根目錄安裝 Python 依賴與 Node 依賴,並跑自檢:
python -m pip install -r requirements.txt
npm install
python subjkit.py doctor
doctor 會檢查 Python 庫、Node、MathJax、Edge 與圖示模板是否可用。
裝成 DSH 插件(推薦)¶
前提:上述依賴就緒,且 python subjkit.py doctor 全部通過。
在 DSH 會話中讓助手調用插件管理器,將本倉庫根目錄的絕對路徑裝進當前 profile:
plugin_manager action: install_bundle target: <本倉庫根目錄的絕對路徑>
管理器會完成 pnpm 安裝與 bundle 選擇,並報告 application: applied 或 restart-required。裝完若工具未立刻出現,重啓 DSH 即可。
等價手工做法:在 profile 目錄(%USERPROFILE%\.dsh\profiles\<profile名>)的 package.json 的 dependencies 增加 "dsh-subjkit": "link:/path/to/dsh-subjkit",在 dsh.profile.bundles 增加 "dsh-subjkit",執行 pnpm install 後重啓 DSH 應用。
卸載:plugin_manager 的 remove_bundle;或從 bundles 與 dependencies 刪除後 pnpm install 並重啓。
只裝技能或只用 CLI¶
不需要工具、只要技能提示詞時,可在倉庫根目錄執行:
python install.py
或 python install.py --project 裝到當前工作區;此路徑不註冊工具,排版仍依賴命令行 subjkit.py。
插件以當前 DSH 進程權限運行子進程;安裝前應檢查倉庫源碼與 LICENSE,勿在未審閱的情況下指向不可信路徑。
典型用法¶
試卷 Markdown → PDF¶
---
title: 數學 · 函數專項卷 02
subtitle: 滿分 60 分 | 限時 40 分鐘
footer: 第 1 頁 / 共 2 頁
---
## 一、選擇題
1. 函數 $f(x)=\frac{\sqrt{x+1}}{x-2}$ 的定義域是( )
命令行:
python subjkit.py pdf 試卷.md -o 試卷.pdf
python subjkit.py pdf 試卷.md -o 試卷.pdf --split
python subjkit.py pdf 試卷.md -o 試卷.pdf --preview
在 DSH 中對應 subject_pdf,參數 input、output、split、preview 等與上述選項一致。
圖示 spec → SVG/PNG¶
{
"type": "incline",
"angle": 30,
"block_label": "$m$",
"decompose": true,
"base_label": "$L$"
}
python subjkit.py fig --spec 斜面.json -o 斜面.svg
python subjkit.py fig --spec 斜面.json -o 斜面.png
會話內使用 subject_figure,必填 spec。
出 PDF 前檢查¶
python subjkit.py check 試卷.md
python subjkit.py pdf 試卷.md --check-only
會話內使用 subject_check,必填 input。建議先改到 0 處 error 再生成 PDF。
適用場景與注意¶
適合:在 DSH 裏反覆出卷、重排含大量公式的 Markdown、按 JSON 批量畫標準學科圖,並希望模型在技能引導下統一用 $...$ 與 \frac、\sqrt 寫法。
注意:
- 作者 README 強調自用、主要維護 Windows;Linux/macOS 未在資料中作爲官方支持環境列出,自行遷移需驗證 Edge/PDF 鏈路與
doctor結果。 - 表格跨頁時表頭可每頁重複;整塊不跨頁可在塊前寫
<!--keep-->。 - 數據類文檔(學情報告)勿用默認 check 檔,應使用
--profile report等,避免274/450、→被誤判爲公式。 - DSH 社區插件目錄 skillhub.cn 上的 dsh-subjkit 頁 爲獨立站點收錄,與 DeepSeek / 幻方無官方從屬關係;安裝與運行責任在用戶側。
結尾¶
dsh-subjkit 把學科 PDF 矢量排版、多科圖示和裸符號檢查收進 DSH 工作流:三個工具加兩個技能,底層與 subjkit.py CLI 共用一套引擎。需要詳情、樣張 PDF 與倉庫內重排示例時,見 GitHub README 與 插件目錄頁。