github-router 0.3.325 → 0.3.326

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  import { Ln as BALANCED_PROFILE_NATIVE_AGENT_NAMES, Nn as oneMContextDisabled, Pn as withOneMSuffix, Rn as BALANCED_PROFILE_NATIVE_EFFORTS, Un as CHEAPEST_PROFILE_NATIVE_AGENT_NAMES, Wn as CHEAPEST_PROFILE_NATIVE_EFFORTS, Xn as CHEAP_PROFILE_NATIVE_EFFORTS, Yn as CHEAP_PROFILE_NATIVE_AGENT_NAMES, a as buildAgentPrompt, fn as CONDENSED_OPERATING_SEQUENCE, l as maxPersonasFor, n as MCP_GROUPS, pn as DEFINITION_OF_GREATNESS, t as GROUP_META, u as personasFor } from "./peer-mcp-personas-DcAErb_d.js";
2
2
  import { a as isUnderClaudeConfigMirror, f as writeRuntimeFileSecure, t as PATHS } from "./paths-BnZwolac.js";
3
- import { C as CHEAP_REVIEWER_ALIAS_ID, S as CHEAP_PLAN_ALIAS_ID, _ as CHEAPEST_GENERAL_PURPOSE_ALIAS_ID, b as CHEAP_EXPLORE_ALIAS_ID, f as BALANCED_EXPLORE_ALIAS_ID, g as CHEAPEST_EXPLORE_ALIAS_ID, h as BALANCED_REVIEWER_ALIAS_ID, m as BALANCED_PLAN_ALIAS_ID, p as BALANCED_GENERAL_PURPOSE_ALIAS_ID, v as CHEAPEST_PLAN_ALIAS_ID, w as LUNA_SCOUT_ALIAS_ID, x as CHEAP_GENERAL_PURPOSE_ALIAS_ID, y as CHEAPEST_REVIEWER_ALIAS_ID } from "./server-setup-BfZEQOXB.js";
3
+ import { C as CHEAP_REVIEWER_ALIAS_ID, S as CHEAP_PLAN_ALIAS_ID, _ as CHEAPEST_GENERAL_PURPOSE_ALIAS_ID, b as CHEAP_EXPLORE_ALIAS_ID, f as BALANCED_EXPLORE_ALIAS_ID, g as CHEAPEST_EXPLORE_ALIAS_ID, h as BALANCED_REVIEWER_ALIAS_ID, m as BALANCED_PLAN_ALIAS_ID, p as BALANCED_GENERAL_PURPOSE_ALIAS_ID, v as CHEAPEST_PLAN_ALIAS_ID, w as LUNA_SCOUT_ALIAS_ID, x as CHEAP_GENERAL_PURPOSE_ALIAS_ID, y as CHEAPEST_REVIEWER_ALIAS_ID } from "./server-setup-BfTjAZS2.js";
4
4
  import { c as FAST_PROFILE_MODELS, d as FAST_PROFILE_NATIVE_MODELS, l as FAST_PROFILE_NATIVE_AGENT_NAMES, u as FAST_PROFILE_NATIVE_EFFORTS } from "./fast-profile-contract-DmsyQQrw.js";
5
5
  import { C as MAX_PARALLELISM_RULE, S as MAX_COORDINATOR_PROMPT, T as maxNativePrompt, a as MAX_PROFILE_NATIVE_AGENT_NAMES, i as MAX_PROFILE_MODELS, o as MAX_PROFILE_NATIVE_EFFORTS, s as MAX_PROFILE_NATIVE_MODELS, w as maxNativeDescription, x as MAX_COORDINATOR_DESCRIPTION } from "./max-profile-contract-Bl7I_EOC.js";
6
6
  import "./self-invocation-opSXHEs0.js";
@@ -2074,23 +2074,33 @@ const GATHER_CONTEXT_SKILL = {
2074
2074
  name: "gh-gather-context",
2075
2075
  md: `---
2076
2076
  name: gh-gather-context
2077
- description: Bounded context gathering for non-trivial asks: decomposes the ask, runs lexical code searches to identify relevant files, dispatches bounded parallel explore workers to gather evidence, stitches results into a freshness-stamped context brief plus a compact version. Use when grounded context is needed before planning or changing code.
2077
+ description: Gather grounded codebase context before planning. Use when unfamiliar code must be understood, files located, or claims verified against source. Returns a freshness-stamped brief with file:line citations. Not for trivial reads or already-known code.
2078
2078
  user-invocable: true
2079
+ requires: []
2080
+ produces: [context.md, context.compact.md, .complete]
2081
+ consumes: []
2082
+ excludes: [trivial tasks, already-known code, implementation]
2079
2083
  ---
2080
2084
 
2081
2085
  # gh-gather-context: bounded context gathering
2082
2086
 
2083
2087
  Use this skill when a non-trivial ask needs grounded context before planning.
2084
- All reasoning runs at the 200K default window: the lead and every explore
2085
- worker use the Luna model at high effort with bare slugs (no 1M accounting).
2086
- Output is a durable full brief plus a compact downstream version.
2088
+ All reasoning runs at the 200K default window: the lead and every Explore
2089
+ subagent use the Luna model at high effort with bare slugs (no 1M accounting).
2090
+ Output is a durable full brief plus a compact downstream version. This skill
2091
+ dispatches ONLY native subagents present on the profile roster (Explore) via
2092
+ the Agent tool, never worker-* MCP dispatchers. No reviewer dispatch in this
2093
+ stage: Explore evidence plus targeted follow-up reads is the verification path.
2087
2094
 
2088
2095
  ## Hard bounds
2089
2096
 
2090
2097
  - Maximum rounds: 3.
2091
- - Maximum parallel explore workers per round: 6.
2098
+ - Maximum parallel Explore subagents per round: 6.
2092
2099
  - Maximum lexical searches per round: 10.
2093
2100
  - Maximum follow-up reads per round: 5.
2101
+ - Advisory budget: keep each Explore dispatch under ~3 minutes of wall-clock;
2102
+ the Task tool has no maxWallClockMs parameter, so count your own dispatches
2103
+ and stop at saturation rather than running to a clock.
2094
2104
  - Terminate at the first of saturation or a cap.
2095
2105
  - On cap-hit, return with open unknowns flagged as residual. Do not loop forever.
2096
2106
 
@@ -2100,7 +2110,6 @@ Use these exact tags on every finding and claim:
2100
2110
 
2101
2111
  - verified-executable: reproduced the symptom, ran the failing test, or ran a check that directly proves the claim. This is the only deterministic confidence tag.
2102
2112
  - verified-source: read the actual source, config, logs, docs, or primary artifact and cited the relevant locations. This is model-mediated and can still be wrong.
2103
- - cross-lab-agreed: a different-lab reviewer independently agreed with the claim. This reduces correlated blind spots but is advisory.
2104
2113
  - unverified: plausible but not confirmed; treat as residual risk.
2105
2114
 
2106
2115
  ## Procedure
@@ -2119,16 +2128,16 @@ Use these exact tags on every finding and claim:
2119
2128
  - Use git log and git blame when authorship, regression timing, or intent matters.
2120
2129
  - Use mcp__search__web for upstream APIs, package behavior, protocol docs, or public issues.
2121
2130
 
2122
- 4. Decompose into bounded explore workers.
2131
+ 4. Decompose into bounded Explore subagents.
2123
2132
  - Cluster search results into at most 6 coherent investigation areas.
2124
2133
  - For each area, write a narrow brief: the specific question, the expected artifact, and the files to focus on.
2125
- - Dispatch ALL explore workers in a single turn via the Agent tool (subagent_type worker-explore). Each runs read-only at the 200K default window and returns a summary with an evidence table and file:line citations. Pass maxWallClockMs 180000 on every worker call so a hung worker is reaped after 3 minutes instead of blocking its slot.
2126
- - Keep worker results summarized; do not paste every detail into the main context.
2134
+ - Dispatch ALL Explore subagents in a single turn via the Agent tool (subagent_type Explore). Each runs read-only at the 200K default window and returns a summary with an evidence table and file:line citations. Advisory: keep each dispatch under ~3 minutes; the Task tool enforces no wall-clock, so terminate at saturation.
2135
+ - Keep Explore results summarized; do not paste every detail into the main context.
2127
2136
 
2128
2137
  5. Stitch and verify.
2129
- - Collect all explore results and deduplicate file references.
2130
- - Run at most 5 targeted follow-up reads for gaps, in parallel.
2131
- - Dispatch the worker-review subagent (via the Agent tool, maxWallClockMs 300000) to confirm source-reading for load-bearing claims.
2138
+ - Collect all Explore results and deduplicate file references.
2139
+ - Run at most 5 targeted follow-up reads for gaps, in parallel, using Read, Grep, and Glob directly; dispatch one more narrow Explore round only for gaps direct reads cannot close.
2140
+ - Do NOT dispatch a reviewer in this stage. Verification here is Explore evidence plus your own follow-up reads: re-open the primary source for every load-bearing claim and confirm the citation is real before tagging it verified-source.
2132
2141
  - Form a root-cause hypothesis or integration map, and state what would falsify it.
2133
2142
 
2134
2143
  6. Run a completeness pass.
@@ -2138,38 +2147,44 @@ Use these exact tags on every finding and claim:
2138
2147
  - If no material unknowns remain and the root cause is at least verified-source, stop for saturation.
2139
2148
 
2140
2149
  7. Persist outputs under .github-router/context/<slug>/ and close the stage.
2141
- - context.md: full brief with the ask decomposition, searches run, worker reports, evidence table, hypothesis, freshness metadata (HEAD commit, working-tree diff hash, timestamp, repo path), residuals, and full citations.
2150
+ - context.md: full brief with the ask decomposition, searches run, Explore reports, evidence table, hypothesis, freshness metadata (HEAD commit, working-tree diff hash, timestamp, repo path), residuals, and full citations.
2142
2151
  - context.compact.md: downstream consumable with a one-paragraph ask summary, key files with one-line purposes, critical constraints (APIs, types, patterns, forbidden changes), integration seams, and residual risks.
2143
- - .complete: stage-completion marker written ONLY after every dispatched explore worker has returned or been recorded as stopped, and both briefs are on disk. No downstream stage (/gh-plan, /gh-implement, /gh-swe-pipeline stage 2+) may start until this marker exists.
2152
+ - .complete: stage-completion marker written ONLY after every dispatched Explore subagent has returned or been recorded as superseded, and both briefs are on disk. No downstream stage (/gh-plan, /gh-implement, /gh-swe-pipeline stage 2+) may start until this marker exists.
2144
2153
  - Downstream phases read by pointer and check freshness instead of re-injecting the whole brief.
2145
2154
 
2146
2155
  ## Waterfall rule
2147
2156
 
2148
- This stage owns all explore workers until it completes. Do NOT return while
2149
- any explore worker is still running unless you explicitly record it as
2150
- stopped (saturation reached or its area superseded) with the reason. If the
2151
- brief already saturates the ask, stop remaining workers first (no further
2152
- follow-ups; treat partial output as superseded), then write the marker. A
2153
- plan built on shifting evidence wastes more than a stopped worker costs.
2157
+ This stage owns all Explore dispatches until it completes. Do NOT return while
2158
+ any Explore subagent is still running unless you explicitly record it as
2159
+ superseded (saturation reached or its area covered) with the reason. Native
2160
+ subagents cannot be killed mid-run: record superseded areas and let them
2161
+ finish, but do not wait on or use their output. If the brief already saturates
2162
+ the ask, record remaining dispatches as superseded first (no further
2163
+ follow-ups), then write the marker. A plan built on shifting evidence wastes
2164
+ more than an idle subagent costs.
2154
2165
 
2155
2166
  ## Return format
2156
2167
 
2157
- Return a compact brief, not the whole dump:
2168
+ Return a compact brief, not the whole dump. Output cost dominates: Luna output
2169
+ tokens cost 6x input, so return only file:line citations with one-line
2170
+ summaries, never full file contents or pasted source blocks.
2158
2171
 
2159
2172
  - Context files: paths to context.md and context.compact.md.
2160
2173
  - Freshness: HEAD commit, diff hash, timestamp.
2161
2174
  - Termination: saturated or cap-hit; if cap-hit, name the cap.
2162
2175
  - Summary: 3-8 bullets with confidence tags.
2163
- - Evidence table: claim, tag, primary source or command, reviewer status.
2176
+ - Evidence table: claim, tag, primary source or command, verification status.
2164
2177
  - Residual unknowns: explicit list, or none.
2165
2178
  - Downstream guidance: recommended next action and what must be rechecked if the tree changes.
2166
2179
 
2167
2180
  ## Non-goals
2168
2181
 
2169
- - Do not present verified-source or cross-lab-agreed as deterministic.
2182
+ - Do not present verified-source as deterministic.
2170
2183
  - Do not hide open unknowns because the answer looks useful.
2171
2184
  - Do not keep searching after the cap.
2172
2185
  - Do not paste the entire persisted brief into later turns unless the user asks.
2186
+ - Do not dispatch a reviewer from this stage; Explore evidence plus targeted follow-up reads is the verification path.
2187
+ - Do not return full file contents in briefs, summaries, or evidence tables; cite file:line plus one line of purpose.
2173
2188
  - Do not finish without the .complete marker: a marker-less brief is not a completed stage.
2174
2189
  `
2175
2190
  };
@@ -2179,23 +2194,40 @@ const IMPLEMENT_SKILL = {
2179
2194
  name: "gh-implement",
2180
2195
  md: `---
2181
2196
  name: gh-implement
2182
- description: Parallel implementation of an approved plan using bounded Luna workers with isolated worktrees: each worker implements its task, self-tests, self-reviews, and returns a patch; the lead aggregates into a unified diff, runs staged review, and returns the final diff with a report. Use when a user-approved plan is ready for execution.
2197
+ description: Execute an approved plan with parallel subagents and self-validation. Use when a user-approved plan.md is ready for execution. Reviewer only on low-confidence or risky changes. Not for unapproved plans or exploration.
2183
2198
  user-invocable: true
2199
+ requires: [approved plan.md with .complete marker]
2200
+ produces: [unified diff, implementation-report.md]
2201
+ consumes: [plan.md]
2202
+ excludes: [unapproved plans, exploration, trivial changes]
2184
2203
  ---
2185
2204
 
2186
2205
  # gh-implement: bounded parallel implementation with staged review
2187
2206
 
2188
2207
  Use this skill only after /gh-plan produced a user-approved plan.md. All
2189
- implementation runs at the 200K default window: the lead and every task worker
2190
- use the Luna model at max effort with bare slugs (no 1M accounting). Review is
2191
- staged: a Luna max pass first, then a Sol medium pass only for major issues.
2208
+ implementation runs at the 200K default window with bare slugs (no 1M
2209
+ accounting): the lead dispatches native subagents present on the profile
2210
+ roster. If an implementer subagent exists (max profile), use it first for
2211
+ implementation tasks, then General-Purpose for handoffs; otherwise use
2212
+ General-Purpose for all tasks. Review is conditional, never staged by default:
2213
+ each task subagent self-tests, self-reviews, and reports an explicit confidence
2214
+ verdict; the lead dispatches a reviewer only on low-confidence validation or
2215
+ complex and risky changes, then a General-Purpose fix pass only for major
2216
+ reviewer findings. This skill dispatches ONLY native subagents via the Agent
2217
+ tool, never worker-* MCP dispatchers.
2192
2218
 
2193
2219
  ## Hard bounds
2194
2220
 
2195
- - Maximum concurrent implement workers: 8.
2221
+ - Maximum concurrent implementation subagents: 8 (advisory; the Task tool
2222
+ enforces no concurrency cap, so count your own dispatches).
2196
2223
  - Maximum retries per task: 2.
2197
2224
  - Maximum review-fix cycles: 2.
2198
- - Worktrees are auto-removed on success and retained on failure for debugging.
2225
+ - Advisory budget: keep each task under ~10 minutes; the Task tool enforces
2226
+ no wall-clock, so terminate at acceptance, not at a clock.
2227
+ - Worktrees are opt-in, not default: pass worktree:true to
2228
+ General-Purpose when parallel tasks require isolation or git-history
2229
+ protection. In-place tasks must be sequentialized to avoid collisions;
2230
+ parallel in-place edits to the same files will conflict.
2199
2231
 
2200
2232
  ## Stage gate 0 (do this BEFORE any implementation)
2201
2233
 
@@ -2205,40 +2237,42 @@ staged: a Luna max pass first, then a Sol medium pass only for major issues.
2205
2237
  re-invoke planning first.
2206
2238
  2. Check freshness: if HEAD or the working-tree diff hash moved since the
2207
2239
  plan was approved, re-verify stale load-bearing assumptions before
2208
- dispatching workers.
2209
- 3. Stop the previous stage: send no further follow-ups to any lingering plan
2210
- workers (worker-plan follow-ups) and record them as stopped with the
2211
- reason. Implementing while planning still runs builds on a moving target
2212
- and wastes both stages. Only advance once every plan worker has returned
2213
- or is recorded as stopped.
2240
+ dispatching subagents.
2241
+ 3. Close the previous stage: send no further follow-ups to any lingering Plan
2242
+ dispatches (Explore follow-ups) and record them as superseded with the
2243
+ reason. Native subagents cannot be killed mid-run: let them finish but do
2244
+ not wait on or use their output. Implementing while planning still runs
2245
+ builds on a moving target and wastes both stages. Only advance once every
2246
+ Plan dispatch has returned or is recorded as superseded.
2214
2247
 
2215
2248
  ## Procedure
2216
2249
 
2217
2250
  1. Parse the approved plan.
2218
2251
  - Read plan.md fully.
2219
2252
  - Group tasks by parallelGroup; order groups by dependency.
2220
- - For each group, prepare an isolated git worktree per task plus a narrow task brief (task spec, relevant context excerpt, acceptance criteria, verification commands).
2253
+ - For each group, prepare a narrow task brief (task spec, relevant context excerpt, acceptance criteria, verification commands). Write every brief as plain directives, never reflective first-person prose: Gemini-run subagents may suppress tool calls when the prompt contains reflective text. If parallel tasks in the group require isolation, prepare one git worktree per task and pass worktree:true; otherwise tasks run in-place and must be sequentialized within shared files.
2221
2254
 
2222
- 2. Dispatch bounded implement workers, one parallel batch per group.
2223
- - Dispatch ALL tasks in the group in a single turn via the Agent tool (subagent_type worker-implement, with worktree isolation, maxWallClockMs 600000 per task so a hung worker is reaped after 10 minutes instead of blocking its slot).
2224
- - Each worker runs at the 200K default window and must self-contain its work:
2255
+ 2. Dispatch bounded implementation subagents, one parallel batch per group.
2256
+ - Dispatch ALL tasks in the group in a single turn via the Agent tool. Use subagent_type implementer first where the profile provides one (max), otherwise subagent_type General-Purpose for every task. Advisory: keep each task under ~10 minutes; the Task tool enforces no wall-clock.
2257
+ - Each subagent runs at the 200K default window and must self-contain its work:
2225
2258
  a. Implement the change.
2226
2259
  b. Run the task verification commands (tests, typecheck, lint).
2227
2260
  c. Self-review against the acceptance criteria.
2228
2261
  d. Fix any self-found issues (at most 2 internal fix cycles).
2229
- e. Return the patch plus test results and self-review notes.
2262
+ e. Return the patch plus test results, self-review notes, and an explicit confidence verdict (high or low) with reasons. Low confidence means the subagent itself doubts the result: flaky or incomplete verification, untested edge cases, or behavior it could not directly observe. Keep the return compact: patch plus results, no full-file echoes; output tokens cost several times input on every profile.
2230
2263
  - Do NOT dispatch the same task twice (no dedup exists); a retry is a new dispatch only after a recorded failure.
2231
- - For a big artifact, have the worker write it to a file and return the path.
2264
+ - For a big artifact, have the subagent write it to a file and return the path.
2232
2265
 
2233
2266
  3. Aggregate and validate.
2234
- - Collect all patches and apply them sequentially to the main worktree (or merge the worktrees).
2267
+ - Collect all patches and apply them sequentially to the main worktree (or merge the worktrees when worktree isolation was used).
2235
2268
  - Run the full relevant validation: test suite, typecheck, and lint.
2236
- - If any task fails validation, route it back to an implement worker (at most 2 retries per task). If it still fails, checkpoint with the failure as residual risk instead of pretending it is solved.
2269
+ - If any task fails validation, route it back to a General-Purpose subagent (at most 2 retries per task). If it still fails, checkpoint with the failure as residual risk instead of pretending it is solved.
2237
2270
 
2238
- 4. Run staged review.
2239
- - Pass 1 (always): dispatch the worker-review subagent (via the Agent tool, maxWallClockMs 300000) over the unified diff for correctness against acceptance criteria, code quality and consistency, security and performance regressions, and test coverage. Categorize findings as minor (style, nits) or major (logic, architecture).
2240
- - If pass 1 finds no major issues, finish here.
2241
- - Pass 2 (major issues only): dispatch a fix worker (via the Agent tool, maxWallClockMs 300000) at the 200K default window using the Sol model at medium effort with the flagged areas, the failing checks, and the pass-1 findings. It returns fixed patches or an explicit escalate-to-user with reasons.
2271
+ 4. Decide whether external review is warranted (default: skip it).
2272
+ - Skip the reviewer when every task reports high confidence AND full validation (tests, typecheck, lint) passes AND the change avoids high-risk areas (auth, user input, database queries, crypto, serialization, data migration, cross-boundary contracts) AND the lead judges the change non-complex. Record the skip with reasons in the implementation report; self-validation plus green checks is the default path, not a shortcut.
2273
+ - Dispatch the reviewer subagent (via the Agent tool, subagent_type reviewer) ONLY when a task reports low confidence, validation is incomplete or unconvincing, the change touches high-risk areas, or the lead explicitly requested review. Scope the brief to the uncertain areas, the acceptance criteria, and the failing or insufficient checks. Categorize findings as minor (style, nits) or major (logic, architecture). Advisory: keep the review under ~5 minutes.
2274
+ - If the reviewer finds no major issues (or review was skipped with recorded reasons), finish here.
2275
+ - Fix pass (major reviewer findings only): dispatch a General-Purpose subagent (via the Agent tool) at the 200K default window with the flagged areas, the failing checks, and the reviewer findings. It returns fixed patches or an explicit escalate-to-user with reasons. At most 2 review-fix cycles.
2242
2276
 
2243
2277
  5. Finalize.
2244
2278
  - Apply any review fixes and re-run full validation.
@@ -2253,15 +2287,16 @@ Return:
2253
2287
  - Implementation report path.
2254
2288
  - Task completion status per task id.
2255
2289
  - Test, typecheck, and lint results.
2256
- - Review summary (pass 1 findings; pass 2 findings and fixes if used).
2290
+ - Review summary (skipped with recorded reasons, or reviewer findings; fix-pass findings and fixes if used).
2257
2291
  - Final residual risks and next action.
2258
2292
 
2259
2293
  ## Non-goals
2260
2294
 
2261
2295
  - Do not start without a user-approved plan.md plus its .complete approval record.
2262
- - Do not start while plan workers still run; stop them first.
2263
- - Do not serialize work that has no data dependency; independent tasks in a group run concurrently.
2264
- - Do not nest workflow invocations: workers are internal sessions and must not re-invoke /gh-implement (or any /gh-* pipeline skill).
2296
+ - Do not start while Plan dispatches still run; record them superseded first.
2297
+ - Do not dispatch a reviewer by default; self-validation plus green checks is the default path.
2298
+ - Do not serialize work that has no data dependency; independent tasks in a group run concurrently (sequentialize only in-place edits to shared files).
2299
+ - Do not nest workflow invocations: subagents must not re-invoke /gh-implement (or any /gh-* pipeline skill).
2265
2300
  - Do not claim completeness when retries or review cycles are exhausted with open failures.
2266
2301
  `
2267
2302
  };
@@ -2409,18 +2444,27 @@ const PLAN_SKILL = {
2409
2444
  name: "gh-plan",
2410
2445
  md: `---
2411
2446
  name: gh-plan
2412
- description: Holistic planning from gathered context: ingests the context brief, creates a scoped modular ordered implementation plan with explicit tasks for cheap implementation workers, surfaces open questions for user approval, and persists plan.md. Use when a non-trivial change needs a reviewed plan before implementation.
2447
+ description: Create an implementation plan from gathered context. Use when a non-trivial change needs a reviewed, ordered task list with acceptance criteria before implementing. Requires user approval. Not for trivial changes or missing context.
2413
2448
  user-invocable: true
2449
+ requires: [fresh context.md with .complete marker]
2450
+ produces: [plan.md, .complete]
2451
+ consumes: [context.md, context.compact.md]
2452
+ excludes: [trivial changes, implementation, missing context]
2414
2453
  ---
2415
2454
 
2416
- # gh-plan: holistic planning for cheap implementation
2455
+ # gh-plan: native Plan-subagent planning
2417
2456
 
2418
2457
  Use this skill after /gh-gather-context (or when equivalent context is already
2419
- available) and before any implementation. The planner runs at the 200K default
2420
- window using the Sol model at medium effort. The plan must be scoped, modular,
2421
- non-overlapping, and ordered, with enough detail for Luna implementation
2422
- workers to execute each task in isolation. User approval is mandatory before
2423
- implementation.
2458
+ available) and before any implementation. For non-trivial work, dispatch the
2459
+ native Plan subagent (subagent_type Plan) present on every pipeline profile
2460
+ roster; profile frontmatter pins its model and effort (Sol at the 200K default
2461
+ window). The plan must be scoped, modular, non-overlapping, and ordered, with
2462
+ enough detail for a native General-Purpose (or implementer, where the profile
2463
+ provides one) subagent to execute each task in isolation. User approval is
2464
+ mandatory before implementation. This skill dispatches ONLY the native Plan
2465
+ subagent via the Agent tool, never worker-* MCP dispatchers. Plan self-serves
2466
+ Explore follow-ups per its delegation graph; the skill does not dispatch
2467
+ Explore directly.
2424
2468
 
2425
2469
  ## Prerequisites
2426
2470
 
@@ -2434,47 +2478,74 @@ implementation.
2434
2478
  Finish or re-invoke gathering first.
2435
2479
  2. Check freshness: if HEAD or the working-tree diff hash moved since the
2436
2480
  brief's stamp, re-verify stale load-bearing claims before using them.
2437
- 3. Stop the previous stage: send no further follow-ups to any lingering
2438
- gather-context explore workers and record them as stopped with the reason.
2439
- Planning while explore workers still run builds on shifting evidence and
2440
- wastes both stages. Only advance once every gather worker has returned or
2441
- is recorded as stopped.
2481
+ 3. Close the previous stage: send no further follow-ups to any lingering
2482
+ gather-context Explore dispatches and record them as superseded with the
2483
+ reason. Native subagents cannot be killed mid-run: let them finish but do
2484
+ not wait on or use their output. Planning while Explore subagents still run
2485
+ builds on shifting evidence and wastes both stages. Only advance once every
2486
+ Explore dispatch has returned or is recorded as superseded.
2487
+
2488
+ ## Triviality reassessment (do this AFTER gate 0, BEFORE dispatching Plan)
2489
+
2490
+ 1. Reassess with fresh context: if the ask is trivial (typo, one-line config
2491
+ read, obvious change of at most a few lines, pure explanation) or the
2492
+ context shows no multi-file, risky, uncertain, or high-impact work, STOP.
2493
+ Do NOT dispatch Plan. Do NOT write plan.md or .complete.
2494
+ 2. Return a trivial verdict: one-sentence reason, the recommended direct
2495
+ action, and an explicit statement that no downstream stage (/gh-implement,
2496
+ /gh-swe-pipeline stage 3) may run. A trivial ask must never pay planning
2497
+ cost as ritual.
2442
2498
 
2443
2499
  ## Hard bounds
2444
2500
 
2445
2501
  - Maximum tasks: 20.
2446
2502
  - Maximum parallel groups: 5.
2447
2503
  - Keep planner input well under the 200K window (target at most around 150K tokens of context) so there is headroom for reasoning and output. This is self-discipline, not an enforced cap: prefer the compact brief and read full sections only on demand.
2504
+ - Advisory budget: keep the Plan dispatch under ~5 minutes; the Task tool enforces no wall-clock. At most 2 bounded follow-up rounds to the same Plan dispatch for gaps.
2448
2505
 
2449
- ## Procedure
2506
+ ## Procedure (non-trivial work only)
2450
2507
 
2451
2508
  1. Ingest context.
2452
2509
  - Read context.compact.md fully.
2453
2510
  - Read the evidence table and residual unknowns from context.md.
2454
2511
  - Identify acceptance criteria, constraints, integration seams, and forbidden changes.
2455
2512
 
2456
- 2. Build a blind-spot table before decomposing.
2457
- - Wrong-spec risk: judgment-only, mitigated only by user-blessed acceptance criteria.
2458
- - Root-cause risk: executable-checkable if reproduced or covered by a failing test; otherwise advisory.
2459
- - Integration risk: usually source-verified plus tests where possible.
2460
- - Regression risk: executable-checkable when tests, typecheck, or lint cover it.
2461
- - Review risk: advisory cross-lab review reduces correlated blind spots.
2462
- - Concurrency or merge risk: source-verified and sometimes executable-checkable.
2463
- - Missing-test risk: executable-checkable only after a test exists and runs.
2464
- - Tag every blind spot as executable-checkable or judgment-only.
2465
-
2466
- 3. Decompose into minimal safe increments.
2467
- - Each task touches a single file or a tightly coupled file group.
2468
- - Each task states input artifacts, output artifact, acceptance criteria, verification commands, and rollback concern.
2469
- - Order tasks by dependency (topological sort); tasks with no data dependency share a parallel group.
2470
- - Keep each task small enough for one Luna worker at the 200K window (target at most 50K context tokens of relevant files per task).
2471
- - If the ask needs discovery follow-ups, delegate them to worker-explore background subagents (via the Agent tool, maxWallClockMs 180000) rather than bloating the plan.
2472
-
2473
- 4. Surface open questions before finalizing.
2474
- - Ask about ambiguous acceptance criteria, design decisions with multiple valid approaches, risk tolerance, and test strategy.
2475
- - Present a short candidate list for confirmation where possible.
2476
-
2477
- 5. Persist the plan to .github-router/plans/<slug>/plan.md.
2513
+ 2. Compose the Plan dispatch brief. Include every item below; a vague brief
2514
+ produces a vague plan, and a vague plan fails downstream:
2515
+ - Ask summary and acceptance criteria (or candidates where ambiguous).
2516
+ - Constraints, integration seams, and forbidden changes.
2517
+ - Context pointers: context.compact.md path, the evidence table and
2518
+ residual sections of context.md, plus the freshness stamp.
2519
+ - Required output shape: objective; architectural invariants; interface
2520
+ contracts; execution steps with files touched plus a done condition per
2521
+ step; acceptance commands with the observable pass result; critical files
2522
+ as file:line; a blind-spot table tagging each risk executable-checkable
2523
+ or judgment-only (wrong-spec, root-cause, integration, regression,
2524
+ review, concurrency or merge, missing-test); open questions as options
2525
+ with a recommendation; cost estimate (task count, parallel groups,
2526
+ context tokens).
2527
+ - Plan-mode rule: plan and acceptance criteria only, no implementation
2528
+ file edits.
2529
+ - Permission to use Explore and reviewer per the delegation graph.
2530
+ - Write the brief as plain directives, never reflective first-person prose:
2531
+ Gemini-run subagents may suppress tool calls when the prompt contains
2532
+ reflective text.
2533
+ - Demand compact output: file:line plus one-line purposes, never pasted
2534
+ source blocks. Output tokens cost several times input on every profile.
2535
+ - Advisory ~5 minute budget.
2536
+
2537
+ 3. Dispatch ONE Plan subagent via the Agent tool (subagent_type Plan) with
2538
+ that brief, then WAIT for its full return. Do not plan inline in parallel
2539
+ and do not dispatch implementation subagents while it runs.
2540
+
2541
+ 4. Validate the returned plan. Every task must name files, state the change
2542
+ and its done condition, and carry runnable acceptance commands;
2543
+ trade-offs must appear as options with a recommendation. If gaps remain,
2544
+ send ONE bounded follow-up to the same Plan dispatch naming the exact gaps
2545
+ (at most 2 follow-up rounds total). If still underspecified, checkpoint
2546
+ with the gaps as residual risk instead of pretending the plan is complete.
2547
+
2548
+ 5. Persist the validated plan to .github-router/plans/<slug>/plan.md.
2478
2549
  - Ask summary and user-blessed acceptance criteria.
2479
2550
  - Blind-spot table with executable-checkable or judgment-only tags.
2480
2551
  - Ordered task list with ids, files, dependencies, parallel groups, acceptance criteria, verification commands, rollback concerns, and estimated context tokens.
@@ -2492,6 +2563,7 @@ implementation.
2492
2563
 
2493
2564
  Return:
2494
2565
 
2566
+ - Trivial exit: yes with the recommended direct action and no plan file, or no with the plan below.
2495
2567
  - Plan file: path to the durable plan.md.
2496
2568
  - Task count and parallel groups.
2497
2569
  - Open questions and user answers.
@@ -2500,11 +2572,12 @@ Return:
2500
2572
 
2501
2573
  ## Non-goals
2502
2574
 
2575
+ - Do not dispatch Plan for a trivial ask; exit with a trivial verdict instead.
2503
2576
  - Do not edit implementation files while planning; in plan mode, produce the plan and acceptance criteria only.
2504
2577
  - Do not present judgment-only conclusions as executable guarantees.
2505
2578
  - Do not hide open unknowns because the plan looks complete.
2506
- - Do not start planning while gather-context workers still run; stop them first.
2507
- - Do not dispatch implement workers from planning: stages never overlap.
2579
+ - Do not start planning while gather-context Explore subagents still run; record them superseded first.
2580
+ - Do not dispatch implementation subagents from planning: stages never overlap.
2508
2581
  `
2509
2582
  };
2510
2583
  //#endregion
@@ -2624,7 +2697,7 @@ const SWE_PIPELINE_SKILL = {
2624
2697
  name: "gh-swe-pipeline",
2625
2698
  md: `---
2626
2699
  name: gh-swe-pipeline
2627
- description: Strict sequential SWE pipeline for non-trivial code changes: runs gather-context to completion, then plan with user approval, then implement with staged review. Each stage waits for the previous to finish fully, stopping leftover workers before advancing. Use when the user wants the full structured engineering workflow in one command.
2700
+ description: Strict sequential SWE pipeline for non-trivial code changes: runs gather-context to completion, then plan with user approval, then implement with conditional review. Each stage waits for the previous to finish fully, superseding leftover subagents before advancing. Use when the user wants the full structured engineering workflow in one command.
2628
2701
  user-invocable: true
2629
2702
  ---
2630
2703
 
@@ -2632,25 +2705,28 @@ user-invocable: true
2632
2705
 
2633
2706
  Use this skill when the user invokes /gh-swe-pipeline for a non-trivial code
2634
2707
  change. It coordinates the three pipeline stages in STRICT SEQUENCE. No two
2635
- stages ever overlap: each stage runs to completion, its workers are all
2636
- finished or explicitly stopped, and its completion artifact exists before the
2637
- next stage starts.
2708
+ stages ever overlap: each stage runs to completion, its subagents are all
2709
+ finished or explicitly superseded, and its completion artifact exists before
2710
+ the next stage starts. Every stage dispatches ONLY native subagents present on
2711
+ the profile roster (Explore, Plan, General-Purpose, reviewer, implementer
2712
+ where provided) via the Agent tool, never worker-* MCP dispatchers.
2638
2713
 
2639
- All work runs at the 200K default window with bare slugs (no 1M accounting):
2640
- gather-context uses Luna high, plan uses Sol medium, implement and review
2641
- pass 1 use Luna max, review pass 2 uses Sol medium.
2714
+ All work runs at the 200K default window with bare slugs (no 1M accounting).
2715
+ Advisory budgets (the Task tool enforces no wall-clock): gather ~3 minutes
2716
+ per round, plan ~5 minutes total, implement ~10 minutes per task.
2642
2717
 
2643
2718
  ## The one rule
2644
2719
 
2645
2720
  WATERFALL ONLY. Never start a stage while the previous stage still has running
2646
- workers or an unwritten completion artifact. If a stage already has enough
2647
- evidence to proceed, FIRST stop every still-running worker from the previous
2648
- stage (let their maxWallClockMs reap them or send no further follow-ups and
2649
- treat their partial output as superseded), record what was stopped and why,
2650
- THEN advance. Overlapping stages waste money and produce plans built on
2651
- shifting evidence. This is the failure the pipeline exists to prevent.
2721
+ subagents or an unwritten completion artifact. If a stage already has enough
2722
+ evidence to proceed, FIRST record every still-running subagent from the
2723
+ previous stage as superseded (native subagents cannot be killed mid-run: send
2724
+ no further follow-ups, let them finish, and do not use their output), record
2725
+ what was superseded and why, THEN advance. Overlapping stages waste money and
2726
+ produce plans built on shifting evidence. This is the failure the pipeline
2727
+ exists to prevent.
2652
2728
 
2653
- ## Stage 0: triage (no workers)
2729
+ ## Stage 0: triage (no subagents)
2654
2730
 
2655
2731
  1. Restate the ask in one sentence.
2656
2732
  2. Decide trivial versus non-trivial. Trivial (typo, one-line config read,
@@ -2663,47 +2739,56 @@ shifting evidence. This is the failure the pipeline exists to prevent.
2663
2739
  ## Stage 1: gather context (to completion)
2664
2740
 
2665
2741
  1. Invoke the gh-gather-context skill and WAIT for its full return. Do not
2666
- plan, sketch tasks, or dispatch plan workers while it runs.
2742
+ plan, sketch tasks, or dispatch Plan subagents while it runs.
2667
2743
  2. Its completion artifact is
2668
2744
  .github-router/context/<slug>/context.md plus context.compact.md and a
2669
2745
  .complete marker. If the marker is missing, the stage is NOT complete:
2670
2746
  keep waiting or re-invoke; never advance on a partial brief.
2671
2747
  3. Early-stop rule: if the returned brief already saturates the ask (root
2672
- cause at least verified-source, no material unknowns), stop any
2673
- still-running explore workers (no follow-ups; record them as stopped),
2674
- accept the brief, and advance. Do not keep searching after saturation.
2748
+ cause at least verified-source, no material unknowns), record any
2749
+ still-running Explore dispatches as superseded (no follow-ups), accept the
2750
+ brief, and advance. Do not keep searching after saturation.
2675
2751
  4. Cap-hit rule: if the brief reports cap-hit with residuals, surface the
2676
2752
  residuals in run.md and ask the user whether to proceed to planning with
2677
2753
  the gap or to spend one more bounded round. Do not silently treat a
2678
2754
  cap-hit brief as complete.
2679
2755
 
2680
- ## Stage 2: plan (to user approval)
2756
+ ## Stage 2: plan (to user approval, or trivial exit)
2681
2757
 
2682
2758
  1. Precondition check BEFORE invoking gh-plan: the context .complete marker
2683
- exists AND every gather-context explore worker has returned or been
2684
- recorded as stopped. If either is false, do not invoke planning. Fix
2759
+ exists AND every gather-context Explore dispatch has returned or been
2760
+ recorded as superseded. If either is false, do not invoke planning. Fix
2685
2761
  stage 1 first.
2686
- 2. Invoke the gh-plan skill and WAIT for its full return. Do not dispatch
2687
- implement workers, sketch diffs, or edit implementation files while it
2688
- runs. Plan mode means plan and acceptance criteria only.
2689
- 3. Its completion artifact is .github-router/plans/<slug>/plan.md with a
2762
+ 2. Invoke the gh-plan skill and WAIT for its full return. For non-trivial
2763
+ work gh-plan dispatches the native Plan subagent with an
2764
+ implementation-ready brief; do not dispatch implementation subagents,
2765
+ sketch diffs, or edit implementation files while it runs. Plan mode means
2766
+ plan and acceptance criteria only.
2767
+ 3. Trivial exit: if gh-plan returns a trivial verdict (no plan.md, no
2768
+ .complete), STOP the pipeline here. Record the verdict and the recommended
2769
+ direct action in run.md and do NOT advance to implementation.
2770
+ 4. Its completion artifact is .github-router/plans/<slug>/plan.md with a
2690
2771
  user-approval record (.complete marker written only after explicit
2691
2772
  approval). A plan without explicit user approval is NOT complete.
2692
- 4. Present the goal, acceptance criteria, task-to-group map, residual risks,
2773
+ 5. Present the goal, acceptance criteria, task-to-group map, residual risks,
2693
2774
  and cost estimate. Wait for explicit approval. If the user rejects scope
2694
2775
  or cost, downshift to the smallest plan that kills the important blind
2695
2776
  spots and re-seek approval. NEVER advance to implementation without
2696
2777
  approval recorded in run.md.
2697
2778
 
2698
- ## Stage 3: implement (to reviewed diff)
2779
+ ## Stage 3: implement (to validated diff, reviewed only when warranted)
2699
2780
 
2700
2781
  1. Precondition check BEFORE invoking gh-implement: plan.md exists, its
2701
2782
  .complete marker exists, and run.md records explicit user approval. If
2702
2783
  any is missing, do not invoke implementation. Fix stage 2 first.
2703
- 2. Stop any lingering plan workers (worker-plan follow-ups) before the
2704
- first implement dispatch; record them as stopped.
2784
+ 2. Record any lingering Plan dispatches (Explore follow-ups) as superseded
2785
+ before the first implement dispatch.
2705
2786
  3. Invoke the gh-implement skill and WAIT for its full return: unified diff,
2706
- implementation report, test/typecheck/lint results, and review summary.
2787
+ implementation report, test/typecheck/lint results, and review summary
2788
+ (or recorded skip when self-validation plus green checks sufficed).
2789
+ gh-implement dispatches a reviewer only on low-confidence validation or
2790
+ complex and risky changes; do not demand a review that the stage skipped
2791
+ with recorded reasons.
2707
2792
  4. If retries or review cycles exhaust with open failures, checkpoint with
2708
2793
  the failure as residual risk instead of pretending it is solved.
2709
2794
 
@@ -2717,15 +2802,15 @@ Return:
2717
2802
  - Plan file: path to plan.md, task count, parallel groups, open questions
2718
2803
  and user answers, cost estimate, approval record.
2719
2804
  - Implement output: unified diff path, report path, per-task status, test
2720
- results, review summary.
2805
+ results, review summary or recorded skip.
2721
2806
  - Residual risks and next action.
2722
2807
 
2723
2808
  ## Non-goals
2724
2809
 
2725
- - Do not run stages in parallel or overlap workers across stages.
2810
+ - Do not run stages in parallel or overlap subagents across stages.
2726
2811
  - Do not advance past a missing completion artifact or a missing approval.
2727
- - Do not nest pipeline invocations: workers are internal sessions and must
2728
- not re-invoke /gh-swe-pipeline or any /gh-* pipeline skill.
2812
+ - Do not nest pipeline invocations: subagents must not re-invoke
2813
+ /gh-swe-pipeline or any /gh-* pipeline skill.
2729
2814
  - Do not present judgment-only conclusions as executable guarantees.
2730
2815
  `
2731
2816
  };
@@ -3047,14 +3132,18 @@ const STYLE_DIRECTIVE = "Write concisely without losing detail. Use a natural hu
3047
3132
  * `/gh-swe-pipeline`) injected ONLY for `--swe` launches on pinned profiles
3048
3133
  * (fast, max, cheap, cheap1m, cheapest, balanced). Standard is intentionally
3049
3134
  * excluded. Without `--swe` the skill files are not written and this text is
3050
- * not referenced. All skill models run at the 200K default window (bare
3051
- * slugs, no 1M accounting): gatherContext uses Luna high for the lead and
3052
- * every explore worker (bounded: 3 rounds, 6 workers per round); plan uses
3053
- * Sol medium; implement uses Luna max for the lead and every task worker
3054
- * (bounded: 8 concurrent, 2 retries per task, isolated worktrees); review is
3055
- * staged Luna max then Sol medium for major issues only.
3135
+ * not referenced. Stages dispatch ONLY native subagents present on the
3136
+ * profile roster (Explore, Plan, General-Purpose, reviewer, implementer
3137
+ * where provided), never worker-* MCP dispatchers. All roles run at the
3138
+ * 200K default window (bare slugs, no 1M accounting) with advisory budgets:
3139
+ * gather ~3 min per round (3 rounds max, 6 Explore per round); plan ~5 min
3140
+ * via the profile-pinned Plan subagent (trivial asks exit planless);
3141
+ * implement ~10 min per task (8 concurrent max, worktree:true only when
3142
+ * parallel tasks need isolation); reviewer only on low-confidence or complex
3143
+ * and risky changes, plus a General-Purpose fix pass for major reviewer
3144
+ * findings.
3056
3145
  */
3057
- const PIPELINE_SKILLS_AWARENESS = "Pipeline skills (all 200K default context). Prefer `/gh-swe-pipeline`: it runs the stages below in strict sequence, each completing before the next starts, with user approval before implementation. Stages in order: (1) `/gh-gather-context` BEFORE planning when grounded context is needed: decomposes the ask, runs lexical search, fans out to bounded Luna-high explore workers, writes context.md plus context.compact.md; (2) `/gh-plan` AFTER context and BEFORE implementation: ingests the brief with Sol-medium, produces a scoped modular ordered plan.md, surfaces open questions, waits for user approval; (3) `/gh-implement` AFTER plan approval: bounded parallel Luna-max task workers in isolated worktrees (each self-tests and self-reviews), aggregates a unified diff, runs staged review (Luna max, then Sol medium for major issues only). Skip for trivial work. Never implement without an approved plan. Never overlap stages.";
3146
+ const PIPELINE_SKILLS_AWARENESS = "Pipeline skills (all 200K default context, native subagents only, never worker-*). Prefer `/gh-swe-pipeline`: strict sequence, each stage completing before the next starts, user approval before implementation. Stages in order: (1) `/gh-gather-context` BEFORE planning when grounded context is needed: lexical search plus bounded Explore subagents (~3 min each, 3 rounds max), writes context.md plus context.compact.md; (2) `/gh-plan` AFTER context and BEFORE implementation: native Plan subagent plans non-trivial asks (trivial exits planless), ordered plan.md (~5 min), open questions, waits for user approval; (3) `/gh-implement` AFTER plan approval: bounded parallel General-Purpose subagents (implementer first on max; worktree:true if parallel tasks need isolation), reviewer only on low-confidence or risky changes, plus fix pass for major findings. Skip for trivial work. Never implement without an approved plan. Never overlap stages.";
3058
3147
  /** Oxford-comma join: "a", "a and b", "a, b, and c". */
3059
3148
  function joinClauses(parts) {
3060
3149
  if (parts.length <= 1) return parts[0] ?? "";
@@ -3159,7 +3248,7 @@ ${profileLabel} profile runtime wiring is unavailable. Work directly, use only t
3159
3248
  const OPERATING_DEFAULTS_DIRECTIVE = buildOperatingDefaultsDirective();
3160
3249
  const STANDARD_OPERATING_DEFAULTS_DIGEST = "## Operating defaults (these layer with the user's direction and the domain's standards as addons: follow all three; on a direct conflict the user's direction wins, then the domain standard, then the default below)\n\nDelegate when the work is WIDE (many files or sources to sweep) or SLOW and you need only the conclusion, to protect the main thread's finite context and keep it free for reasoning and interacting with the user; prefer parallel delegation for independent work. Do NOT delegate merely because a sub-question is separable: a narrow, deep question whose value is file:line fidelity loses exactly that through a summarization layer, and one answerable in a single command is cheaper done directly. Do trivial, surgical, and last-mile work yourself. Stop a named teammate once you are done with it: it persists for follow-ups, its idle notice means available rather than finished, and nothing reaps it for you.\n\nVerify, do not assert. Run the code, read the file, check the exit code. A claim in prose is worth nothing against state you did not check, and a check that cannot fail proves nothing. Reproduce a bug end to end, the way a real user hits it, before fixing it. Fix a lint error, failing test, or flake the moment you see it, whoever introduced it, without letting it derail the task at hand. Prefer quality and long-term maintainability over development cost.\n\nVerification has a blind spot: a consequential recommendation, a design or trade-off call, or a hard-to-reverse decision that still turns on judgment among plausible alternatives once the direct evidence is in. That is where confabulation hides, so put it past a peer critic before you ship it and budget the wait even under delivery pressure. When a test, a run, a reproduction, or a search would settle the claim, settle it that way instead; a critic asked to re-derive what you can already prove is ritual, not review.\n\nThe agent roster, the tool surface, and the reasoning behind these defaults are in your CLAUDE.md project instructions. Read them when choosing HOW to work; the rules above apply without a lookup.";
3161
3250
  function buildOperatingDefaultsDigest(opts = {}) {
3162
- const digestPipelineSentence = opts.sweEnabled === false ? "" : "Pipeline skills (all 200K default): `/gh-gather-context` before planning when context is needed, `/gh-plan` before implementation (waits for user approval), `/gh-implement` after approval with bounded parallel workers and staged review. Skip for trivial work.\n\n";
3251
+ const digestPipelineSentence = opts.sweEnabled === false ? "" : "Pipeline skills (all 200K default, native subagents only): `/gh-gather-context` before planning when context is needed, `/gh-plan` before implementation (trivial exits planless, waits for user approval), `/gh-implement` after approval with parallel subagents and conditional reviewer. Skip for trivial work.\n\n";
3163
3252
  if (opts.profile === "max") return "## Operating defaults (these layer with the user's direction and the domain's standards as addons: follow all three; on a direct conflict the user's direction wins, then the domain standard, then the default below)\n\nMax launch profile. The lead owns the outcome. Start with direct repository or runtime evidence. Do narrow, obvious, surgical, and single-command work directly; delegate bounded work that is broad, slow, context-heavy, or independently valuable. " + MAX_PARALLELISM_RULE + " Give delegated workstreams non-overlapping scopes and state the outcome, constraints, evidence, and verification expected.\n\n" + digestPipelineSentence + "Synthesize and verify: run the code, inspect outputs, and check tests. Agent count and agreement are not evidence. Use a fresh-context peer only for consequential judgment that remains after direct checks, and use the coordinator only when several distinct lenses could change the decision. Advisor is optional, non-binding, primary-lead-only counsel for one focused consequential uncertainty; it is not an approval or completion gate.";
3164
3253
  if (opts.profile === "fast" || opts.profile === "cheap" || opts.profile === "cheap1m" || opts.profile === "cheapest" || opts.profile === "balanced") {
3165
3254
  const isCheap = opts.profile === "cheap" || opts.profile === "cheap1m";
@@ -3748,4 +3837,4 @@ async function injectAttributionSuppressionIntoSettingsFile(settingsPath) {
3748
3837
  //#endregion
3749
3838
  export { writePeerMcpRuntimeFiles as C, workersKeyOf as S, sanitizeServeSettingsEnv as _, appendPeerAwarenessToMirroredClaudeMd as a, resolveCodexCliBackend as b, buildOperatingDefaultsDirective as c, prependStyleDirectiveToMirroredClaudeMd as d, buildArtifactReviewSkill as f, planModeAllowRules as g, injectAllowRules as h, writeInjectedSkill as i, prependArtifactPanelDirectiveToMirroredClaudeMd as l, configureServeDefaultPermissionMode as m, INJECTED_SKILLS as n, appendToolbeltAwarenessToMirroredClaudeMd as o, SEAMLESS_BUILTIN_TOOLS as p, injectedSkillsForLaunch as r, buildOperatingDefaultsDigest as s, injectAttributionSuppressionIntoSettingsFile as t, prependOperatingDefaultsToMirroredClaudeMd as u, BUILTIN_SUBAGENT_DEFINITIONS as v, resolveGroupKeysFromMirror as x, injectPeerMcpIntoMirror as y };
3750
3839
 
3751
- //# sourceMappingURL=attribution-settings-IbcZgAEf.js.map
3840
+ //# sourceMappingURL=attribution-settings-17Ug_BaA.js.map