Skip to main content

task

用于在思源任务笔记管理插件中管理任务、任务提醒和分类的 MCP 工具。

معلومات المصدر

المستودع
Achuan-2/siyuan-plugin-task-note-management
آخر نشاط في المصدر
١٥ سبتمبر ٢٠٢٦ في ٠٨:٥٧
لغة SKILL.md المكتشفة
الصينية
النجوم
٢٢٢
التفرعات
٥٣

خيارات التثبيت

يُحدَّد Prompt الذي يراجع المصدر أولًا بشكل افتراضي. يمكنك التبديل إلى أمر مباشر أو تنزيل نسخة محلية.

مراجعة ملفات المصدر

اقرأ SKILL.md وأي ملفات مرافقة يعرضها SkillsMP قبل أن تقرر التثبيت.

عرض SKILL.md

SKILL.md
تعليمات المصدر · معاينة للقراءة فقط
name
task
description
用于在思源任务笔记管理插件中管理任务、任务提醒和分类的 MCP 工具。
# 任务管理技能 (task) ### 1. `search_task` 根据关键字、ID、项目、日期等条件搜索任务。 > 注意:为了节省 token 消耗,如果在搜索中指定了日期过滤(如传入了 `date`),`repeat.instances` 字段在搜索结果中将仅保留该日期范围的实例数据;如果不指定日期过滤,则会完全隐藏 `repeat.instances` 字段。要获取非查询日期的完整实例详情,请使用 `get_task` 接口。 - **keyword** (字符串, 可选): 搜索关键字,匹配任务标题或备注内容。 - **id** (字符串, 可选): 任务 ID,精确匹配。 - **projectId** (字符串, 可选): 所属项目 ID。 - **date** (字符串, 可选): 过滤日期 `YYYY-MM-DD`。可以传入 `"today"` 字符串,这将自动计算今日日期,并拉取今日任务、过期未完成任务、每日可做任务(效果和前端 Reminder 面板一致)。 - **priority** (字符串, 可选): 优先级 (`"high"`, `"medium"`, `"low"`, `"none"`)。 - **status** (字符串, 可选): 看板状态。 - **completed** (布尔值, 可选): 是否已完成。 - **limit** (数字, 可选): 返回数量上限,默认为 50。 ### 2. `get_task` 根据任务 ID(或重复实例 ID)获取单个任务的详情。 - 对于重复任务,支持传入 **date** 参数(或直接传入 `taskID_YYYY-MM-DD` 格式的实例 ID)来获取该特定日期实例的具体数据(如该日期的已完成状态、完成时间等)。 - 如果不传 **date**(且 ID 无日期后缀),则返回包含完整 `repeat.instances` 重复实例详情的原始任务数据。 - **id** (字符串, 必填): 任务 ID 或实例 ID。 - **date** (字符串, 可选): 指定重复任务实例的具体日期 `YYYY-MM-DD`。 ### 3. `create_task` 创建单个新任务。传入已有任务的 `parentId` 时,新任务会作为该任务的子任务创建。 - **title** (字符串, 必填): 任务标题。 - **date** (字符串, 可选): 任务日期 `YYYY-MM-DD`。省略或传入 `""`(空字符串)可创建无日期任务。 - **note** (字符串, 可选): 备注信息。 - **time** (字符串, 可选): 开始时间 `HH:MM`;设置后会在任务开始时刻提醒。 - **reminderTimes** (对象数组, 可选): 一个或多个额外提醒时间。每项包含: - **time** (字符串, 必填): 提醒时刻。使用 `HH:MM` 表示任务日期范围内的该时刻;使用 `YYYY-MM-DDTHH:MM` 表示绝对提醒日期和时刻,可用于提前一天等场景。 - **endTime** (字符串, 可选): 提醒结束时刻,格式同 `time`。 - **note** (字符串, 可选): 仅用于本次提醒的附加备注。 - 在 `update_task` 中传入空数组 `[]` 可清除全部额外提醒。 - **endDate** (字符串, 可选): 结束日期 `YYYY-MM-DD`。 - **endTime** (字符串, 可选): 结束时间 `HH:MM`。 - **priority** (字符串, 可选): 优先级 (`"high"`, `"medium"`, `"low"`, `"none"`)。 - **projectId** (字符串, 可选): 项目 ID。 - **categoryId** (字符串, 可选): 分类 ID。 - **parentId** (字符串, 可选): 已有父任务的 ID。传入后会创建单个子任务;支持普通任务 ID 和 `任务ID_YYYY-MM-DD` 格式的重复任务实例 ID。父任务不存在或属于订阅任务时不会创建。 - **completed** (布尔值, 可选): 是否完成,默认为 `false`。 - **blockId** (字符串, 可选): 绑定的思源块 ID。设置后会自动获取并关联文档 ID,并在思源中同步块属性与书签。 - **url** (字符串, 可选): 网页链接。 - **kanbanStatus** (字符串, 可选): 看板状态。如果任务绑定了项目,所设看板状态必须是该项目已配置的看板状态(可以通过 `get_project` 或 `list_columns` 查询该项目的看板配置)。如果未绑定项目,必须是系统默认的看板状态之一。如果设置为 `"completed"` 且 `completed` 未显式传入,会自动将任务标记为已完成。 - **customProgress** (数字, 可选): 自定义进度条百分比,取值范围为 `0` 到 `100` 的整数。 - **linkedHabitId** (字符串, 可选): 绑定的习惯 ID。可以通过 `habit` 相关的工具查询习惯列表来获取此 ID。 - **linkedHabitSyncPomodoroToday** (布尔值, 可选): 是否同步今日的番茄钟数据到绑定的习惯(必须在 `linkedHabitId` 设置时才生效)。 - **linkedHabitAutoCheckInOnComplete** (布尔值, 可选): 任务完成时是否自动为关联的习惯打卡(必须在 `linkedHabitId` 设置时才生效)。 - **linkedHabitAutoCheckInOptionKey** (字符串, 可选): 自动打卡习惯时的选项 Key。 - **linkedHabitAutoCheckInEmoji** (字符串, 可选): 自动打卡习惯时的 Emoji。 - **repeat** (对象, 可选): 重复周期性任务配置。**注意:如果启用了重复配置(enabled 为 true),但是开始日期 date 传入了 ""(空字符串),系统会自动将其默认设置为今日本地日期。** 属性如下: - **enabled** (布尔值, 必填): 是否启用。 - **type** (字符串, 必填): 重复类型,支持 `"daily"` (每日), `"weekly"` (每周), `"monthly"` (每月), `"yearly"` (每年), `"custom"` (自定义), `"ebbinghaus"` (艾宾浩斯), `"lunar-monthly"` (农历每月), `"lunar-yearly"` (农历每年)。 - **interval** (数字, 可选): 重复周期间隔。 - **weekDays** (数字数组, 可选): 每周的哪几天 (0-6, 0为周日)。 - **monthDays** (数字数组, 可选): 每月的哪几天 (1-31)。 - **monthlyRepeatMode** (字符串, 可选): 每月重复类型 (`"date"` 按日期 / `"week"` 按星期)。 - **endDate** (字符串, 可选): 重复截止日期 `YYYY-MM-DD`。 - **endType** (字符串, 必填): 结束条件,支持 `"never"` (从不结束), `"date"` (截止到特定日期), `"count"` (限次数)。 - **endCount** (数字, 可选): 限制重复的总次数。 - **reminderSkipWeekendMode** (字符串, 可选): 跳过周末选项 (`"none"`, `"skip"`, `"only_weekend"`)。 - **reminderSkipHolidays** (布尔值, 可选): 是否跳过法定节假日。 ### 4. `create_tasks` 批量创建任务或批量给已有任务创建同级子任务。 - **tasks** (对象数组, 必填): 要创建的任务列表,不能为空。每项都必须包含 `title`,并支持 `create_task` 的任务数据属性,例如日期、时间、额外提醒、优先级、项目、分类、重复设置、绑定块、网页链接、看板状态、自定义进度和习惯联动等;不在列表项中嵌套 `parentId` 或其他任务列表。 - **parentId** (字符串, 可选): 不传时批量创建普通任务;传入已有任务 ID 时,`tasks` 中的所有任务都会成为该任务的同级子任务。支持重复任务实例 ID;子任务省略日期时会继承该实例日期。 - **projectId** (字符串, 可选): 所有列表项的公共默认项目。任务项自己的 `projectId` 优先;两处都省略且传入了 `parentId` 时,继承父任务项目。 ### 5. `update_task` 批量修改更新任务。 - **updates** (对象数组, 必填): 更新项列表。每个对象必须包含: - **id** (字符串, 必填): 要修改的任务 ID。 - 其他在 `create_task` 中支持的可更新参数 (包含 `reminderTimes`, `blockId`, `url`, `kanbanStatus`, `customProgress`, `linkedHabitId` 及打卡设置, `repeat` 对象等;不包含仅用于创建的 `parentId` 和 `tasks`)。 ### 6. `delete_task` 删除任务. - **id** (字符串, 必填): 任务 ID。 ### 7. `list_categories` 列出所有任务分类。 - (无参数) ## 调用示例 ### 获取今日及过期任务列表 ```json { "action": "search_task", "date": "today" } ``` ### 创建一个高优先级的任务 ```json { "action": "create_task", "title": "整理 MCP 工具技能说明文档", "date": "2026-07-11", "priority": "high", "note": "将 task、project、habit、stats 技能翻译为中文版" } ``` ### 创建任务并设置多个提醒 ```json { "action": "create_task", "title": "提交周报", "date": "2026-07-11", "time": "17:00", "reminderTimes": [ { "time": "2026-07-10T17:00", "note": "提前一天准备材料" }, { "time": "16:30", "note": "提交前再次检查" } ] } ``` ### 给已有任务创建子任务 ```json { "action": "create_task", "title": "补充接口测试", "parentId": "reminder_已有主任务ID" } ``` ### 批量创建普通任务 ```json { "action": "create_tasks", "tasks": [ { "title": "梳理接口输入", "priority": "high" }, { "title": "补充接口测试", "date": "2026-07-12" }, { "title": "更新使用文档" } ] } ``` ### 给已有任务批量创建同级子任务 ```json { "action": "create_tasks", "parentId": "reminder_已有主任务ID", "tasks": [ { "title": "梳理接口输入", "priority": "high" }, { "title": "补充接口测试", "date": "2026-07-12" }, { "title": "更新使用文档" } ] } ``` ### 创建一个每周一、三、五重复的周期性任务 ```json { "action": "create_task", "title": "部门例会汇报准备", "date": "2026-07-11", "priority": "medium", "repeat": { "enabled": true, "type": "weekly", "weekDays": [1, 3, 5], "endType": "never" } } ```
عرض على GitHub