From bgp-docs
当用户完成一轮 feature 分支开发、准备合并回 develop/main 之前,需要把本次迭代做了什么记录成一份结构化文档时使用。典型请求包括:"生成迭代文档"、"记录这次开发"、"本次改动整理一下"、"把这次 feature 做的事情记下来"、"/bgp-document-iteration"。
How this skill is triggered — by the user, by Claude, or both
Slash command
/bgp-docs:bgp-document-iterationThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
基于 git diff 生成一份"本次迭代做了什么"的文档,用于 feature 分支合并前的存档。
基于 git diff 生成一份"本次迭代做了什么"的文档,用于 feature 分支合并前的存档。
本 skill 只生成事实层内容,不生成决策层内容:
| 能生成(从 git 可读) | 不生成(git 里没有) |
|---|---|
| 改了哪些文件、哪些 domain | 为什么这么做 |
| 新增/修改/删除的关键实体、接口 | 考虑过哪些其他方案 |
| 按 commit 的改动叙事 | 为什么最终选了这个 |
| 统计数据(commit 数、行数) | 有哪些遗留问题 |
定位:结构化 changelog,不是完整决策文档。决策层内容由用户在生成后手动补充(文档里已留小节)。
docs/wiki/iterations/YYYY-MM-DD-<branch-slug>.md
YYYY-MM-DD: 执行当天日期<branch-slug>: 当前分支名去掉 feature/、feat/、bugfix/ 等前缀,剩余部分的 / 替换为 -
feature/pay/alipay → pay-alipay-2、-3,不覆盖既有文件执行前检查,命中任一条件 → 告知用户并终止:
main / master / develop(主干分支上不该走这个流程)——除非用户明确确认继续并行执行:
git rev-parse --is-inside-work-tree
git branch --show-current
git log --oneline -20
自动检测默认 base(按优先级):
git rev-parse --verify develop 成功 → 默认 base = developgit rev-parse --verify main 成功 → 默认 base = maingit rev-parse --verify master 成功 → 默认 base = master展示给用户:
git log <base>..HEAD --oneline 的 commit 清单(让用户直观看到会包含哪些 commit)询问:
默认起点:
<base>(共 N 个 commits 将被纳入)。是否使用?
- 回复
y使用默认- 回复 commit hash 或分支名以指定其他起点
- 回复
<from>..<to>指定区间
把用户确认的起点转为 <base>..HEAD 或 <from>..<to> 形式,记为 <range>。
默认用 <branch-slug> 作标题。询问用户:
文档标题默认为
<branch-slug>,是否需要改成更可读的标题?回复新标题或n使用默认。
用户输入作为文档 H1 标题。
并行执行:
git log <range> --pretty=format:'%h|%ai|%an|%s'
git log <range> --pretty=format:'%h%n%B%n---COMMIT-END---' # 含 body
git diff <range> --stat
git diff <range> --name-status
大小控制:
--stat 显示总变动 > 3000 行,不读完整 diff——按文件挑选变动最大的 5-10 个 git diff <range> -- <file> 逐个读优先级:
docs/wiki/01-architecture.md 是否存在
<!-- auto:domains-table --> 块中每行的"paths"列src/<name>/ / modules/<name>/ / services/<name>/ 的首层目录名com.xxx.<domain>.*按下方模板写入 docs/wiki/iterations/<filename>.md。
每个 domain 下的写作规则:
- [A/M/D] <file-path>:<一句话说明>- A path/to/file.ext(字母为 A/M/D/R)# <标题>
- 日期: YYYY-MM-DD
- 分支: `<branch-name>`
- Diff 范围: `<range>`
- 统计: N commits, X 文件, +Y/-Z 行
- 涉及 domain: <domain-a>, <domain-b>, ...
## 改动摘要
<一段 3-8 句叙事,按 commit 顺序串起本次迭代做了什么。
材料来源:commit subject + body。
要求:用业务视角叙述(如"实现 XX 登录"),不是技术动作清单(如"添加了 LoginService.java")。>
## 详细改动
### <domain A>
**关键改动**:
- [A] `src/login/LoginService.java`:新增 SSO 登录入口
- [M] `src/user/User.java`:User 实体增加 `ssoId` 字段
- [D] `src/login/OldAuthFilter.java`:移除旧认证过滤器
**文件清单**(共 N 个):
- A src/login/SsoClient.java
- M src/login/config/LoginConfig.java
- ...
### <domain B>
...
### 其他 / 未归属
- M README.md
- M pom.xml
## Commits
- `abc1234` <subject>(<author>, YYYY-MM-DD)
- `def5678` <subject>(<author>, YYYY-MM-DD)
- ...
---
## 决策补充(人工填写)
> 以下内容 git diff 里读不出,需要手动补充。保留空小节作为提示。
### 背景 / 目标
<这次迭代为什么要做?解决什么问题?>
### 方案对比 / 选型理由
<考虑过哪些方案?为什么选现在这个?>
### 遗留问题 / 下一步
<有什么已知没处理的?后续要做什么?>
### 相关链接
<issue / 需求文档 / 讨论记录的链接>
---
**后续建议**:本次改动涉及的 domain 现状文档如需同步,运行 `bgp-document-wiki` skill。
生成文件后,告知用户路径并询问:
已生成
docs/wiki/iterations/<filename>.md(N 行)。 是否 commit 到当前分支<branch-name>?回复y/n。
y → 执行:
git add docs/wiki/iterations/<filename>.md
git commit -m "docs: 添加 <branch-slug> 迭代文档"
n → 不做任何 git 操作,结束不做的事:
git mergegit push合并操作由用户自己完成。
生成后执行:
ls docs/wiki/iterations/<filename>.md 存在且非空ls 验证路径存在(对 [D] 删除的跳过)
git log --oneline <range> | wc -l 和 git diff <range> --name-only | wc -l 一致| 错误 | 原因 | 修正 |
|---|---|---|
| 关键改动写了没改过的文件 | AI 从 commit message 脑补 | 只写 --name-status 里真出现的文件 |
| 改动摘要变成技术流水账 | 直接拷 commit subject | 按业务目标重新组织,一段叙事 |
| 未归属文件占了大头 | 架构文档的 paths 列写得太具体,没匹配上 | 降级用启发式(按 src 首层目录)兜底 |
| 文档已存在被覆盖 | 忘了检查 | 命名追加 -2 / -3 |
| diff 过大爆 context | 没做大小控制 | 按 Step 4 规则,超过 3000 行只挑关键文件 |
Fetches up-to-date documentation from Context7 for libraries and frameworks like React, Next.js, Prisma. Use for setup questions, API references, and code examples.
Applies a firm's KYC/AML rules grid to parsed onboarding records: assigns risk rating, checks required documents, outputs rule outcomes with citations, and routes for escalation.
Generates daily or weekly digests of activity from connected sources (chat, email, docs, tasks, CRM), highlighting action items, decisions, mentions, and project updates.
npx claudepluginhub pangjiawei19/agent-skills --plugin bgp-docs