讲师中心 微信公众号
AI工具推荐 视频效率加速

TickTick CLI

Polar Sponsor
爱发电 赞助
.NET 9.0

通过命令行管理 TickTick 任务与项目,支持 OAuth2 认证、批量操作及速率限制处理。

TickTick CLI 技能

功能概述

TickTick CLI 技能是一项面向实际任务的技能,主要用于管理 TickTick 任务和来自命令行的项目;Setup. 注册一个 TickTick 开发者 App.;

核心要点

  • Go to TickTick 开发者中心.;
  • Go Create a new application. 选择重定向 URI t。
  • 它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。

使用与执行

使用时应结合输入条件选择合适的执行方式,核对必要参数、依赖环境与输出内容,并按原始要求处理异常情况。从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。

结果检查与注意事项

执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。该技能适合用于一次性任务,也可以接入自动化工作流,与其他技能或上层代理配合完成更完整的业务链路;在组合使用时,应明确每一步的输入输出关系,并避免不同步骤之间出现参数冲突。

TickTick CLI 技能

通过命令行管理 TickTick 任务与项目。

配置

1. 注册 TickTick 开发者应用

  1. 访问 TickTick 开发者中心
  2. 创建一个新应用
  3. 将重定向 URI(Redirect URI)设为 http://localhost:8080
  4. 记录下你的 Client ID 和 Client Secret

2. 认证

# 设置凭证并启动 OAuth 流程
bun run scripts/ticktick.ts auth --client-id YOUR_CLIENT_ID --client-secret YOUR_CLIENT_SECRET

# 检查认证状态
bun run scripts/ticktick.ts auth --status

# 注销(清除 token,保留凭证)
bun run scripts/ticktick.ts auth --logout

无头环境 / 手动认证

# 在无头服务器上使用手动模式
bun run scripts/ticktick.ts auth --client-id YOUR_CLIENT_ID --client-secret YOUR_CLIENT_SECRET --manual

该命令会打印一条授权 URL。请在浏览器中打开此链接,批准访问权限后,复制完整的重定向 URL(形如 http://localhost:8080/?code=XXXXX&state=STATE),然后将其粘贴回 CLI 中。

CLI 将自动在浏览器中打开授权页面。授权完成后,token 将保存至 ~/.clawdbot/credentials/ticktick-cli/config.json。

命令

列出任务

# 列出所有任务
bun run scripts/ticktick.ts tasks

# 列出指定项目中的任务
bun run scripts/ticktick.ts tasks --list "Work"

# 按状态过滤
bun run scripts/ticktick.ts tasks --status pending
bun run scripts/ticktick.ts tasks --status completed

# 输出 JSON 格式
bun run scripts/ticktick.ts tasks --json

创建任务

# 基础任务创建
bun run scripts/ticktick.ts task "Buy groceries" --list "Personal"

# 指定描述与优先级
bun run scripts/ticktick.ts task "Review PR" --list "Work" --content "Check the new auth changes" --priority high

# 指定截止日期
bun run scripts/ticktick.ts task "Submit report" --list "Work" --due tomorrow
bun run scripts/ticktick.ts task "Plan vacation" --list "Personal" --due "in 7 days"
bun run scripts/ticktick.ts task "Meeting" --list "Work" --due "2024-12-25"

# 添加标签
bun run scripts/ticktick.ts task "Research" --list "Work" --tag research important

更新任务

# 通过任务名称或 ID 更新
bun run scripts/ticktick.ts task "Buy groceries" --update --priority medium
bun run scripts/ticktick.ts task "abc123" --update --due tomorrow --content "Updated notes"

# 限定在特定项目中搜索并更新
bun run scripts/ticktick.ts task "Review PR" --update --list "Work" --priority low

完成任务

# 将任务标记为已完成
bun run scripts/ticktick.ts complete "Buy groceries"

# 在指定项目中完成任务
bun run scripts/ticktick.ts complete "Review PR" --list "Work"

放弃任务(Won't Do)

# 将任务标记为 Won't Do
bun run scripts/ticktick.ts abandon "Old task"

# 在指定项目中放弃任务
bun run scripts/ticktick.ts abandon "Obsolete item" --list "Do"

批量放弃(多个任务)

# 单次 API 调用批量放弃多个任务
bun run scripts/ticktick.ts batch-abandon   

# 输出 JSON 格式
bun run scripts/ticktick.ts batch-abandon abc123def456... xyz789... --json

注意:batch-abandon 需要传入任务 ID(24 位十六进制字符串),而非任务名称。请先使用 tasks --json 获取任务 ID。

列出项目

# 列出所有项目
bun run scripts/ticktick.ts lists

# 输出 JSON 格式
bun run scripts/ticktick.ts lists --json

创建项目

# 创建新项目
bun run scripts/ticktick.ts list "New Project"

# 指定颜色
bun run scripts/ticktick.ts list "Work Tasks" --color "#FF5733"

更新项目

# 重命名项目
bun run scripts/ticktick.ts list "Old Name" --update --name "New Name"

# 修改颜色
bun run scripts/ticktick.ts list "Work" --update --color "#00FF00"

选项参考

优先级等级

  • none — 无优先级(默认)
  • low — 低优先级
  • medium — 中优先级
  • high — 高优先级

截止日期格式

  • today — 今日截止
  • tomorrow — 明日截止
  • in N days — N 天后截止(例如:"in 3 days")
  • next monday — 下一个指定工作日(如周一)
  • ISO 日期格式 — YYYY-MM-DD 或完整 ISO 时间格式

全局选项

  • --json — 以 JSON 格式输出结果(适用于脚本调用)
  • --help — 查看任意命令的帮助信息

AI Agent 使用建议

将本技能作为 AI Agent 使用时,请注意:

  1. 始终使用 --json 参数,确保输出为机器可读格式
  2. 首先执行 lists --json 获取有效的项目 ID
  3. 尽可能使用项目 ID 而非项目名,以提升操作可靠性
  4. 完成任务前请先检查其状态,避免因状态不匹配导致错误

示例 Agent 工作流:

# 1. 获取可用项目列表
bun run scripts/ticktick.ts lists --json

# 2. 在指定项目中创建任务
bun run scripts/ticktick.ts task "Agent task" --list "PROJECT_ID" --priority high --json

# 3. 后续将其标记为已完成
bun run scripts/ticktick.ts complete "Agent task" --list "PROJECT_ID" --json

配置

Token 存储于 ~/.clawdbot/credentials/ticktick-cli/config.json:

{
  "clientId": "YOUR_CLIENT_ID",
  "clientSecret": "YOUR_CLIENT_SECRET",
  "accessToken": "...",
  "refreshToken": "...",
  "tokenExpiry": 1234567890000,
  "redirectUri": "http://localhost:8080"
}

注意:凭证以明文形式存储。CLI 会尝试将文件权限设为 700(目录)或 600(文件),请将该文件视为敏感信息妥善保管。

CLI 在 token 过期时会自动刷新。

故障排查

“未认证”错误

运行 bun run scripts/ticktick.ts auth 完成认证。

“项目未找到”错误

运行 bun run scripts/ticktick.ts lists 查看当前可用的项目及其 ID。

“任务未找到”错误

  • 确认任务标题完全匹配(不区分大小写)
  • 尝试改用任务 ID
  • 使用 --list 参数将搜索范围限定在特定项目内

Token 过期错误

CLI 应能自动刷新 token。若问题持续存在,请再次运行 bun run scripts/ticktick.ts auth。

API 说明

本 CLI 使用 TickTick Open API v1。

速率限制

  • 每分钟最多 100 次请求
  • 每 5 分钟最多 300 次请求

由于 CLI 的每个操作可能涉及多次 API 调用(例如:先列出项目再查找任务),批量操作容易快速触达限制。

批量接口(Batch Endpoint)

CLI 支持 TickTick 的批量接口用于执行批量操作:

POST https://api.ticktick.com/open/v1/batch/task
{
  "add": [...],    // CreateTaskInput[]
  "update": [...], // UpdateTaskInput[]
  "delete": [...]  // { taskId, projectId }[]
}

使用 batch-abandon 可单次 API 调用放弃多个任务。该批量 API 方法也对外暴露,支持程序化调用。

其他限制

  • 每个项目最多支持 500 个任务
  • 部分高级功能(如专注时间、习惯追踪)暂未被 API 支持
目录

热门AI工具

更多
讯飞绘文

讯飞绘文是一款由科大讯飞推出的一站式 AIGC 内容运营平台。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

咔片AIPPT

一款在线AI演示文稿制作工具,可根据主题和内容需求辅助生成PPT结构与页面,提高演示材料制作效率。

SkildArt
SkildArt Hot

SkildArt是一款AI文本写作工具,一站式 AI 视觉创作平台。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

二狗PPT
二狗PPT Hot

一款AI演示文稿工具,主要用于专为中式职场打造的AI PPT生成工具,适合需要提升相关任务效率的用户。

Lovart
Lovart Hot

一款面向视觉设计创作的AI设计平台,可通过智能体和画布工作流辅助制作海报、Logo、网页、PPT及其他视觉内容。

超级简历WonderCV

一款AI办公效率工具,主要用于免费求职简历模版下载制作,应届生职场人必备简历制作神器,适合需要提升相关任务效率的用户。

相关专题

更多
Gradle插件开发入门教程
Gradle插件开发入门教程

本专题介绍Gradle插件开发的基本流程,涵盖插件类编写、自定义任务注册、扩展参数设计和插件应用方法,帮助你理解插件如何组织构建逻辑,减少多个项目之间的重复配置。

0

2026.10.22

Gradle Wrapper配置教程
Gradle Wrapper配置教程

本专题介绍Gradle Wrapper的基本作用,涵盖文件组成、生成方法、版本配置和任务调用,帮助你理解项目如何使用指定的Gradle版本,减少不同开发环境带来的构建差异。

0

2026.10.22

Golangci-lint检查器使用教程
Golangci-lint检查器使用教程

本专题整理Golangci-lint常用Linters的用途与配置方法,覆盖错误处理、无效代码、安全、复杂度、命名和依赖检查,帮助项目合理选规则。

0

2026.10.22

Gradle怎么构建Java项目
Gradle怎么构建Java项目

本专题介绍Gradle Java项目构建方法,涵盖Java插件配置、依赖声明、源码编译、测试执行和打包检查,帮助你理解各阶段的任务关系,逐步完成项目构建。

0

2026.10.22

PHP时间戳漏洞修复教程
PHP时间戳漏洞修复教程

本专题汇总PHP常见时间戳漏洞,包括2038年溢出、时区漂移、时间戳伪造、重放攻击、时间盲注与日志审计失效等,并给出升级64位环境、使用 DateTimeImmutable、统一UTC、严格超时校验、预处理绑定、hash_equals 比对等修复方案,帮助开发者快速排查和加固时间相关代码。

0

2026.10.22

Golangci-lint配置文件与规则设置
Golangci-lint配置文件与规则设置

本专题聚焦Golangci-lint YAML配置文件,讲清运行参数、规则启停、目录排除、问题过滤及严重级别设置,便于团队统一检查标准。

0

2026.10.22

Golangci-lint安装与入门教程
Golangci-lint安装与入门教程

本专题讲解Golangci-lint的安装、初始化、基础命令和首次代码检查,覆盖本地环境、Docker及多平台用法,帮助Go开发者快速上手。

0

2026.10.22

PHP2Shell高危漏洞修复教程
PHP2Shell高危漏洞修复教程

PHP2Shell漏洞是什么,哪些PHP版本和运行环境会受到影响,服务器应该如何检测与修复?本专题提供版本自查脚本、Linux与Docker升级命令、PHP-FPM和Apache排查步骤,以及修复验证、临时缓解和应急响应方案。

0

2026.10.22

剧云人物设定与关系管理教程
剧云人物设定与关系管理教程

本专题介绍剧云人物设定与关系管理,讲解角色小传、性格职业、人物目标、背景资料和关系网络的创建及维护方法。

0

2026.10.22

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
热门推荐
/
最新课程
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn