DidaCLI
JSON-first CLI for Dida365 / TickTick
中文 ·
Website ·
Commands
DidaCLI builds as a single Go binary with no external Go modules. It keeps Web API cookie auth, Official MCP tokens, and OpenAPI OAuth separate. Commands return a consistent JSON envelope.
$ dida task today --compact --json
Install
npm i -g @delicious233/dida-cli # npm
curl -fsSL https://raw.githubusercontent.com/DeliciousBuding/dida-cli/main/install.sh | sh
iwr https://raw.githubusercontent.com/DeliciousBuding/dida-cli/main/install.ps1 -UseB | iex
All install options
npm (recommended)
npm install -g @delicious233/dida-cli
macOS / Linux
curl -fsSL https://raw.githubusercontent.com/DeliciousBuding/dida-cli/main/install.sh | sh
Windows (PowerShell)
iwr https://raw.githubusercontent.com/DeliciousBuding/dida-cli/main/install.ps1 -UseB | iex
Go
go install github.com/DeliciousBuding/dida-cli/cmd/dida@latest
Pin a specific version
DIDA_VERSION=vX.Y.Z curl -fsSL https://raw.githubusercontent.com/DeliciousBuding/dida-cli/main/install.sh | sh
After install:
dida version && dida doctor --json
dida upgrade --check
Quick Start
# 1. Login with the Dida365 browser cookie named "t"
dida auth cookie set --token-stdin --json
# Optional browser capture path
dida auth login --browser --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 --json
Commands
Read
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 --json
Write
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 --json
Official 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 --json
Full reference: docs/commands.md
Auth Channels
|
Web API |
Official MCP |
Official OpenAPI |
| Auth |
Browser cookie |
Token |
OAuth |
| Coverage |
Web API resources outside official channels |
MCP tool-based |
Standard REST |
| Setup |
One login |
Get token |
Register app |
The three auth channels stay separate.
Agent Integration
dida schema list --compact --json # discover commands
dida agent context --outline --json # build context
dida task create ... --dry-run --json # preview writes
Preview resource writes with --dry-run when supported. Destructive commands require --yes. The CLI does not print full token values. See Agent Usage.
Docs
Contributing
git clone https://github.com/DeliciousBuding/dida-cli.git && cd dida-cli
go test ./... && go build -o bin/dida ./cmd/dida
See CONTRIBUTING.md.
License
MIT
DidaCLI is an independent open-source CLI for Dida365 / TickTick-compatible workflows. Use it with accounts and automations you control, subject to the upstream services' terms.