dsh-global-todo 0.11.3 → 0.12.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +32 -0
- package/README.md +2 -0
- package/README.zh.md +2 -0
- package/docs/icon.svg +7 -17
- package/lib/client.js +31 -4
- package/lib/index.js +1 -1
- package/locale/en.json +1 -1
- package/locale/zh.json +1 -1
- package/package.json +7 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,35 @@
|
|
|
1
|
+
## [0.12.1] — 2026-10-21
|
|
2
|
+
|
|
3
|
+
The plugin now says what it does — in the two places people read before installing.
|
|
4
|
+
|
|
5
|
+
- **`locale/*.json` descriptions rewritten** (this is what the DSH plugins page shows): the old
|
|
6
|
+
text stopped at "attachments and one-click hand-off". The new one names the plan of steps, the
|
|
7
|
+
session read-back and the review step, in 2–3 sentences, English and Chinese kept parallel.
|
|
8
|
+
- **`package.json` description** is now one English sentence instead of an English/Chinese mashup
|
|
9
|
+
(npm truncates it, and mixed script reads badly there), plus five keywords that match how people
|
|
10
|
+
search: `todo-list`, `task-management`, `handoff`, `agent`, `productivity`.
|
|
11
|
+
- **GitHub repository description** matches the same sentence.
|
|
12
|
+
- **The 1024 Store catalog entry was updated too** — [PR #662](https://github.com/imsai-sh/awesome-deepseek-harness-plugins/pull/662)
|
|
13
|
+
(the earlier #661 conflicted against a moved main and was rebuilt, not force-pushed).
|
|
14
|
+
|
|
15
|
+
## [0.12.0] — 2026-10-21
|
|
16
|
+
|
|
17
|
+
An identity: one mark, drawn once and used everywhere.
|
|
18
|
+
|
|
19
|
+
- **The mark.** A checklist card whose top-right corner is open, with an arrow leaving through
|
|
20
|
+
the gap. It states the two things this plugin adds — there is a list, and an item leaves it for
|
|
21
|
+
a conversation. Stroke-only and `currentColor`, so the shell can render it at 16px in either
|
|
22
|
+
theme; the card's corner is deliberately broken because a closed corner plus an arrow turns
|
|
23
|
+
into mush below 24px.
|
|
24
|
+
- **`docs/icon.svg`** is the same geometry 20× on a `#14171C` tile (radius 116), plus PNG exports
|
|
25
|
+
at 16/32/48/64/128/256/512 in `docs/icons/`. A coloured status dot was designed and dropped:
|
|
26
|
+
at 128 and below it reads as a dirty pixel, not as information.
|
|
27
|
+
- **Sidebar glyph replaced** — same shape as the tile, 1.4/1.5/1.3 stroke weights, so the entry
|
|
28
|
+
point and the app icon are recognisably one thing.
|
|
29
|
+
- **The landing page is now shareable**: favicon, apple-touch icon and a 1200×630 `docs/og.png`
|
|
30
|
+
(ink tile, icon, one-liner, install command) wired through `og:*` and `twitter:*` tags. Both
|
|
31
|
+
READMEs carry the mark at 52px next to the title.
|
|
32
|
+
|
|
1
33
|
## [0.11.3] — 2026-10-21
|
|
2
34
|
|
|
3
35
|
Say where the plugin is actually listed, and make that claim checkable.
|
package/README.md
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
# dsh-global-todo
|
|
2
2
|
|
|
3
|
+
<img src="docs/icon.svg" width="52" height="52" alt="全局待办 icon: a list card with a check and an arrow leaving it">
|
|
4
|
+
|
|
3
5
|
**A cross-session todo list for DeepSeek Harness: one file you own, written by you and your
|
|
4
6
|
agent, and handed to a conversation in one click.**
|
|
5
7
|
|
package/README.zh.md
CHANGED
package/docs/icon.svg
CHANGED
|
@@ -1,19 +1,9 @@
|
|
|
1
|
-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" width="512" height="512" role="img" aria-label="
|
|
2
|
-
<
|
|
3
|
-
<rect
|
|
4
|
-
<g>
|
|
5
|
-
<
|
|
6
|
-
<path d="
|
|
7
|
-
<
|
|
8
|
-
</g>
|
|
9
|
-
<g>
|
|
10
|
-
<circle cx="152" cy="264" r="23" fill="#e7f2ef"/>
|
|
11
|
-
<path d="M141 264l8 8 15-17" fill="none" stroke="#0d6b5e" stroke-width="11" stroke-linecap="round" stroke-linejoin="round"/>
|
|
12
|
-
<rect x="198" y="254" width="132" height="20" rx="10" fill="#c8d6d1"/>
|
|
13
|
-
</g>
|
|
14
|
-
<g>
|
|
15
|
-
<circle cx="152" cy="344" r="23" fill="#f7edda"/>
|
|
16
|
-
<circle cx="152" cy="344" r="9" fill="#c98a1e"/>
|
|
17
|
-
<rect x="198" y="334" width="150" height="20" rx="10" fill="#d8e2de"/>
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" width="512" height="512" role="img" aria-label="全局待办 / dsh-global-todo">
|
|
2
|
+
<title>全局待办 — 跨会话待办清单</title>
|
|
3
|
+
<rect width="512" height="512" rx="116" fill="#14171C"/>
|
|
4
|
+
<g transform="translate(96 96) scale(20)" fill="none" stroke="#FFFFFF" stroke-linecap="round" stroke-linejoin="round">
|
|
5
|
+
<path d="M9.2 2.4H4.4A1.9 1.9 0 0 0 2.5 4.3v7.4a1.9 1.9 0 0 0 1.9 1.9h6.2a1.9 1.9 0 0 0 1.9-1.9V8.4" stroke-width="1.4"/>
|
|
6
|
+
<path d="M4.9 8.5l1.9 1.9 3.5-4.3" stroke-width="1.5"/>
|
|
7
|
+
<path d="M10.4 4.6h3.1m0 0l-1.2-1.2m1.2 1.2l-1.2 1.2" stroke-width="1.3"/>
|
|
18
8
|
</g>
|
|
19
9
|
</svg>
|
package/lib/client.js
CHANGED
|
@@ -50,7 +50,7 @@ window.__ModuleLoader__.load({
|
|
|
50
50
|
* different mechanisms (restart vs. hot reload), so "which one am I looking
|
|
51
51
|
* at" needs an answer that the bundle itself carries.
|
|
52
52
|
*/
|
|
53
|
-
const UI_REV = '
|
|
53
|
+
const UI_REV = 'ui52'
|
|
54
54
|
/** Last language resolved for the shell; module-level so a fetch failure can be worded too. */
|
|
55
55
|
let activeLang = 'zh'
|
|
56
56
|
|
|
@@ -4870,14 +4870,41 @@ button.gt-chip[data-on="1"] { color: var(--dsw-alias-label-primary); border-colo
|
|
|
4870
4870
|
}
|
|
4871
4871
|
|
|
4872
4872
|
/** @param {{ size?: number, active?: boolean }} props */
|
|
4873
|
+
/**
|
|
4874
|
+
* The sidebar mark: a list that leaves the panel.
|
|
4875
|
+
*
|
|
4876
|
+
* One card, one check, one arrow crossing the card's open corner — the two facts this
|
|
4877
|
+
* plugin adds are both here (a list, and handing an item to a conversation). Stroke-only
|
|
4878
|
+
* and `currentColor` because the shell renders it at 16px in either theme; the same
|
|
4879
|
+
* geometry is the app icon (docs/icon.svg), scaled 20× on a #14171C tile.
|
|
4880
|
+
*/
|
|
4873
4881
|
function Glyph(props) {
|
|
4874
4882
|
const size = props?.size ?? 16
|
|
4875
4883
|
return h(
|
|
4876
4884
|
'svg',
|
|
4877
4885
|
{ width: size, height: size, viewBox: '0 0 16 16', fill: 'none', 'aria-hidden': 'true' },
|
|
4878
|
-
|
|
4879
|
-
|
|
4880
|
-
h('path', {
|
|
4886
|
+
// The card is open at its top-right corner: that gap is where the arrow leaves,
|
|
4887
|
+
// and closing it would make both shapes mush together at 16px.
|
|
4888
|
+
h('path', {
|
|
4889
|
+
d: 'M9.2 2.4H4.4A1.9 1.9 0 0 0 2.5 4.3v7.4a1.9 1.9 0 0 0 1.9 1.9h6.2a1.9 1.9 0 0 0 1.9-1.9V8.4',
|
|
4890
|
+
stroke: 'currentColor',
|
|
4891
|
+
strokeWidth: 1.4,
|
|
4892
|
+
strokeLinecap: 'round',
|
|
4893
|
+
}),
|
|
4894
|
+
h('path', {
|
|
4895
|
+
d: 'M4.9 8.5l1.9 1.9 3.5-4.3',
|
|
4896
|
+
stroke: 'currentColor',
|
|
4897
|
+
strokeWidth: 1.5,
|
|
4898
|
+
strokeLinecap: 'round',
|
|
4899
|
+
strokeLinejoin: 'round',
|
|
4900
|
+
}),
|
|
4901
|
+
h('path', {
|
|
4902
|
+
d: 'M10.4 4.6h3.1m0 0l-1.2-1.2m1.2 1.2l-1.2 1.2',
|
|
4903
|
+
stroke: 'currentColor',
|
|
4904
|
+
strokeWidth: 1.3,
|
|
4905
|
+
strokeLinecap: 'round',
|
|
4906
|
+
strokeLinejoin: 'round',
|
|
4907
|
+
}),
|
|
4881
4908
|
)
|
|
4882
4909
|
}
|
|
4883
4910
|
|
package/lib/index.js
CHANGED
|
@@ -36,7 +36,7 @@ import { createStore, resolveStorePath } from './store.js'
|
|
|
36
36
|
import { createTools } from './tools.js'
|
|
37
37
|
|
|
38
38
|
/** Must equal `package.json`'s version; `npm run check` enforces that. */
|
|
39
|
-
export const VERSION = '0.
|
|
39
|
+
export const VERSION = '0.12.1'
|
|
40
40
|
|
|
41
41
|
/** Plugin id. Also the Loader row id in `cordis.patch.yml`. */
|
|
42
42
|
export const name = 'dsh-global-todo'
|
package/locale/en.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"meta": {
|
|
3
3
|
"title": "Global Todos",
|
|
4
|
-
"description": "One
|
|
4
|
+
"description": "Cross-session todos for DeepSeek Harness. One JSON file you own; a person and an agent write the same records. Every item keeps when it was added, a description, attached documents and links, an optional plan of steps, and the sentence it came from. Hand it to a conversation in one click - the steps travel as a numbered plan - then read back what that conversation last said. An agent's \"done\" stays a claim until you confirm it."
|
|
5
5
|
}
|
|
6
6
|
}
|
package/locale/zh.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"meta": {
|
|
3
3
|
"title": "全局待办",
|
|
4
|
-
"description": "
|
|
4
|
+
"description": "DeepSeek Harness 的跨会话待办清单。一份属于你的 JSON 文件,人和 Agent 读写同一条记录:每条记下加入时间、描述、可挂文档与地址、可选的步骤计划,以及它来自哪句原话。一键交给某个对话继续干(步骤会作为编号计划一起交出去),随时回读那边最后说了什么;Agent 标的「完成」只是声明,你确认之后才算数。"
|
|
5
5
|
}
|
|
6
6
|
}
|
package/package.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "dsh-global-todo",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.12.1",
|
|
4
4
|
"icon": "./docs/icon.svg",
|
|
5
|
-
"description": "
|
|
5
|
+
"description": "Cross-session todo list for DeepSeek Harness: one JSON file a person and an agent both write to, with step plans that ship as a numbered hand-off, session read-back, and a human confirmation before an agent's \"done\" counts.",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"license": "MIT",
|
|
8
8
|
"author": "LUgABeEEE",
|
|
@@ -22,7 +22,12 @@
|
|
|
22
22
|
"cordis",
|
|
23
23
|
"todo",
|
|
24
24
|
"todos",
|
|
25
|
+
"todo-list",
|
|
25
26
|
"task-list",
|
|
27
|
+
"task-management",
|
|
28
|
+
"handoff",
|
|
29
|
+
"agent",
|
|
30
|
+
"productivity",
|
|
26
31
|
"待办",
|
|
27
32
|
"全局待办"
|
|
28
33
|
],
|