dingtalk-daily-report-cli
v1.0.11
Published
Generate DingTalk daily reports from local git commits and copy rich text to the clipboard.
Downloads
100
Readme
钉钉日报 CLI
从本地多个 git 仓库读取当天提交,生成“项目 -> 模块 -> 具体功能”三级日报,并复制为适合粘贴到钉钉的富文本内容。
详细文档:
- 安装和日常操作:
INSTALL_AND_USAGE.md - 发布到 npm 私服:
PRIVATE_REGISTRY.md
安装
团队内部发布到 npm 后:
npm install -g dingtalk-daily-report-cli本机开发调试:
npm install -g /Users/churui/.cursor/daily-report-cli首次配置
daily-report init-config配置文件默认生成到 ~/.cursor/daily-report/config.json。
关键字段:
projects:显式配置项目目录和展示名。scanRoots:递归扫描这些目录下的 git 仓库。author:按提交作者过滤。不填时使用仓库本地git config user.name和git config user.email。moduleRules:根据文件路径映射二级模块名。clipboard.fontSizePt:富文本字体大小,默认 11。
常用命令
daily-report preview --today
daily-report copy --today
daily-report copy --since 2026-04-27 --until 2026-04-27
daily-report copy --today --plainpreview 只输出上下文,不写剪贴板,不发送钉钉机器人。
copy 会优先写入 RTF 富文本剪贴板;如果当前系统不支持富文本写入,会自动降级为纯文本。
命令行展示结果会使用可直接复制的 text 代码块;剪贴板内容仍是适合粘贴到钉钉的正文/富文本。复制正文的一级标题直接使用项目名,三级会比二级进一步缩进:
```text
企业评级
a. 统计数据模块开发
i. 完成煤源地数据列表联调开发与详情展示优化
ii. 修复统计详情展示问题
b. 基础工作
i. 完善构建配置
```配置示例
{
"projects": [
{
"name": "企业评级",
"path": "~/projects/enterprise-rating",
"moduleRules": [
{
"match": "src/views/statistics/",
"module": "统计数据模块开发"
}
]
}
],
"scanRoots": ["~/projects"],
"author": {
"name": "",
"email": ""
},
"clipboard": {
"preferRichText": true,
"fontSizePt": 11
}
}