360 Secure SkillHub
360 安全技能中心

TickTick CLI (ttg)

这是基于ttg CLI的TickTick终端管理工具,核心支持任务全CRUD操作、checklist子任务管理、多规则提醒、重复任务配置,还可按日期/优先级/标签筛选搜索,以及项目、标签管理。支持自然语言日期输入与JSON输出,便于脚本集成,适用于日常任务追踪、快速捕获待办等场景,通过终端指令操作,输出含可视化进度条或结构化JSON。

dhruvkelawala
dhruvkelawala
热度 61.47
最近更新 2026-05-17 13:48:07
分类:自动化依赖:代码执行应用场景:任务管理 / 日程安排 / 工作流

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add ticktick-go
Metadata
name
ticktick-go
version
1.1.0
description
Manage TickTick tasks and projects via the `ttg` CLI (github.com/dhruvkelawala/ticktick-go). Full CRUD, checklists/subtasks with progress display, reminders, recurring tasks, search, tags, natural language dates, and JSON output. Use when: adding tasks, listing tasks, marking complete, editing tasks, managing checklists, setting reminders, searching, or filtering by due date, priority, or tag.
metadata
{"openclaw":{"requires":{"bins":["ttg"]},"install":[{"id":"ttg","kind":"shell","label":"Build and install ttg CLI from source","script":"git clone https://github.com/dhruvkelawala/ticktick-go /tmp/ttg-install && cd /tmp/ttg-install && make install && rm -rf /tmp/ttg-install"}]}}

TickTick CLI Skill (ttg)

A feature-rich terminal interface for TickTick via the ticktick-go CLI.

Prerequisites

Install ttg:

git clone https://github.com/dhruvkelawala/ticktick-go
cd ticktick-go && make install

Create ~/.config/ttg/config.json with your TickTick API credentials (get them at developer.ticktick.com):

{
  "client_id": "YOUR_CLIENT_ID",
  "client_secret": "YOUR_CLIENT_SECRET",
  "timezone": "Europe/London"
}

Authenticate:

ttg auth login      # opens browser OAuth2 flow
ttg auth status     # confirm you're logged in

Task Commands

# List
ttg task list                              # Inbox (default)
ttg task list --all                        # Every task across all projects
ttg task list --project "Work"             # By project name
ttg task list --due today                  # Due today
ttg task list --due overdue                # Overdue tasks
ttg task list --priority high              # By priority
ttg task list --tag "urgent"               # By tag
ttg task list --completed                  # Show completed tasks
ttg task list --json                       # JSON output for scripting

# Add
ttg task add "Buy milk"
ttg task add "Review PR" --project "Work" --priority high --due "tomorrow 9am"
ttg task add "Call dentist" --today --high --remind "1h,on-time"
ttg task add "Weekly sync" --due "next friday" --repeat weekly
ttg task add "Quick note" -n "Don't forget the attachment" --tag "work,followup"

# Quick-add shorthands
ttg task add "Standup" --today --med
ttg task add "Submit report" --tomorrow --high
ttg task add "Urgent fix" --tmrw --remind "15m"

# Manage
ttg task get <id>                          # Full details
ttg task done <id>                         # Mark complete
ttg task delete <id>                       # Delete

# Edit
ttg task edit <id> --title "Updated title" --priority medium --due "next monday"
ttg task edit <id> --remind "1h,15m" --repeat monthly
ttg task edit <id> --tag "work,important" --start "tomorrow 9am"
ttg task edit <id> --kind checklist        # Convert to checklist

# Search
ttg task search "deploy"                   # Search tasks by title

Checklists & Subtasks

# Create a checklist task with initial items
ttg task add "Pack for trip" --checklist --items "Passport,Charger,Clothes"

# Manage checklist items
ttg task items <task-id>                   # List all items
ttg task item-add <task-id> "Toothbrush"   # Add an item
ttg task item-done <task-id> <item-id>     # Complete an item
ttg task item-delete <task-id> <item-id>   # Delete an item

Checklist tasks show a visual progress bar (0–100%) in list and detail views:

☑️ Pack for trip [60%]
│ Progress: [██████░░░░] 60%

Reminders

Add one or more reminders with --remind (comma-separated):

Shorthand Meaning
on-time At the due time
5m, 15m, 30m Minutes before
1h 1 hour before
1d 1 day before
ttg task add "Meeting" --due "3pm" --remind "15m,on-time"
ttg task edit <id> --remind "1h,30m"

Recurring Tasks

ttg task add "Daily standup" --due "9am" --repeat daily
ttg task add "Monthly review" --due "1st" --repeat monthly
ttg task add "Custom recurrence" --repeat "RRULE:FREQ=WEEKLY;BYDAY=MO,WE,FR"

Patterns: daily · weekly · monthly · yearly · custom RRULE

Project Commands

ttg project list                           # All projects with task counts
ttg project get <id>                       # Project details

Tag Commands

ttg tag list                               # List all tags used across tasks
ttg task list --tag "work"                 # Filter tasks by tag
ttg task add "New task" --tag "urgent,work" # Add with tags

Due Date Formats

Input Result
today, tomorrow Midnight of that day
next monday Following Monday
3pm, tomorrow 3pm Specific time
in 2 days, in 3 hours Relative offset
2026-03-20 ISO date
2026-03-20T15:00:00 ISO datetime

Priority Values

none (default) · low · medium · high

Shorthand flags: --high, --med/--medium, --low

JSON / Scripting

Every list command accepts --json / -j:

# Get all high-priority tasks as JSON
ttg task list --priority high --json

# Pipe into jq
ttg task list --all --json | jq '.[] | select(.dueDate != null) | .title'

# Export project task counts
ttg project list --json | jq '.[] | {name, taskCount}'

Common Patterns

# Morning review — what's due today?
ttg task list --due today

# Quick capture while in flow
ttg task add "Follow up with Alex" --due "tomorrow 10am" --med --remind "1h"

# Create a shopping checklist
ttg task add "Groceries" --checklist --items "Eggs,Bread,Milk" --today

# End-of-day — mark things done
ttg task done <id>

# Weekly planning — see everything
ttg task list --all

# Find that task you can't remember
ttg task search "deploy"