github-router 0.3.317 → 0.3.319

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
- import { An as oneMContextDisabled, Bn as CHEAP_PROFILE_MODELS, Fn as CHEAPEST_PROFILE_NATIVE_AGENT_NAMES, Hn as CHEAP_PROFILE_NATIVE_EFFORTS, In as CHEAPEST_PROFILE_NATIVE_EFFORTS, Ln as CHEAPEST_PROFILE_NATIVE_MODELS, Pn as CHEAPEST_PROFILE_MODELS, Un as CHEAP_PROFILE_NATIVE_MODELS, Vn as CHEAP_PROFILE_NATIVE_AGENT_NAMES, a as buildAgentPrompt, jn as withOneMSuffix, l as maxPersonasFor, ln as CONDENSED_OPERATING_SEQUENCE, n as MCP_GROUPS, t as GROUP_META, u as personasFor, un as DEFINITION_OF_GREATNESS } from "./peer-mcp-personas-CRMVuMVF.js";
1
+ import { An as oneMContextDisabled, Fn as CHEAPEST_PROFILE_NATIVE_AGENT_NAMES, Hn as CHEAP_PROFILE_NATIVE_EFFORTS, In as CHEAPEST_PROFILE_NATIVE_EFFORTS, Vn as CHEAP_PROFILE_NATIVE_AGENT_NAMES, a as buildAgentPrompt, jn as withOneMSuffix, l as maxPersonasFor, ln as CONDENSED_OPERATING_SEQUENCE, n as MCP_GROUPS, t as GROUP_META, u as personasFor, un as DEFINITION_OF_GREATNESS } from "./peer-mcp-personas-CRMVuMVF.js";
2
2
  import { a as isUnderClaudeConfigMirror, f as writeRuntimeFileSecure, t as PATHS } from "./paths-CHBAj_t9.js";
3
- import { f as LUNA_SCOUT_ALIAS_ID } from "./server-setup-0PaS4m2B.js";
3
+ import { S as LUNA_SCOUT_ALIAS_ID, _ as CHEAP_EXPLORE_ALIAS_ID, b as CHEAP_PLAN_ALIAS_ID, f as CHEAPEST_EXPLORE_ALIAS_ID, g as CHEAPEST_REVIEWER_ALIAS_ID, h as CHEAPEST_PLAN_ALIAS_ID, m as CHEAPEST_IMPLEMENTER_ALIAS_ID, p as CHEAPEST_GENERAL_PURPOSE_ALIAS_ID, v as CHEAP_GENERAL_PURPOSE_ALIAS_ID, x as CHEAP_REVIEWER_ALIAS_ID, y as CHEAP_IMPLEMENTER_ALIAS_ID } from "./server-setup-DPay_uYp.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-_DhIWank.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-DahN1gw9.js";
@@ -464,15 +464,21 @@ function buildFastProfileAgentDefinitions(opts) {
464
464
  return out;
465
465
  }
466
466
  /** Build the literal `-m cheap` native roster. Identical fixed five-agent
467
- * surface and roles to `-m fast`, but every SUBAGENT model is emitted BARE
468
- * (no `oneM()`/`decorateGuaranteedOneM` bracket) so Claude Code budgets each
469
- * role at its 200K default window the profile's whole cost lever. */
467
+ * surface and roles to `-m fast`, but every SUBAGENT model is a BARE
468
+ * router-owned alias (`gh-router-cheap-*`, no `[1m]` bracket) rather than a
469
+ * real catalog id. A bare real id is resolved by Claude Code against the live
470
+ * catalog and upgraded to `[1m]` accounting when the entry advertises >=1M,
471
+ * defeating the profile's whole 200K cost lever; an alias matches no catalog
472
+ * entry, so the client holds the 200K default while the proxy canonicalizes
473
+ * to the real model upstream with the alias's fixed effort. Caller-supplied
474
+ * `opts.cheap*Model` values are deliberately ignored: the pinned roster is
475
+ * fixed even when the launcher passes the contract's real ids. */
470
476
  function buildCheapProfileAgentDefinitions(opts) {
471
- const modelFor = (value, fallback) => nonEmptyModel(value) ?? fallback;
472
- const planModel = modelFor(opts.cheapPlanModel, CHEAP_PROFILE_NATIVE_MODELS.Plan);
473
- const generalModel = modelFor(opts.cheapGeneralPurposeModel, CHEAP_PROFILE_NATIVE_MODELS["general-purpose"]);
474
- const implementerModel = modelFor(opts.cheapImplementerModel, CHEAP_PROFILE_NATIVE_MODELS.implementer);
475
- const reviewerModel = modelFor(opts.cheapReviewerModel, CHEAP_PROFILE_NATIVE_MODELS.reviewer);
477
+ const exploreModel = CHEAP_EXPLORE_ALIAS_ID;
478
+ const planModel = CHEAP_PLAN_ALIAS_ID;
479
+ const generalModel = CHEAP_GENERAL_PURPOSE_ALIAS_ID;
480
+ const implementerModel = CHEAP_IMPLEMENTER_ALIAS_ID;
481
+ const reviewerModel = CHEAP_REVIEWER_ALIAS_ID;
476
482
  const searchKey = opts.groupKeys.search ?? GROUP_META.search.preferredKey;
477
483
  const peersKey = peersKeyOf(opts.groupKeys);
478
484
  const searchMcpServers = opts.serverUrl ? { [searchKey]: httpEntryFor(opts.serverUrl, "search", opts.nonce, opts.workspaceHeaderCmd) } : void 0;
@@ -498,7 +504,7 @@ function buildCheapProfileAgentDefinitions(opts) {
498
504
  description: "Read-only codebase exploration specialist. Use proactively, and launch several in parallel via `Task(subagent_type:\"Explore\")`, to map architecture, trace call chains, or locate the files and symbols a task will touch. Use when the question spans more than a couple of files. Do not use for planning, edits, or single-file reads. Returns a structured evidence report with file:line citations. Never edits files.",
499
505
  prompt: "You are a codebase exploration specialist. Your mission is to map repository structure, discover implementation patterns, trace call chains, and locate the exact files, symbols, and declarations that are relevant to the request. This is read-only work. Do not modify files, do not propose diffs, and do not delegate to other agents. You cannot ask clarifying questions mid-run: ground every answer in repository evidence. If the request is ambiguous, explore the most probable interpretations and record the ambiguity in your report. Start broad, then converge. Issue independent searches in parallel in one turn rather than one at a time, and pair semantic search with exact lexical and symbol search so that neither naming drift nor synonym mismatch hides a result. Include surrounding context lines in your search results so that callers, guards, and types are visible without a second round trip, and inspect the file whenever the surrounding logic determines the answer. Confirm every claim at the source before you report it. Stop when further searching stops changing your answer. When you can name the exact files and lines a change would touch, you are done. Report what the repository contains, not what it ought to contain. Do not design a solution or recommend an approach. Return a self-contained result the lead can act on immediately without needing to re-run your discovery.\n\nReturn format:\nAnswer: a direct response to what was asked, in a few sentences.\nInventory: each relevant file and symbol as file:line, with a one-line description of its role.\nEntry points: where control enters this area, as file:line.\nConventions in use: the patterns, idioms, error handling, and test style that any change here would be expected to follow, each with a file:line example.\nGaps and unknowns: what you could not confirm, and where you would look next.\n\n" + readOnlyToolSteer(),
500
506
  tools: readSearchTools,
501
- model: modelFor(opts.cheapExploreModel, CHEAP_PROFILE_MODELS.explore),
507
+ model: exploreModel,
502
508
  effort: effort("Explore"),
503
509
  ...searchMcpServers ? { mcpServers: searchMcpServers } : {}
504
510
  },
@@ -541,7 +547,7 @@ function buildCheapProfileAgentDefinitions(opts) {
541
547
  out["worker-browse"] = {
542
548
  description: dispatcherDescription("browse"),
543
549
  prompt: dispatcherPrompt("browse", workersKey),
544
- model: modelFor(opts.cheapExploreModel, CHEAP_PROFILE_MODELS.explore),
550
+ model: exploreModel,
545
551
  effort: "high",
546
552
  tools: dispatcherTools("browse", workersKey),
547
553
  ...opts.serverUrl ? { mcpServers: { [workersKey]: httpEntryFor(opts.serverUrl, "workers", opts.nonce, opts.workspaceHeaderCmd) } } : {}
@@ -553,15 +559,20 @@ function buildCheapProfileAgentDefinitions(opts) {
553
559
  }
554
560
  /** Build the literal `-m cheapest` native roster. Same fixed five-agent
555
561
  * surface and roles as `-m cheap`, but Luna-led with a Gemini reviewer —
556
- * every SUBAGENT model emitted BARE (200K default window). The Plan prompt
557
- * additionally directs the planner to do the minimal synthesis itself and
558
- * delegate discovery/execution heavily to `Explore` and `general-purpose`. */
562
+ * every SUBAGENT model is a BARE router-owned alias
563
+ * (`gh-router-cheapest-*`, no `[1m]`) rather than a real catalog id, for the
564
+ * same client catalog-resolution reason as the cheap builder below: a bare
565
+ * real id is upgraded to `[1m]` accounting by Claude Code whenever the entry
566
+ * advertises >=1M. Caller-supplied `opts.cheapest*Model` values are
567
+ * deliberately ignored. The Plan prompt additionally directs the planner to
568
+ * do the minimal synthesis itself and delegate discovery/execution heavily to
569
+ * `Explore` and `general-purpose`. */
559
570
  function buildCheapestProfileAgentDefinitions(opts) {
560
- const modelFor = (value, fallback) => nonEmptyModel(value) ?? fallback;
561
- const planModel = modelFor(opts.cheapestPlanModel, CHEAPEST_PROFILE_NATIVE_MODELS.Plan);
562
- const generalModel = modelFor(opts.cheapestGeneralPurposeModel, CHEAPEST_PROFILE_NATIVE_MODELS["general-purpose"]);
563
- const implementerModel = modelFor(opts.cheapestImplementerModel, CHEAPEST_PROFILE_NATIVE_MODELS.implementer);
564
- const reviewerModel = modelFor(opts.cheapestReviewerModel, CHEAPEST_PROFILE_NATIVE_MODELS.reviewer);
571
+ const exploreModel = CHEAPEST_EXPLORE_ALIAS_ID;
572
+ const planModel = CHEAPEST_PLAN_ALIAS_ID;
573
+ const generalModel = CHEAPEST_GENERAL_PURPOSE_ALIAS_ID;
574
+ const implementerModel = CHEAPEST_IMPLEMENTER_ALIAS_ID;
575
+ const reviewerModel = CHEAPEST_REVIEWER_ALIAS_ID;
565
576
  const searchKey = opts.groupKeys.search ?? GROUP_META.search.preferredKey;
566
577
  const peersKey = peersKeyOf(opts.groupKeys);
567
578
  const searchMcpServers = opts.serverUrl ? { [searchKey]: httpEntryFor(opts.serverUrl, "search", opts.nonce, opts.workspaceHeaderCmd) } : void 0;
@@ -587,7 +598,7 @@ function buildCheapestProfileAgentDefinitions(opts) {
587
598
  description: "Read-only codebase exploration specialist. Use proactively, and launch several in parallel via `Task(subagent_type:\"Explore\")`, to map architecture, trace call chains, or locate the files and symbols a task will touch. Use when the question spans more than a couple of files. Do not use for planning, edits, or single-file reads. Returns a structured evidence report with file:line citations. Never edits files.",
588
599
  prompt: "You are a codebase exploration specialist. Your mission is to map repository structure, discover implementation patterns, trace call chains, and locate the exact files, symbols, and declarations that are relevant to the request. This is read-only work. Do not modify files, do not propose diffs, and do not delegate to other agents. You cannot ask clarifying questions mid-run: ground every answer in repository evidence. If the request is ambiguous, explore the most probable interpretations and record the ambiguity in your report. Start broad, then converge. Issue independent searches in parallel in one turn rather than one at a time, and pair semantic search with exact lexical and symbol search so that neither naming drift nor synonym mismatch hides a result. Include surrounding context lines in your search results so that callers, guards, and types are visible without a second round trip, and inspect the file whenever the surrounding logic determines the answer. Confirm every claim at the source before you report it. Stop when further searching stops changing your answer. When you can name the exact files and lines a change would touch, you are done. Report what the repository contains, not what it ought to contain. Do not design a solution or recommend an approach. Return a self-contained result the lead can act on immediately without needing to re-run your discovery.\n\nReturn format:\nAnswer: a direct response to what was asked, in a few sentences.\nInventory: each relevant file and symbol as file:line, with a one-line description of its role.\nEntry points: where control enters this area, as file:line.\nConventions in use: the patterns, idioms, error handling, and test style that any change here would be expected to follow, each with a file:line example.\nGaps and unknowns: what you could not confirm, and where you would look next.\n\n" + readOnlyToolSteer(),
589
600
  tools: readSearchTools,
590
- model: modelFor(opts.cheapestExploreModel, CHEAPEST_PROFILE_MODELS.explore),
601
+ model: exploreModel,
591
602
  effort: effort("Explore"),
592
603
  ...searchMcpServers ? { mcpServers: searchMcpServers } : {}
593
604
  },
@@ -630,7 +641,7 @@ function buildCheapestProfileAgentDefinitions(opts) {
630
641
  out["worker-browse"] = {
631
642
  description: dispatcherDescription("browse"),
632
643
  prompt: dispatcherPrompt("browse", workersKey),
633
- model: modelFor(opts.cheapestExploreModel, CHEAPEST_PROFILE_MODELS.explore),
644
+ model: exploreModel,
634
645
  effort: "high",
635
646
  tools: dispatcherTools("browse", workersKey),
636
647
  ...opts.serverUrl ? { mcpServers: { [workersKey]: httpEntryFor(opts.serverUrl, "workers", opts.nonce, opts.workspaceHeaderCmd) } } : {}
@@ -2953,4 +2964,4 @@ async function injectAttributionSuppressionIntoSettingsFile(settingsPath) {
2953
2964
  //#endregion
2954
2965
  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 };
2955
2966
 
2956
- //# sourceMappingURL=attribution-settings-D6dAkP4e.js.map
2967
+ //# sourceMappingURL=attribution-settings-Dy2jBDWv.js.map