npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

dida365-ai-tools

v3.0.3

Published

Dida365 AI Tools - MCP Server & CLI for 滴答清单, manage your tasks with Claude Code or command line

Readme

Dida365 AI Tools

npm version License: MIT Node.js

Dida365(滴答清单)v3.0.0 MCP Server + CLI 工具,使用私有 API + Cookie 认证:

  • MCP Server - 接入 Claude Code / Cursor / Windsurf,用自然语言管理任务
  • CLI - 命令行直接操作,可脚本化、可管道、可接入 OpenClaw

借鉴了 ticktick-py 的私有 API 实现。

Features

| 功能 | MCP Tool | CLI Command | |------|----------|-------------| | Cookie 认证 | dida365_auth | auth cookie <token> / status | | 列出所有项目 | dida365_list_projects | project list | | 项目详情与任务 | dida365_get_project_tasks | project show <id> | | 查看任务 | dida365_get_task | task show <taskId> | | 创建任务 | dida365_create_task | task create <title> -p <pid> | | 更新任务 | dida365_update_task | task update <tid> -p <pid> | | 完成任务 | dida365_complete_task | task complete <pid> <tid> | | 删除任务 | dida365_delete_task | task delete <pid> <tid> | | 按日期/范围查询已完成 | dida365_get_completed_tasks | completed date / range | | 今天完成的任务 | dida365_get_completed_today | completed today | | 昨天完成的任务 | dida365_get_completed_yesterday | completed yesterday | | 本周完成的任务 | dida365_get_completed_this_week | completed week | | 全量同步(项目/任务/标签) | dida365_sync | sync all | | 获取用户设置 | dida365_get_settings | sync settings | | 获取时区 | dida365_get_timezone | sync timezone | | 列出所有标签 | dida365_list_tags | tag list | | 创建标签 | dida365_create_tag | tag create <name> | | 重命名标签 | dida365_rename_tag | tag rename <old> <new> | | 更新标签(颜色/层级) | dida365_update_tag | tag color / nest | | 合并标签 | dida365_merge_tags | tag merge <from> <to> | | 删除标签 | dida365_delete_tag | tag delete <names...> | | 移动任务到其他项目 | dida365_move_task | batch move-task | | 设置子任务 | dida365_set_subtask | batch set-subtask | | 批量删除任务 | dida365_batch_delete_tasks | batch delete-tasks | | 创建项目 | dida365_batch_create_project | batch create-project | | 删除项目 | dida365_batch_delete_projects | batch delete-projects | | 创建项目文件夹 | dida365_create_project_group | batch create-folder | | 删除项目文件夹 | dida365_delete_project_groups | batch delete-folders |

Architecture

src/
├── core/                          # 核心层(MCP 和 CLI 共享)
│   ├── api-client.ts              # 私有 API 端点
│   ├── token-store.ts             # Cookie Token 持久化
│   ├── types.ts                   # TypeScript 接口
│   └── services/
│       ├── completed.service.ts   # 已完成任务查询
│       ├── sync.service.ts        # 全量同步 + 用户设置
│       ├── tag.service.ts         # 标签 CRUD / 重命名 / 合并
│       └── batch.service.ts       # 批量任务/项目/文件夹操作
│
├── mcp/                           # MCP Server 入口(28 个工具)
│   ├── index.ts
│   └── tools/
│       ├── auth.tool.ts           # 认证(1 个工具)
│       ├── projects.tool.ts       # 项目(2 个工具)
│       ├── tasks.tool.ts          # 任务(5 个工具)
│       ├── completed.tool.ts      # 已完成任务(4 个工具)
│       ├── sync.tool.ts           # 同步(3 个工具)
│       ├── tag.tool.ts            # 标签(6 个工具)
│       └── batch.tool.ts          # 批量操作(7 个工具)
│
└── cli/                           # CLI 入口(7 个命令组,30+ 子命令)
    ├── index.ts
    ├── commands/
    │   ├── auth.cmd.ts            # auth cookie / status
    │   ├── project.cmd.ts         # project list / show
    │   ├── task.cmd.ts            # task create / show / update / complete / delete
    │   ├── completed.cmd.ts       # completed today / yesterday / week / date / range
    │   ├── sync.cmd.ts            # sync all / settings / timezone
    │   ├── tag.cmd.ts             # tag list / create / rename / color / nest / merge / delete
    │   └── batch.cmd.ts           # batch move-task / set-subtask / delete-tasks / create-project / ...
    └── utils/
        └── output.ts              # 格式化输出

Installation

Quick Start (npx)

# MCP Server - 零安装直接启动
npx dida365-ai-tools

# CLI - 零安装直接使用
npx -p dida365-ai-tools dida365 --help

Global Install

npm install -g dida365-ai-tools

# Now available as:
dida365-mcp    # MCP Server
dida365        # CLI

From Source

git clone https://github.com/YOUR_GITHUB_USERNAME/dida365-ai-tools.git
cd dida365-ai-tools
npm install
npm run build

Authentication

本项目使用 Dida365 私有 API,通过 Cookie 认证。获取步骤:

  1. 打开 dida365.com 并登录
  2. F12 打开开发者工具
  3. 切换到 Application (应用) 标签页
  4. 左侧找到 Cookieshttps://dida365.com
  5. 复制名为 t 的 Cookie 值

然后通过 CLI 设置认证:

dida365 auth cookie <your_cookie_value>
dida365 auth status    # 验证认证状态

或在 MCP 中使用 dida365_auth 工具设置 Cookie。

Usage

MCP Server

Claude Code

# 方式一:npx(推荐)
claude mcp add dida365 -- npx dida365-ai-tools

# 方式二:全局安装后
claude mcp add dida365 -- dida365-mcp

Cursor / Windsurf

在 MCP 配置文件中添加:

{
  "mcpServers": {
    "dida365": {
      "command": "npx",
      "args": ["-y", "dida365-ai-tools"]
    }
  }
}

Smithery

Visit smithery.ai and search for dida365-ai-tools.

CLI

认证

dida365 auth cookie <token>     # 设置 Cookie 认证
dida365 auth status             # 检查认证状态

项目

dida365 project list            # 列出所有项目
dida365 project list --json     # JSON 输出
dida365 project show <id>       # 项目详情和任务

任务

dida365 task create "买菜" -p <projectId>
dida365 task create "开会" -p <projectId> -c "讨论内容" --priority 5
dida365 task show <taskId>
dida365 task update <taskId> -p <projectId> -t "新标题" --priority 3
dida365 task complete <projectId> <taskId>
dida365 task delete <projectId> <taskId>

已完成任务查询

dida365 completed today                          # 今天
dida365 completed yesterday                      # 昨天
dida365 completed week                           # 本周
dida365 completed date 2024-01-15                # 指定日期
dida365 completed range 2024-01-01 2024-01-31    # 日期范围
dida365 completed today --timezone "Asia/Shanghai"
dida365 completed today --json                   # JSON 输出

全量同步

dida365 sync all                # 同步所有项目/任务/标签
dida365 sync all --json         # JSON 输出
dida365 sync settings           # 查看用户设置
dida365 sync timezone           # 查看时区

标签管理

dida365 tag list                        # 列出所有标签
dida365 tag create "工作" --color "#ff0000"
dida365 tag rename "旧名" "新名"
dida365 tag color "工作" "#0000ff"       # 修改颜色
dida365 tag nest "子标签" "父标签"       # 设置层级
dida365 tag merge "标签A" "标签B"        # 合并(A -> B)
dida365 tag delete "标签A" "标签B"       # 删除(支持多个)

批量操作

# 任务操作
dida365 batch move-task <taskId> <fromProjectId> <toProjectId>
dida365 batch set-subtask <taskId> <parentId> <projectId>
dida365 batch delete-tasks taskId1:projectId1 taskId2:projectId2

# 项目操作
dida365 batch create-project "新项目" --color "#ff0000" --group <groupId>
dida365 batch delete-projects <projectId1> <projectId2>

# 文件夹操作
dida365 batch create-folder "工作"
dida365 batch delete-folders <groupId1> <groupId2>

Development

npm run dev          # watch 模式,自动重编译
npm run build        # 构建
npm run mcp          # 启动 MCP Server
npm run cli -- <cmd> # 运行 CLI

Publishing / Distribution

本项目支持以下发布渠道:

| 渠道 | 文件 | 说明 | |------|------|------| | npm | package.json | npm publish → 用户 npx dida365-ai-tools | | Smithery | smithery.yaml | MCP Server 市场 | | MCP Registry | server.json | 官方 MCP Server 注册表 | | GitHub Actions | .github/workflows/ | CI (build) + CD (npm publish on release) |

Why Private API?

Dida365 提供了 Open API,但其功能是私有 API 的子集,且需要注册开发者应用。本项目选择使用私有 API + Cookie 认证,覆盖更全面、配置更简单。

Credits

Contributing

See CONTRIBUTING.md for development setup and guidelines.

License

MIT