dsh-bili-learn:在 DSH 裏把 B 站視頻和本地資料學成結構化筆記與複習卡

前言

用智能體學網課,常見做法是「收藏鏈接 + 讓模型憑印象總結」。視頻字幕和本地講義往往沒有完整讀進去,筆記也難和複習節奏對齊。DeepSeek Harness(DSH)支持用插件把能力嵌進宿主:工具、設置頁、定時任務都可以由插件提供。

下面介紹維護者 jin-ni 的 B站學習 插件。npm 包名爲 dsh-bili-learn,GitHub 倉庫爲 jin-ni/dsh-bili-study。倉庫名與包名不一致;npm 上的 dsh-bili-study 是他人插件,安裝時不要裝錯。

這是什麼

dsh-bili-learn 是一個 DSH 插件:自己找課或讀本地資料 → 完整讀入內容 → 寫結構化筆記 → 生成間隔重複複習卡,並按設定節奏每天學一點。學什麼主題、單元、看哪條視頻、讀哪份文件由你決定;未指定時插件會按當前單元在 B 站搜課。

定位上它不是收藏夾,也不是單純的總結工具:會把視頻字幕或本地文檔完整交給模型,產出可複習、可做題的筆記,並把要點做成複習卡;到點可自動學一課並寫學習日報。

核心功能

B 站視頻學習

到點或手動點「學一課」「學這條」時:

  1. 若已指定視頻,直接學該條(不受時長範圍限制)。
  2. 若無指定視頻,按當前單元在 B 站搜課(按時長、播放量篩選,跳過已學),逐條試讀,選第一條有字幕的;無字幕會跳過,指定視頻無字幕會明確報錯。
  3. 帶時間戳的字幕交給最小權限 headless 會話(該 profile 無文件、命令、網絡,僅模型)。
  4. 模型只返回 JSON:一句話、要點、概念、公式、例子、易錯點、疑問、複習卡、下一步。
  5. 落盤:notes/<主題>/<bvid>.md、複習卡、日報、單元進度。

本地資料學習

在「資料」頁加文件或從文件夾搜索 → 點「總結」:用 DSH 自帶 Python 抽取文字(docx、pptx、xlsx、pdf、txt、md、代碼等),經同一套 headless 會話生成 JSON 筆記,寫入 notes/<主題>/<f-id>.md 及複習卡、日報。

四種學習方式:

  1. 自動找課:到點學當前單元,插件自行搜索、挑選。
  2. 指定視頻:概覽貼 BV 號或 B 站鏈接後「學這條」,或在主題裏「加入自選」;自選優先於自動找課。
  3. 自定內容:主題下可加單元、改名、設爲當前、刪除;「當前單元」即下一課方向。
  4. 本地資料:加文件、掃文件夾、按關鍵詞搜文件,點「總結」寫入同一套筆記與複習卡。

指定視頻歸到「當前單元」下;若要記到某單元,須先在該單元點「設爲當前」。

資料格式

  • 直接讀:.txt、.md、.csv、.tsv、.json、.yaml、.xml、.html、.ipynb、常見代碼後綴、.docx、.pptx、.xlsx、.epub。
  • PDF:內置純 Python pypdf(vendor/pypdf,6.9.2,BSD-3),離線可用。
  • 掃描件或純圖片 PDF 抽不到文字會報錯;插件只讀,不改、不移動、不刪除原文件。

13 個工具

任意 DSH 會話可用,例如:bili_study_status(進度與單元)、bili_study_learn(立刻學一課或指定 bvid)、bili_study_file_learn(總結資料或按 query+folder 搜一條再總結)、bili_study_review(到期複習卡與評分)等。對話中可直接說「學 BV1…」「把單元換成頻域分析」「去某文件夾搜關鍵詞並總結第一篇」。

自動學習輪

獨立 profile:~/.dsh/profiles/bili-study(首次加載時由 profile-template/ 鋪設)。默認模型 deepseek-account / deepseek-flash;文件系統、命令、聯網等權限在自動學習輪中關閉。默認 runTimeoutMinutes 12 分鐘;失敗退避 30 分鐘;兩課間隔至少 45 分鐘。

聯網僅兩件事:讀 B 站公開接口、調用你配置的模型。筆記、資料、複習卡均在本地。

安裝與啓用

從 GitHub 安裝(README 推薦用於分享):

dsh plugin --profile desktop add github:jin-ni/dsh-bili-study
# web 版把 desktop 換成 web;裝完重啓一次 DSH

若 git 報 schannel: SEC_E_NO_CREDENTIALS,可先執行 git config --global http.sslBackend openssl 再試。

package.json 要求 dsh >= 0.1.7-rc.1、node >= 22;README 寫明 DSH 桌面版 / web 0.2.x 實測,依賴 webServer、tools、settings。許可證 MIT。

重啓後進入 設置 → B站學習。

典型用法

首次使用

  1. 登錄:「設置 → 環境 → 掃碼登錄」,或「從『刷B站』導入登錄」,或將 bili_credential.json(sessdata / bili_jct / buvid3)放到 ~/.dsh/bili-study/。無憑證時 B 站不返回字幕,多數視頻會被判爲無字幕;本地資料總結不受影響。
  2. 內容:默認含「自動控制原理」與 8 個單元,可在「主題」中修改。
  3. 視頻:概覽貼 BV/鏈接學一條,或在主題「加入自選」。
  4. 資料:設置「資料文件夾」;資料頁貼路徑或掃描、搜索後加入。
  5. 節奏:確認「到點自動學」與每日時間(默認 21:00,每天 1 課)。
  6. 立即試效果:點「學一課」「學這條」或「總結」,約 1–4 分鐘,完成後概覽出現日報與筆記。

數據目錄

全部在 ~/.dsh/bili-study/(或 $DSH_HOME/bili-study/),與插件目錄分離。插件目錄可拷走分享,不帶個人學習數據。主要文件包括 topics.json、notes/、cards.json、materials.json、config.json、out/<日期>.md、study.log 等。

適用場景與注意

適合誰:需要在 DSH 內把 B 站系統課或本地講義落成可複習筆記、並用 SM-2 簡化版複習卡鞏固的開發者或自學者;希望到點自動學一課、寫日報、又能在對話裏用工具操控學習庫的用戶。

環境:B 站閱讀用 reader/bili_read.py(標準庫);資料抽取優先 DSH 自帶 Python(含 python-docx / python-pptx / openpyxl)。設置頁若提示沒找到 Python,可在「設置 → 環境」填 pythonPath。

安全與權限:插件在 DSH 進程權限下運行;自動學習使用受限 headless profile,但安裝前仍應閱讀源碼與 LICENSE、NOTICE.md。憑證僅用於讀字幕,只讀、不評論不點贊。

排障要點:「沒有字幕」換有 CC/AI 字幕的視頻;PDF_NO_TEXT 表示掃描件需 OCR(插件未內置);自動學未跑時查 study.log、確認間隔與 maxPerDay。

結尾

dsh-bili-learn 把「找課 / 讀入 / 筆記 / 複習卡 / 日報」收進一條可配置的流水線,學習內容由你定,節奏可由定時任務託管。社區目錄頁見 SkillHub 插件頁,源碼與完整說明見 GitHub:jin-ni/dsh-bili-study(當前 package.json 版本 0.4.1)。

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

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

小夜