Skip to content

chore(compat): CC 2.1.176–181 survey + lift held subagent-nesting wording - #84

Merged
tigers1997 merged 1 commit into
mainfrom
chore/cc-2.1.176-181-survey-and-nesting-unhold
Jun 18, 2026
Merged

chore(compat): CC 2.1.176–181 survey + lift held subagent-nesting wording#84
tigers1997 merged 1 commit into
mainfrom
chore/cc-2.1.176-181-survey-and-nesting-unhold

Conversation

@tigers1997

Copy link
Copy Markdown
Owner

Summary

Follow-up to #81. The v2.7.0 release held the subagent-nesting wording on a CC 2.1.172 CHANGELOG vs. live-docs contradiction (CHANGELOG said subagents can nest ≤5 levels; live docs said they cannot). The contradiction is now reconciled upstream:

  • code.claude.com/docs/en/sub-agents line 786 (min-version: 2.1.172): "a subagent can spawn its own subagents."
  • Line 792: foreground subagents are self-limiting at any depth.
  • Line 793: background subagents capped at depth 5.
  • CC 2.1.181 fix bullet: "Fixed foreground subagents spawning unbounded nested chains; they now respect the same 5-level depth limit as background subagents."

Three shipped wording sites updated:

File Line Was Now
docs/04-subagents-mcp-orchestration.md 59 "Subagents cannot spawn other subagents" "Subagents can spawn other subagents (CC ≥ 2.1.172, capped at 5 nesting levels). Older CC versions can't. Prefer leaf designs anyway..."
docs/04-subagents-mcp-orchestration.md 140 "Subagents can't spawn subagents. If you need 3 levels, you're designing wrong." "Subagent nesting caps at 5 levels (CC ≥ 2.1.172; earlier versions: 0). If you need 3+ levels, the design is usually still wrong..."
templates/commands/infinite/SKILL.md 65 "They cannot spawn their own subagents and their contexts don't share." "Their contexts don't share — even with nested-subagent support (CC ≥ 2.1.172, ≤ 5 levels), a child can't reach a sibling's transcript."

Leaf-design guidance preserved. The /infinite no-sibling-coordination invariant stands because subagent contexts still don't share regardless of whether nesting is available.

2.1.176–181 survey

Verbatim-pull (2.1.177 + 2.1.180 NOT PRESENT in CHANGELOG — skipped or internal-only):

  • No new in-territory settings.json keys.
  • Out-of-territory by precedent: footerLinksRegexes + language (2.1.176, UI-pref tier), sandbox.allowAppleEvents (2.1.181, macOS-only opt-in).
  • Future opt-in stub candidate: Tool(param:value) permission-rule syntax with * wildcard (2.1.178, e.g. Agent(model:opus)). No shipped template uses the form yet; SchemaStore acceptance unverified. Parked for the next compat batch.
  • Nested .claude/skills collision handling (2.1.178): <dir>:<name> namespacing on name clash. Reinforces the existing plugin-skill carve-out pattern; no shipped-template impact.
  • MCP server-level specs in subagent disallowedTools (mcp__server, mcp__server__*, mcp__*) silently-ignored bug fixed in 2.1.178 — no-exposure grep against shipped templates clean.
  • Auto-mode classifier (2.1.178) + miscellaneous subagent UX fixes (2.1.179/181): no configurator action.

Sync gate status

SchemaStore sync PR #5723 (→v2.1.150) unchanged — still open/draft, untouched since 2026-05-24 despite its declared blocker #5728 merging 2026-06-01. tested_up_to stays pinned at 2.1.150 per the no-lone-bumps rule. Compat comment refreshed in config_schema.py with the full 2.1.176–181 survey.

Claude Code compat: 2.1.116–2.1.150 (unchanged).

Test plan

  • python3 configure.py --check clean (12 modules, 84 files, compat 2.1.116–2.1.150)
  • bash test/cc-manifest/test-whats-new.sh PASS (all four cases A–D)
  • Stale-wording grep clean across docs/ + templates/ (no remaining "cannot spawn" claims)
  • CI check green
  • CI verdict-gate green
  • CI license/cla green

🤖 Generated with Claude Code

…ding

Follow-up to PR #81. The held subagent-nesting wording (CHANGELOG vs.
live docs contradiction on the CC 2.1.172 nesting capability) is now
resolved upstream:

- code.claude.com/docs/en/sub-agents line 786 documents nested subagents
  under min-version 2.1.172.
- CC 2.1.181 unifies the foreground+background depth cap at 5 levels:
  "Fixed foreground subagents spawning unbounded nested chains; they now
  respect the same 5-level depth limit as background subagents."

Three shipped wording sites updated:

- docs/04-subagents-mcp-orchestration.md L59 (Context hygiene bullet)
- docs/04-subagents-mcp-orchestration.md L140 (Limits bullet)
- templates/commands/infinite/SKILL.md L65 (Phase 4 coordination rule)

Leaf-design guidance preserved and remains the recommended pattern within
the testing envelope (tested_up_to < 2.1.172). The /infinite skill's
no-sibling-coordination invariant still holds — subagent contexts don't
share regardless of whether nesting is available.

2.1.176-181 survey (verbatim-pull, 2.1.177 + 2.1.180 NOT PRESENT):

- No new in-territory settings.json keys.
- Out-of-territory by precedent: footerLinksRegexes + language (2.1.176,
  UI-pref), sandbox.allowAppleEvents (2.1.181, macOS-only).
- Future opt-in stub candidate: Tool(param:value) permission-rule syntax
  with `*` wildcard (2.1.178, e.g. Agent(model:opus)). No shipped template
  uses the form; SchemaStore acceptance unverified.
- Nested .claude/skills collision handling (2.1.178): <dir>:<name>
  namespacing. Reinforces plugin-skill carve-out pattern. No impact.
- MCP server-level specs in subagent disallowedTools (mcp__server,
  mcp__server__*, mcp__*) silently-ignored bug fixed in 2.1.178. No-
  exposure grep against shipped templates: clean.
- Auto-mode classifier (2.1.178) + subagent UX (2.1.179/181): no action.

SchemaStore sync gate PR #5723 unchanged — still open/draft, untouched
since 2026-05-24 despite dep #5728 merged 2026-06-01. tested_up_to stays
pinned at 2.1.150 per the no-lone-bumps rule.

Claude Code compat: 2.1.116-2.1.150 (unchanged).

Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
@claude

claude Bot commented Jun 18, 2026

Copy link
Copy Markdown

VERDICT: PASS

Clean, well-scoped compat survey. The subagent-nesting wording unblock is correctly supported by dual primary-source evidence (live docs min-version: 2.1.172 + CC 2.1.181 explicit depth-cap unification), all three affected wording sites are updated consistently, and the leaf-design guidance and /infinite no-sibling invariant are preserved. No new in-territory settings.json keys shipped (nothing to cross-check against SchemaStore), no third-party code added (no NOTICE entry needed), ## Unreleased entry present, and the four changed files form a single logical unit with no scope creep.

@tigers1997
tigers1997 merged commit b96ec83 into main Jun 18, 2026
4 checks passed
@tigers1997
tigers1997 deleted the chore/cc-2.1.176-181-survey-and-nesting-unhold branch June 18, 2026 01:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant