前言¶
用 DeepSeek Harness(DSH)做開發久了,手邊通常不止一個活:幾個正在改的倉庫、幾個開了頭沒下文的半成品、一堆散在不同工作區的會話。會話記錄躺在各自的工作區裏,項目的當前狀態和下一步要靠腦子記,或者靠翻目錄、翻 git log 自己拼。看板類工具要麼偏重流程管理、要麼不貼合本地倉庫和 DSH 會話,定時彙報基本要自己寫腳本湊。
下面介紹 peng456 維護的社區插件 dsh-project-deck,它把「項目註冊表 + 可視化面板 + 定時微信播報 + 自動發現 + 多機掃描」這幾件事打包到一個插件裏:先把倉庫或目錄登記進來,再讓面板和定時播報替你盯着進度。
這是什麼¶
dsh-project-deck 是一個面向 DSH 的項目管理插件,npm 包名爲 dsh-project-deck,當前版本 0.1.8,作者 peng456,許可證 MIT,plugin 元數據裏聲明 engines.node >= 22.15。它解決的是「倉庫、半成品和散在各處的會話沒有統一視圖」的問題,README 裏把它概括爲把倉庫、目錄和半途項目變成一塊看得見進度的甲板。
它由兩部分組成:
1、一個在本地運行的後端,提供 deck 命令行、Web 面板和定時器;
2、一個掛進 DSH 的前端插件,在桌面端左下角放一個 📋 入口,點開就是面板。
核心功能¶
README 把能力分成四塊,下面逐條說明。
1、項目註冊表。用 deck add <id> --root <path> 登記一個項目,可以帶別名、類型、優先級和下一步說明,之後用 deck list、deck status、deck doctor 查看整體狀態。
2、可視化面板。每個項目一張卡片,顯示 git 狀態、最近活動、下一步;點項目標題可以跳到它最近的 DSH 會話。面板入口可以拖到頁面任意位置,位置會被記住。
3、定時播報。默認每 4 小時推一條微信消息(文字 + 看板圖),有變化的項目排在前面並展開,沒變化的摺疊成一行;每到空閒時段(schedule.quiet,默認 00:30–06:30)不播報也不掃描。
4、自動發現與多機掃描。定時掃 DSH 工作區、git 倉庫和標記文件,超過分數線的新項目自動登記;另一臺機器或手機上可以跑只讀掃描器節點,把項目清單上報給主機。
另有 off / assist / auto 三個等級的自主推進開關:assist 只給選項和推薦,auto 會自己查事實、選方案、做可逆的事,把 push / 刪除 / 發佈這類不可逆動作放進審批隊列等你確認,規則寫在倉庫的 docs/AUTONOMY.md。
安裝與啓用¶
README 給出的安裝分兩步,先是後端,再是 DSH 插件。
# 1. 後端(CLI + 面板 + 定時器)
git clone https://github.com/peng456/dsh-project-deck && cd dsh-project-deck && ./install.sh
# 2. DSH 插件(npm 或 GitHub 二選一)
dsh plugin --profile desktop add dsh-project-deck
# dsh plugin --profile desktop add github:peng456/dsh-project-deck
# 或 Desktop → 插件 → 搜索/安裝 dsh-project-deck
第一步在安裝面板的同時裝好 deck CLI 和定時器;第二步把插件掛進 DSH。裝完重啓 DSH,左下角會出現 📋 圖標,可以拖動並記住位置。
如果只想先看看效果,README 提供了一個不需要安裝任何依賴的 demo(需要 Python 3.9+):
git clone https://github.com/peng456/dsh-project-deck
cd dsh-project-deck
python3 backend/deck demo # 生成 4 個假項目,起面板
# → http://127.0.0.1:9299
這個命令會生成 4 個示例項目並起一個面板,瀏覽器打開 http://127.0.0.1:9299 就能看到長什麼樣。
典型用法¶
登記和查看項目:
deck add blog --root ~/code/blog --kind content --note "每週一篇實測"
deck list / status / doctor
deck report # 立刻播報(文字 + 圖)
deck scan / scan --add # 發現新項目
deck nodes add --id phone --name "我的手機" --platform android
deck demo # 演示環境
deck add 把一個本地目錄登記成項目,--kind 標類型,--note 寫下一步;deck scan --add 會把掃描到的新項目真正寫進註冊表。deck report 用於臨時手動發一條播報,驗證通道是否通。
播報出來是一段純文本,README 給的樣例形如:
項目播報 · 11-05 06:49
12 個項目|活躍 12 · 阻塞 0 · 近 6 小時更新 3
- **個人 Agent**(代碼)· 剛剛
進展:新增 1 個會話(共 5)·「多項目管理機制」
下一步:給 12 個項目建 STATE 骨架
- **API 服務**(代碼)· 12 分鐘前
進展:git 2 次提交(fix: 鑑權)· 3 個文件待提交
下一步:遷 v2 接口,補 12 個測試
無變化:官網改版、基礎設施、…
有變化的項目展開寫進展和下一步,沒有變化的歸到「無變化」一行摺疊掉。
配置文件¶
默認配置放在 ~/.project-deck/config.json,README 列出的鍵如下:
| key | 默認 | 說明 |
|---|---|---|
report.intervalHours |
4 | 播報週期 |
report.image |
true | 附看板圖(需要 Chrome 無頭截圖) |
scan.intervalHours |
12 | 自動發現週期 |
scan.threshold |
70 | 自動登記分數線 |
schedule.quiet |
00:30–06:30 | 安靜時段,不播報不掃描 |
panel.allowLanRead |
true | 允許手機通過局域網看面板(只讀) |
其中 report.image 依賴 Chrome 無頭模式截圖,scan.threshold 決定掃描到的新項目達到多少分才被自動登記。README 同時提醒不要把 nodes.json / config.json 提交進倉庫,因爲裏面有 token。
通知渠道¶
播報的發送器通過 report.delivery 選擇,README 強調默認不依賴任何外部服務,其中 ilink 是內置的微信連接:在面板點「連接微信」→ 掃碼 → 在微信裏給 bot 發一句話即可推送。其他通道分別是複用本機 wxpush 網關、ServerChan SendKey、任意 webhook(兼容企業微信機器人)和自寫腳本(stdin 收文本,退出碼 0 視爲成功)。
"report": {
"enabled": true,
"image": false, // 附圖僅 wxpush 通道支持
"delivery": {
"type": "wxpush", // wxpush | serverchan | webhook | command
"url": "http://127.0.0.1:9098", // wxpush(ilink 模式忽略)
"key": "", // ServerChan SendKey
"webhook": "", // 任意 webhook(企業微信機器人等)
"command": "" // 自寫腳本:stdin 收文本,退出碼 0 = 成功
}
}
配好後在面板頂部的「通知渠道」下拉里選保存即可,ilink 模式下會直接顯示二維碼。deck status 會顯示當前通道和連通狀態,通道不通時播報不會堆積,只會跳過;附圖通道有有限重試。
多機掃描¶
節點只讀上報,不傳文件內容。README 給了三種實現,都在倉庫的 backend/ 目錄下:
# Python / Node / Windows PowerShell 三種實現都在 backend/
python3 deck-node push --server http://<host>:9199 --token <token> --id my-phone
node deck-node.js loop --server ... --token ... --id my-laptop
powershell -File deck-node.ps1 -Server ... -Token ... -Id my-win
--server 指向主機面板所在地址,--token 是主機上分配給該節點的 token,--id 是節點標識。先用 deck nodes add 在主機端登記節點,再在節點機器上跑對應的掃描腳本。
安全與權限¶
README 的安全部分給出三條:
1、面板寫接口只對本機開放;讀接口可以開局域網(給手機看面板只讀用),POST /api/node-scan 始終要求每節點 token;
2、微信推送走本地 wxpush(iLink),token 在幾小時無互動後會過期,過期時播報跳過而不是堆積,給 bot 發一句話即可恢復;
3、nodes.json / config.json 含 token,不要提交到倉庫。
需要留意的是,插件隨當前 DSH 進程運行,擁有該進程的權限。安裝前建議先讀一遍源碼,確認它訪問的文件路徑、命令和 network 行爲符合預期,再決定是否在生產工作區啓用。該插件是社區維護(peng456),不是 DeepSeek 官方組件。
小結¶
dsh-project-deck 的價值在於把「項目有哪些、各自什麼狀態、下一步是什麼」這件事從記憶和翻目錄變成註冊表 + 面板 + 定時微信播報:登記一次,面板和播報替你盯着 git 變化和會話進展,多機節點還能把另一臺機器上的項目清單一起彙總。它對本地倉庫和半成品比較對口,不適合替代面向團隊的項目管理工具。
- 目錄頁:https://www.skillhub.cn/plugins/peng456/dsh-project-deck
- GitHub:https://github.com/peng456/dsh-project-deck
分類爲「工作流」,安裝前請覈對上述源碼與許可證(MIT)。