READMESource: main@8d4708ba
dsh-todo-list
DeepSeek Harness 右侧边栏里的轻量待办清单 —— 纯客户端 UI,不进会话上下文,不给模型注册任何工具。
A tiny, local-first TODO list that lives as a native tab in the DeepSeek Harness right sidebar. Pure client UI: no model-facing tools, nothing added to the conversation, and every task stays in your browser.
中文
功能
- 右侧边栏面板:在右栏的
+菜单里出现「待办清单」,也可以直接点会话头部的小勾按钮打开。 - 添加 / 完成 / 删除:回车或点
+添加;点击左侧方框标记完成;悬停行尾出现删除按钮;底部可一键「清除已完成」。 - 平滑拖动排序:按住任意一行上下拖动,其余行跟随位移,松手落位;拖动到列表上下边缘会自动滚动。
- 本地持久化:数据写在
localStorage(键名dsh-todo-list.v1),刷新、重启、换会话都不会丢;多个窗口之间自动同步。 - 贴合主题:配色、边框、字号全部取自 DSH 的
--dsw-alias-*主题变量,深浅色主题自动跟随;文案走 locale 服务(中 / 英)。
安装
# GitHub 仓库
dsh plugin add github:Minajka/dsh-todo-list
# 或者本地源码目录(开发时)
dsh plugin add /path/to/dsh-todo-list
安装后刷新页面(或重启桌面端)即可在右侧边栏看到。
使用
- 会话页面右上角点「勾」图标 —— 或者打开右侧边栏,点
+,选择「待办清单」。 - 在输入框写下任务,回车添加。
- 拖动行调整顺序,松手即保存。
数据
- 只保存在本机浏览器,不上传、不写文件、不发送给模型。
- 清除方式:删除任务,或在浏览器开发者工具里清掉
dsh-todo-list.v1。
English
Features
- Right-sidebar panel — shows up as “TODO list” in the right column's
+menu, and can be opened from the small check button in the conversation header. - Add / complete / delete — type and press Enter; click the box to complete; hover a row for the delete button; “Clear completed” in the footer.
- Smooth drag reordering — grab any row, the others glide out of the way; the list auto-scrolls near its edges.
- Local persistence — stored in
localStorageunderdsh-todo-list.v1, surviving reloads, restarts and session switches; synced across windows. - Theme native — every colour comes from the
--dsw-alias-*tokens, so light and dark themes just work; strings go through the locale service (zh / en).
Install
dsh plugin add github:Minajka/dsh-todo-list
Then reload the page (or restart the desktop app).
Notes
- No build step, no dependencies, no install scripts: the plugin is plain
JavaScript, so installing from GitHub works without an allowlisted
prepare. - No model-facing tools are registered — this is UI only.
Structure
| File | Purpose |
|---|---|
package.json |
DSH bundle manifest (dsh.bundle + dsh.client) |
cordis.patch.yml |
one bundle row, inserting the plugin |
index.js |
host half: deliberately empty |
client.js |
the whole plugin: tab type, panel component, store, styles |
locale/*.json |
display metadata (title / description) |
icon.svg |
original artwork |
License
MIT
No comments yet. Be the first to write one.