SuperAPI AI Directory

lark-task

Office & productivity

View repository

Updated 10-16 09:28

About this skill

task (v2)

CRITICAL — Before starting, you MUST first use the Read tool to read ../lark-shared/SKILL.md, which contains authentication and permission handling

Search tips: If the user's query only specifies a task name (for example, "complete task Lobster No. 1"), please directly use the +get-my-tasks --query "龙虾一号" command to search (do not include the --complete parameter, so that both incomplete and completed tasks can be searched at the same time). User identity recognition: In a user identity scenario, if the user mentions "me" (for example, "assign to me", "created by me"), please by default obtain the currently logged-in user's open_id as the corresponding parameter value. Terminology understanding: If the user mentions "todo", you should consider whether it refers to "task", and prioritize trying to use the commands provided by this Skill to handle it. Friendly output: When outputting the execution result of a task (or task list) to the user, it is recommended to also extract and output the url field (task link) from the command return result, so that the user can directly click to jump and view the details.

Create/update notes:

  1. Only when due(due time) is set can repeat_rule(recurrence rule) and reminder(reminder time) be set.
  2. If both start(start time) and due(due time) are set, the start time must be less than or equal to the due time.
  3. When using tenant_access_token (app identity), task members cannot be added across tenants.

Query notes:

  1. When outputting task details, if personnel fields such as assignee and creator need to be rendered, in addition to displaying id (for example, open_id), you must also try to obtain and display the person's real name through other means (for example, by calling the contacts skill), so that users can identify them more easily.
  2. When outputting task details, if fields such as creation time and due time need to be rendered, they need to be rendered using the local time zone (format: 2006-01-02 15:04:05).

Task GUID definition: In the Task OpenAPI, the guid used to update/operate tasks is the task's globally unique identifier (GUID), not the task number displayed by the client (for example, t104121 / suite_entity_num). For a Feishu task applink (for example, .../client/todo/task?guid=...), you must use the guid parameter in the URL query as the task guid.

Shortcuts

API Resources

lark-cli schema task.<resource>.<method>   # 调用 API 前必须先查看参数结构
lark-cli task <resource> <method> [flags] # 调用 API

Important: When using the native API, you must first run schema to view the --data / --params parameter structure; do not guess the field format.

tasks

  • create — Create task
  • delete — Delete task
  • get — Get task details
  • list — List tasks
  • patch — Update task

tasklists

  • add_members — Add task list members
  • create — Create task list
  • delete — Delete task list
  • get — Get task list details
  • list — Get task list
  • patch — Update task list
  • remove_members — Remove checklist member
  • tasks — Get checklist task list

subtasks

  • create — Create subtask
  • list — Get a task's subtask list

members

  • add — Add task member
  • remove — Remove task member

sections

  • create — Create custom group
  • delete — Delete custom group
  • get — Get custom group details
  • list — Get custom group list
  • patch — Update custom group
  • tasks — Get custom group task list

Permission table

Method Required scope
tasks.create task:task:write
tasks.delete task:task:write
tasks.get task:task:read
tasks.list task:task:read
tasks.patch task:task:write
tasklists.add_members task:tasklist:write
tasklists.create task:tasklist:write
tasklists.delete task:tasklist:write
tasklists.get task:tasklist:read
tasklists.list task:tasklist:read
tasklists.patch task:tasklist:write
tasklists.remove_members task:tasklist:write
tasklists.tasks task:tasklist:read
subtasks.create task:task:write
subtasks.list task:task:read
members.add task:task:write
members.remove task:task:write
sections.create task:section:write
sections.delete task:section:write
sections.get task:section:read
sections.list task:section:read
sections.patch task:section:write
sections.tasks task:section:read