pi-anchor 0.6.1 → 1.0.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/README.md CHANGED
@@ -6,10 +6,10 @@
6
6
  [![npm downloads](https://img.shields.io/npm/dm/pi-anchor?color=22c55e&label=downloads)](https://www.npmjs.com/package/pi-anchor)
7
7
  [![GitHub stars](https://img.shields.io/github/stars/3ZEROS12/anchor?style=flat&color=f59e0b)](https://github.com/3ZEROS12/anchor/stargazers)
8
8
  [![CI Status](https://github.com/3ZEROS12/anchor/actions/workflows/ci.yml/badge.svg)](https://github.com/3ZEROS12/anchor/actions/workflows/ci.yml)
9
- [![Tests: 11 Passed](https://img.shields.io/badge/Tests-11%20Passed-22c55e.svg)](tests/store.test.ts)
9
+ [![Tests: 15 Passed](https://img.shields.io/badge/Tests-15%20Passed-22c55e.svg)](tests/store.test.ts)
10
10
  [![License: MIT](https://img.shields.io/badge/License-MIT-f97316.svg)](LICENSE)
11
11
 
12
- **English** | [简体中文](./README_zh.md)
12
+ **English** | [日本語](./README_ja.md) | [简体中文](./README_zh.md)
13
13
 
14
14
  ```bash
15
15
  pi install npm:pi-anchor
@@ -22,9 +22,14 @@ pi install npm:pi-anchor
22
22
  ```text
23
23
  ┌─ [aboveEditor stays 100% free for pi-lingual and other HUD widgets] ────────────┐
24
24
  ╭─┴─ Pi Editor ────────────────────────────────────────────────────────────────────╮
25
- │ ❯ pin: Refactor auth flow: 1. Extract interface 2. HttpOnly cookie 3. Unit tests │
25
+ │ ❯ pin: Refactor auth: 1. Extract interface 2. HttpOnly cookie 3. Unit tests │
26
26
  ╰─┬────────────────────────────────────────────────────────────────────────────────╯
27
- └─► ⌖ #1 [■■□□ 2/4] Refactor auth flow ▸ Unit tests (app · auth.ts ↪)
27
+ ├─► ⌖ #1 [■□□□ 1/3] Refactor auth (app · auth.ts ↪) [Alt+A fold]
28
+ │ ├─ ✓ 1. Extract auth interface (strikethrough)
29
+ │ ├─ ◐ 2. HttpOnly cookie (editing auth.ts)
30
+ │ ├─ ○ 3. Unit tests ⛓ #2
31
+ │ └─ 📌 #2 Double-check gateway timeout fallback (3h ago)
32
+ └─► (Folded via Alt+A): ⌖ #1 [■□□□ 1/3] Refactor auth ▸ HttpOnly cookie (auth.ts ↪)
28
33
  ```
29
34
 
30
35
  ---
@@ -112,7 +117,7 @@ In `v0.4` and `v0.5`, I threw away 60% of the codebase and rebuilt Anchor around
112
117
 
113
118
  ```bash
114
119
  npm run typecheck # Strict tsc --noEmit check (0 errors)
115
- npm test # Native Node test runner (11/11 passing)
120
+ npm test # Native Node test runner (15/15 passing)
116
121
  npm run build # Dual ESM/CJS compilation via tsup + declaration emit
117
122
  ```
118
123
 
@@ -127,7 +132,7 @@ Each extension occupies a distinct terminal slot (`aboveEditor`, `belowEditor`,
127
132
  | **[`pi-lingual`](https://github.com/3ZEROS12/pi-lingual)** | `二 ⇄ two` `aboveEditor` HUD (≤9 lines, UAX #11 tree layout) & prompt-to-English transformer (0 chat history tokens) | `pi install npm:pi-lingual` |
128
133
  | **[`toolflow`](https://github.com/3ZEROS12/toolflow)** | `⌬` Runtime tool hooks — stage-gated MCP mounting & >40-line log dehydration to disk (-95% log tokens) | `pi install npm:toolflow` |
129
134
  | **[`pi-tui-status-beautifier`](https://github.com/3ZEROS12/pi-tui-status-beautifier)** | `status-only` footer hook — 6 badge presets, `<80`-col idle folding `(+N idle)`, 0 render-loop disk reads | `pi install npm:pi-tui-status-beautifier` |
130
- | **[`pi-anchor`](https://github.com/3ZEROS12/anchor)** *(Current)* | `⌖` `belowEditor` 1-line sticky strip, 0ms `pin:` intercept, `[■■□□]` step bar & `↪` session jump | `pi install npm:pi-anchor` |
135
+ | **[`pi-anchor`](https://github.com/3ZEROS12/anchor)** *(Current)* | `⌖` `belowEditor` Task & Todo Tree Dock (`Alt+A` fold), Auto-Todo Bridge, 0ms `pin:` notes & `/back` session teleport | `pi install npm:pi-anchor` |
131
136
 
132
137
  ---
133
138
 
package/README_zh.md CHANGED
@@ -6,10 +6,10 @@
6
6
  [![npm downloads](https://img.shields.io/npm/dm/pi-anchor?color=22c55e&label=downloads)](https://www.npmjs.com/package/pi-anchor)
7
7
  [![GitHub stars](https://img.shields.io/github/stars/3ZEROS12/anchor?style=flat&color=f59e0b)](https://github.com/3ZEROS12/anchor/stargazers)
8
8
  [![CI 状态](https://github.com/3ZEROS12/anchor/actions/workflows/ci.yml/badge.svg)](https://github.com/3ZEROS12/anchor/actions/workflows/ci.yml)
9
- [![Tests: 11 Passed](https://img.shields.io/badge/Tests-11%20通过-22c55e.svg)](tests/store.test.ts)
9
+ [![Tests: 15 Passed](https://img.shields.io/badge/Tests-15%20通过-22c55e.svg)](tests/store.test.ts)
10
10
  [![开源协议: MIT](https://img.shields.io/badge/开源协议-MIT-f97316.svg)](LICENSE)
11
11
 
12
- [English](./README.md) | **简体中文**
12
+ [English](./README.md) | [日本語](./README_ja.md) | **简体中文**
13
13
 
14
14
  ```bash
15
15
  pi install npm:pi-anchor
@@ -22,9 +22,14 @@ pi install npm:pi-anchor
22
22
  ```text
23
23
  ┌─ [输入框上方 aboveEditor 完全留给 pi-lingual 等插件,上下零冲突] ─────────────┐
24
24
  ╭─┴─ Pi 输入框 ────────────────────────────────────────────────────────────────────╮
25
- │ ❯ 便签: 重构登录鉴权流: 1. 抽出接口 2. 替换Cookie 3. 补单测 4. 压测 │
25
+ │ ❯ 便签: 重构鉴权流: 1. 抽出接口 2. 替换HttpOnly Cookie 3. 补齐集成单测 │
26
26
  ╰─┬────────────────────────────────────────────────────────────────────────────────╯
27
- └─► ⌖ #1 [■■□□ 2/4] 重构登录鉴权流 ▸ 补单测 (app · auth.ts ↪)
27
+ ├─► ⌖ #1 [■□□□ 1/3] 重构鉴权流 (app · auth.ts ↪) [Alt+A 折叠]
28
+ │ ├─ ✓ 1. 抽出接口 (删除线,下一轮自动收起)
29
+ │ ├─ ◐ 2. 替换HttpOnly Cookie (editing auth.ts)
30
+ │ ├─ ○ 3. 补齐集成单测 ⛓ #2
31
+ │ └─ 📌 #2 检查网关超时降级重试 (3h ago)
32
+ └─► (按 Alt+A 一键折叠为 1 行): ⌖ #1 [■□□□ 1/3] 重构鉴权流 ▸ 替换Cookie (auth.ts ↪)
28
33
  ```
29
34
 
30
35
  ---
@@ -112,7 +117,7 @@ Anchor 显式指定 `{ placement: "belowEditor" }` 挂载在输入框下方,
112
117
 
113
118
  ```bash
114
119
  npm run typecheck # TypeScript 严格类型检查 (0 错误)
115
- npm test # 原生 Node 测试运行器 (11/11 全绿通过)
120
+ npm test # 原生 Node 测试运行器 (15/15 全绿通过)
116
121
  npm run build # tsup 双格式打包与类型声明生成
117
122
  ```
118
123
 
@@ -127,7 +132,7 @@ npm run build # tsup 双格式打包与类型声明生成
127
132
  | **[`pi-lingual`](https://github.com/3ZEROS12/pi-lingual)** | `二 ⇄ two` `aboveEditor` 双语伴学视窗(≤9 行 UAX #11 树状排版)与母语提示词转写(0 会话历史 Token 注入) | `pi install npm:pi-lingual` |
128
133
  | **[`toolflow`](https://github.com/3ZEROS12/toolflow)** | `⌬` 运行时工具钩子 —— 按阶段动态挂载重型 MCP,>40 行终端长日志自动落盘脱水(削减 95% 日志 Token) | `pi install npm:toolflow` |
129
134
  | **[`pi-tui-status-beautifier`](https://github.com/3ZEROS12/pi-tui-status-beautifier)** | `status-only` 底栏微钩子 —— 6 套徽章预设、`<80` 列窄屏折叠 `(+N idle)`、重绘循环 0 磁盘读取 | `pi install npm:pi-tui-status-beautifier` |
130
- | **[`pi-anchor`](https://github.com/3ZEROS12/anchor)** *(当前)* | `⌖` `belowEditor` 1 行常驻便签条、0ms `pin:` 输入拦截、迷你进度条 `[■■□□]` 与原会话跳转 `↪` | `pi install npm:pi-anchor` |
135
+ | **[`pi-anchor`](https://github.com/3ZEROS12/anchor)** *(当前)* | `⌖` `belowEditor` 跨会话任务树与电子便签(`Alt+A` 折叠)、`todo` 自动断点续传、0ms `pin:` 瞬贴与 `/back` 会话穿越 | `pi install npm:pi-anchor` |
131
136
 
132
137
  ---
133
138
 
@@ -1,4 +1,4 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 840 410" width="840" height="410">
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 840 420" width="840" height="420">
2
2
  <defs>
3
3
  <filter id="shadow" x="-5%" y="-5%" width="110%" height="115%" filterUnits="userSpaceOnUse">
4
4
  <feDropShadow dx="0" dy="12" stdDeviation="16" flood-color="#000000" flood-opacity="0.45" />
@@ -10,79 +10,82 @@
10
10
  </defs>
11
11
 
12
12
  <g filter="url(#shadow)">
13
- <rect x="20" y="15" width="800" height="370" rx="12" fill="#1e2326" stroke="#343f44" stroke-width="1.2" />
13
+ <rect x="20" y="15" width="800" height="385" rx="12" fill="#1e2326" stroke="#343f44" stroke-width="1.2" />
14
14
  <path d="M 20,27 A 12,12 0 0,1 32,15 L 808,15 A 12,12 0 0,1 820,27 L 820,52 L 20,52 Z" fill="url(#headerGrad)" stroke="#343f44" stroke-width="1" />
15
15
  <line x1="20" y1="52" x2="820" y2="52" stroke="#2d353b" stroke-width="1" />
16
16
  <circle cx="42" cy="33.5" r="5.5" fill="#e67e80" />
17
17
  <circle cx="60" cy="33.5" r="5.5" fill="#dbbc7f" />
18
18
  <circle cx="78" cy="33.5" r="5.5" fill="#a7c080" />
19
19
  <text x="420" y="38" text-anchor="middle" font-family="-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif" font-size="12" font-weight="500" fill="#859289">
20
- ⌖ anchor (v0.5.0) · Below-Editor Sticky Strip · Progress Bar · Session Teleport
20
+ ⌖ anchor v1.0 · Cross-Session Todo Dock · Below-Editor Tree Overlay · Session Teleport
21
21
  </text>
22
22
  </g>
23
23
 
24
24
  <g font-family="'JetBrains Mono', 'Fira Code', 'Cascadia Code', Consolas, monospace" font-size="13" xml:space="preserve">
25
- <text x="45" y="84">
26
- <tspan fill="#7fbbb3" font-weight="bold">⌖ Notes (3):</tspan>
25
+ <!-- Simulated Pi Input Box -->
26
+ <rect x="45" y="72" width="750" height="42" rx="6" fill="#232a2e" stroke="#4f5b58" stroke-width="1.2" />
27
+ <text x="62" y="98">
28
+ <tspan fill="#a7c080" font-weight="bold">❯ </tspan>
29
+ <tspan fill="#d3c6aa">pin: Refactor auth: 1. Extract interface 2. HttpOnly cookie 3. Add tests</tspan>
27
30
  </text>
28
31
 
29
- <text x="45" y="116">
30
- <tspan fill="#859289"> 01 </tspan>
31
- <tspan fill="#a7c080" font-weight="bold">[■■□□ 2/4] </tspan>
32
- <tspan fill="#d3c6aa">Refactor auth flow </tspan>
33
- <tspan fill="#7fbbb3">app · auth.ts ↪ </tspan>
34
- <tspan fill="#7a8478">25m ago</tspan>
32
+ <!-- Below-Editor Expanded Tree Dock -->
33
+ <rect x="45" y="124" width="750" height="142" rx="8" fill="#232a2e" stroke="#a7c080" stroke-width="1" />
34
+ <text x="62" y="149">
35
+ <tspan fill="#a7c080" font-weight="bold">⌖ </tspan>
36
+ <tspan fill="#859289">#1 </tspan>
37
+ <tspan fill="#dbbc7f" font-weight="bold">[■□□□ 1/3] </tspan>
38
+ <tspan fill="#d3c6aa" font-weight="bold">Refactor auth </tspan>
39
+ <tspan fill="#7fbbb3">(app · auth.ts ↪)</tspan>
40
+ <tspan fill="#56635f"> [Alt+A fold]</tspan>
35
41
  </text>
36
-
37
- <text x="45" y="144">
38
- <tspan fill="#859289"> 02 </tspan>
39
- <tspan fill="#d3c6aa">Double-check rate limit fallback on timeout </tspan>
40
- <tspan fill="#7fbbb3">app · gateway.ts ↪ </tspan>
41
- <tspan fill="#7a8478">3h ago</tspan>
42
+ <text x="62" y="175">
43
+ <tspan fill="#56635f">├─ </tspan>
44
+ <tspan fill="#a7c080">✓ </tspan>
45
+ <tspan fill="#7a8478">1. </tspan>
46
+ <tspan fill="#7a8478" text-decoration="line-through">Extract auth interface</tspan>
42
47
  </text>
43
-
44
- <text x="45" y="172">
45
- <tspan fill="#859289"> 03 </tspan>
46
- <tspan fill="#859289">Read external architecture notes first </tspan>
47
- <tspan fill="#7a8478">College/优化 · notes.md </tspan>
48
- <tspan fill="#56635f">8d ago · quiet</tspan>
48
+ <text x="62" y="201">
49
+ <tspan fill="#56635f">├─ </tspan>
50
+ <tspan fill="#dbbc7f">◐ </tspan>
51
+ <tspan fill="#7a8478">2. </tspan>
52
+ <tspan fill="#a7c080" font-weight="bold">Switch token to HttpOnly cookie </tspan>
53
+ <tspan fill="#859289">(editing auth.ts)</tspan>
49
54
  </text>
50
-
51
- <!-- Simulated Pi Input Box + Below-Editor Persistent Sticky Strip -->
52
- <rect x="45" y="204" width="750" height="44" rx="6" fill="#232a2e" stroke="#4f5b58" stroke-width="1.2" />
53
- <text x="62" y="231">
54
- <tspan fill="#a7c080" font-weight="bold">❯ </tspan>
55
- <tspan fill="#d3c6aa">pin: Refactor auth flow: 1. Extract interface 2. HttpOnly cookie 3. Unit tests</tspan>
55
+ <text x="62" y="227">
56
+ <tspan fill="#56635f">├─ </tspan>
57
+ <tspan fill="#7a8478">○ 3. </tspan>
58
+ <tspan fill="#d3c6aa">Add integration tests </tspan>
59
+ <tspan fill="#859289">⛓ #2</tspan>
60
+ </text>
61
+ <text x="62" y="251">
62
+ <tspan fill="#56635f">└─ </tspan>
63
+ <tspan fill="#7a8478">+1 done │ 📌 #2 Check gateway timeout fallback (3h ago)</tspan>
56
64
  </text>
57
65
 
58
- <!-- Below-Editor Sticky Strip -->
59
- <rect x="45" y="256" width="750" height="36" rx="6" fill="#292b28" stroke="#a7c080" stroke-width="1" stroke-dasharray="4,3" />
60
- <text x="62" y="279">
66
+ <!-- Collapsed 1-Line Mode Preview -->
67
+ <text x="45" y="294" fill="#859289" font-size="12">Press `Alt+A` (or `/anchor fold`) to collapse into a 1-line strip:</text>
68
+ <rect x="45" y="304" width="750" height="34" rx="6" fill="#292b28" stroke="#3a464c" stroke-width="1" />
69
+ <text x="62" y="326">
61
70
  <tspan fill="#a7c080" font-weight="bold">⌖ </tspan>
62
71
  <tspan fill="#859289">#1 </tspan>
63
- <tspan fill="#dbbc7f" font-weight="bold">[■■□□ 2/4] </tspan>
64
- <tspan fill="#d3c6aa">Refactor auth flow </tspan>
72
+ <tspan fill="#dbbc7f" font-weight="bold">[■□□□ 1/3] </tspan>
73
+ <tspan fill="#d3c6aa">Refactor auth </tspan>
65
74
  <tspan fill="#7fbbb3">▸ HttpOnly cookie </tspan>
66
- <tspan fill="#859289">(app · auth.ts ↪)</tspan>
75
+ <tspan fill="#859289">(editing auth.ts) (app · auth.ts ↪)</tspan>
67
76
  </text>
68
77
 
69
- <text x="45" y="324" fill="#859289">
70
- <tspan> • </tspan>
71
- <tspan fill="#d3c6aa" font-weight="bold">0ms Instant Stick</tspan>
72
- <tspan>: Type </tspan>
73
- <tspan fill="#7fbbb3">`pin: &lt;note&gt;`</tspan>
74
- <tspan> (or </tspan>
75
- <tspan fill="#7fbbb3">`/pin`</tspan>
76
- <tspan>) — docked below editor, never collides with aboveEditor HUDs.</tspan>
77
- </text>
78
- <text x="45" y="348" fill="#859289">
79
- <tspan> • </tspan>
80
- <tspan fill="#d3c6aa" font-weight="bold">Session Teleport (↪)</tspan>
81
- <tspan>: Select any note in </tspan>
82
- <tspan fill="#7fbbb3">`/anchor`</tspan>
83
- <tspan> or run </tspan>
84
- <tspan fill="#7fbbb3">`/anchor jump 1`</tspan>
85
- <tspan> to resume its conversation.</tspan>
78
+ <text x="45" y="370" fill="#7a8478">
79
+ <tspan> Commands: </tspan>
80
+ <tspan fill="#7fbbb3" font-weight="bold">`pin: &lt;note&gt;`</tspan>
81
+ <tspan> · </tspan>
82
+ <tspan fill="#7fbbb3" font-weight="bold">`/anchor`</tspan>
83
+ <tspan> · </tspan>
84
+ <tspan fill="#7fbbb3" font-weight="bold">`/step 1`</tspan>
85
+ <tspan> · </tspan>
86
+ <tspan fill="#7fbbb3" font-weight="bold">`/back`</tspan>
87
+ <tspan> (resume session ↪) · </tspan>
88
+ <tspan fill="#7fbbb3" font-weight="bold">`/done 1`</tspan>
86
89
  </text>
87
90
  </g>
88
91
  </svg>
@@ -1,4 +1,4 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 840 410" width="840" height="410">
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 840 420" width="840" height="420">
2
2
  <defs>
3
3
  <filter id="shadow" x="-5%" y="-5%" width="110%" height="115%" filterUnits="userSpaceOnUse">
4
4
  <feDropShadow dx="0" dy="12" stdDeviation="16" flood-color="#000000" flood-opacity="0.45" />
@@ -10,79 +10,82 @@
10
10
  </defs>
11
11
 
12
12
  <g filter="url(#shadow)">
13
- <rect x="20" y="15" width="800" height="370" rx="12" fill="#1e2326" stroke="#343f44" stroke-width="1.2" />
13
+ <rect x="20" y="15" width="800" height="385" rx="12" fill="#1e2326" stroke="#343f44" stroke-width="1.2" />
14
14
  <path d="M 20,27 A 12,12 0 0,1 32,15 L 808,15 A 12,12 0 0,1 820,27 L 820,52 L 20,52 Z" fill="url(#headerGrad)" stroke="#343f44" stroke-width="1" />
15
15
  <line x1="20" y1="52" x2="820" y2="52" stroke="#2d353b" stroke-width="1" />
16
16
  <circle cx="42" cy="33.5" r="5.5" fill="#e67e80" />
17
17
  <circle cx="60" cy="33.5" r="5.5" fill="#dbbc7f" />
18
18
  <circle cx="78" cy="33.5" r="5.5" fill="#a7c080" />
19
19
  <text x="420" y="38" text-anchor="middle" font-family="-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif" font-size="12" font-weight="500" fill="#859289">
20
- ⌖ anchor (v0.5.0) · 输入框下方常驻便签条 · 迷你进度条 · 原对话一键穿越
20
+ ⌖ anchor v1.0 · 跨会话 Todo 施工坞 · 输入框下方树状进度面板 · 原对话一键穿越
21
21
  </text>
22
22
  </g>
23
23
 
24
24
  <g font-family="'JetBrains Mono', 'Fira Code', 'Cascadia Code', Consolas, monospace" font-size="13" xml:space="preserve">
25
- <text x="45" y="84">
26
- <tspan fill="#7fbbb3" font-weight="bold">⌖ Notes (3):</tspan>
25
+ <!-- Simulated Pi Input Box -->
26
+ <rect x="45" y="72" width="750" height="42" rx="6" fill="#232a2e" stroke="#4f5b58" stroke-width="1.2" />
27
+ <text x="62" y="98">
28
+ <tspan fill="#a7c080" font-weight="bold">❯ </tspan>
29
+ <tspan fill="#d3c6aa">便签: 重构鉴权流: 1. 抽出接口 2. 替换HttpOnly Cookie 3. 补齐集成单测</tspan>
27
30
  </text>
28
31
 
29
- <text x="45" y="116">
30
- <tspan fill="#859289"> 01 </tspan>
31
- <tspan fill="#a7c080" font-weight="bold">[■■□□ 2/4] </tspan>
32
- <tspan fill="#d3c6aa">重构登录鉴权流 </tspan>
33
- <tspan fill="#7fbbb3">app · auth.ts ↪ </tspan>
34
- <tspan fill="#7a8478">25m ago</tspan>
32
+ <!-- Below-Editor Expanded Tree Dock -->
33
+ <rect x="45" y="124" width="750" height="142" rx="8" fill="#232a2e" stroke="#a7c080" stroke-width="1" />
34
+ <text x="62" y="149">
35
+ <tspan fill="#a7c080" font-weight="bold">⌖ </tspan>
36
+ <tspan fill="#859289">#1 </tspan>
37
+ <tspan fill="#dbbc7f" font-weight="bold">[■□□□ 1/3] </tspan>
38
+ <tspan fill="#d3c6aa" font-weight="bold">重构鉴权流 </tspan>
39
+ <tspan fill="#7fbbb3">(app · auth.ts ↪)</tspan>
40
+ <tspan fill="#56635f"> [Alt+A 折叠]</tspan>
35
41
  </text>
36
-
37
- <text x="45" y="144">
38
- <tspan fill="#859289"> 02 </tspan>
39
- <tspan fill="#d3c6aa">检查网关超时后的降级重试边界 </tspan>
40
- <tspan fill="#7fbbb3">app · gateway.ts ↪ </tspan>
41
- <tspan fill="#7a8478">3h ago</tspan>
42
+ <text x="62" y="175">
43
+ <tspan fill="#56635f">├─ </tspan>
44
+ <tspan fill="#a7c080">✓ </tspan>
45
+ <tspan fill="#7a8478">1. </tspan>
46
+ <tspan fill="#7a8478" text-decoration="line-through">抽出接口</tspan>
42
47
  </text>
43
-
44
- <text x="45" y="172">
45
- <tspan fill="#859289"> 03 </tspan>
46
- <tspan fill="#859289">College 重构前置查阅外部架构参考库 </tspan>
47
- <tspan fill="#7a8478">College/优化 · notes.md </tspan>
48
- <tspan fill="#56635f">8d ago · quiet</tspan>
48
+ <text x="62" y="201">
49
+ <tspan fill="#56635f">├─ </tspan>
50
+ <tspan fill="#dbbc7f">◐ </tspan>
51
+ <tspan fill="#7a8478">2. </tspan>
52
+ <tspan fill="#a7c080" font-weight="bold">替换HttpOnly Cookie </tspan>
53
+ <tspan fill="#859289">(editing auth.ts)</tspan>
49
54
  </text>
50
-
51
- <!-- Simulated Pi Input Box + Below-Editor Persistent Sticky Strip -->
52
- <rect x="45" y="204" width="750" height="44" rx="6" fill="#232a2e" stroke="#4f5b58" stroke-width="1.2" />
53
- <text x="62" y="231">
54
- <tspan fill="#a7c080" font-weight="bold">❯ </tspan>
55
- <tspan fill="#d3c6aa">便签: 重构登录鉴权流: 1. 抽出接口 2. 替换Cookie 3. 补单测 4. 压测</tspan>
55
+ <text x="62" y="227">
56
+ <tspan fill="#56635f">├─ </tspan>
57
+ <tspan fill="#7a8478">○ 3. </tspan>
58
+ <tspan fill="#d3c6aa">补齐集成单测 </tspan>
59
+ <tspan fill="#859289">⛓ #2</tspan>
60
+ </text>
61
+ <text x="62" y="251">
62
+ <tspan fill="#56635f">└─ </tspan>
63
+ <tspan fill="#7a8478">+1 已完成 │ 📌 #2 检查网关超时降级重试 (3h ago)</tspan>
56
64
  </text>
57
65
 
58
- <!-- Below-Editor Sticky Strip -->
59
- <rect x="45" y="256" width="750" height="36" rx="6" fill="#292b28" stroke="#a7c080" stroke-width="1" stroke-dasharray="4,3" />
60
- <text x="62" y="279">
66
+ <!-- Collapsed 1-Line Mode Preview -->
67
+ <text x="45" y="294" fill="#859289" font-size="12">按 `Alt+A`(或 `/anchor fold`)随时一键折叠为 1 行极简便签条:</text>
68
+ <rect x="45" y="304" width="750" height="34" rx="6" fill="#292b28" stroke="#3a464c" stroke-width="1" />
69
+ <text x="62" y="326">
61
70
  <tspan fill="#a7c080" font-weight="bold">⌖ </tspan>
62
71
  <tspan fill="#859289">#1 </tspan>
63
- <tspan fill="#dbbc7f" font-weight="bold">[■■□□ 2/4] </tspan>
64
- <tspan fill="#d3c6aa">重构登录鉴权流 </tspan>
65
- <tspan fill="#7fbbb3">▸ 补单测 </tspan>
66
- <tspan fill="#859289">(app · auth.ts ↪)</tspan>
72
+ <tspan fill="#dbbc7f" font-weight="bold">[■□□□ 1/3] </tspan>
73
+ <tspan fill="#d3c6aa">重构鉴权流 </tspan>
74
+ <tspan fill="#7fbbb3">▸ 替换HttpOnly Cookie </tspan>
75
+ <tspan fill="#859289">(editing auth.ts) (app · auth.ts ↪)</tspan>
67
76
  </text>
68
77
 
69
- <text x="45" y="324" fill="#859289">
70
- <tspan> • </tspan>
71
- <tspan fill="#d3c6aa" font-weight="bold">输入框下方常驻 1 行便签条</tspan>
72
- <tspan>:采用 </tspan>
73
- <tspan fill="#7fbbb3">belowEditor</tspan>
74
- <tspan> 挂载,与上方 </tspan>
75
- <tspan fill="#7fbbb3">pi-lingual</tspan>
76
- <tspan> 零冲突;敲 </tspan>
77
- <tspan fill="#7fbbb3">便签: ...</tspan>
78
- <tspan> 0ms 瞬贴。</tspan>
79
- </text>
80
- <text x="45" y="348" fill="#859289">
81
- <tspan> • </tspan>
82
- <tspan fill="#d3c6aa" font-weight="bold">原对话一键穿越 (↪)</tspan>
83
- <tspan>:自动记录贴便签时的 Session,在 </tspan>
84
- <tspan fill="#7fbbb3">/anchor</tspan>
85
- <tspan> 中点击即可直接切回当时的对话上下文。</tspan>
78
+ <text x="45" y="370" fill="#7a8478">
79
+ <tspan> 常用命令: </tspan>
80
+ <tspan fill="#7fbbb3" font-weight="bold">`便签: &lt;内容&gt;`</tspan>
81
+ <tspan> · </tspan>
82
+ <tspan fill="#7fbbb3" font-weight="bold">`/anchor`</tspan>
83
+ <tspan> · </tspan>
84
+ <tspan fill="#7fbbb3" font-weight="bold">`/step 1`</tspan>
85
+ <tspan> · </tspan>
86
+ <tspan fill="#7fbbb3" font-weight="bold">`/back`</tspan>
87
+ <tspan> (切回原对话 ↪) · </tspan>
88
+ <tspan fill="#7fbbb3" font-weight="bold">`/done 1`</tspan>
86
89
  </text>
87
90
  </g>
88
91
  </svg>