@becrafter/prompt-manager 0.0.19 → 0.1.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 +145 -234
- package/app/desktop/assets/app.1.png +0 -0
- package/app/desktop/assets/app.png +0 -0
- package/app/desktop/assets/icons/icon.icns +0 -0
- package/app/desktop/assets/icons/icon.ico +0 -0
- package/app/desktop/assets/icons/icon.png +0 -0
- package/app/desktop/assets/icons/tray.png +0 -0
- package/app/desktop/assets/tray.1.png +0 -0
- package/app/desktop/assets/tray.png +0 -0
- package/app/desktop/main.js +27 -0
- package/app/desktop/package-lock.json +216 -48
- package/app/desktop/package.json +23 -29
- package/app/desktop/src/services/module-loader.js +43 -22
- package/app/desktop/src/services/runtime-manager.js +172 -23
- package/app/desktop/src/ui/admin-window-manager.js +757 -0
- package/app/desktop/src/ui/splash-manager.js +253 -0
- package/app/desktop/src/ui/tray-manager.js +8 -24
- package/app/desktop/src/utils/icon-manager.js +39 -47
- package/app/desktop/src/utils/resource-paths.js +0 -23
- package/app/desktop/src/utils/resource-sync.js +260 -0
- package/app/desktop/src/utils/runtime-sync.js +241 -0
- package/examples/prompts/recommend/human_3-0_growth_diagnostic_coach_prompt.yaml +105 -0
- package/package.json +16 -13
- package/packages/admin-ui/.babelrc +3 -0
- package/packages/admin-ui/admin.html +237 -4784
- package/packages/admin-ui/css/main.css +2592 -0
- package/packages/admin-ui/css/recommended-prompts.css +610 -0
- package/packages/admin-ui/package-lock.json +6981 -0
- package/packages/admin-ui/package.json +36 -0
- package/packages/admin-ui/src/codemirror.js +53 -0
- package/packages/admin-ui/src/index.js +3188 -0
- package/packages/admin-ui/webpack.config.js +76 -0
- package/packages/resources/tools/chrome-devtools/README.md +310 -0
- package/packages/resources/tools/chrome-devtools/chrome-devtools.tool.js +1703 -0
- package/packages/resources/tools/file-reader/README.md +289 -0
- package/packages/resources/tools/file-reader/file-reader.tool.js +1545 -0
- package/packages/resources/tools/filesystem/README.md +359 -0
- package/packages/resources/tools/filesystem/filesystem.tool.js +514 -160
- package/packages/resources/tools/ollama-remote/README.md +192 -0
- package/packages/resources/tools/ollama-remote/ollama-remote.tool.js +421 -0
- package/packages/resources/tools/pdf-reader/README.md +236 -0
- package/packages/resources/tools/pdf-reader/pdf-reader.tool.js +565 -0
- package/packages/resources/tools/playwright/README.md +306 -0
- package/packages/resources/tools/playwright/playwright.tool.js +1186 -0
- package/packages/resources/tools/todolist/README.md +394 -0
- package/packages/resources/tools/todolist/todolist.tool.js +1312 -0
- package/packages/server/README.md +142 -0
- package/packages/server/api/admin.routes.js +42 -11
- package/packages/server/api/surge.routes.js +43 -0
- package/packages/server/app.js +119 -14
- package/packages/server/index.js +39 -0
- package/packages/server/mcp/mcp.server.js +324 -105
- package/packages/server/mcp/sequential-thinking.handler.js +318 -0
- package/packages/server/mcp/think-plan.handler.js +274 -0
- package/packages/server/middlewares/auth.middleware.js +6 -0
- package/packages/server/package.json +51 -0
- package/packages/server/server.js +37 -1
- package/packages/server/toolm/index.js +9 -0
- package/packages/server/toolm/package-installer.service.js +267 -0
- package/packages/server/toolm/test-tools.js +264 -0
- package/packages/server/toolm/tool-context.service.js +334 -0
- package/packages/server/toolm/tool-dependency.service.js +168 -0
- package/packages/server/toolm/tool-description-generator-optimized.service.js +375 -0
- package/packages/server/toolm/tool-description-generator.service.js +312 -0
- package/packages/server/toolm/tool-environment.service.js +200 -0
- package/packages/server/toolm/tool-execution.service.js +277 -0
- package/packages/server/toolm/tool-loader.service.js +219 -0
- package/packages/server/toolm/tool-logger.service.js +223 -0
- package/packages/server/toolm/tool-manager.handler.js +65 -0
- package/packages/server/toolm/tool-manual-generator.service.js +389 -0
- package/packages/server/toolm/tool-mode-handlers.service.js +224 -0
- package/packages/server/toolm/tool-storage.service.js +111 -0
- package/packages/server/toolm/tool-sync.service.js +138 -0
- package/packages/server/toolm/tool-utils.js +20 -0
- package/packages/server/toolm/tool-yaml-parser.service.js +81 -0
- package/packages/server/toolm/validate-system.js +421 -0
- package/packages/server/utils/config.js +49 -5
- package/packages/server/utils/util.js +65 -10
- package/scripts/build-icons.js +99 -69
- package/scripts/build.sh +57 -0
- package/scripts/surge/CNAME +1 -0
- package/scripts/surge/README.md +47 -0
- package/scripts/surge/package-lock.json +34 -0
- package/scripts/surge/package.json +20 -0
- package/scripts/surge/sync-to-surge.js +151 -0
- package/app/desktop/assets/icons/icon_1024x1024.png +0 -0
- package/app/desktop/assets/icons/icon_128x128.png +0 -0
- package/app/desktop/assets/icons/icon_16x16.png +0 -0
- package/app/desktop/assets/icons/icon_24x24.png +0 -0
- package/app/desktop/assets/icons/icon_256x256.png +0 -0
- package/app/desktop/assets/icons/icon_32x32.png +0 -0
- package/app/desktop/assets/icons/icon_48x48.png +0 -0
- package/app/desktop/assets/icons/icon_512x512.png +0 -0
- package/app/desktop/assets/icons/icon_64x64.png +0 -0
- package/app/desktop/assets/icons/icon_96x96.png +0 -0
- package/packages/admin-ui/js/closebrackets.min.js +0 -8
- package/packages/admin-ui/js/codemirror.min.js +0 -8
- package/packages/admin-ui/js/js-yaml.min.js +0 -2
- package/packages/admin-ui/js/markdown.min.js +0 -8
- package/packages/resources/tools/index.js +0 -16
- package/packages/server/mcp/toolx.handler.js +0 -131
- package/scripts/icns-builder/package.json +0 -12
- /package/packages/server/mcp/{mcp.handler.js → prompt.handler.js} +0 -0
|
@@ -0,0 +1,394 @@
|
|
|
1
|
+
# TodoList Tool
|
|
2
|
+
|
|
3
|
+
基于本地 JSON 文件存储的 TodoList 工具,默认创建会话任务(临时),也可指定项目创建持久化任务。支持快速查询、任务统计、批量操作等功能。
|
|
4
|
+
|
|
5
|
+
## 功能特性
|
|
6
|
+
|
|
7
|
+
1. **任务管理** (`add_task`, `update_task`, `complete_task`, `archive_task`)
|
|
8
|
+
- 添加任务(会话任务或项目任务)
|
|
9
|
+
- 更新任务信息
|
|
10
|
+
- 完成任务
|
|
11
|
+
- 归档任务
|
|
12
|
+
|
|
13
|
+
2. **任务查询** (`list_tasks`)
|
|
14
|
+
- 快速筛选:今日任务、待办、已完成、逾期
|
|
15
|
+
- 按优先级、标签筛选
|
|
16
|
+
- 支持排序和分页
|
|
17
|
+
|
|
18
|
+
3. **批量操作** (`batch_tasks`)
|
|
19
|
+
- 批量创建、更新、完成、归档任务
|
|
20
|
+
- 支持事务模式(全部成功或全部回滚)
|
|
21
|
+
|
|
22
|
+
4. **任务排序** (`reorder_tasks`)
|
|
23
|
+
- 调整任务顺序
|
|
24
|
+
|
|
25
|
+
5. **统计信息** (`get_statistics`)
|
|
26
|
+
- 任务完成率
|
|
27
|
+
- 按优先级统计
|
|
28
|
+
- 按标签统计
|
|
29
|
+
|
|
30
|
+
6. **项目管理** (`list_projects`)
|
|
31
|
+
- 列出所有项目
|
|
32
|
+
- 查看项目任务统计
|
|
33
|
+
|
|
34
|
+
## 环境变量配置
|
|
35
|
+
|
|
36
|
+
工具无需配置环境变量,但支持以下可选环境变量:
|
|
37
|
+
|
|
38
|
+
- `TODOLIST_SESSION_TTL_DAYS` (可选): 会话任务保留天数,默认 `7`
|
|
39
|
+
- `TODOLIST_MAX_ARCHIVED` (可选): 各作用域最多保留归档任务条数,默认 `200`
|
|
40
|
+
|
|
41
|
+
## 使用方法
|
|
42
|
+
|
|
43
|
+
### 1. 添加会话任务(临时)
|
|
44
|
+
|
|
45
|
+
```yaml
|
|
46
|
+
tool: tool://todolist
|
|
47
|
+
mode: execute
|
|
48
|
+
parameters:
|
|
49
|
+
method: add_task
|
|
50
|
+
content: "完成项目文档"
|
|
51
|
+
description: "编写项目README文档" # 可选
|
|
52
|
+
priority: 3 # 可选,1=低, 2=中, 3=高, 4=紧急
|
|
53
|
+
due_date: "2025-01-15" # 可选,ISO 8601 或自然语言(如 "tomorrow")
|
|
54
|
+
tags: ["工作", "文档"] # 可选
|
|
55
|
+
# 不指定 project_id,创建会话任务
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
### 2. 添加项目任务(持久化)
|
|
59
|
+
|
|
60
|
+
```yaml
|
|
61
|
+
tool: tool://todolist
|
|
62
|
+
mode: execute
|
|
63
|
+
parameters:
|
|
64
|
+
method: add_task
|
|
65
|
+
content: "实现用户登录功能"
|
|
66
|
+
project_id: "work" # 指定项目ID,创建项目任务
|
|
67
|
+
priority: 4
|
|
68
|
+
tags: ["开发", "功能"]
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
### 3. 查询任务
|
|
72
|
+
|
|
73
|
+
```yaml
|
|
74
|
+
tool: tool://todolist
|
|
75
|
+
mode: execute
|
|
76
|
+
parameters:
|
|
77
|
+
method: list_tasks
|
|
78
|
+
quick_filter: "today" # today, pending, completed, overdue, all
|
|
79
|
+
# 或使用 status: "pending"
|
|
80
|
+
project_id: "work" # 可选,指定项目ID
|
|
81
|
+
limit: 50 # 可选,默认50
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
### 4. 更新任务
|
|
85
|
+
|
|
86
|
+
```yaml
|
|
87
|
+
tool: tool://todolist
|
|
88
|
+
mode: execute
|
|
89
|
+
parameters:
|
|
90
|
+
method: update_task
|
|
91
|
+
task_id: "task-uuid"
|
|
92
|
+
content: "更新后的任务内容" # 可选
|
|
93
|
+
priority: 2 # 可选
|
|
94
|
+
status: "completed" # 可选
|
|
95
|
+
tags: ["新标签"] # 可选
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
### 5. 完成任务
|
|
99
|
+
|
|
100
|
+
```yaml
|
|
101
|
+
tool: tool://todolist
|
|
102
|
+
mode: execute
|
|
103
|
+
parameters:
|
|
104
|
+
method: complete_task
|
|
105
|
+
task_id: "task-uuid"
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
### 6. 批量操作
|
|
109
|
+
|
|
110
|
+
```yaml
|
|
111
|
+
tool: tool://todolist
|
|
112
|
+
mode: execute
|
|
113
|
+
parameters:
|
|
114
|
+
method: batch_tasks
|
|
115
|
+
project_id: "work" # 可选
|
|
116
|
+
operations:
|
|
117
|
+
- action: "add"
|
|
118
|
+
content: "任务1"
|
|
119
|
+
priority: 3
|
|
120
|
+
- action: "add"
|
|
121
|
+
content: "任务2"
|
|
122
|
+
priority: 2
|
|
123
|
+
- action: "update"
|
|
124
|
+
task_id: "existing-task-id"
|
|
125
|
+
status: "completed"
|
|
126
|
+
transaction: false # 可选,是否使用严格事务
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
### 7. 获取统计信息
|
|
130
|
+
|
|
131
|
+
```yaml
|
|
132
|
+
tool: tool://todolist
|
|
133
|
+
mode: execute
|
|
134
|
+
parameters:
|
|
135
|
+
method: get_statistics
|
|
136
|
+
project_id: "work" # 可选,不指定则统计会话任务
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
### 8. 列出项目
|
|
140
|
+
|
|
141
|
+
```yaml
|
|
142
|
+
tool: tool://todolist
|
|
143
|
+
mode: execute
|
|
144
|
+
parameters:
|
|
145
|
+
method: list_projects
|
|
146
|
+
```
|
|
147
|
+
|
|
148
|
+
## 参数说明
|
|
149
|
+
|
|
150
|
+
### add_task 方法
|
|
151
|
+
|
|
152
|
+
- `method` (必需): 必须为 `"add_task"`
|
|
153
|
+
- `content` (必需): 任务内容
|
|
154
|
+
- `description` (可选): 任务描述
|
|
155
|
+
- `priority` (可选): 优先级(1=低, 2=中, 3=高, 4=紧急),默认 `2`
|
|
156
|
+
- `due_date` (可选): 截止日期(ISO 8601 或自然语言,如 "tomorrow", "in 3 days")
|
|
157
|
+
- `project_id` (可选): 项目ID(不指定则创建会话任务,指定则创建项目任务)
|
|
158
|
+
- `tags` (可选): 标签数组
|
|
159
|
+
- `sort` (可选): 排序值(默认自动递增)
|
|
160
|
+
|
|
161
|
+
### list_tasks 方法
|
|
162
|
+
|
|
163
|
+
- `method` (必需): 必须为 `"list_tasks"`
|
|
164
|
+
- `quick_filter` (可选): 快捷筛选(today/pending/completed/overdue/all)
|
|
165
|
+
- `status` (可选): 状态筛选(pending/completed/archived/all,与 quick_filter 互斥)
|
|
166
|
+
- `project_id` (可选): 项目ID(不指定则查询会话任务)
|
|
167
|
+
- `priority` (可选): 优先级筛选(1/2/3/4)
|
|
168
|
+
- `tags` (可选): 标签筛选数组
|
|
169
|
+
- `sort_by` (可选): 排序方式(sort/created_at/due_date/priority),默认 `created_at`
|
|
170
|
+
- `sort_order` (可选): 排序方向(asc/desc),默认 `desc`
|
|
171
|
+
- `limit` (可选): 返回数量限制,默认 `50`
|
|
172
|
+
|
|
173
|
+
### update_task 方法
|
|
174
|
+
|
|
175
|
+
- `method` (必需): 必须为 `"update_task"`
|
|
176
|
+
- `task_id` (必需): 任务ID
|
|
177
|
+
- `content` (可选): 任务内容
|
|
178
|
+
- `description` (可选): 任务描述
|
|
179
|
+
- `priority` (可选): 优先级
|
|
180
|
+
- `due_date` (可选): 截止日期
|
|
181
|
+
- `status` (可选): 状态(pending/completed/archived)
|
|
182
|
+
- `sort` (可选): 排序值
|
|
183
|
+
- `tags` (可选): 标签数组
|
|
184
|
+
|
|
185
|
+
### complete_task 方法
|
|
186
|
+
|
|
187
|
+
- `method` (必需): 必须为 `"complete_task"`
|
|
188
|
+
- `task_id` (必需): 任务ID
|
|
189
|
+
|
|
190
|
+
### archive_task 方法
|
|
191
|
+
|
|
192
|
+
- `method` (必需): 必须为 `"archive_task"`
|
|
193
|
+
- `task_id` (必需): 任务ID
|
|
194
|
+
|
|
195
|
+
### batch_tasks 方法
|
|
196
|
+
|
|
197
|
+
- `method` (必需): 必须为 `"batch_tasks"`
|
|
198
|
+
- `operations` (必需): 操作数组,每个元素包含:
|
|
199
|
+
- `action`: 操作类型(add/update/archive/complete)
|
|
200
|
+
- `task_id`: 任务ID(update/archive/complete 需要)
|
|
201
|
+
- 其他参数根据 action 类型而定
|
|
202
|
+
- `project_id` (可选): 项目ID(批量操作的项目上下文)
|
|
203
|
+
- `transaction` (可选): 是否使用严格事务(全部成功或全部回滚),默认 `false`
|
|
204
|
+
|
|
205
|
+
### reorder_tasks 方法
|
|
206
|
+
|
|
207
|
+
- `method` (必需): 必须为 `"reorder_tasks"`
|
|
208
|
+
- `task_ids` (必需): 任务ID数组(按新顺序排列)
|
|
209
|
+
- `project_id` (可选): 项目ID
|
|
210
|
+
|
|
211
|
+
### get_statistics 方法
|
|
212
|
+
|
|
213
|
+
- `method` (必需): 必须为 `"get_statistics"`
|
|
214
|
+
- `project_id` (可选): 项目ID(不指定则统计会话任务,传 `null` 则统计所有项目任务)
|
|
215
|
+
|
|
216
|
+
### list_projects 方法
|
|
217
|
+
|
|
218
|
+
- `method` (必需): 必须为 `"list_projects"`
|
|
219
|
+
- 无需其他参数
|
|
220
|
+
|
|
221
|
+
## 返回格式
|
|
222
|
+
|
|
223
|
+
### add_task 返回
|
|
224
|
+
|
|
225
|
+
```json
|
|
226
|
+
{
|
|
227
|
+
"task_id": "uuid",
|
|
228
|
+
"content": "完成项目文档",
|
|
229
|
+
"description": "编写项目README文档",
|
|
230
|
+
"priority": 3,
|
|
231
|
+
"status": "pending",
|
|
232
|
+
"project_id": null,
|
|
233
|
+
"session_id": "session-uuid",
|
|
234
|
+
"sort": 0,
|
|
235
|
+
"tags": ["工作", "文档"],
|
|
236
|
+
"due_date": "2025-01-15",
|
|
237
|
+
"created_at": "2025-01-01T00:00:00.000Z"
|
|
238
|
+
}
|
|
239
|
+
```
|
|
240
|
+
|
|
241
|
+
### list_tasks 返回
|
|
242
|
+
|
|
243
|
+
```json
|
|
244
|
+
{
|
|
245
|
+
"total": 10,
|
|
246
|
+
"tasks": [
|
|
247
|
+
{
|
|
248
|
+
"task_id": "uuid",
|
|
249
|
+
"content": "完成项目文档",
|
|
250
|
+
"status": "pending",
|
|
251
|
+
"priority": 3,
|
|
252
|
+
"due_date": "2025-01-15",
|
|
253
|
+
"tags": ["工作", "文档"],
|
|
254
|
+
"created_at": "2025-01-01T00:00:00.000Z",
|
|
255
|
+
"updated_at": "2025-01-01T00:00:00.000Z"
|
|
256
|
+
}
|
|
257
|
+
]
|
|
258
|
+
}
|
|
259
|
+
```
|
|
260
|
+
|
|
261
|
+
### get_statistics 返回
|
|
262
|
+
|
|
263
|
+
```json
|
|
264
|
+
{
|
|
265
|
+
"total": 20,
|
|
266
|
+
"pending": 10,
|
|
267
|
+
"completed": 8,
|
|
268
|
+
"archived": 2,
|
|
269
|
+
"overdue": 3,
|
|
270
|
+
"completion_rate": 0.4,
|
|
271
|
+
"by_priority": {
|
|
272
|
+
"1": 2,
|
|
273
|
+
"2": 5,
|
|
274
|
+
"3": 10,
|
|
275
|
+
"4": 3
|
|
276
|
+
},
|
|
277
|
+
"by_tag": {
|
|
278
|
+
"工作": 8,
|
|
279
|
+
"文档": 5,
|
|
280
|
+
"开发": 7
|
|
281
|
+
}
|
|
282
|
+
}
|
|
283
|
+
```
|
|
284
|
+
|
|
285
|
+
### list_projects 返回
|
|
286
|
+
|
|
287
|
+
```json
|
|
288
|
+
{
|
|
289
|
+
"projects": [
|
|
290
|
+
{
|
|
291
|
+
"project_id": "work",
|
|
292
|
+
"task_count": 10,
|
|
293
|
+
"pending_count": 6,
|
|
294
|
+
"completed_count": 4
|
|
295
|
+
}
|
|
296
|
+
],
|
|
297
|
+
"current_session": {
|
|
298
|
+
"session_id": "session-uuid",
|
|
299
|
+
"task_count": 5,
|
|
300
|
+
"pending_count": 3,
|
|
301
|
+
"completed_count": 2
|
|
302
|
+
}
|
|
303
|
+
}
|
|
304
|
+
```
|
|
305
|
+
|
|
306
|
+
## 错误处理
|
|
307
|
+
|
|
308
|
+
工具定义了以下业务错误:
|
|
309
|
+
|
|
310
|
+
- `TASK_NOT_FOUND`: 任务不存在
|
|
311
|
+
- `INVALID_PROJECT_ID`: 无效的项目ID
|
|
312
|
+
- `DATABASE_ERROR`: 数据存储失败
|
|
313
|
+
- `INVALID_DATE_FORMAT`: 日期格式错误
|
|
314
|
+
- `INVALID_OPERATION`: 无效的操作类型
|
|
315
|
+
- `MISSING_REQUIRED_PARAM`: 缺少必需参数
|
|
316
|
+
|
|
317
|
+
## 注意事项
|
|
318
|
+
|
|
319
|
+
1. **服务器同步**: 新添加的工具需要重启服务器才能被加载
|
|
320
|
+
2. **会话任务**: 默认创建会话任务(临时),会话断开后数据保留但不关联新会话
|
|
321
|
+
3. **项目任务**: 指定 `project_id` 创建项目任务(持久化),跨会话可用
|
|
322
|
+
4. **数据隔离**: 会话任务和项目任务完全隔离
|
|
323
|
+
5. **自动清理**: 过期会话任务和超量归档任务会自动清理
|
|
324
|
+
6. **日期格式**: 支持 ISO 8601 格式(如 "2025-01-15")或简单自然语言(如 "tomorrow", "in 3 days")
|
|
325
|
+
7. **项目管理**: 项目自动管理,无需手动创建/删除
|
|
326
|
+
8. **数据存储**: 任务数据存储在工具目录的 `data/` 子目录下
|
|
327
|
+
|
|
328
|
+
## 测试步骤
|
|
329
|
+
|
|
330
|
+
1. **重启服务器**(如果服务器已在运行)
|
|
331
|
+
|
|
332
|
+
2. **查看工具手册**
|
|
333
|
+
```yaml
|
|
334
|
+
tool: tool://todolist
|
|
335
|
+
mode: manual
|
|
336
|
+
```
|
|
337
|
+
|
|
338
|
+
3. **测试添加会话任务**
|
|
339
|
+
```yaml
|
|
340
|
+
tool: tool://todolist
|
|
341
|
+
mode: execute
|
|
342
|
+
parameters:
|
|
343
|
+
method: add_task
|
|
344
|
+
content: "测试任务"
|
|
345
|
+
priority: 3
|
|
346
|
+
```
|
|
347
|
+
|
|
348
|
+
4. **测试查询任务**
|
|
349
|
+
```yaml
|
|
350
|
+
tool: tool://todolist
|
|
351
|
+
mode: execute
|
|
352
|
+
parameters:
|
|
353
|
+
method: list_tasks
|
|
354
|
+
quick_filter: "pending"
|
|
355
|
+
```
|
|
356
|
+
|
|
357
|
+
5. **测试添加项目任务**
|
|
358
|
+
```yaml
|
|
359
|
+
tool: tool://todolist
|
|
360
|
+
mode: execute
|
|
361
|
+
parameters:
|
|
362
|
+
method: add_task
|
|
363
|
+
content: "项目任务"
|
|
364
|
+
project_id: "test-project"
|
|
365
|
+
```
|
|
366
|
+
|
|
367
|
+
6. **测试获取统计信息**
|
|
368
|
+
```yaml
|
|
369
|
+
tool: tool://todolist
|
|
370
|
+
mode: execute
|
|
371
|
+
parameters:
|
|
372
|
+
method: get_statistics
|
|
373
|
+
```
|
|
374
|
+
|
|
375
|
+
## 开发说明
|
|
376
|
+
|
|
377
|
+
工具基于纯 JavaScript JSON 文件存储,无需任何原生依赖,遵循 Prompt Manager 工具开发规范:
|
|
378
|
+
|
|
379
|
+
- 使用 ES6 模块格式 (`export default`)
|
|
380
|
+
- 实现必需方法 `execute()`
|
|
381
|
+
- 实现推荐方法:`getDependencies()`, `getMetadata()`, `getSchema()`, `getBusinessErrors()`
|
|
382
|
+
- 完整的错误处理和日志记录
|
|
383
|
+
- 自动数据清理机制
|
|
384
|
+
- 符合工具开发指南的所有要求
|
|
385
|
+
|
|
386
|
+
## 版本历史
|
|
387
|
+
|
|
388
|
+
- **1.0.0** (2025-01-01): 初始版本
|
|
389
|
+
- 实现任务管理功能
|
|
390
|
+
- 支持会话任务和项目任务
|
|
391
|
+
- 实现快速查询和统计
|
|
392
|
+
- 支持批量操作
|
|
393
|
+
- 自动数据清理
|
|
394
|
+
|