@cacinie/cace-timer 1.0.0 → 1.3.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/LICENSE +21 -0
- package/README.md +372 -220
- package/dist/commands/delete.d.ts +4 -0
- package/dist/commands/delete.js +48 -0
- package/dist/commands/export.d.ts +4 -0
- package/dist/commands/export.js +104 -0
- package/dist/commands/help.d.ts +1 -0
- package/dist/commands/help.js +73 -0
- package/dist/commands/list.d.ts +5 -0
- package/dist/commands/list.js +42 -0
- package/dist/commands/mark.d.ts +1 -0
- package/dist/commands/mark.js +27 -0
- package/dist/commands/pomodoro.d.ts +6 -0
- package/dist/commands/pomodoro.js +135 -0
- package/dist/commands/resume.d.ts +4 -0
- package/dist/commands/resume.js +54 -0
- package/dist/commands/search.d.ts +1 -0
- package/dist/commands/search.js +36 -0
- package/dist/commands/start.d.ts +4 -0
- package/dist/commands/start.js +47 -0
- package/dist/commands/status.d.ts +1 -0
- package/dist/commands/status.js +48 -0
- package/dist/commands/stop.d.ts +3 -0
- package/dist/commands/stop.js +104 -0
- package/dist/commands/summary.d.ts +6 -0
- package/dist/commands/summary.js +128 -0
- package/dist/commands/sync.d.ts +1 -0
- package/dist/commands/sync.js +62 -0
- package/dist/data.d.ts +18 -0
- package/dist/data.js +161 -0
- package/dist/i18n.d.ts +7 -0
- package/dist/i18n.js +418 -0
- package/dist/index.js +142 -492
- package/dist/mascot.d.ts +9 -0
- package/dist/mascot.js +200 -0
- package/dist/parser.d.ts +6 -0
- package/dist/parser.js +45 -0
- package/dist/tui/countdown.d.ts +8 -0
- package/dist/tui/countdown.js +135 -0
- package/dist/tui/dashboard.d.ts +2 -0
- package/dist/tui/dashboard.js +135 -0
- package/dist/tui/index.d.ts +2 -0
- package/dist/tui/index.js +8 -0
- package/dist/tui/lifecycle.d.ts +28 -0
- package/dist/tui/lifecycle.js +82 -0
- package/dist/tui/reflection.d.ts +5 -0
- package/dist/tui/reflection.js +71 -0
- package/dist/types.d.ts +24 -0
- package/dist/types.js +2 -0
- package/dist/utils.d.ts +5 -0
- package/dist/utils.js +44 -0
- package/package.json +39 -6
package/README.md
CHANGED
|
@@ -1,333 +1,485 @@
|
|
|
1
|
-
#
|
|
1
|
+
# cace-timer
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
[](https://www.npmjs.com/package/@cacinie/cace-timer)
|
|
4
|
+
[](https://www.npmjs.com/package/@cacinie/cace-timer)
|
|
5
|
+
[](package.json)
|
|
6
|
+
[](https://github.com/CacinieP/cace-timer/blob/main/LICENSE)
|
|
4
7
|
|
|
5
|
-
|
|
8
|
+
A gamified time-tracking CLI with an interactive TUI dashboard, points & levels, and a cute mascot.
|
|
6
9
|
|
|
7
|
-
```
|
|
8
|
-
|
|
9
|
-
npm link
|
|
10
|
+
```
|
|
11
|
+
npm install -g @cacinie/cace-timer
|
|
10
12
|
```
|
|
11
13
|
|
|
12
|
-
|
|
14
|
+
```
|
|
15
|
+
╭──────────╮
|
|
16
|
+
│ ● ● │
|
|
17
|
+
│ ▽ │
|
|
18
|
+
│ ─── │
|
|
19
|
+
╰──┬────┬──╯
|
|
20
|
+
╭──┴────┴──╮
|
|
21
|
+
│ ╔════╗ │
|
|
22
|
+
│ ║ CACE║ │
|
|
23
|
+
│ ╚════╝ │
|
|
24
|
+
╰────┬┬────╯
|
|
25
|
+
╭──┘└──╮
|
|
26
|
+
│ │
|
|
27
|
+
╰──┬┬──╯
|
|
28
|
+
╭┘└╮
|
|
29
|
+
CACE TIMER
|
|
30
|
+
```
|
|
13
31
|
|
|
14
|
-
##
|
|
32
|
+
## Features
|
|
33
|
+
|
|
34
|
+
- **Smart Dashboard** — run `tk` and get a context-aware interactive menu
|
|
35
|
+
- **Points & Levels** — earn points for focus, level up from Lv.1 to Lv.99
|
|
36
|
+
- **Daily Streaks** — consecutive days of productivity tracked with 🔥
|
|
37
|
+
- **Pomodoro Timer** — full-screen TUI countdown with mascot and progress bar
|
|
38
|
+
- **Quick Focus** — `tk focus 5/15/30/60` for instant timer
|
|
39
|
+
- **Reflection** — record thoughts when completing tasks
|
|
40
|
+
- **Statistics** — daily/weekly/monthly reports with ASCII charts
|
|
41
|
+
- **Bilingual** — `--lang zh|en`, auto-detects system locale
|
|
42
|
+
- **Export** — CSV or Markdown output
|
|
43
|
+
- **Cloud Sync** — point data file at Dropbox/iCloud/OneDrive
|
|
44
|
+
|
|
45
|
+
## Quick Start
|
|
15
46
|
|
|
16
47
|
```bash
|
|
17
|
-
#
|
|
18
|
-
tk
|
|
48
|
+
# Open the interactive dashboard
|
|
49
|
+
tk
|
|
19
50
|
|
|
20
|
-
#
|
|
51
|
+
# Or use commands directly
|
|
52
|
+
tk start "写周报" --tag work --tag daily --estimate 30
|
|
21
53
|
tk mark "完成数据分析"
|
|
22
|
-
|
|
23
|
-
# 查看当前状态
|
|
24
54
|
tk status
|
|
25
|
-
|
|
26
|
-
# 结束任务(显示效率评分)
|
|
27
55
|
tk stop
|
|
28
56
|
```
|
|
29
57
|
|
|
30
|
-
##
|
|
58
|
+
## Smart Dashboard
|
|
31
59
|
|
|
32
|
-
|
|
60
|
+
Running `tk` with no arguments opens an interactive TUI dashboard:
|
|
33
61
|
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
```bash
|
|
37
|
-
tk start <任务名> [选项]
|
|
38
|
-
|
|
39
|
-
选项:
|
|
40
|
-
--tag <标签> 添加标签
|
|
41
|
-
--estimate <分钟> 预估时长(用于计算效率分)
|
|
62
|
+
**No active task:**
|
|
42
63
|
```
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
64
|
+
[CACE mascot — sleepy]
|
|
65
|
+
📊 Lv.2 | 20 pts | 🔥 3 day streak
|
|
66
|
+
|
|
67
|
+
[s] 🚀 Start task
|
|
68
|
+
[f] 🍅 Quick focus
|
|
69
|
+
[b] 📊 Statistics
|
|
70
|
+
[l] 📋 History
|
|
71
|
+
[?] ❓ Help
|
|
47
72
|
```
|
|
48
73
|
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
记录时间节点。
|
|
52
|
-
|
|
53
|
-
```bash
|
|
54
|
-
tk mark <备注>
|
|
74
|
+
**Active task in progress:**
|
|
55
75
|
```
|
|
76
|
+
[CACE mascot — focused]
|
|
77
|
+
📊 Lv.2 | 20 pts
|
|
56
78
|
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
79
|
+
🔥 In progress: 写周报 | Elapsed: 15m 30s
|
|
80
|
+
|
|
81
|
+
[m] 📍 Mark checkpoint
|
|
82
|
+
[s] ⏹ Stop task
|
|
83
|
+
[b] 📊 Statistics
|
|
84
|
+
[l] 📋 History
|
|
85
|
+
[?] ❓ Help
|
|
61
86
|
```
|
|
62
87
|
|
|
63
|
-
|
|
88
|
+
## Commands
|
|
64
89
|
|
|
65
|
-
|
|
90
|
+
### `tk start <task> [options]`
|
|
66
91
|
|
|
67
|
-
|
|
68
|
-
tk stop
|
|
69
|
-
```
|
|
92
|
+
Start a new task. Supports multiple tags.
|
|
70
93
|
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
94
|
+
| Option | Description |
|
|
95
|
+
|--------|-------------|
|
|
96
|
+
| `--tag <tag>` | Add tag(s). Repeatable: `--tag dev --tag api` or `--tag dev,api` |
|
|
97
|
+
| `--estimate <minutes>` | Estimated duration for efficiency scoring |
|
|
75
98
|
|
|
76
|
-
### tk
|
|
99
|
+
### `tk stop [options]`
|
|
77
100
|
|
|
78
|
-
|
|
101
|
+
Stop current task. Shows summary, efficiency score, and points earned.
|
|
79
102
|
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
103
|
+
| Option | Description |
|
|
104
|
+
|--------|-------------|
|
|
105
|
+
| `--reflection <text>` | Attach a completion note |
|
|
83
106
|
|
|
84
|
-
|
|
107
|
+
In interactive terminals, a TUI input box appears for reflection.
|
|
85
108
|
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
```bash
|
|
89
|
-
tk list [选项]
|
|
109
|
+
### `tk mark <note>`
|
|
90
110
|
|
|
91
|
-
|
|
92
|
-
--today 仅显示今天
|
|
93
|
-
--tag <标签> 按标签筛选
|
|
94
|
-
--limit <数量> 限制显示数量(默认10)
|
|
95
|
-
```
|
|
111
|
+
Record a time checkpoint within the active task.
|
|
96
112
|
|
|
97
|
-
|
|
98
|
-
```bash
|
|
99
|
-
tk list --today
|
|
100
|
-
tk list --tag coding --limit 20
|
|
101
|
-
```
|
|
113
|
+
### `tk status`
|
|
102
114
|
|
|
103
|
-
|
|
115
|
+
Show current task, level, and streak.
|
|
104
116
|
|
|
105
|
-
|
|
117
|
+
### `tk list [options]`
|
|
106
118
|
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
119
|
+
| Option | Description |
|
|
120
|
+
|--------|-------------|
|
|
121
|
+
| `--today` | Today only |
|
|
122
|
+
| `--tag <tag>` | Filter by tag |
|
|
123
|
+
| `--limit <n>` | Limit count (default 10) |
|
|
110
124
|
|
|
111
|
-
|
|
125
|
+
### `tk search <keyword>`
|
|
112
126
|
|
|
113
|
-
|
|
114
|
-
tk search "登录"
|
|
115
|
-
tk search "coding"
|
|
116
|
-
```
|
|
127
|
+
Search across task names, tags, and mark notes.
|
|
117
128
|
|
|
118
|
-
### tk
|
|
129
|
+
### `tk summary [options]`
|
|
119
130
|
|
|
120
|
-
|
|
131
|
+
Statistics report with ASCII charts.
|
|
121
132
|
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
133
|
+
| Option | Description |
|
|
134
|
+
|--------|-------------|
|
|
135
|
+
| `--today` | Today only |
|
|
136
|
+
| `--week` | This week (Monday start) |
|
|
137
|
+
| `--month` | This month |
|
|
138
|
+
| `--tag <tag>` | Filter by tag |
|
|
125
139
|
|
|
126
|
-
|
|
127
|
-
```bash
|
|
128
|
-
tk sync ~/Dropbox/cace-timer.json
|
|
129
|
-
tk sync ~/OneDrive/cace-timer.json
|
|
130
|
-
```
|
|
140
|
+
Shows: total sessions, total/average duration, tag distribution bars, daily hours chart (last 7 days), top 5 longest tasks.
|
|
131
141
|
|
|
132
|
-
|
|
142
|
+
### `tk delete <id | --last>`
|
|
133
143
|
|
|
134
|
-
|
|
144
|
+
Delete a session from history.
|
|
135
145
|
|
|
136
|
-
|
|
146
|
+
### `tk resume <id | --last>`
|
|
137
147
|
|
|
138
|
-
|
|
139
|
-
┌─────────────┐ ┌─────────────┐
|
|
140
|
-
│ 设备 A │ │ 设备 B │
|
|
141
|
-
│ ~/(本地) │ │ ~/(本地) │
|
|
142
|
-
│ .cace-timer │ │ .cace-timer │
|
|
143
|
-
│ .json │ │ .json │
|
|
144
|
-
└──────┬──────┘ └──────┬──────┘
|
|
145
|
-
│ │
|
|
146
|
-
▼ ▼
|
|
147
|
-
┌─────────────────────────────────────┐
|
|
148
|
-
│ 云盘同步目录 │
|
|
149
|
-
│ Dropbox / iCloud / OneDrive │
|
|
150
|
-
│ cace-timer.json │
|
|
151
|
-
└─────────────────────────────────────┘
|
|
152
|
-
```
|
|
148
|
+
Resume a completed task as a new session.
|
|
153
149
|
|
|
154
|
-
|
|
155
|
-
1. 写入本地 `~/.cace-timer.json`
|
|
156
|
-
2. 同时写入配置的 `syncPath`(如果设置了)
|
|
150
|
+
### `tk export [options]`
|
|
157
151
|
|
|
158
|
-
|
|
152
|
+
| Option | Description |
|
|
153
|
+
|--------|-------------|
|
|
154
|
+
| `--format csv\|markdown` | Output format (default: csv) |
|
|
155
|
+
| `--output <file>` | Write to file (default: stdout) |
|
|
159
156
|
|
|
160
|
-
|
|
157
|
+
### `tk pomodoro <task> [options]`
|
|
161
158
|
|
|
162
|
-
|
|
163
|
-
# macOS / Linux
|
|
164
|
-
tk sync ~/Dropbox/cace-timer.json
|
|
159
|
+
Full-screen TUI pomodoro timer with mascot, countdown, and encouragement.
|
|
165
160
|
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
161
|
+
| Option | Description |
|
|
162
|
+
|--------|-------------|
|
|
163
|
+
| `--work <minutes>` | Work duration (default: 25) |
|
|
164
|
+
| `--break <minutes>` | Break duration (default: 5) |
|
|
165
|
+
| `--rounds <n>` | Number of rounds (default: 4) |
|
|
166
|
+
| `--tag <tag>` | Add tag(s) |
|
|
169
167
|
|
|
170
|
-
|
|
168
|
+
### `tk focus <5\|15\|30\|60> [task]`
|
|
171
169
|
|
|
172
|
-
|
|
173
|
-
# macOS
|
|
174
|
-
tk sync ~/Library/Mobile\ Documents/com~apple~CloudDocs/cace-timer.json
|
|
175
|
-
```
|
|
170
|
+
Quick one-shot focus timer. Shortcut for `tk pomodoro` with 1 round.
|
|
176
171
|
|
|
177
|
-
|
|
172
|
+
### `tk sync <path>`
|
|
178
173
|
|
|
179
|
-
|
|
180
|
-
# macOS
|
|
181
|
-
tk sync ~/OneDrive/cace-timer.json
|
|
174
|
+
Set sync file path for cross-device sync.
|
|
182
175
|
|
|
183
|
-
|
|
184
|
-
tk sync "%USERPROFILE%\OneDrive\cace-timer.json"
|
|
185
|
-
```
|
|
176
|
+
### `--lang <zh|en>`
|
|
186
177
|
|
|
187
|
-
|
|
178
|
+
Set language. Auto-detects system locale. Persists to config.
|
|
188
179
|
|
|
189
|
-
|
|
190
|
-
tk sync ~/Sync/cace-timer.json
|
|
191
|
-
```
|
|
180
|
+
### `tk help`
|
|
192
181
|
|
|
193
|
-
|
|
182
|
+
Show full command reference.
|
|
194
183
|
|
|
195
|
-
|
|
184
|
+
## Gamification
|
|
196
185
|
|
|
197
|
-
|
|
198
|
-
# 1. 安装 CACE TIMER
|
|
199
|
-
cd timekeeper && npm link
|
|
186
|
+
### Points System
|
|
200
187
|
|
|
201
|
-
|
|
202
|
-
|
|
188
|
+
| Condition | Points |
|
|
189
|
+
|-----------|--------|
|
|
190
|
+
| Complete a task | +10 |
|
|
191
|
+
| Efficiency ≥ 80% | +5 bonus |
|
|
192
|
+
| Efficiency = 100% | +5 bonus |
|
|
193
|
+
| Deep work (≥ 25 min) | +5 bonus |
|
|
203
194
|
|
|
204
|
-
|
|
205
|
-
tk list
|
|
206
|
-
```
|
|
195
|
+
### Levels
|
|
207
196
|
|
|
208
|
-
|
|
197
|
+
Progressive XP curve: each level requires `level × 20` more points.
|
|
209
198
|
|
|
210
|
-
|
|
199
|
+
| Level | Total Points |
|
|
200
|
+
|-------|-------------|
|
|
201
|
+
| 1 | 0 |
|
|
202
|
+
| 2 | 20 |
|
|
203
|
+
| 3 | 60 |
|
|
204
|
+
| 5 | 200 |
|
|
205
|
+
| 10 | 900 |
|
|
211
206
|
|
|
212
|
-
|
|
207
|
+
### Daily Streak
|
|
213
208
|
|
|
214
|
-
|
|
215
|
-
|------|------|
|
|
216
|
-
| 多设备同时使用 | 避免同时在多个设备操作 |
|
|
217
|
-
| 云盘同步延迟 | 操作后等待几秒再切换设备 |
|
|
218
|
-
| 冲突文件 | 手动合并 JSON,保留需要的记录 |
|
|
209
|
+
Consecutive days with at least one completed task. Break a day and the streak resets.
|
|
219
210
|
|
|
220
|
-
|
|
211
|
+
## CACE Mascot
|
|
221
212
|
|
|
222
|
-
|
|
223
|
-
# 导出备份
|
|
224
|
-
cp ~/.cace-timer.json ~/backup/cace-timer-$(date +%Y%m%d).json
|
|
213
|
+
CACE has 5 moods that change based on context:
|
|
225
214
|
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
215
|
+
| Mood | Eyes | Mouth | When |
|
|
216
|
+
|------|------|-------|------|
|
|
217
|
+
| Normal | ● ● | ─── | Default display |
|
|
218
|
+
| Happy | ★ ★ | ◡◡◡ | Task completed |
|
|
219
|
+
| Focused | ◆ ◆ | ▬▬▬ | Pomodoro / active task |
|
|
220
|
+
| Celebrating | ◉ ◉ | ▽△▽ | Points earned + arms up |
|
|
221
|
+
| Sleepy | ─ ─ | ~~ | No active task |
|
|
229
222
|
|
|
230
|
-
|
|
223
|
+
## Data
|
|
231
224
|
|
|
232
|
-
|
|
225
|
+
All data stored in `~/.cace-timer.json`.
|
|
233
226
|
|
|
234
227
|
```json
|
|
235
228
|
{
|
|
236
|
-
"syncPath": "
|
|
229
|
+
"syncPath": "~/Dropbox/cace-timer.json",
|
|
230
|
+
"lang": "zh",
|
|
231
|
+
"score": 45,
|
|
232
|
+
"streak": 3,
|
|
233
|
+
"lastActiveDate": "2026-05-31",
|
|
237
234
|
"current": null,
|
|
238
235
|
"history": [
|
|
239
236
|
{
|
|
240
237
|
"id": "lq3x9k2",
|
|
241
|
-
"task": "
|
|
242
|
-
"start": "
|
|
243
|
-
"end": "
|
|
244
|
-
"tags": ["
|
|
245
|
-
"marks": [
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
"
|
|
238
|
+
"task": "写周报",
|
|
239
|
+
"start": "2026-05-31T10:00:00.000Z",
|
|
240
|
+
"end": "2026-05-31T10:30:00.000Z",
|
|
241
|
+
"tags": ["work", "daily"],
|
|
242
|
+
"marks": [{ "time": "...", "note": "完成数据分析" }],
|
|
243
|
+
"estimatedMinutes": 30,
|
|
244
|
+
"reflection": "今天效率不错",
|
|
245
|
+
"pointsEarned": 20
|
|
249
246
|
}
|
|
250
247
|
]
|
|
251
248
|
}
|
|
252
249
|
```
|
|
253
250
|
|
|
254
|
-
|
|
251
|
+
## Uninstall
|
|
252
|
+
|
|
253
|
+
```bash
|
|
254
|
+
npm uninstall -g @cacinie/cace-timer
|
|
255
|
+
```
|
|
256
|
+
|
|
257
|
+
## Changelog
|
|
255
258
|
|
|
256
|
-
|
|
259
|
+
See [CHANGELOG.md](CHANGELOG.md) for release history.
|
|
260
|
+
|
|
261
|
+
## License
|
|
262
|
+
|
|
263
|
+
MIT
|
|
257
264
|
|
|
258
265
|
---
|
|
259
266
|
|
|
260
|
-
|
|
267
|
+
# cace-timer 中文说明
|
|
261
268
|
|
|
262
|
-
|
|
269
|
+
[](https://www.npmjs.com/package/@cacinie/cace-timer)
|
|
270
|
+
[](https://www.npmjs.com/package/@cacinie/cace-timer)
|
|
271
|
+
[](package.json)
|
|
272
|
+
[](https://github.com/CacinieP/cace-timer/blob/main/LICENSE)
|
|
273
|
+
|
|
274
|
+
游戏化时间追踪 CLI,带交互式 TUI 仪表盘、积分等级系统和可爱吉祥物。
|
|
275
|
+
|
|
276
|
+
```
|
|
277
|
+
npm install -g @cacinie/cace-timer
|
|
278
|
+
```
|
|
279
|
+
|
|
280
|
+
## 特性
|
|
281
|
+
|
|
282
|
+
- **智能仪表盘** — 输入 `tk` 即可打开上下文感知的交互菜单
|
|
283
|
+
- **积分与等级** — 完成任务赚积分,从 Lv.1 升到 Lv.99
|
|
284
|
+
- **每日打卡** — 连续天数追踪,显示火焰 🔥
|
|
285
|
+
- **番茄钟** — 全屏 TUI 倒计时 + 吉祥物 + 进度条
|
|
286
|
+
- **快捷专注** — `tk focus 5/15/30/60` 一键开始
|
|
287
|
+
- **完成心得** — 任务完成时记录感想
|
|
288
|
+
- **统计报表** — 日/周/月统计,ASCII 柱状图
|
|
289
|
+
- **双语支持** — `--lang zh|en`,自动检测系统语言
|
|
290
|
+
- **数据导出** — CSV 或 Markdown 格式
|
|
291
|
+
- **云同步** — 数据文件指向 Dropbox/iCloud/OneDrive
|
|
292
|
+
|
|
293
|
+
## 快速开始
|
|
263
294
|
|
|
264
295
|
```bash
|
|
265
|
-
|
|
296
|
+
# 打开交互仪表盘
|
|
297
|
+
tk
|
|
298
|
+
|
|
299
|
+
# 或直接用命令
|
|
300
|
+
tk start "写周报" --tag work --tag daily --estimate 30
|
|
301
|
+
tk mark "完成数据分析"
|
|
302
|
+
tk status
|
|
303
|
+
tk stop
|
|
266
304
|
```
|
|
267
305
|
|
|
268
|
-
##
|
|
306
|
+
## 智能仪表盘
|
|
269
307
|
|
|
270
|
-
|
|
308
|
+
输入 `tk`(无参数)打开 TUI 仪表盘:
|
|
271
309
|
|
|
310
|
+
**无活跃任务:**
|
|
272
311
|
```
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
312
|
+
[CACE 吉祥物 — 困了]
|
|
313
|
+
📊 Lv.2 | 20 积分 | 🔥 连续 3 天
|
|
314
|
+
|
|
315
|
+
[s] 🚀 开始任务
|
|
316
|
+
[f] 🍅 快捷专注
|
|
317
|
+
[b] 📊 统计报表
|
|
318
|
+
[l] 📋 历史记录
|
|
319
|
+
[?] ❓ 帮助
|
|
280
320
|
```
|
|
281
321
|
|
|
282
|
-
|
|
322
|
+
**有活跃任务:**
|
|
323
|
+
```
|
|
324
|
+
[CACE 吉祥物 — 专注中]
|
|
325
|
+
📊 Lv.2 | 20 积分
|
|
283
326
|
|
|
284
|
-
|
|
285
|
-
|------|------|------|----------|
|
|
286
|
-
| 正常 | ● ● | ─── | 默认状态 |
|
|
287
|
-
| 开心 | ★ ★ | ◡◡◡ | 完成任务 |
|
|
288
|
-
| 眨眼 | ─ ─ | ─── | 动画帧 |
|
|
289
|
-
| 超开心 | ◉ ◉ | ▽△▽ | 动画帧 |
|
|
290
|
-
| 困倦 | ─ ─ | ─── | 无任务时 |
|
|
327
|
+
🔥 进行中: 写周报 | 已用时: 15m 30s
|
|
291
328
|
|
|
292
|
-
|
|
329
|
+
[m] 📍 标记进度
|
|
330
|
+
[s] ⏹ 停止任务
|
|
331
|
+
[b] 📊 统计报表
|
|
332
|
+
[l] 📋 历史记录
|
|
333
|
+
[?] ❓ 帮助
|
|
334
|
+
```
|
|
293
335
|
|
|
294
|
-
##
|
|
336
|
+
## 命令
|
|
295
337
|
|
|
296
|
-
|
|
338
|
+
### `tk start <任务名> [选项]`
|
|
297
339
|
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
340
|
+
开始新任务,支持多标签。
|
|
341
|
+
|
|
342
|
+
| 选项 | 说明 |
|
|
343
|
+
|------|------|
|
|
344
|
+
| `--tag <标签>` | 多标签:`--tag dev --tag api` 或 `--tag dev,api` |
|
|
345
|
+
| `--estimate <分钟>` | 预估时长(效率评分) |
|
|
346
|
+
|
|
347
|
+
### `tk stop [选项]`
|
|
348
|
+
|
|
349
|
+
停止当前任务,显示摘要、效率评分、获得积分。
|
|
350
|
+
|
|
351
|
+
| 选项 | 说明 |
|
|
352
|
+
|------|------|
|
|
353
|
+
| `--reflection <文本>` | 附加完成心得 |
|
|
354
|
+
|
|
355
|
+
交互终端中会自动弹出输入框。
|
|
356
|
+
|
|
357
|
+
### `tk mark <备注>`
|
|
358
|
+
|
|
359
|
+
在活跃任务中记录时间节点。
|
|
360
|
+
|
|
361
|
+
### `tk status`
|
|
362
|
+
|
|
363
|
+
显示当前任务、等级和打卡天数。
|
|
364
|
+
|
|
365
|
+
### `tk list [选项]`
|
|
366
|
+
|
|
367
|
+
| 选项 | 说明 |
|
|
368
|
+
|------|------|
|
|
369
|
+
| `--today` | 仅今天 |
|
|
370
|
+
| `--tag <标签>` | 按标签筛选 |
|
|
371
|
+
| `--limit <数量>` | 限制数量(默认 10) |
|
|
372
|
+
|
|
373
|
+
### `tk search <关键词>`
|
|
374
|
+
|
|
375
|
+
搜索任务名称、标签和标记备注。
|
|
376
|
+
|
|
377
|
+
### `tk summary [选项]`
|
|
378
|
+
|
|
379
|
+
统计报表,带 ASCII 柱状图。
|
|
380
|
+
|
|
381
|
+
| 选项 | 说明 |
|
|
382
|
+
|------|------|
|
|
383
|
+
| `--today` | 仅今天 |
|
|
384
|
+
| `--week` | 本周(周一开始) |
|
|
385
|
+
| `--month` | 本月 |
|
|
386
|
+
| `--tag <标签>` | 按标签筛选 |
|
|
387
|
+
|
|
388
|
+
### `tk delete <id | --last>`
|
|
389
|
+
|
|
390
|
+
删除历史记录。
|
|
391
|
+
|
|
392
|
+
### `tk resume <id | --last>`
|
|
393
|
+
|
|
394
|
+
恢复已完成任务为新会话。
|
|
395
|
+
|
|
396
|
+
### `tk export [选项]`
|
|
397
|
+
|
|
398
|
+
| 选项 | 说明 |
|
|
399
|
+
|------|------|
|
|
400
|
+
| `--format csv\|markdown` | 输出格式(默认 csv) |
|
|
401
|
+
| `--output <文件>` | 输出到文件(默认 stdout) |
|
|
402
|
+
|
|
403
|
+
### `tk pomodoro <任务名> [选项]`
|
|
404
|
+
|
|
405
|
+
全屏 TUI 番茄钟,带吉祥物、倒计时和鼓励语。
|
|
406
|
+
|
|
407
|
+
| 选项 | 说明 |
|
|
408
|
+
|------|------|
|
|
409
|
+
| `--work <分钟>` | 工作时长(默认 25) |
|
|
410
|
+
| `--break <分钟>` | 休息时长(默认 5) |
|
|
411
|
+
| `--rounds <数量>` | 轮数(默认 4) |
|
|
412
|
+
| `--tag <标签>` | 添加标签 |
|
|
413
|
+
|
|
414
|
+
### `tk focus <5\|15\|30\|60> [任务名]`
|
|
415
|
+
|
|
416
|
+
快捷专注,一键启动单轮番茄钟。
|
|
417
|
+
|
|
418
|
+
### `tk sync <路径>`
|
|
419
|
+
|
|
420
|
+
设置同步文件路径。
|
|
421
|
+
|
|
422
|
+
### `--lang <zh|en>`
|
|
423
|
+
|
|
424
|
+
设置语言,自动检测系统语言,持久化到配置。
|
|
317
425
|
|
|
318
|
-
|
|
426
|
+
### `tk help`
|
|
319
427
|
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
428
|
+
显示完整命令参考。
|
|
429
|
+
|
|
430
|
+
## 游戏化
|
|
431
|
+
|
|
432
|
+
### 积分系统
|
|
433
|
+
|
|
434
|
+
| 条件 | 积分 |
|
|
435
|
+
|------|------|
|
|
436
|
+
| 完成任务 | +10 |
|
|
437
|
+
| 效率 ≥ 80% | +5 奖励 |
|
|
438
|
+
| 效率 = 100% | +5 奖励 |
|
|
439
|
+
| 深度工作(≥ 25 分钟) | +5 奖励 |
|
|
440
|
+
|
|
441
|
+
### 等级系统
|
|
442
|
+
|
|
443
|
+
递增经验曲线:每级需要 `等级 × 20` 积分。
|
|
444
|
+
|
|
445
|
+
| 等级 | 总积分 |
|
|
446
|
+
|------|--------|
|
|
447
|
+
| 1 | 0 |
|
|
448
|
+
| 2 | 20 |
|
|
449
|
+
| 3 | 60 |
|
|
450
|
+
| 5 | 200 |
|
|
451
|
+
| 10 | 900 |
|
|
452
|
+
|
|
453
|
+
### 每日打卡
|
|
454
|
+
|
|
455
|
+
连续每天完成至少一个任务。中断一天则重新计数。
|
|
456
|
+
|
|
457
|
+
## CACE 吉祥物
|
|
458
|
+
|
|
459
|
+
CACE 有 5 种心情,根据场景变化:
|
|
460
|
+
|
|
461
|
+
| 心情 | 眼睛 | 嘴巴 | 时机 |
|
|
462
|
+
|------|------|------|------|
|
|
463
|
+
| 正常 | ● ● | ─── | 默认显示 |
|
|
464
|
+
| 开心 | ★ ★ | ◡◡◡ | 任务完成 |
|
|
465
|
+
| 专注 | ◆ ◆ | ▬▬▬ | 番茄钟 / 活跃任务 |
|
|
466
|
+
| 庆祝 | ◉ ◉ | ▽△▽ | 获得积分 + 举手 |
|
|
467
|
+
| 困了 | ─ ─ | ~~ | 无活跃任务 |
|
|
468
|
+
|
|
469
|
+
## 数据
|
|
470
|
+
|
|
471
|
+
所有数据存储在 `~/.cace-timer.json`。
|
|
324
472
|
|
|
325
473
|
## 卸载
|
|
326
474
|
|
|
327
475
|
```bash
|
|
328
|
-
npm
|
|
476
|
+
npm uninstall -g @cacinie/cace-timer
|
|
329
477
|
```
|
|
330
478
|
|
|
331
|
-
##
|
|
479
|
+
## 更新日志
|
|
480
|
+
|
|
481
|
+
详见 [CHANGELOG.md](CHANGELOG.md)。
|
|
482
|
+
|
|
483
|
+
## 许可
|
|
332
484
|
|
|
333
485
|
MIT
|