Skip to main content

CLI, Agent Skill, and MCP server for AI agents to manage Dida365 (TickTick) tasks and projects

Project description

dida365-agent

Let AI agents manage your Dida365 / TickTick — CLI · Skill · MCP

PyPI Downloads License Python 3.12+

English | 中文

Let AI agents manage Dida365 / TickTick tasks, projects, tags, and habits through natural language. Three form factors: a lightweight CLI, a ready-to-install Agent Skill, and a standard MCP Server.

No install required — run it directly with uvx. Supports both Dida365 (China) and TickTick (International), switchable with one env var.


Features

Full task managementCreate, update, complete, delete, and move tasks with priority, tags, dates, reminders, recurrence, and checklist items — plus batch operations.
Projects & queriesCRUD projects (list / kanban / timeline views), filter by project, date, priority, tag, and status, and review completed tasks.
V2 advanced powerServer-side full-text search, tag management, habit check-ins, project folders, parent/child tasks, task pinning — capabilities the official Open API doesn't cover.
Three form factorsCLI (run-and-exit, saves resources and context), Agent Skill (one-command install with built-in methodology), MCP Server (long-running, tool calls).
Dual platformSwitch between Dida365 (China) and TickTick (International) with DIDA365_REGION.
Agent-friendlyStructured JSON to stdout by default, errors to stderr with non-zero exit codes — easy for agents to parse and orchestrate.

Quick Start

Option 1: Use the CLI directly

No install needed — run with uvx (requires uv). First prepare credentials per the configuration guide and write them to .env:

# Browser OAuth (saves token, ~180 days)
uvx dida365-agent dida auth login

# List all projects
uvx dida365-agent dida project list

# Create a high-priority task due tomorrow
uvx dida365-agent dida task create --title "Review PR" --project <projectId> \
  --priority 5 --due-date "2026-05-30T18:00:00+0800"

# Full-text search (V2)
uvx dida365-agent dida search "meeting"

After installing locally (uv tool install dida365-agent), use the shorter dida command.

Option 2: Use as an Agent Skill

Install the Skill in any Skill-compatible AI tool (Claude Code, Cursor, etc.) and drive it with natural language:

# Install the Skill
npx skills add linhai0872/dida365-agent

Then just describe what you need in the AI chat:

Tidy up my unfinished tasks for today, list the high-priority ones, and move the overdue ones to the "Later" project

The Skill recognizes intent, fills in missing details, and assembles dida commands automatically — no manual parameters required.

Option 3: As an MCP Server

Exposes 40 tools as a standard MCP Server for Claude Code, Cursor, Windsurf, etc. See MCP Server integration.


Documentation

Doc Contents
CLI Reference All commands, parameters, conventions
Configuration Credentials, enabling V2, env vars, token lifecycle
MCP Server Local / source / Docker deployment, AI tool config

Development

uv sync                              # Install dependencies
uv run python -m pytest tests/       # Run tests
uv run ruff check src/ tests/        # Lint
uv run dida --help                   # Run the CLI locally

License

MIT

Acknowledgments

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dida365_agent-3.0.0.tar.gz (20.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dida365_agent-3.0.0-py3-none-any.whl (25.5 kB view details)

Uploaded Python 3

File details

Details for the file dida365_agent-3.0.0.tar.gz.

File metadata

  • Download URL: dida365_agent-3.0.0.tar.gz
  • Upload date:
  • Size: 20.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.27 {"installer":{"name":"uv","version":"0.9.27","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for dida365_agent-3.0.0.tar.gz
Algorithm Hash digest
SHA256 2ae9371e2facf3e08fe212c55e3c4380cca1659a0d5f304da03de0a135b9ef38
MD5 1168be32372008ae710f6d0b9245befc
BLAKE2b-256 d9b1698d8737a0dfc49cdf37eba1148efc634eb078a4b3748d54ce790e1f51df

See more details on using hashes here.

File details

Details for the file dida365_agent-3.0.0-py3-none-any.whl.

File metadata

  • Download URL: dida365_agent-3.0.0-py3-none-any.whl
  • Upload date:
  • Size: 25.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.27 {"installer":{"name":"uv","version":"0.9.27","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for dida365_agent-3.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d7d3aca5c967ca41040fb6d1d9ee380be0d29bd80481862beb5748d512c95e59
MD5 4738c58fa29259481578a05c540ece84
BLAKE2b-256 e6c252dd98cf1793c41bbbeff5b1f8b8f64985a2a7646525a57357079dc75dc8

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page