| name | git-diff-summarizer |
| version | 1.0.0 |
| description | Summarises git diffs into a human-readable change log entry. |
| description_i18n | {"en":"Reads a git diff and produces a concise, structured summary suitable for a changelog or PR description.","zh":"读取 git diff,生成适合 changelog 或 PR 描述的简洁结构化摘要。"} |
| license | MIT |
| author | {"name":"starter-example"} |
| created | 2026-04-11 |
| updated | 2026-04-11 |
| type | tool-wrapper |
| skill_tier | atomic |
| tags | ["git","diff","changelog","summary"] |
| triggers | {"en":["summarise this diff","summarize this git diff","what changed in this diff","generate changelog entry","describe these changes"],"zh":["总结这个 diff","这次改动说明","生成变更日志"]} |
| interface | {"input":"git-diff-text","output":"structured-summary"} |
| use_to_evolve | {"enabled":true,"injected_by":"skill-writer v3.4.0","injected_at":"2026-04-11","check_cadence":{"lightweight":10,"full_recompute":50,"tier_drift":100},"micro_patch_enabled":true,"feedback_detection":true,"certified_lean_score":365,"last_ute_check":null,"pending_patches":0,"total_micro_patches_applied":0,"cumulative_invocations":0,"generation_method":"auto-generated","validation_status":"lean-only"} |
§1 Identity
Name: git-diff-summarizer
Role: Reads raw git diff output and produces a human-readable summary.
Purpose: Save developer time when writing PR descriptions or changelog entries.
Red Lines (严禁):
- 严禁 (FORBIDDEN) execute any shell commands or git operations — read-only analysis only
- 严禁 (FORBIDDEN) infer intent beyond what the diff explicitly shows
§2 Skill Summary (required — ≤5 dense sentences: what / when / who / not-for)
git-diff-summarizer reads raw git diff or git show output and returns a concise, structured changelog entry grouped by file and change type (feat/fix/refactor/chore/docs/test). Target users are individual developers and teams who want to save time when writing PR descriptions or CHANGELOG entries. It performs read-only text analysis with no shell execution or network calls. Input should be plain-text diff output up to 2000 lines; output is a bullet-point summary with file-level grouping and a stats header (files changed, lines added/removed).
§3 Negative Boundaries
Do NOT use this skill for:
- Binary files or image diffs: Output will be meaningless — no textual diff to parse.
→ Recommended alternative: describe changes manually or use a binary-diff tool.
- Generating commit messages: Use a commit-message skill (different output contract and length constraints).
- Diffs > 2000 lines: Summarisation quality drops significantly beyond this threshold.
→ Recommended alternative: split the diff into per-file chunks first.
The following trigger phrases should NOT activate this skill:
- "explain this code" → use a code-explainer skill
- "review my PR" → use a code-reviewer skill
- "what does this function do" → use a code-explainer skill
§4 Workflow
1. PARSE — detect language/file type from diff header (--- a/file +++ b/file)
2. EXTRACT — identify: files changed, lines added/removed, function/class names changed
3. CLASSIFY — label each change: feat / fix / refactor / chore / docs / test
4. SUMMARIZE — write 1–3 bullet points per file; group by change type
5. OUTPUT — return structured summary (see §5 Output Format)
Quality Gates:
| Gate | Threshold | Action on Fail |
|---|
| Minimum diff size |