fix(skills): show the diff stat, never the diff, in commit and essence skills
kvb-git-commit-no-verify, kvb-git-commit-next and kvb-skill-essence printed the full staged diff into the chat before every commit or batch write. The operator ordered on 2026-11-11 that the chat shows only the diff stat and the score table, to save tokens. 🎯 Fix: 92 % 💥 Break: 2 % 💸 Cost: 99 % ⏱️ Time: 100 % 🛡️ Security: 100 % 🏆 Score: 91 🚦 Gate: ✅ 90/5, cost and time <= 100, security 100 % Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
45063dc71f
commit
3ad111be0a
3 files changed
+12
-13
No files matched your search
@@ -12,13 +12,13 @@ description: >
|
||||
cherry-pick or merge, never touch the staging index or the tree.
|
||||
2. A similar fix on another branch is a stop: run the kvb-think-dialectic
|
||||
skill on the two candidates (staged version as thesis, foreign commit as
|
||||
antithesis) until one survives, then present sha, branch, both diffs, the
|
||||
antithesis) until one survives, then present sha, branch, both diff stats, the
|
||||
verdict and the recommended move (keep staged / take theirs / combine).
|
||||
Wait for the operator's decision; do not commit.
|
||||
3. Nothing similar found, or the operator picked the staged version: run the
|
||||
kvb-git-commit-no-verify skill on the currently staged changes
|
||||
(kvb-code-clean pass and kvb-check-legal check first, then the
|
||||
full staged diff and the kvb-check-score commit table of 📁 worktree,
|
||||
kvb-check-score commit table of 📁 worktree,
|
||||
🌿 branch, 📊 diff stat, scores with 🛡️ security and gate, then
|
||||
`git commit --no-verify`, exact staging index only, its message carrying
|
||||
the `score.py --message-block` paragraph right before the
|
||||
|
||||
@@ -9,12 +9,12 @@ description: >
|
||||
staged and unstaged changes first, then the kvb-check-legal check over
|
||||
the staging index. A legal blocker stops here.
|
||||
2. Show in the message right before the `git commit` call, never only after
|
||||
it, the full staged diff (`git diff --cached`), then the commit table of
|
||||
the kvb-check-score skill (`score.py ... --commit-table <worktree>`):
|
||||
📁 worktree, 🌿 branch, 📊 staged diff stat, then fix, break, cost,
|
||||
time, security, score and gate of the staged bundle, as the
|
||||
kvb-check-confidence skill produces them: break risk derived through the
|
||||
kvb-check-break-risk skill, never estimated.
|
||||
it, the commit table of the kvb-check-score skill (`score.py ...
|
||||
--commit-table <worktree>`): 📁 worktree, 🌿 branch, 📊 staged diff stat,
|
||||
then fix, break, cost, time, security, score and gate of the staged
|
||||
bundle, as the kvb-check-confidence skill produces them: break risk
|
||||
derived through the kvb-check-break-risk skill, never estimated. Never
|
||||
print a diff in the chat, only its stat.
|
||||
3. Approval-prompt duty: the commit call's approval prompt (Claude Code: the
|
||||
Bash `description`; other runtimes: their prompt text) names the worktree
|
||||
path, the branch, the diff stat and the score values (🎯 fix, 💥 break,
|
||||
@@ -27,8 +27,7 @@ description: >
|
||||
operator's word for this one commit only once its `approval.py verify`
|
||||
step exits 0 on the exact staged tree; otherwise the chat question stays
|
||||
the fallback. The same duty holds for every call that creates a commit,
|
||||
`git merge` included (there the incoming diff stat, and the incoming diff
|
||||
in the message before).
|
||||
`git merge` included (there the incoming diff stat).
|
||||
4. Commit exactly the staging index with `git commit --no-verify` and a
|
||||
Conventional-Commits message derived from the staged diff; never add
|
||||
unstaged files, never push. The message carries the output of
|
||||
|
||||
@@ -62,7 +62,7 @@ Keep any fact with no other home (it is not redundancy) and the trigger
|
||||
wording of a `description`: tighten it, never drop the "when". Dates stay
|
||||
absolute; never introduce "recently" while shortening.
|
||||
|
||||
## Step 4: show the diff, then write
|
||||
## Step 4: confirm, then write
|
||||
|
||||
Write in place: an essence beside the original saves nothing, the original
|
||||
still loads. A git repository needs a clean status for the rewritten paths,
|
||||
@@ -70,8 +70,8 @@ so git alone reverts every edit; not clean: report and stop. `~/.claude` and
|
||||
`~/.agents` are usually not under git: copy each file to `<file>.pre-essence`
|
||||
first.
|
||||
|
||||
Present per file the diff and the lines and characters saved; ask one
|
||||
confirmation for the batch; write only after it.
|
||||
Present per file the lines and characters saved and what was cut, never the
|
||||
diff; ask one confirmation for the batch; write only after it.
|
||||
|
||||
## Step 5: verify
|
||||
|
||||
|
||||
Reference in new issue
Block a user