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 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
@@ -1,5 +1,7 @@
1
1
  # dsh-global-todo · 全局待办
2
2
 
3
+ <img src="docs/icon.svg" width="52" height="52" alt="全局待办图标:一张打了勾、并有箭头离开的清单卡片">
4
+
3
5
  **一份跨会话的待办清单:一个属于你的文件,你和 Agent 读写同一份,一键交给某个对话继续干。**
4
6
 
5
7
  三件会话级计划做不到的事:
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="Global todos">
2
- <rect width="512" height="512" rx="116" fill="#0d6b5e"/>
3
- <rect x="92" y="104" width="328" height="304" rx="32" fill="#f4faf8"/>
4
- <g>
5
- <circle cx="152" cy="184" r="23" fill="#e7f2ef"/>
6
- <path d="M141 184l8 8 15-17" fill="none" stroke="#0d6b5e" stroke-width="11" stroke-linecap="round" stroke-linejoin="round"/>
7
- <rect x="198" y="174" width="168" height="20" rx="10" fill="#c8d6d1"/>
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 = 'ui51'
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
- h('rect', { x: 1.6, y: 2.4, width: 12.8, height: 11.2, rx: 2.4, stroke: 'currentColor', strokeWidth: 1.3 }),
4879
- h('path', { d: 'M4.6 6.1l1.3 1.3 2.4-2.6', stroke: 'currentColor', strokeWidth: 1.3, strokeLinecap: 'round', strokeLinejoin: 'round' }),
4880
- h('path', { d: 'M4.6 10.6h6.8', stroke: 'currentColor', strokeWidth: 1.3, strokeLinecap: 'round' }),
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.11.3'
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 todo list across sessions: it records when each item was added, attaches documents and links, and hands an item to an agent session in one click. The human and the agent write the same list."
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": "跨会话一份待办清单:记录加入时间,可挂文档与地址,可一键交给 Agent 继续干。人和 Agent 读写同一份。"
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.11.3",
3
+ "version": "0.12.1",
4
4
  "icon": "./docs/icon.svg",
5
- "description": "Global, cross-session todos for DeepSeek Harness: one list owned by the human and the agent together, with creation time, attached documents and links, and one-click hand-off to an agent session. 全局待办:跨会话一份清单,记录加入时间,可挂文档与地址,可一键交给 Agent 继续干。",
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
  ],