github-router 0.3.211 → 0.3.212

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.
@@ -16167,13 +16167,13 @@ function baseName(p) {
16167
16167
  */
16168
16168
  async function extractTarXzMember(buf, wantBasename, tmpDir) {
16169
16169
  const { spawn: spawn$1 } = await import("node:child_process");
16170
- const fs$2 = await import("node:fs/promises");
16170
+ const fs$1 = await import("node:fs/promises");
16171
16171
  const path$1 = await import("node:path");
16172
16172
  const archivePath = path$1.join(tmpDir, "archive.tar.xz");
16173
16173
  const extractDir = path$1.join(tmpDir, "x");
16174
16174
  try {
16175
- await fs$2.mkdir(extractDir, { recursive: true });
16176
- await fs$2.writeFile(archivePath, buf);
16175
+ await fs$1.mkdir(extractDir, { recursive: true });
16176
+ await fs$1.writeFile(archivePath, buf);
16177
16177
  } catch {
16178
16178
  return null;
16179
16179
  }
@@ -16210,25 +16210,25 @@ async function extractTarXzMember(buf, wantBasename, tmpDir) {
16210
16210
  resolve(code === 0);
16211
16211
  });
16212
16212
  })) return null;
16213
- const found = await findRegularFile(fs$2, path$1, extractDir, new Set([wantBasename, `${wantBasename}.exe`]), 6);
16213
+ const found = await findRegularFile(fs$1, path$1, extractDir, new Set([wantBasename, `${wantBasename}.exe`]), 6);
16214
16214
  if (!found) return null;
16215
16215
  try {
16216
- return await fs$2.readFile(found);
16216
+ return await fs$1.readFile(found);
16217
16217
  } catch {
16218
16218
  return null;
16219
16219
  }
16220
16220
  }
16221
- async function findRegularFile(fs$2, path$1, dir, wants, depthBudget) {
16221
+ async function findRegularFile(fs$1, path$1, dir, wants, depthBudget) {
16222
16222
  if (depthBudget < 0) return null;
16223
16223
  let entries;
16224
16224
  try {
16225
- entries = await fs$2.readdir(dir, { withFileTypes: true });
16225
+ entries = await fs$1.readdir(dir, { withFileTypes: true });
16226
16226
  } catch {
16227
16227
  return null;
16228
16228
  }
16229
16229
  for (const e of entries) if (e.isFile() && wants.has(e.name)) return path$1.join(dir, e.name);
16230
16230
  for (const e of entries) if (e.isDirectory()) {
16231
- const hit = await findRegularFile(fs$2, path$1, path$1.join(dir, e.name), wants, depthBudget - 1);
16231
+ const hit = await findRegularFile(fs$1, path$1, path$1.join(dir, e.name), wants, depthBudget - 1);
16232
16232
  if (hit) return hit;
16233
16233
  }
16234
16234
  return null;
@@ -17432,7 +17432,7 @@ function hasSupportedBrowserInstalled() {
17432
17432
  * `src/lib/paths.ts`, which has no win32 branch). On Windows the
17433
17433
  * writer and reader never met, so the install-check returned
17434
17434
  * `bridge_not_running` even with a healthy bridge. Centralized here so
17435
- * the regression test in `tests/browser-bridge-discovery-path.test.ts`
17435
+ * the regression test in `tests/isolated/browser-bridge-discovery-path.test.ts`
17436
17436
  * can pin the round-trip.
17437
17437
  *
17438
17438
  * Mirrors `PATHS.APP_DIR` from `src/lib/paths.ts` (XDG-style on every
@@ -18495,16 +18495,16 @@ function logAudit$1(record) {
18495
18495
  if (process.env.GH_ROUTER_LOG_BROWSER_MCP !== "1") return;
18496
18496
  (async () => {
18497
18497
  try {
18498
- const fs$2 = await import("node:fs/promises");
18498
+ const fs$1 = await import("node:fs/promises");
18499
18499
  const path$1 = await import("node:path");
18500
18500
  const { PATHS: PATHS$1 } = await import("./paths-B5k78n0d.js");
18501
18501
  const dir = path$1.join(PATHS$1.APP_DIR, "browser-mcp");
18502
- await fs$2.mkdir(dir, { recursive: true });
18502
+ await fs$1.mkdir(dir, { recursive: true });
18503
18503
  const line = JSON.stringify({
18504
18504
  ts: (/* @__PURE__ */ new Date()).toISOString(),
18505
18505
  ...record
18506
18506
  }) + "\n";
18507
- await fs$2.appendFile(path$1.join(dir, "audit.log"), line, "utf8");
18507
+ await fs$1.appendFile(path$1.join(dir, "audit.log"), line, "utf8");
18508
18508
  } catch {}
18509
18509
  })();
18510
18510
  }
@@ -22855,7 +22855,7 @@ const READ_TOOL_NOTES = [
22855
22855
  const WRITE_TOOL_NOTES = [
22856
22856
  "`edit` — exact-string replacement in a file.",
22857
22857
  "`write` — overwrite or create a file.",
22858
- "`bash` — run a shell command in the workspace.",
22858
+ "`bash` — run builds, tests, git, package managers, and programs; reading, searching, and editing have dedicated tools (`read`/`glob`/`grep`/`code_search`/`edit`/`write`/`toolbelt`), so a `python`/`node`/`powershell` one-off script for those jobs is unnecessary.",
22859
22859
  "`codex_review` — code review by `codex-reviewer` (gpt-5.3-codex, code-specialist critic). Returns line-level findings on a diff or single file."
22860
22860
  ];
22861
22861
  function buildToolBlock(tools) {
@@ -28194,7 +28194,7 @@ function bashTool(workspace) {
28194
28194
  return {
28195
28195
  name: "bash",
28196
28196
  label: "Run bash",
28197
- description: "Run a shell command in the worker's workspace under a strict env allowlist (credentials stripped) with a bounded timeout. Non-zero exit returns `<stdout>\\n<stderr>\\nexit=N` as text, not an error.",
28197
+ description: "Run a shell command in the worker's workspace under a strict env allowlist (credentials stripped) with a bounded timeout. Non-zero exit returns `<stdout>\\n<stderr>\\nexit=N` as text, not an error. Prefer the dedicated tools (read/glob/grep/code_search/edit/write/toolbelt) for reading, searching, and editing; reserve bash for builds, tests, git, package managers, and running programs — don't reimplement a file read/search/edit as a python/node/powershell one-off script.",
28198
28198
  parameters: BASH_PARAMS,
28199
28199
  executionMode: "sequential",
28200
28200
  async execute(_toolCallId, params, signal) {
@@ -28238,7 +28238,7 @@ function fetchUrlTool() {
28238
28238
  return {
28239
28239
  name: "fetch_url",
28240
28240
  label: "Fetch URL",
28241
- description: "Fetch a URL (HTTP/HTTPS only) and return the response body as text. Bounded to 1 MiB and 30 s. No HTML→markdown conversion — callers that need it should ask `peer_review` to parse.",
28241
+ description: "Fetch a URL (HTTP/HTTPS only) and return the response body as text. Bounded to 1 MiB and 30 s. No HTML→markdown conversion.",
28242
28242
  parameters: FETCH_URL_PARAMS,
28243
28243
  async execute(_toolCallId, params, signal) {
28244
28244
  if (networkDisabled()) throw new Error("rejected: network disabled");
@@ -33569,4 +33569,4 @@ function enumerateInjectedMcpToolNames(groupKeys, opts = {}) {
33569
33569
 
33570
33570
  //#endregion
33571
33571
  export { buildAdvisorStream as $, getPackageVersion as $t, trustRepo as A, readResponseBodyCapped as At, runWorkerAgent as B, ArtifactClient as Bt, fileLastPromptStore as C, getTokenCount as Ct, repoRoot as D, createResponses as Dt, repoFingerprint as E, pickEndpoint as Et, EXPLORE_DEFAULT_MODEL as F, extractTarGzMember as Ft, toolbeltEnabled as G, DEFAULT_CLAUDE_MODEL_FALLBACKS as Gt, buildEnv as H, buildWorkspaceHeaderJson as Ht, IMPLEMENT_DEFAULT_MODEL as I, extractZipMember as It, TOOLBELT_TOOLS$1 as J, DEFAULT_PORT as Jt, toolbeltSkipSet as K, DEFAULT_CODEX_MODEL as Kt, PLAN_DEFAULT_MODEL as L, CONDENSED_OPERATING_SEQUENCE as Lt, resolveSealedGate as M, provisionBrowserAssets as Mt, BROWSE_DEFAULT_MODEL as N, hasSupportedBrowserInstalled as Nt, stopGateEnabledForRepo as O, createChatCompletions as Ot, DEFAULT_MODEL as P, provisionAndIndexColbert as Pt, ADVISOR_TOOL_INSTRUCTIONS as Q, pickClaudeDefault as Qt, REVIEW_DEFAULT_MODEL as R, DEFINITION_OF_GREATNESS as Rt, fileFindingsStore as S, state as Sn, createMessages as St, isSubagentContext as T, resolveMcpToolTimeoutMs as Tt, availableToolCommands as U, collapsePathKeys as Ut, withNoOutputRetry as V, buildWorkspaceHeaderHelperCommand as Vt, buildToolbeltAwareness as W, toolbeltPathOverride as Wt, searchWeb as X, UPSTREAM_INACTIVITY_TIMEOUT_MS as Xt, assetFor as Y, UPSTREAM_FETCH_TIMEOUT_MS as Yt, ADVISOR_INTERNAL_TOOL_NAME as Z, generateRandomPort as Zt, stopGateDisabled as _, forwardError as _n, nativeSubagentModel as _t, buildPeerAwarenessSnippet as a, cacheCopilotVersion as an, logStreamError as at, stopReviewEnabled as b, copilotHeaders as bn, shimDefaultsToXhigh as bt, personasFor as c, filterBetaHeader as cn, handleMcpDelete as ct, buildStopHookCommand as d, resolveModel as dn, artifactToolsEnabled as dt, withInstallLock as en, injectAdvisorTool as et, captureLaunchBaseline as f, sleep as fn, browseAgentEnabled as ft, launchBaselineKey as g, HTTPError as gn, geminiAvailable as gt, injectStopHookIntoSettingsFile as h, fetchWithTransientRetry as hn, fleetToolsEnabled as ht, buildAgentPrompt as i, tryRefreshAndRetry as in, isControllerClosedError as it, liveExec as j, parseJsonOrDiagnose as jt, stopReviewStateDir as k, MAX_RESPONSE_BODY_BYTES as kt, buildArtifactOpenHookCommand as l, isNullish as ln, handleMcpPost as lt, fileBlockBudget as m, getGitHubUser as mn, browserToolsEnabled as mt, MCP_GROUPS as n, setupGitHubAgentToken as nn, buildAnthropicErrorEvent as nt, buildPeerAwarenessSummary as o, cacheModels as on, readIteratorWithTimeout as ot, decideStopHook as p, getModels as pn, browserCompoundToolsEnabled as pt, vscodeRipgrepPath as q, DEFAULT_CODEX_MODEL_FALLBACKS as qt, assertMcpToolSurfaceConsistent as r, setupGitHubToken as rn, buildOpenAIErrorEvent as rt, enumerateInjectedMcpToolNames as s, cacheVSCodeVersion as sn, relayAnthropicStream as st, GROUP_META as t, setupCopilotToken as tn, isAdvisorRequested as tt, buildSessionBindHookCommand as u, resolveCodexModel as un, agentToolsEnabled as ut, stopGateId as v, GITHUB_API_BASE_URL as vn, standInToolEnabled as vt, fileReviewDebounce as w, assembleResponsesPayload as wt, fileBaselineStore as x, githubHeaders as xn, countTokens as xt, stopGatePlanMode as y, copilotBaseUrl as yn, workerToolsEnabled as yt, appendPlanReminder as z, shouldUseInsecureTls as zt };
33572
- //# sourceMappingURL=peer-mcp-personas-CxpFD-rW.js.map
33572
+ //# sourceMappingURL=peer-mcp-personas-C1RegCRs.js.map