lucky8197/dsh-weekly-digest ↗★ 1
dsh-weekly-digest
周报生成器(Weekly Digest):聚合最近 N 天的 git 提交、DSH 会话活动与每日记忆,自动生成 Markdown 周报。全程只读。
安装
$
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:lucky8197/dsh-weekly-digest说明文档
阅读完整 README ↗dsh-weekly-digest(周报生成器)
Weekly Digest Generator for DeepSeek Harness. Aggregates the last N days (default 7) of git commits, DSH session activity and daily memory entries into a Markdown weekly report — commits per day, top contributors, recent commit list, per-project session counts, and daily memory highlights. Read-only end to end. Install with:
dsh plugin --profile web add "github:lucky8197/dsh-weekly-digest#main".
每周五下午写周报是最烦的事:翻 git log、数会话、回忆这周干了什么。dsh-weekly-digest
把三份现成数据源自动聚合:
- git 提交(当前仓库):每天提交数、贡献者排行、最近提交明细;
- DSH 会话活动(
~/.dsh/sessions):按项目统计窗口内会话数与体积; - 每日记忆(
~/.dsh/memories/daily):窗口内每天的记忆条目与摘录。
输出一份可直接粘贴的 Markdown 周报。全程只读,不写任何文件。
快速安装
dsh plugin --profile web add "github:lucky8197/dsh-weekly-digest#main"
工具用法
weekly_digest
参数:
cwd?: string 仓库目录(git 提交统计用;默认当前会话工作目录)
days?: number 聚合窗口(天,默认 7)
maxEntries?: number 最近提交/记忆条目最大展示数(默认 10)
输出:canonical JSON 报告(主输出渲染为 Markdown 周报)
周报示例(节选)
# 周报(2026-08-08 ~ 2026-08-15)
## Git 提交(106 个)
- 每天:2026-08-11 ×5、2026-08-12 ×23、2026-08-13 ×49、2026-08-14 ×25、2026-08-15 ×4
- 贡献者:dev(69)、luoliang(37)
最近提交:
- `97e47b73` 2026-08-15 luoliang:test: 测试覆盖审查补测第3批(实现 v1.43 / 技术 v1.39)
## 会话活动(32 个 / 0 B)
- game01:24 个会话
## 每日记忆(26 条)
### 2026-08-15(15 条)
- [09:54] [git master] [game01] 三篇文档结构修订完成并提交(fe9f119)…
canonical JSON
{
"tool": "weekly_digest", "version": 1, "cwd": "/path", "days": 7,
"period": { "from": "2026-08-08", "to": "2026-08-15" },
"git": { "isRepo": true, "totalCommits": 106, "perDay": [...], "authors": [...], "recent": [...] },
"sessions": { "root": "...", "totalSessions": 32, "totalBytes": 0, "projects": [...] },
"memories": { "root": "...", "days": [...], "totalEntries": 26 },
"digest": "# 周报(…)\n…",
"stats": { "commits": 106, "sessions": 32, "memoryEntries": 26 }
}
配置(cordis 配置节)
- insert:
- id: weekly-digest
name: 'dsh-weekly-digest'
config:
days: 7 # 聚合窗口(天)
maxEntries: 10 # 最近提交/记忆条目最大展示数
sessionsRoot: "~/.dsh/sessions" # 会话目录(默认值)
memoriesRoot: "~/.dsh/memories/daily" # 每日记忆目录(默认值)
安全边界(硬性要求)
- 只执行白名单只读 git 命令(
git log --since/rev-parse,见 ), 拒绝 checkout/push/reset 等一切写操作;