mcpbeat

Scope

boshu2/scope

Review the bead or caller intent write scope for completeness and ambiguity. Triggers: "review write scope", "check scope boundaries", "scope this change".

993 tokens
context cost
the whole folder, loaded on every use
1
files
instructions only
0
copies elsewhere
how many repositories repackaged it
416
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/boshu2/agentops --skill scope

The instruction itself

8 sections, as written by the author

Scope — Review a proposed write scope

Review the write scope in the existing bead or caller intent. This skill is

advisory: it does not create a second planning artifact, write a lock, install

a hook, block an edit, or claim paths.

Inputs

  • One active behavior and its acceptance scenarios.
  • Proposed include and exclude patterns.
  • Known generated companions and fixture/projection paths.
  • Explicit non-goals.

Procedure

  • Map each acceptance criterion to the smallest source paths that may change.
  • Add owned generated companions that must move with those sources.
  • Check whether any include/exclude patterns overlap or are too broad to prove.
  • Identify likely paths the proposal omitted.
  • Return a corrected proposal and the reasons for each change, then stop.

The caller decides whether to adopt the proposal in the original intent source,

and Validate independently compares runtime-derived changed paths with that scope.

Axiom-kernel framing

Derive the scope from axioms, not enumeration instinct. State the small set of

facts the acceptance makes true — "behavior X lives in root A", "projection B

is generated from A", "history under C is frozen" — and derive every include

and exclude pattern from exactly one axiom. A pattern with no supporting axiom

is unjustified breadth; an axiom with no pattern is a gap. Both go in the

review output. Scopes assembled by listing directories that feel related are

the vibes perimeter failure mode: they cannot be defended when Validate

finds a path on the boundary, because nobody can say why the line is where it

is. Stop condition: the review is complete when the axiom-to-pattern mapping

has no unmapped members on either side.

Byte-verified recovery ceremony

When the review finds that protected paths were already touched — or the

caller asks how a scope violation should be unwound — the advisory answer is a

ceremony, not a hand-wave: identify the known-good source for each affected

path (committed state, snapshot, or generated-from-source), restore, then

verify byte-for-byte that restored content matches the known-good bytes

(content hash comparison, not visual diff or "looks right"). Recovery declared

on inspection alone is the eyeballed restore failure mode: a file that

looks restored can still differ in bytes that matter. The ceremony's stop

condition is a hash match for every affected path; any path with no

known-good source to verify against is reported as unrecoverable-as-scoped,

and the caller decides.

Output

write_scope:
  include: ["bounded/source/**"]
  exclude: ["bounded/source/generated-by-other-owner/**"]
generated_companions: ["bounded/generated/**"]
gaps: []
ambiguities: []

Checks

  • Patterns are normalized repository-relative paths.
  • Includes cover the behavior without granting unrelated directories.
  • Excludes do not contradict required changes.
  • Generated companions are explicit.
  • No ownership, scheduling, Git, hook, retry, release, or delivery state is

introduced.

Failure behavior

If the scope cannot be made unambiguous from the supplied acceptance, report

the missing facts and stop. The caller may revise the intent in a new action.

How to use it

Copy the folder

Take boshu2/scope from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.