Caldav Cli

📅 安全命令行日历管理专家

安全命令行管理 iCloud、Google、Yandex 等多账户日历,支持 OAuth2,凭据加密存储于系统钥匙串。

收藏
5.7k
安装
2.1k
版本
0.1.5
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心功能

caldav-cli 是一款基于 Node.js 的命令行 CalDAV 客户端,专为需要在终端环境中高效管理多平台日历的用户设计。支持 Apple iCloud、Google Calendar(OAuth2)、Yandex 及任意自定义 CalDAV 服务器,实现跨平台日历数据的统一操作。

显著优点

1. 安全凭据管理:采用操作系统级钥匙串存储(macOS Keychain、Linux libsecret、Windows Credential Vault),密码、OAuth2 刷新令牌及客户端凭证均不落地明文,配置文件仅保留非敏感元数据并设 0600 权限。
2. 灵活的交互模式events createaccount add 支持全交互式向导、全命令行参数及混合模式,兼顾新手友好与自动化脚本需求。

3. 多账户与多格式输出:可配置多个账户并指定默认账户,支持按账户、日历名称、日期范围筛选事件,输出格式可选人类可读表格或 JSON,便于管道化处理。

4. 自动迁移机制:旧版本存储于配置文件的 OAuth2 凭证会在首次运行时自动迁移至钥匙串,降低升级摩擦。

潜在局限

  • Node.js 依赖:要求 Node.js ≥ 18,对无 Node 环境的系统增加部署成本。
  • OAuth2 配置门槛:Google Calendar 需用户自行在 Google Cloud Console 创建项目、启用 API 并配置桌面应用 OAuth 客户端,流程对非技术用户较复杂。
  • 功能边界:仅覆盖事件查看与创建,不支持日历管理(如新建/删除日历)、重复规则(RRULE)编辑、附件上传等高级 CalDAV 特性。
  • 生态依赖:依赖 @napi-rs/keyring 实现跨平台钥匙串访问,若该库在特定 Linux 发行版或容器环境存在兼容性问题,可能影响凭据存储。

适合人群

  • 偏好终端工作流的开发者与运维人员
  • 需批量处理日历数据或集成至 CI/CD 管道的自动化场景
  • 重视凭据安全、不愿在配置文件保存明文密码的隐私敏感用户

常规风险

| 风险类别 | 说明 |
|---------|------|
| 供应链安全 | 通过 npm 全局安装,需信任 `caldav-cli` 及其依赖(含原生模块 `@napi-rs/keyring`)的维护者 |
| OAuth2 令牌泄露 | 虽存储于系统钥匙串,但若主机遭恶意软件控制,仍可能通过内存读取或钥匙串提权获取 |
| 时间解析风险 | 日期时间参数依赖用户输入格式正确性,时区处理未在文档中明确说明,跨时区场景需谨慎验证 |
| 数据丢失 | 删除账户或操作事件前无二次确认机制(命令行标志模式),脚本执行时易误操作 |

使用建议

首次配置建议通过交互向导完成,确认连接测试通过后再启用自动化脚本。Google OAuth2 凭证建议专用项目隔离权限,定期轮换客户端密钥。敏感环境可考虑配合 sudo -K 或容器隔离降低钥匙串暴露面。

Caldav Cli 内容

手动下载zip · 3.3 kB
skill-card.mdtext/markdown
请选择文件