Agent-friendly CLI for Dida365 / TickTick
Single Go binary with three auth channels (Web API, Official MCP, OpenAPI). Stable JSON envelope on every response. Zero dependencies.
$ dida task today --compact --jsonnpm i -g @delicious233/dida-cli # npm
curl -fsSL .../install.sh | sh # macOS / Linux
iwr .../install.ps1 -UseB | iex # WindowsAll install options
npm install -g @delicious233/dida-clicurl -fsSL https://raw.githubusercontent.com/DeliciousBuding/dida-cli/main/install.sh | shiwr https://raw.githubusercontent.com/DeliciousBuding/dida-cli/main/install.ps1 -UseB | iexgo install github.com/DeliciousBuding/dida-cli/cmd/dida@latestDIDA_VERSION=v0.2.1 curl -fsSL https://raw.githubusercontent.com/DeliciousBuding/dida-cli/main/install.sh | shAfter install:
dida version && dida doctor --json && dida upgrade# 1. Login — paste browser cookie "t" from dida365.com
dida auth cookie set --token-stdin --json
# 2. Verify
dida doctor --verify --json
# 3. See today
dida +today --json
# 4. Create a task (preview first)
dida task create --project <id> --title "Ship v1" --dry-run --jsonRead
dida task today --json
dida task upcoming --days 14 --json
dida task search --query "exam" --json
dida project list --json
dida tag list --json
dida completed today --json
dida pomo stats --jsonWrite
dida task create --project <id> --title "New task" --json
dida task update <id> --project <p> --title "Updated" --json
dida task complete <id> --project <p> --json
dida task move <id> --from <p> --to <p> --json
dida task delete <id> --project <p> --yes --jsonOfficial channels (MCP & OpenAPI)
# MCP (token)
DIDA365_TOKEN=dp_xxx dida official project list --json
# OpenAPI (OAuth)
dida openapi client set --id <id> --secret-stdin --json
dida openapi login --browser --json
dida openapi project list --jsonFull reference: docs/commands.md
| Web API | Official MCP | Official OpenAPI | |
|---|---|---|---|
| Auth | Browser cookie | Token | OAuth |
| Coverage | Broadest | MCP tool-based | Standard REST |
| Setup | One login | Get token | Register app |
All three are independent — never mixed.
dida schema list --compact --json # discover commands
dida agent context --outline --json # build context
dida task create ... --dry-run --json # preview writes| Agent | Install |
|---|---|
| Claude Code | Copy skills/dida-cli/SKILL.md |
| Codex / Others | See docs/skill-installation.md |
Safety: Always --dry-run before writes. --yes required for destructives. Token never leaves local disk. See Agent Usage.
git clone https://github.com/DeliciousBuding/dida-cli.git && cd dida-cli
go test ./... && go build -o bin/dida ./cmd/didaSee CONTRIBUTING.md.
DidaCLI is an independent, third-party open-source project. Not affiliated with Dida365 / TickTick (杭州随笔记网络技术有限公司). Provided "as is" for personal learning and research. The author assumes no responsibility for any consequences arising from the use of this tool. When operated by AI agents, the human operator is solely responsible for all actions.