Skip to content

DeliciousBuding/dida-cli

Repository files navigation

DidaCLI

DidaCLI

JSON-first CLI for Dida365 / TickTick

License: MIT Go 1.26+ Latest Release CI npm

中文 · 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
Agent Install
Claude Code Copy skills/dida-cli/SKILL.md
Codex / Others See docs/skill-installation.md

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.

About

Agent-friendly CLI for Dida365 / TickTick

Topics

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors