核心用法
dida-cli 是滴答清单(Dida365)的官方命令行工具封装,本Skill提供完整的安装、认证与操作指南。Agent需按以下流程执行:
1. 环境检查与安装:先执行 dida --version 检测CLI是否存在,若不存在则通过 npm install -g @suibiji/dida-cli 全局安装。
2. OAuth PKCE认证:运行 dida auth login 打开浏览器完成授权,无头环境可使用 dida auth token <token> 直接设置API密钥。
3. 项目操作:dida project list --json 获取结构化项目列表,支持按名称匹配选择,禁止猜测项目ID。
4. 任务全生命周期管理:
- 创建:
dida task create --title "任务名" --project <id> [--content] [--dueDate] - 查询/更新/完成/删除:均需明确
projectId 与 taskId - 跨项目移动:
dida task move --from <src> --to <dst> --task <id>
5. 结构化输出:所有列表/查询命令优先使用 --json 标志便于程序化处理,再转换为人类可读摘要返回用户。
显著优点
- 纯文档型Skill,零代码执行风险:经CLS-Certify扫描认证为T-MD分类(纯Markdown指导文档),无可执行代码,静态分析得分95分。
- 标准化安全认证:强制OAuth PKCE流程,支持API Token作为无头环境备用方案,无凭证硬编码风险。
- 操作原子性与可追溯性:每个任务操作需明确ID,禁止模糊匹配;破坏性操作(删除、批量完成)需用户显式确认。
- JSON模式支持完善:所有核心命令支持
--json 输出,便于Agent进行程序化决策和链式调用。 - 官方API直连:仅连接滴答清单官方域名 dida365.com,TLS 1.2+加密,无数据中转或外泄风险。
潜在缺点与局限性
- 外部CLI依赖风险:本Skill仅提供使用指南,实际执行的
@suibiji/dida-cli 为第三方npm包,未包含在本次安全认证范围内,用户需自行审查该CLI工具来源。 - Token存储责任:API Token虽由用户主动输入,但Skill未内置安全存储机制,依赖用户环境变量或凭证管理工具配置。
- 无内置重试与容错:指南明确要求Agent避免"重复激进重试",网络异常时需用户手动重试。
- 项目/任务歧义处理繁琐:当名称匹配到多个项目或任务时,必须中断流程询问用户,无法自动启发式选择。
- 功能边界受限:不包含滴答清单的高级功能(如番茄钟、习惯打卡、协作成员管理)。
适合人群
- 开发者与技术用户:熟悉Node.js/npm环境,习惯命令行操作
- 自动化工作流构建者:需将任务管理集成到CI/CD、脚本或定时任务中
- 多平台任务同步需求者:已在滴答清单生态内,希望扩展CLI管理能力
- 隐私敏感用户:OAuth PKCE设计避免密码泄露,数据仅存储于官方服务
常规风险
| 风险类型 | 等级 | 说明 |
|---------|------|------|
| 第三方CLI供应链 | 中 | `@suibiji/dida-cli` 包的完整性与维护状态需用户自行验证 |
| Token泄露 | 中 | API Token若硬编码于脚本或日志中可能导致账户风险 |
| OAuth流程中断 | 低 | 浏览器拦截、防火墙限制可能导致认证失败,需人工介入 |
| 误操作数据丢失 | 低 | 删除/批量操作需二次确认,但用户确认后不可逆 |
| 网络依赖 | 低 | 所有操作需连接 dida365.com,离线不可用 |
安全认证摘要
- 综合评分:88/100(S级)
- 来源可信度:T2(可信社区项目,GitHub/ClawHub发布,MIT-0许可)
- 关键通过项:静态代码分析95分、依赖审计100分、隐私合规85分、威胁情报80分
- 合规状态:GDPR数据最小化、CCPA知情同意、敏感数据保护、权限合理性、用户删除权、数据来源合法性全部通过。