feat(scope-guard): treat a hand-over request as its own complete scope

Three corrections in one window on 2026-09-18, all the same shape. Asked for a
selection-token list, returned an optimized one: "nein nicht optimieren". Asked
for the line that triggers a run, returned the line wrapped in a full
`gh workflow run` command: "du solltest es mir nur ausgeben!", then "nur die
zeile". Each cost a round trip on a deliverable that was already finished.

Rules 1 to 3 govern what gets created, files, commands, commits and `git add`.
None of them reaches the shape of a hand-over, which is message composition
rather than artifact creation, so a narrowing qualifier and an unrequested
wrapper both passed. Rule 4 closes that, and the trigger now names the case.

Autotune first proposed this as a standalone `output-only` skill. That violated
its own rule against writing a skill for behaviour an existing one covers, and
two skills with overlapping descriptions would compete when either is selected.
The delta is folded in here instead and the draft was deleted before it landed.

This does not bind on its own: nothing in the collection and no always-loaded
file invokes scope-guard, so it fires only when it is recognised and called.
The infinito-nexus-core project carries the same rule as an agent memory, which
loads without an invocation.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
Kevin Veen-BirkenbachandClaude Opus 5 committed 2026-09-18 17:09:47 +02:00
1 parent 0ce722e376
commit 68e3535a09
1 file changed
+10 -2
+10 -2
View File
@@ -3,8 +3,9 @@ name: scope-guard
description: >
Deliver exactly what was asked and nothing more. Trigger on every task that
creates files, commands, or commits, and on autonomous runs where no one is
reviewing each step. Also when the operator asks why something exists that
they never requested. Portable across projects.
reviewing each step. Also when the operator asks to be given something, and
when they ask why something exists that they never requested. Portable across
projects.
---
The requested scope is the deliverable. A problem you noticed behind the
@@ -22,6 +23,13 @@ sentence of the request asks for this? No sentence, no artifact.
3. An adjacent defect gets reported in one line, not fixed — unless it blocks
the request. Fixing it quietly puts an unreviewed change in someone else's
commit.
4. An instruction to hand something over is complete on its own. Print the
artifact in the shape asked for: do not optimize, reorder or deduplicate it,
do not wrap it in a command that consumes it, and do not append commentary,
next steps, confidence blocks or offers. A narrowing qualifier ("just the
line") re-shapes the earlier request; re-emit narrower without re-deriving
the content. A problem with the artifact is worth one sentence before it,
never a rewrite of it.
When something genuinely seems missing, say so in one sentence and finish the
requested scope anyway. Widening the scope is the operator's call.