Skip to content
Back to skills

On Scope Change

ASecurity

Use whenever the active scope shifts during a session — entering a sub-task, dropping into a bug, climbing back to a parent goal, or pivoting. Emits a visible nested breadcrumb of the current focus (deepest < parent < root) so the user gets instant recall of exactly where the agent is in the work's nesting, and fires the chapter-mark so it lands in the transcript/TOC.

  • 2 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added November 7, 2026
code-qualitygodebuggingapi

Works with

  • cli
  • api
  • mcp

Security analysis

A100/100

Scanned November 7, 2026

npx -y skills add Next-AI-Labs-Inc/alignment-harness --skill on-scope-change --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of On Scope Change?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for On Scope Change
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/next-ai-labs-inc-on-scope-change/badge)](https://www.skillsdirectory.com/skills/next-ai-labs-inc-on-scope-change)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: on-scope-change
description: Use whenever the active scope shifts during a session — entering a sub-task, dropping into a bug, climbing back to a parent goal, or pivoting. Emits a visible nested breadcrumb of the current focus (deepest < parent < root) so the user gets instant recall of exactly where the agent is in the work's nesting, and fires the chapter-mark so it lands in the transcript/TOC.
---

# On Scope Change

Any time your scope changes, update your session title to reflect it — minimum
words per level, hyper-specific words that trigger instant recall for the user.

## The format — TWO lines, never one

The marker and the breadcrumb live on **separate lines**. This is not cosmetic —
it is a scrape contract:

- **Line 1 — the marker:** the pin emoji + the label `Focus Updated:` and NOTHING
  else. This is the anchor a later scraper greps for.
- **Line 2 — the breadcrumb:** ONLY `{deepest} < {parent} < {root}`. No pin, no
  label, no extra words. This is the payload the scraper grabs from the line
  immediately below the marker.

```
📍 Focus Updated:
{deepest active scope} < {parent} < {root}
```

Read the breadcrumb right-to-left = root → deepest. Each level is the fewest,
most specific words that let the user recall exactly what that level is. The
chain grows as you descend into sub-work and shortens as you climb back out.

**Never truncate the parent chain.** If the nesting is deeper than three levels,
include every level — do not drop the middle, do not collapse to three. The chain
is exactly as long as the real nesting is:

```
📍 Focus Updated:
fix indent bug < focus column idea < idea gallery < focus UI < founder focus
```

**Hard rule:** the pin and the label NEVER appear on the breadcrumb line, and the
breadcrumb line NEVER contains the pin or label. Two distinct lines, always — so
scraping is unambiguous: find the marker line, take the line beneath it.

## Examples

The root focus is `founder focus` (priority management with delegation fork).
If you start on the UI for predicting next things:

```
📍 Focus Updated:
predict next < founder focus
```

If the focus then changes to debugging that:

```
📍 Focus Updated:
debugging < predict next < founder focus
```

If you climb back out of debugging:

```
📍 Focus Updated:
predict next < founder focus
```

## How it surfaces

The chapter-mark is the mechanism that surfaces the breadcrumb in the
transcript / table of contents. After printing the two-line marker, fire the
chapter-mark whose title is the breadcrumb **only** — exactly the line-2 payload,
with NO pin and NO `Focus Updated:` label. The pin and label live solely on the
chat marker line (line 1); the chapter title is the pure breadcrumb so the TOC
stays clean and the breadcrumb is identical in both places.

```
mcp__ccd_session__mark_chapter({
  title: "{deepest} < {parent} < {root}",   // pure breadcrumb — NO pin, NO label
  summary: "one line on what this scope covers"
})
```

So each scope change produces exactly three things, in this order:
1. Chat line 1: `📍 Focus Updated:`  (marker — pin + label only)
2. Chat line 2: `{deepest} < {parent} < {root}`  (breadcrumb payload)
3. A chapter-mark whose title === that breadcrumb (no pin, no label)

## When to fire

- Entering a new sub-task under the current goal (descend a level)
- Dropping into a bug, debug, or detour off the current work (descend)
- Finishing a sub-scope and returning to its parent (ascend — shorten the chain)
- Pivoting to a different root focus entirely (new chain)

Do not fire for every tool call — only when the *active scope* genuinely moves.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.