AgentSkillsCN

tasks

从输入内容中自动提取任务,或对现有任务进行高效管理;涵盖“提取任务”“我手头有哪些事?”“查看我的任务”“将[任务]标记为已完成”等核心功能。同时具备重复任务筛查、责任归属核验以及任务优先级分诊能力。

SKILL.md
--- frontmatter
name: tasks
description: Extract tasks from input or manage existing tasks. Handles "Extract tasks", "What's on my plate?", "Show my tasks", "Mark [task] as done". Duplicate checking, accountability test, and triage.
user-invocable: true
help:
  purpose: |-
    Task extraction from conversations and task management workflows.
  use_cases:
    - "Extract tasks from this"
    - "What's on my plate?"
    - "Show my tasks"
    - "Mark [task] as done"
  scope: tasks,action-items,commitments

Tasks skill

Extract commitments into actionable tasks, or manage existing tasks with duplicate checking, accountability validation, and intelligent triage.


Mode detection

This skill operates in two modes depending on user intent:

  1. Extract Mode: User provides input (transcript, email, notes) and requests task extraction
  2. Manage Mode: User requests task review, prioritization, completion, or backlog pruning

EXTRACT MODE

Convert loose commitments into actionable, accountable tasks with duplicate checking and proper placement.


Step 1: Load replacements (MANDATORY)

Read reference/replacements.md. Ensure ALL owners are mapped to canonical names.


Step 2: Extract candidates and filter

Scan input for commitments:

  • "I will...", "Can you...", "Let's...", "Action item:", "Need to..."

Apply accountability test. Discard failures:

  • NEVER create tasks for "Team" or "We" without a specific lead
  • Tasks must have a clear owner
  • Tasks must be actionable and specific

Step 3: Resolve metadata

For each passing task:

FieldLogic
dueMap relative dates to YYYY-MM-DD using date resolution table. Default to backlog.
sourcejournal/YYYY-MM/YYYY-MM-DD-slug (if meeting), email, or direct
createdToday's date (YYYY-MM-DD)
initiativeExtract if related to known initiative
ownerCanonical name of responsible person

Date resolution table:

  • "today" -> YYYY-MM-DD (current date)
  • "tomorrow" -> YYYY-MM-DD (current date + 1)
  • "next week" -> YYYY-MM-DD (current date + 7)
  • "end of month" -> YYYY-MM-DD (last day of current month)
  • "next [day]" (e.g., "next Friday") -> YYYY-MM-DD (first occurrence of that day after today)
  • No date specified -> backlog

Step 4: Check duplicates

Read reference/integrations.md Tasks section for provider details. Execute the list operation for all configured lists (default: Active, Delegated, Backlog).

Compare by title and owner (from notes field). If a similar task exists for the same owner:

  • Skip if identical (already exists)
  • Execute the edit operation to update if new details or deadline

Step 5: Placement logic

Use these rules to determine destination list:

  • Has due date + owner is user -> Active list
  • Has due date + owner is other -> Delegated list
  • No due date -> Backlog list

Step 6: Create tasks

Create tasks directly via the task integration. Do not ask for permission. Read reference/integrations.md Tasks section for the provider-specific command format.

Standard task creation fields:

code
title: "Task description"
list: Active
due: YYYY-MM-DD
notes: |
  source: journal/YYYY-MM/YYYY-MM-DD-slug.md
  created: YYYY-MM-DD
  initiative: [[Initiative Name]]
  owner: Name

Extract mode output

markdown
---
## Task extraction complete

### Created tasks (X total)
| Task | Owner | List | Due | Source |
|------|-------|------|-----|--------|
| Task description | Name | Active/Delegated/Backlog | YYYY-MM-DD | source |

### Duplicates skipped
| Task | Owner | Reason |
|------|-------|--------|
| Task description | Name | Already exists as matching task |

### Unactionable items
| Item | Reason |
|------|--------|
| Description | Why it was skipped |

MANAGE MODE

Review, prioritize, complete, and prune existing tasks via the task integration.


Step 1: Load task state

Read reference/integrations.md Tasks section for provider details. Execute the list operation for all configured lists (default: Active, Delegated, Backlog).


Step 2: Present current state

Group tasks by list and display to user:

markdown
## Current task state

### Active (X tasks)
| Task | Owner | Due |
|------|-------|-----|
| Task description | Name | YYYY-MM-DD |

### Delegated (Y tasks)
| Task | Owner | Due |
|------|-------|-----|
| Task description | Name | YYYY-MM-DD |

### Backlog (Z tasks)
| Task | Owner | Age |
|------|-------|-----|
| Task description | Name | X days old |

Step 3: Handle user actions

For completion:

  • Execute the complete operation only AFTER user confirmation
  • Record which user marked it complete and timestamp

For reprioritization:

  • Execute the edit operation to update due date or move between lists
  • Update the modified field in notes

For backlog pruning:

  • Flag items with created date older than 90 days in notes field
  • Ask user for confirmation before deleting or archiving
  • Suggest moving to archive or backlog-archive list if available

Step 4: Duplicate detection (opportunistic)

While reviewing, note any potential duplicates:

  • Same task title, different owners
  • Similar descriptions across multiple lists
  • Tasks that should be consolidated

Suggest consolidation but allow user to decide.


Manage mode output

markdown
---
## Task management update

### Completed
| Task | Owner | Status |
|------|-------|--------|
| Task description | Name | Marked done |

### Reprioritized
| Task | Owner | From | To | Change |
|------|-------|------|-----|--------|
| Task description | Name | Backlog | Active | New due date: YYYY-MM-DD |

### Pruning recommendations
| Task | Owner | Age | Recommendation |
|------|-------|-----|-----------------|
| Task description | Name | X days | Archive or delete |

### Current summary
- Active: X tasks
- Delegated: Y tasks
- Backlog: Z tasks (W tasks >90 days old)

Context budget

  • Tasks: Execute task integration list operation for all configured lists
  • Reference: reference/replacements.md (mandatory)

Absolute constraints

  • NEVER create tasks for "Team" or "We" without a specific lead
  • NEVER use relative dates in final output (always resolve to YYYY-MM-DD)
  • NEVER forget name normalization
  • NEVER delete tasks without explicit instruction (archive instead)
  • NEVER mark tasks done without user confirmation
  • ONLY write to Active, Delegated, Backlog lists (person-named lists are read-only)