前言¶
用 DSH Web 跑日常任務時會遇到一個具體問題:有些任務幾乎天天要執行,但時間不定——刷科技新聞、看 GitHub 熱門、檢查發佈草稿。每次都要往輸入框手敲一大段 prompt,重複且容易走神。用任務看板來做這類事又偏重:狀態機、cron、執行記錄,對一個「點一下就發」的動作來說是殺雞用牛刀。
dsh-sticker-board 解決的就是這個問題:把常用任務做成一張張「冰箱貼」,停靠在輸入框正上方,點擊即向當前會話發送預置 prompt 並執行。下面按定位、功能、安裝、用法、原理的順序介紹。
這是什麼¶
dsh-sticker-board 是面向 DeepSeek Harness(DSH)Web 的冰箱貼紙系統,由 sanqiPanax 維護,許可證爲 MIT。它的定位是輕量快捷命令欄:貼紙按長期 / 短期分組,點擊任意貼紙,預置的 prompt 就自動發進當前會話,AI 立即開始執行。
核心功能¶
- 貼紙欄停靠在輸入框正上方,點擊貼紙即以排隊模式向當前會話發送預置 prompt,不打斷正在運行的 turn。
- 貼紙按長期 / 短期兩組管理,高頻任務和臨時任務分開擺放。
- 支持新增、編輯、刪除:鼠標懸停在貼紙上出現 ✏️ / 🗑 按鈕,改動立即生效並持久化,刪除有確認框。
- 首次啓動自動寫入 8 張預置貼紙到
~/.dsh/sticker-board.json,可直接增刪改。 - Host 端提供零依賴 REST API,JSON 文件持久化,寫入經單條 promise 鏈串行化,併發編輯不會損壞文件。
- Client 端爲 React 組件,註冊官方
conversation.input.dock槽位(composer 卡片上方的全寬條)。 - 只讀寫本地 JSON,不上傳任何數據。
安裝與啓用¶
從 GitHub 安裝:
dsh plugin --profile web add github:sanqiPanax/dsh-sticker-board
如果已有本地打包文件,也可以裝 tgz:
dsh plugin --profile web add ./dsh-sticker-board-0.1.1.tgz
安裝後重啓 dsh web,並在瀏覽器按 Ctrl+F5 強制刷新一次,輸入框上方出現貼紙欄即生效。首次啓動時插件會自動把 8 張預置貼紙寫入 ~/.dsh/sticker-board.json。
典型用法¶
先做最基本的動作——點擊執行:點任意貼紙,預置 prompt 以排隊模式發進當前會話,AI 立即開始幹活。當前會話有 turn 在跑時,消息會排隊等它結束,不會打斷。
再新增自己的貼紙:
- 點貼紙欄最右側的「+」按鈕;
- 填寫圖標(emoji)、名稱、分組(長期 / 短期)、任務 prompt(點擊後發給 AI 的任務描述);
- 點「保存」,新貼紙立刻出現在對應分組。
編輯和刪除:鼠標移到貼紙上,出現 ✏️ 編輯和 🗑 刪除按鈕,刪除有確認框防誤觸。
首次啓動自帶的 8 張預置貼紙如下:
| 分組 | 貼紙 | 用途 |
|---|---|---|
| 長期 | 📰 24小時科技新聞 | 過去 24h 重要科技新聞中文簡報(AI/芯片/互聯網/遊戲/硬件) |
| 長期 | ⭐ 推薦GitHub項目 | 5 個值得關注的 GitHub 項目及亮點 |
| 長期 | 📅 GitHub週報素材 | 本週週報素材收集(配圖鐵律評估) |
| 長期 | ✅ 今日覆盤 | 已完成 / 進行中 / 待辦覆盤 |
| 短期 | 📝 小黑盒草稿檢查 | 表格轉PNG / 禁鏈接 / md2docx / check_draft.py 逐項檢查 |
| 短期 | 📣 公衆號發佈檢查 | author / 標題 / 圖片佔位 / 表格渲染 / 發佈時段逐項檢查 |
| 短期 | 🐦 X平臺發言收集 | CDP 截圖收集相關方發言 |
| 短期 | 🖼️ 圖片識別 | 識別發送圖片的內容與文字 |
這些預置 prompt 是按常見工作流擬的草稿,直接用 ✏️ 改成自己的即可。
工作原理¶
Host 端在 lib/index.js 中實現,零依賴,提供貼紙 CRUD 的 REST API 和 JSON 文件持久化,首次運行自動寫入預置貼紙種子:
GET /api/sticker-board/health— 安裝探針(返回插件版本與貼紙數,驗證插件已加載)GET /api/sticker-board/stickers— 全部貼紙POST /api/sticker-board/stickers— 新增PUT /api/sticker-board/stickers/:id— 更新DELETE /api/sticker-board/stickers/:id— 刪除
數據存放在 ~/.dsh/sticker-board.json,所有寫入經過單條 promise 鏈串行化,併發編輯不會損壞文件。
Client 端在 lib/client.js 中實現,React 組件註冊官方 conversation.input.dock 槽位——這是 composer 卡片上方的全寬條,與官方 goal 插件同款座位。點擊貼紙時通過 ctx.conversation.sendSession(session, prompt, [], 'queue') 發送,走與手動輸入相同的宿主准入路徑進入當前會話。
適用場景與注意¶
適合誰:有一批每天都要跑、但不需要定時調度的固定任務的人。如果需要狀態機、cron 定時、執行記錄,用 dsh-task-board(任務看板)更合適;本插件是輕量快捷命令,沒有這些能力,兩者可以共存。
幾點注意:
- 貼紙 prompt 走的是普通排隊消息。如果需要打斷正在運行的 turn,請用輸入框的插話 / steer。
- 插件以當前 dsh 進程的權限運行,安裝前建議先到倉庫查看源碼與許可證(本項目爲 MIT)確認可信。
- 插件只讀寫本地 JSON 文件,不上傳任何數據。
如果你要自己改代碼再打包:修改後記得 bump package.json 版本號再執行 npm pack,因爲 pnpm 對同版本號的 tgz 有緩存。
結尾¶
經過上面的步驟,常用任務就從「每次手敲一大段 prompt」變成「輸入框上方點一下」。它不追求任務編排能力,只把最高頻的那一步做到零成本,定位清晰,與任務看板互補。
插件收錄於社區插件目錄:https://www.skillhub.cn/plugins/sanqiPanax/dsh-sticker-board ,源碼與 README 見 GitHub:https://github.com/sanqiPanax/dsh-sticker-board 。