ur-agent 1.77.8 → 1.78.0

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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,25 @@
1
1
  # Changelog
2
2
 
3
+ ## 1.77.9
4
+
5
+ - Leaked deliberation is collapsed out of the visible transcript. Models
6
+ without a separate thinking channel emit their reasoning as ordinary
7
+ assistant text — paragraph after paragraph of "Wait", "Maybe", "Another
8
+ possibility", each revising the last, before any conclusion. Two rounds of
9
+ prompt guidance did not hold, so this is handled deterministically instead: a
10
+ leading run of deliberation is replaced by a one-line note saying how many
11
+ paragraphs were hidden.
12
+ - Display only. Nothing is deleted and nothing changes on the wire — the
13
+ transcript, the session file, and the next request all carry the text
14
+ unchanged, and `--verbose` shows everything. Synthesizing a `thinking` block
15
+ would have been the natural home for it, but an unsigned one causes an API
16
+ 400 on the following turn.
17
+ - The collapse is deliberately conservative: it needs several deliberation
18
+ paragraphs, tolerates one bridging sentence between them but not two, always
19
+ stops before a code fence, list, heading, or quote, never hides the
20
+ conclusion that follows, and leaves a turn that is *entirely* deliberation
21
+ untouched rather than rendering it blank.
22
+
3
23
  ## 1.77.8
4
24
 
5
25
  - Auto-compact works again on every provider except the first-party one, where
package/dist/cli.js CHANGED
@@ -107573,7 +107573,7 @@ var init_auth = __esm(() => {
107573
107573
 
107574
107574
  // src/utils/userAgent.ts
107575
107575
  function getURCodeUserAgent() {
107576
- return `ur/${"1.77.8"}`;
107576
+ return `ur/${"1.77.9"}`;
107577
107577
  }
107578
107578
 
107579
107579
  // src/utils/workloadContext.ts
@@ -107595,7 +107595,7 @@ function getUserAgent() {
107595
107595
  const clientApp = process.env.UR_AGENT_SDK_CLIENT_APP ? `, client-app/${process.env.UR_AGENT_SDK_CLIENT_APP}` : "";
107596
107596
  const workload = getWorkload();
107597
107597
  const workloadSuffix = workload ? `, workload/${workload}` : "";
107598
- return `ur-cli/${"1.77.8"} (${process.env.USER_TYPE}, ${process.env.UR_CODE_ENTRYPOINT ?? "cli"}${agentSdkVersion}${clientApp}${workloadSuffix})`;
107598
+ return `ur-cli/${"1.77.9"} (${process.env.USER_TYPE}, ${process.env.UR_CODE_ENTRYPOINT ?? "cli"}${agentSdkVersion}${clientApp}${workloadSuffix})`;
107599
107599
  }
107600
107600
  function getMCPUserAgent() {
107601
107601
  const parts = [];
@@ -107609,7 +107609,7 @@ function getMCPUserAgent() {
107609
107609
  parts.push(`client-app/${process.env.UR_AGENT_SDK_CLIENT_APP}`);
107610
107610
  }
107611
107611
  const suffix = parts.length > 0 ? ` (${parts.join(", ")})` : "";
107612
- return `ur/${"1.77.8"}${suffix}`;
107612
+ return `ur/${"1.77.9"}${suffix}`;
107613
107613
  }
107614
107614
  function getWebFetchUserAgent() {
107615
107615
  return `UR-User (${getURCodeUserAgent()})`;
@@ -107747,7 +107747,7 @@ var init_user = __esm(() => {
107747
107747
  deviceId,
107748
107748
  sessionId: getSessionId(),
107749
107749
  email: getEmail(),
107750
- appVersion: "1.77.8",
107750
+ appVersion: "1.77.9",
107751
107751
  platform: getHostPlatformForAnalytics(),
107752
107752
  organizationUuid,
107753
107753
  accountUuid,
@@ -115634,7 +115634,7 @@ var init_metadata = __esm(() => {
115634
115634
  COMPOUND_OPERATOR_REGEX = /\s*(?:&&|\|\||[;|])\s*/;
115635
115635
  WHITESPACE_REGEX = /\s+/;
115636
115636
  getVersionBase = memoize_default(() => {
115637
- const match = "1.77.8".match(/^\d+\.\d+\.\d+(?:-[a-z]+)?/);
115637
+ const match = "1.77.9".match(/^\d+\.\d+\.\d+(?:-[a-z]+)?/);
115638
115638
  return match ? match[0] : undefined;
115639
115639
  });
115640
115640
  buildEnvContext = memoize_default(async () => {
@@ -115674,7 +115674,7 @@ var init_metadata = __esm(() => {
115674
115674
  isGithubAction: isEnvTruthy(process.env.GITHUB_ACTIONS),
115675
115675
  isURCodeAction: isEnvTruthy(process.env.UR_CODE_ACTION),
115676
115676
  isURAiAuth: isURAISubscriber(),
115677
- version: "1.77.8",
115677
+ version: "1.77.9",
115678
115678
  versionBase: getVersionBase(),
115679
115679
  buildTime: "",
115680
115680
  deploymentEnvironment: env2.detectDeploymentEnvironment(),
@@ -116344,7 +116344,7 @@ function initialize1PEventLogging() {
116344
116344
  const platform2 = getPlatform();
116345
116345
  const attributes = {
116346
116346
  [import_semantic_conventions4.ATTR_SERVICE_NAME]: "ur",
116347
- [import_semantic_conventions4.ATTR_SERVICE_VERSION]: "1.77.8"
116347
+ [import_semantic_conventions4.ATTR_SERVICE_VERSION]: "1.77.9"
116348
116348
  };
116349
116349
  if (platform2 === "wsl") {
116350
116350
  const wslVersion = getWslVersion();
@@ -116372,7 +116372,7 @@ function initialize1PEventLogging() {
116372
116372
  })
116373
116373
  ]
116374
116374
  });
116375
- firstPartyEventLogger = firstPartyEventLoggerProvider.getLogger("com.urhq.ur.events", "1.77.8");
116375
+ firstPartyEventLogger = firstPartyEventLoggerProvider.getLogger("com.urhq.ur.events", "1.77.9");
116376
116376
  }
116377
116377
  async function reinitialize1PEventLoggingIfConfigChanged() {
116378
116378
  if (!is1PEventLoggingEnabled() || !firstPartyEventLoggerProvider) {
@@ -126154,7 +126154,7 @@ function formatAgentTrendReport(report = buildAgentTrendReport()) {
126154
126154
  function formatA2AAgentCard(options = {}, pretty = true) {
126155
126155
  return JSON.stringify(buildA2AAgentCard(options), null, pretty ? 2 : 0);
126156
126156
  }
126157
- var urVersion = "1.77.8", researchSnapshotDate = "2026-07-15", coverage, priorityRoadmap;
126157
+ var urVersion = "1.77.9", researchSnapshotDate = "2026-07-15", coverage, priorityRoadmap;
126158
126158
  var init_trends = __esm(() => {
126159
126159
  init_a2aCardSignature();
126160
126160
  coverage = [
@@ -128957,7 +128957,7 @@ function getAttributionHeader(fingerprint) {
128957
128957
  if (!isAttributionHeaderEnabled()) {
128958
128958
  return "";
128959
128959
  }
128960
- const version2 = `${"1.77.8"}.${fingerprint}`;
128960
+ const version2 = `${"1.77.9"}.${fingerprint}`;
128961
128961
  const entrypoint = process.env.UR_CODE_ENTRYPOINT ?? "unknown";
128962
128962
  const cch = "";
128963
128963
  const workload = getWorkload();
@@ -156961,7 +156961,7 @@ var init_projectSafety = __esm(() => {
156961
156961
  function getInstruments() {
156962
156962
  if (instruments)
156963
156963
  return instruments;
156964
- const meter = import_api10.metrics.getMeter("ur-agent.gen_ai", "1.77.8");
156964
+ const meter = import_api10.metrics.getMeter("ur-agent.gen_ai", "1.77.9");
156965
156965
  instruments = {
156966
156966
  operationDuration: meter.createHistogram("gen_ai.client.operation.duration", {
156967
156967
  description: "GenAI operation duration.",
@@ -157059,7 +157059,7 @@ function genAiAgentAttributes() {
157059
157059
  "gen_ai.operation.name": GEN_AI_OPERATION_INVOKE_AGENT,
157060
157060
  "gen_ai.provider.name": "ur",
157061
157061
  "gen_ai.agent.name": "UR-Nexus",
157062
- "gen_ai.agent.version": "1.77.8"
157062
+ "gen_ai.agent.version": "1.77.9"
157063
157063
  };
157064
157064
  }
157065
157065
  function genAiWorkflowAttributes(workflowName) {
@@ -157075,7 +157075,7 @@ function genAiWorkflowAttributes(workflowName) {
157075
157075
  function startGenAiWorkflowSpan(workflowName) {
157076
157076
  const attributes = genAiWorkflowAttributes(workflowName);
157077
157077
  const name = typeof attributes["gen_ai.workflow.name"] === "string" ? `invoke_workflow ${attributes["gen_ai.workflow.name"]}` : GEN_AI_OPERATION_INVOKE_WORKFLOW;
157078
- return import_api10.trace.getTracer("ur-agent.gen_ai", "1.77.8").startSpan(name, { kind: import_api10.SpanKind.INTERNAL, attributes });
157078
+ return import_api10.trace.getTracer("ur-agent.gen_ai", "1.77.9").startSpan(name, { kind: import_api10.SpanKind.INTERNAL, attributes });
157079
157079
  }
157080
157080
  function endGenAiWorkflowSpan(span, options2 = {}) {
157081
157081
  try {
@@ -157113,7 +157113,7 @@ function startGenAiMemorySpan(operation, options2 = {}) {
157113
157113
  if (options2.recordCount !== undefined && Number.isInteger(options2.recordCount) && options2.recordCount >= 0) {
157114
157114
  attributes["gen_ai.memory.record.count"] = options2.recordCount;
157115
157115
  }
157116
- return import_api10.trace.getTracer("ur-agent.gen_ai", "1.77.8").startSpan(operation, { kind: import_api10.SpanKind.INTERNAL, attributes });
157116
+ return import_api10.trace.getTracer("ur-agent.gen_ai", "1.77.9").startSpan(operation, { kind: import_api10.SpanKind.INTERNAL, attributes });
157117
157117
  }
157118
157118
  function endGenAiMemorySpan(span, options2 = {}) {
157119
157119
  try {
@@ -250761,7 +250761,7 @@ function getTelemetryAttributes() {
250761
250761
  attributes["session.id"] = sessionId;
250762
250762
  }
250763
250763
  if (shouldIncludeAttribute("OTEL_METRICS_INCLUDE_VERSION")) {
250764
- attributes["app.version"] = "1.77.8";
250764
+ attributes["app.version"] = "1.77.9";
250765
250765
  }
250766
250766
  const oauthAccount = getOauthAccountInfo();
250767
250767
  if (oauthAccount) {
@@ -297268,7 +297268,7 @@ function getInstallationEnv() {
297268
297268
  return;
297269
297269
  }
297270
297270
  function getURCodeVersion() {
297271
- return "1.77.8";
297271
+ return "1.77.9";
297272
297272
  }
297273
297273
  async function getInstalledVSCodeExtensionVersion(command) {
297274
297274
  const { stdout } = await execFileNoThrow(command, ["--list-extensions", "--show-versions"], {
@@ -304599,7 +304599,7 @@ async function setupSdkMcpClients(sdkMcpConfigs, sendMcpMessage) {
304599
304599
  const client2 = new Client({
304600
304600
  name: "ur",
304601
304601
  title: "UR",
304602
- version: "1.77.8",
304602
+ version: "1.77.9",
304603
304603
  description: "UR-Nexus autonomous engineering workflow engine",
304604
304604
  websiteUrl: PRODUCT_URL
304605
304605
  }, {
@@ -304959,7 +304959,7 @@ var init_client5 = __esm(() => {
304959
304959
  const client2 = new Client({
304960
304960
  name: "ur",
304961
304961
  title: "UR",
304962
- version: "1.77.8",
304962
+ version: "1.77.9",
304963
304963
  description: "UR-Nexus autonomous engineering workflow engine",
304964
304964
  websiteUrl: PRODUCT_URL
304965
304965
  }, {
@@ -308502,6 +308502,62 @@ var init_AssistantRedactedThinkingMessage = __esm(() => {
308502
308502
  jsx_dev_runtime56 = __toESM(require_jsx_dev_runtime(), 1);
308503
308503
  });
308504
308504
 
308505
+ // src/utils/deliberationText.ts
308506
+ function isStructure(paragraph2) {
308507
+ return /^(```|#{1,6}\s|[-*+]\s|\d+\.\s|>\s|\|)/.test(paragraph2.trim());
308508
+ }
308509
+ function isDeliberation(paragraph2) {
308510
+ const trimmed = paragraph2.trim();
308511
+ if (!trimmed)
308512
+ return false;
308513
+ if (isStructure(trimmed))
308514
+ return false;
308515
+ return DELIBERATION_OPENERS.test(trimmed) || SELF_QUESTION.test(trimmed);
308516
+ }
308517
+ function splitLeadingDeliberation(text) {
308518
+ const paragraphs = text.split(/\n{2,}/);
308519
+ if (paragraphs.length < MIN_RUN) {
308520
+ return { deliberation: "", visible: text };
308521
+ }
308522
+ let lastDeliberation = -1;
308523
+ let deliberationCount = 0;
308524
+ let gap = 0;
308525
+ for (let i3 = 0;i3 < paragraphs.length; i3++) {
308526
+ const paragraph2 = paragraphs[i3];
308527
+ if (isStructure(paragraph2))
308528
+ break;
308529
+ if (isDeliberation(paragraph2)) {
308530
+ lastDeliberation = i3;
308531
+ deliberationCount++;
308532
+ gap = 0;
308533
+ continue;
308534
+ }
308535
+ gap++;
308536
+ if (gap > 1)
308537
+ break;
308538
+ }
308539
+ if (deliberationCount < MIN_RUN || lastDeliberation < 0 || lastDeliberation >= paragraphs.length - 1) {
308540
+ return { deliberation: "", visible: text };
308541
+ }
308542
+ return {
308543
+ deliberation: paragraphs.slice(0, lastDeliberation + 1).join(`
308544
+
308545
+ `),
308546
+ visible: paragraphs.slice(lastDeliberation + 1).join(`
308547
+
308548
+ `)
308549
+ };
308550
+ }
308551
+ function describeCollapsedDeliberation(deliberation) {
308552
+ const count4 = deliberation.split(/\n{2,}/).filter((part) => part.trim()).length;
308553
+ return `*(${count4} paragraphs of reasoning collapsed)*`;
308554
+ }
308555
+ var DELIBERATION_OPENERS, SELF_QUESTION, MIN_RUN = 3;
308556
+ var init_deliberationText = __esm(() => {
308557
+ DELIBERATION_OPENERS = /^(wait|hmm+|hold on|actually|maybe|perhaps|possibly|possibility|could it be|could be|might be|what if|what about|another (thought|possibility|angle|option|idea)|let me (think|reconsider|check|see|read|inspect|look)|let's (think|consider|reconsider|say|try|look)|i (wonder|suspect|think maybe|need to see|could)|but (wait|maybe|then|actually)|unless|alternatively|on second thought|or maybe|why would|so why|is it possible|that would|if so|hmm)\b/i;
308558
+ SELF_QUESTION = /^[^.!]{0,160}\?\s*$/;
308559
+ });
308560
+
308505
308561
  // src/utils/systemReminderFilter.ts
308506
308562
  function stripSystemReminders2(text) {
308507
308563
  if (!text)
@@ -317512,7 +317568,7 @@ async function createRuntime() {
317512
317568
  bootstrapTelemetry();
317513
317569
  const resource = defaultResource().merge(detectResources({ detectors: [envDetector] })).merge(resourceFromAttributes({
317514
317570
  [import_semantic_conventions7.ATTR_SERVICE_NAME]: "ur-agent",
317515
- [import_semantic_conventions7.ATTR_SERVICE_VERSION]: "1.77.8"
317571
+ [import_semantic_conventions7.ATTR_SERVICE_VERSION]: "1.77.9"
317516
317572
  }));
317517
317573
  const tracerProvider = exporters.traces.length > 0 ? new BasicTracerProvider({
317518
317574
  resource,
@@ -317545,11 +317601,11 @@ async function createRuntime() {
317545
317601
  setMeterProvider(meterProvider);
317546
317602
  setLoggerProvider(loggerProvider);
317547
317603
  if (meterProvider) {
317548
- const meter = meterProvider.getMeter("ur-agent", "1.77.8");
317604
+ const meter = meterProvider.getMeter("ur-agent", "1.77.9");
317549
317605
  setMeter(meter, (name, options2) => meter.createCounter(name, options2));
317550
317606
  }
317551
317607
  if (loggerProvider) {
317552
- setEventLogger(loggerProvider.getLogger("ur-agent.events", "1.77.8"));
317608
+ setEventLogger(loggerProvider.getLogger("ur-agent.events", "1.77.9"));
317553
317609
  }
317554
317610
  if (!cleanupRegistered2) {
317555
317611
  cleanupRegistered2 = true;
@@ -318211,9 +318267,9 @@ async function assertMinVersion() {
318211
318267
  if (false) {}
318212
318268
  try {
318213
318269
  const versionConfig = await getDynamicConfig_BLOCKS_ON_INIT("tengu_version_config", { minVersion: "0.0.0" });
318214
- if (versionConfig.minVersion && lt("1.77.8", versionConfig.minVersion)) {
318270
+ if (versionConfig.minVersion && lt("1.77.9", versionConfig.minVersion)) {
318215
318271
  console.error(`
318216
- It looks like your version of UR (${"1.77.8"}) needs an update.
318272
+ It looks like your version of UR (${"1.77.9"}) needs an update.
318217
318273
  A newer version (${versionConfig.minVersion} or higher) is required to continue.
318218
318274
 
318219
318275
  To update, please run:
@@ -318429,7 +318485,7 @@ async function installGlobalPackage(specificVersion) {
318429
318485
  logError2(new AutoUpdaterError("Another process is currently installing an update"));
318430
318486
  logEvent("tengu_auto_updater_lock_contention", {
318431
318487
  pid: process.pid,
318432
- currentVersion: "1.77.8"
318488
+ currentVersion: "1.77.9"
318433
318489
  });
318434
318490
  return "in_progress";
318435
318491
  }
@@ -318438,7 +318494,7 @@ async function installGlobalPackage(specificVersion) {
318438
318494
  if (!env2.isRunningWithBun() && env2.isNpmFromWindowsPath()) {
318439
318495
  logError2(new Error("Windows NPM detected in WSL environment"));
318440
318496
  logEvent("tengu_auto_updater_windows_npm_in_wsl", {
318441
- currentVersion: "1.77.8"
318497
+ currentVersion: "1.77.9"
318442
318498
  });
318443
318499
  console.error(`
318444
318500
  Error: Windows NPM detected in WSL
@@ -318973,7 +319029,7 @@ function detectLinuxGlobPatternWarnings() {
318973
319029
  }
318974
319030
  async function getDoctorDiagnostic() {
318975
319031
  const installationType = await getCurrentInstallationType();
318976
- const version2 = typeof MACRO !== "undefined" ? "1.77.8" : "unknown";
319032
+ const version2 = typeof MACRO !== "undefined" ? "1.77.9" : "unknown";
318977
319033
  const installationPath = await getInstallationPath();
318978
319034
  const invokedBinary = getInvokedBinary();
318979
319035
  const multipleInstallations = await detectMultipleInstallations();
@@ -319908,8 +319964,8 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
319908
319964
  const maxVersion = await getMaxVersion();
319909
319965
  if (maxVersion && gt(version2, maxVersion)) {
319910
319966
  logForDebugging(`Native installer: maxVersion ${maxVersion} is set, capping update from ${version2} to ${maxVersion}`);
319911
- if (gte("1.77.8", maxVersion)) {
319912
- logForDebugging(`Native installer: current version ${"1.77.8"} is already at or above maxVersion ${maxVersion}, skipping update`);
319967
+ if (gte("1.77.9", maxVersion)) {
319968
+ logForDebugging(`Native installer: current version ${"1.77.9"} is already at or above maxVersion ${maxVersion}, skipping update`);
319913
319969
  logEvent("tengu_native_update_skipped_max_version", {
319914
319970
  latency_ms: Date.now() - startTime,
319915
319971
  max_version: maxVersion,
@@ -319920,7 +319976,7 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
319920
319976
  version2 = maxVersion;
319921
319977
  }
319922
319978
  }
319923
- if (!forceReinstall && version2 === "1.77.8" && await versionIsAvailable(version2) && await isPossibleURBinary(executablePath)) {
319979
+ if (!forceReinstall && version2 === "1.77.9" && await versionIsAvailable(version2) && await isPossibleURBinary(executablePath)) {
319924
319980
  logForDebugging(`Found ${version2} at ${executablePath}, skipping install`);
319925
319981
  logEvent("tengu_native_update_complete", {
319926
319982
  latency_ms: Date.now() - startTime,
@@ -330863,7 +330919,11 @@ function AssistantTextMessage(t0) {
330863
330919
  const {
330864
330920
  text: rawText
330865
330921
  } = t1;
330866
- const text = stripSystemReminders2(rawText);
330922
+ const strippedText = stripSystemReminders2(rawText);
330923
+ const split = verbose ? null : splitLeadingDeliberation(strippedText);
330924
+ const text = split && split.deliberation ? `${describeCollapsedDeliberation(split.deliberation)}
330925
+
330926
+ ${split.visible}` : strippedText;
330867
330927
  const isSelected = import_react65.useContext(MessageActionsSelectedContext);
330868
330928
  if (isEmptyMessageText(text)) {
330869
330929
  return null;
@@ -331182,6 +331242,7 @@ var init_AssistantTextMessage = __esm(() => {
331182
331242
  init_ink2();
331183
331243
  init_errors6();
331184
331244
  init_messages();
331245
+ init_deliberationText();
331185
331246
  init_systemReminderFilter();
331186
331247
  init_contextWindowUpgradeCheck();
331187
331248
  init_model();
@@ -389630,7 +389691,7 @@ function isAnyTracingEnabled() {
389630
389691
  return isTelemetryEnabled() || isEnhancedTelemetryEnabled() || isBetaTracingEnabled();
389631
389692
  }
389632
389693
  function getTracer() {
389633
- return import_api39.trace.getTracer("ur-agent.gen_ai", "1.77.8");
389694
+ return import_api39.trace.getTracer("ur-agent.gen_ai", "1.77.9");
389634
389695
  }
389635
389696
  function createSpanAttributes(spanType, customAttributes = {}) {
389636
389697
  const baseAttributes = getTelemetryAttributes();
@@ -398138,7 +398199,6 @@ var init_sessionMemoryCompact = __esm(() => {
398138
398199
 
398139
398200
  // src/services/compact/autoCompact.ts
398140
398201
  function getEffectiveContextWindowSize(model) {
398141
- const reservedTokensForSummary = Math.min(getMaxOutputTokensForModel(model), MAX_OUTPUT_TOKENS_FOR_SUMMARY);
398142
398202
  let contextWindow = getContextWindowForModel(model, getSdkBetas());
398143
398203
  const autoCompactWindow = process.env.UR_CODE_AUTO_COMPACT_WINDOW;
398144
398204
  if (autoCompactWindow) {
@@ -398147,7 +398207,8 @@ function getEffectiveContextWindowSize(model) {
398147
398207
  contextWindow = Math.min(contextWindow, parsed);
398148
398208
  }
398149
398209
  }
398150
- return contextWindow - reservedTokensForSummary;
398210
+ const reservedTokensForSummary = Math.min(getMaxOutputTokensForModel(model), MAX_OUTPUT_TOKENS_FOR_SUMMARY, Math.floor(contextWindow * MAX_SUMMARY_RESERVE_SHARE));
398211
+ return Math.max(contextWindow - reservedTokensForSummary, 1);
398151
398212
  }
398152
398213
  function getAutoCompactThreshold(model) {
398153
398214
  const effectiveContextWindow = getEffectiveContextWindowSize(model);
@@ -398268,7 +398329,7 @@ async function autoCompactIfNeeded(messages, toolUseContext, cacheSafeParams, qu
398268
398329
  return { wasCompacted: false, consecutiveFailures: nextFailures };
398269
398330
  }
398270
398331
  }
398271
- var MAX_OUTPUT_TOKENS_FOR_SUMMARY = 20000, AUTOCOMPACT_BUFFER_TOKENS = 13000, WARNING_THRESHOLD_BUFFER_TOKENS = 20000, ERROR_THRESHOLD_BUFFER_TOKENS = 20000, MANUAL_COMPACT_BUFFER_TOKENS = 3000, MAX_CONSECUTIVE_AUTOCOMPACT_FAILURES = 3;
398332
+ var MAX_OUTPUT_TOKENS_FOR_SUMMARY = 20000, MAX_SUMMARY_RESERVE_SHARE = 0.2, AUTOCOMPACT_BUFFER_TOKENS = 13000, WARNING_THRESHOLD_BUFFER_TOKENS = 20000, ERROR_THRESHOLD_BUFFER_TOKENS = 20000, MANUAL_COMPACT_BUFFER_TOKENS = 3000, MAX_CONSECUTIVE_AUTOCOMPACT_FAILURES = 3;
398272
398333
  var init_autoCompact = __esm(() => {
398273
398334
  init_state();
398274
398335
  init_state();
@@ -419852,7 +419913,7 @@ function Feedback({
419852
419913
  platform: env2.platform,
419853
419914
  gitRepo: envInfo.isGit,
419854
419915
  terminal: env2.terminal,
419855
- version: "1.77.8",
419916
+ version: "1.77.9",
419856
419917
  transcript: normalizeMessagesForAPI(messages),
419857
419918
  errors: sanitizedErrors,
419858
419919
  lastApiRequest: getLastAPIRequest(),
@@ -420044,7 +420105,7 @@ function Feedback({
420044
420105
  ", ",
420045
420106
  env2.terminal,
420046
420107
  ", v",
420047
- "1.77.8"
420108
+ "1.77.9"
420048
420109
  ]
420049
420110
  }, undefined, true, undefined, this)
420050
420111
  ]
@@ -420150,7 +420211,7 @@ ${sanitizedDescription}
420150
420211
  ` + `**Environment Info**
420151
420212
  ` + `- Platform: ${env2.platform}
420152
420213
  ` + `- Terminal: ${env2.terminal}
420153
- ` + `- Version: ${"1.77.8"}
420214
+ ` + `- Version: ${"1.77.9"}
420154
420215
  ` + `- Feedback ID: ${feedbackId}
420155
420216
  ` + `
420156
420217
  **Errors**
@@ -423260,7 +423321,7 @@ function buildPrimarySection() {
423260
423321
  }, undefined, false, undefined, this);
423261
423322
  return [{
423262
423323
  label: "Version",
423263
- value: "1.77.8"
423324
+ value: "1.77.9"
423264
423325
  }, {
423265
423326
  label: "Session name",
423266
423327
  value: nameValue
@@ -426642,7 +426703,7 @@ function Config({
426642
426703
  }
426643
426704
  }, undefined, false, undefined, this)
426644
426705
  }, undefined, false, undefined, this) : showSubmenu === "ChannelDowngrade" ? /* @__PURE__ */ jsx_dev_runtime179.jsxDEV(ChannelDowngradeDialog, {
426645
- currentVersion: "1.77.8",
426706
+ currentVersion: "1.77.9",
426646
426707
  onChoice: (choice) => {
426647
426708
  setShowSubmenu(null);
426648
426709
  setTabsHidden(false);
@@ -426654,7 +426715,7 @@ function Config({
426654
426715
  autoUpdatesChannel: "stable"
426655
426716
  };
426656
426717
  if (choice === "stay") {
426657
- newSettings.minimumVersion = "1.77.8";
426718
+ newSettings.minimumVersion = "1.77.9";
426658
426719
  }
426659
426720
  updateSettingsForSource("userSettings", newSettings);
426660
426721
  setSettingsData((prev_27) => ({
@@ -434718,7 +434779,7 @@ function HelpV2(t0) {
434718
434779
  let t6;
434719
434780
  if ($2[31] !== tabs) {
434720
434781
  t6 = /* @__PURE__ */ jsx_dev_runtime206.jsxDEV(Tabs, {
434721
- title: `UR v${"1.77.8"}`,
434782
+ title: `UR v${"1.77.9"}`,
434722
434783
  color: "professionalBlue",
434723
434784
  defaultTab: "general",
434724
434785
  children: tabs
@@ -435651,7 +435712,7 @@ function buildToolUseContext(tools, readFileStateCache, toolPermissionContext, a
435651
435712
  async function handleInitialize(options2) {
435652
435713
  return {
435653
435714
  name: "UR",
435654
- version: "1.77.8",
435715
+ version: "1.77.9",
435655
435716
  protocolVersion: "0.1.0",
435656
435717
  workspaceRoot: options2.cwd,
435657
435718
  capabilities: {
@@ -452759,7 +452820,7 @@ function getAllReleaseNotes(changelogContent = getStoredChangelogFromMemory()) {
452759
452820
  return [];
452760
452821
  }
452761
452822
  }
452762
- async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.77.8") {
452823
+ async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.77.9") {
452763
452824
  if (process.env.USER_TYPE === "ant") {
452764
452825
  const changelog = "";
452765
452826
  if (changelog) {
@@ -452786,7 +452847,7 @@ async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.77.8")
452786
452847
  releaseNotes
452787
452848
  };
452788
452849
  }
452789
- function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.77.8") {
452850
+ function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.77.9") {
452790
452851
  if (process.env.USER_TYPE === "ant") {
452791
452852
  const changelog = "";
452792
452853
  if (changelog) {
@@ -455652,7 +455713,7 @@ function getRecentActivitySync() {
455652
455713
  return cachedActivity;
455653
455714
  }
455654
455715
  function getLogoDisplayData() {
455655
- const version2 = process.env.DEMO_VERSION ?? "1.77.8";
455716
+ const version2 = process.env.DEMO_VERSION ?? "1.77.9";
455656
455717
  const serverUrl = getDirectConnectServerUrl();
455657
455718
  const displayPath = process.env.DEMO_VERSION ? "/code/ur" : getDisplayPath(getCwd());
455658
455719
  const cwd2 = serverUrl ? `${displayPath} in ${serverUrl.replace(/^https?:\/\//, "")}` : displayPath;
@@ -456519,7 +456580,7 @@ function LogoV2() {
456519
456580
  if ($2[2] === Symbol.for("react.memo_cache_sentinel")) {
456520
456581
  t2 = () => {
456521
456582
  const currentConfig2 = getGlobalConfig();
456522
- if (currentConfig2.lastReleaseNotesSeen === "1.77.8") {
456583
+ if (currentConfig2.lastReleaseNotesSeen === "1.77.9") {
456523
456584
  return;
456524
456585
  }
456525
456586
  saveGlobalConfig(_temp325);
@@ -457204,12 +457265,12 @@ function LogoV2() {
457204
457265
  return t41;
457205
457266
  }
457206
457267
  function _temp325(current) {
457207
- if (current.lastReleaseNotesSeen === "1.77.8") {
457268
+ if (current.lastReleaseNotesSeen === "1.77.9") {
457208
457269
  return current;
457209
457270
  }
457210
457271
  return {
457211
457272
  ...current,
457212
- lastReleaseNotesSeen: "1.77.8"
457273
+ lastReleaseNotesSeen: "1.77.9"
457213
457274
  };
457214
457275
  }
457215
457276
  function _temp241(s_0) {
@@ -474023,7 +474084,7 @@ function compileAgenticCiWorkflow(specName = "default", options2 = {}) {
474023
474084
  if (spec.name !== specName) {
474024
474085
  throw new Error("Agentic CI workflow spec name does not match");
474025
474086
  }
474026
- const packageVersion = options2.packageVersion ?? (typeof MACRO !== "undefined" ? "1.77.8" : "1.77.8");
474087
+ const packageVersion = options2.packageVersion ?? (typeof MACRO !== "undefined" ? "1.77.9" : "1.77.9");
474027
474088
  if (!/^\d+\.\d+\.\d+(?:-[0-9A-Za-z.-]+)?$/.test(packageVersion)) {
474028
474089
  throw new Error("invalid ur-agent package version");
474029
474090
  }
@@ -475016,7 +475077,7 @@ runner; \`ur trigger\` is the inbound parser that decides what to run.
475016
475077
  path: ".github/workflows/ur.yml",
475017
475078
  root: "project",
475018
475079
  content: compileAgenticCiWorkflow("default", {
475019
- packageVersion: typeof MACRO !== "undefined" ? "1.77.8" : "1.77.8"
475080
+ packageVersion: typeof MACRO !== "undefined" ? "1.77.9" : "1.77.9"
475020
475081
  })
475021
475082
  },
475022
475083
  {
@@ -475079,7 +475140,7 @@ function value(tokens, flag) {
475079
475140
  return index2 >= 0 ? tokens[index2 + 1] : undefined;
475080
475141
  }
475081
475142
  function cliVersion() {
475082
- return typeof MACRO !== "undefined" ? "1.77.8" : "1.77.8";
475143
+ return typeof MACRO !== "undefined" ? "1.77.9" : "1.77.9";
475083
475144
  }
475084
475145
  function workflowPath(cwd2) {
475085
475146
  return join159(cwd2, ".github", "workflows", "ur-agentic-ci.yml");
@@ -480935,7 +480996,7 @@ function createAcpStdioApp(deps) {
480935
480996
  }
480936
480997
  },
480937
480998
  authMethods: [],
480938
- agentInfo: { name: "UR-Nexus", version: "1.77.8" }
480999
+ agentInfo: { name: "UR-Nexus", version: "1.77.9" }
480939
481000
  })).onRequest("authenticate", () => ({})).onRequest("session/new", async (context6) => {
480940
481001
  const result = runtime2.newSession(context6.params.cwd, context6.params.mcpServers, context6.params.additionalDirectories);
480941
481002
  await runtime2.announce({
@@ -481032,7 +481093,7 @@ function createAcpStdioAgent(deps) {
481032
481093
  }
481033
481094
  },
481034
481095
  authMethods: [],
481035
- agentInfo: { name: "UR-Nexus", version: "1.77.8" }
481096
+ agentInfo: { name: "UR-Nexus", version: "1.77.9" }
481036
481097
  });
481037
481098
  return;
481038
481099
  case "authenticate":
@@ -690492,7 +690553,7 @@ async function captureMemoryDiagnostics(trigger2, dumpNumber = 0) {
690492
690553
  smapsRollup,
690493
690554
  platform: process.platform,
690494
690555
  nodeVersion: process.version,
690495
- ccVersion: "1.77.8"
690556
+ ccVersion: "1.77.9"
690496
690557
  };
690497
690558
  }
690498
690559
  async function performHeapDump(trigger2 = "manual", dumpNumber = 0) {
@@ -691072,7 +691133,7 @@ var init_bridge_kick = __esm(() => {
691072
691133
  var call154 = async () => {
691073
691134
  return {
691074
691135
  type: "text",
691075
- value: "1.77.8"
691136
+ value: "1.77.9"
691076
691137
  };
691077
691138
  }, version2, version_default;
691078
691139
  var init_version = __esm(() => {
@@ -702339,7 +702400,7 @@ function generateHtmlReport(data, insights) {
702339
702400
  </html>`;
702340
702401
  }
702341
702402
  function buildExportData(data, insights, facets, remoteStats) {
702342
- const version3 = typeof MACRO !== "undefined" ? "1.77.8" : "unknown";
702403
+ const version3 = typeof MACRO !== "undefined" ? "1.77.9" : "unknown";
702343
702404
  const remote_hosts_collected = remoteStats?.hosts.filter((h2) => h2.sessionCount > 0).map((h2) => h2.name);
702344
702405
  const facets_summary = {
702345
702406
  total: facets.size,
@@ -706653,7 +706714,7 @@ var init_sessionStorage = __esm(() => {
706653
706714
  init_settings2();
706654
706715
  init_slowOperations();
706655
706716
  init_uuid();
706656
- VERSION7 = typeof MACRO !== "undefined" ? "1.77.8" : "unknown";
706717
+ VERSION7 = typeof MACRO !== "undefined" ? "1.77.9" : "unknown";
706657
706718
  MAX_TOMBSTONE_REWRITE_BYTES = 50 * 1024 * 1024;
706658
706719
  SKIP_FIRST_PROMPT_PATTERN = /^(?:\s*<[a-z][\w-]*[\s>]|\[Request interrupted by user[^\]]*\])/;
706659
706720
  EPHEMERAL_PROGRESS_TYPES = new Set([
@@ -707868,7 +707929,7 @@ var init_filesystem = __esm(() => {
707868
707929
  });
707869
707930
  getBundledSkillsRoot = memoize_default(function getBundledSkillsRoot2() {
707870
707931
  const nonce = randomBytes20(16).toString("hex");
707871
- return join232(getURTempDir(), "bundled-skills", "1.77.8", nonce);
707932
+ return join232(getURTempDir(), "bundled-skills", "1.77.9", nonce);
707872
707933
  });
707873
707934
  getResolvedWorkingDirPaths = memoize_default(getPathsForPermissionCheck);
707874
707935
  });
@@ -714225,7 +714286,7 @@ function computeFingerprint(messageText2, version3) {
714225
714286
  }
714226
714287
  function computeFingerprintFromMessages(messages) {
714227
714288
  const firstMessageText = extractFirstMessageText(messages);
714228
- return computeFingerprint(firstMessageText, "1.77.8");
714289
+ return computeFingerprint(firstMessageText, "1.77.9");
714229
714290
  }
714230
714291
  var FINGERPRINT_SALT = "59cf53e54c78";
714231
714292
  var init_fingerprint = () => {};
@@ -716147,7 +716208,7 @@ async function sideQuery(opts) {
716147
716208
  betas.push(STRUCTURED_OUTPUTS_BETA_HEADER);
716148
716209
  }
716149
716210
  const messageText2 = extractFirstUserMessageText(messages);
716150
- const fingerprint2 = computeFingerprint(messageText2, "1.77.8");
716211
+ const fingerprint2 = computeFingerprint(messageText2, "1.77.9");
716151
716212
  const attributionHeader = getAttributionHeader(fingerprint2);
716152
716213
  const systemBlocks = [
716153
716214
  attributionHeader ? { type: "text", text: attributionHeader } : null,
@@ -720984,7 +721045,7 @@ function buildSystemInitMessage(inputs) {
720984
721045
  slash_commands: inputs.commands.filter((c4) => c4.userInvocable !== false).map((c4) => c4.name),
720985
721046
  apiKeySource: getURHQApiKeyWithSource().source,
720986
721047
  betas: getSdkBetas(),
720987
- ur_version: "1.77.8",
721048
+ ur_version: "1.77.9",
720988
721049
  output_style: outputStyle2,
720989
721050
  agents: inputs.agents.map((agent2) => agent2.agentType),
720990
721051
  skills: inputs.skills.filter((s) => s.userInvocable !== false).map((skill2) => skill2.name),
@@ -734856,7 +734917,7 @@ var init_useVoiceEnabled = __esm(() => {
734856
734917
  function getSemverPart(version3) {
734857
734918
  return `${import_semver13.major(version3, { loose: true })}.${import_semver13.minor(version3, { loose: true })}.${import_semver13.patch(version3, { loose: true })}`;
734858
734919
  }
734859
- function useUpdateNotification(updatedVersion, initialVersion = "1.77.8") {
734920
+ function useUpdateNotification(updatedVersion, initialVersion = "1.77.9") {
734860
734921
  const [lastNotifiedSemver, setLastNotifiedSemver] = import_react223.useState(() => getSemverPart(initialVersion));
734861
734922
  if (!updatedVersion) {
734862
734923
  return null;
@@ -734905,7 +734966,7 @@ function AutoUpdater({
734905
734966
  return;
734906
734967
  }
734907
734968
  if (false) {}
734908
- const currentVersion = "1.77.8";
734969
+ const currentVersion = "1.77.9";
734909
734970
  const channel = getInitialSettings()?.autoUpdatesChannel ?? "latest";
734910
734971
  let latestVersion = await getLatestVersion(channel);
734911
734972
  const isDisabled = isAutoUpdaterDisabled();
@@ -735134,12 +735195,12 @@ function NativeAutoUpdater({
735134
735195
  logEvent("tengu_native_auto_updater_start", {});
735135
735196
  try {
735136
735197
  const maxVersion = await getMaxVersion();
735137
- if (maxVersion && gt("1.77.8", maxVersion)) {
735198
+ if (maxVersion && gt("1.77.9", maxVersion)) {
735138
735199
  const msg = await getMaxVersionMessage();
735139
735200
  setMaxVersionIssue(msg ?? "affects your version");
735140
735201
  }
735141
735202
  const result = await installLatest(channel);
735142
- const currentVersion = "1.77.8";
735203
+ const currentVersion = "1.77.9";
735143
735204
  const latencyMs = Date.now() - startTime;
735144
735205
  if (result.lockFailed) {
735145
735206
  logEvent("tengu_native_auto_updater_lock_contention", {
@@ -735276,17 +735337,17 @@ function PackageManagerAutoUpdater(t0) {
735276
735337
  const maxVersion = await getMaxVersion();
735277
735338
  if (maxVersion && latest && gt(latest, maxVersion)) {
735278
735339
  logForDebugging(`PackageManagerAutoUpdater: maxVersion ${maxVersion} is set, capping update from ${latest} to ${maxVersion}`);
735279
- if (gte("1.77.8", maxVersion)) {
735280
- logForDebugging(`PackageManagerAutoUpdater: current version ${"1.77.8"} is already at or above maxVersion ${maxVersion}, skipping update`);
735340
+ if (gte("1.77.9", maxVersion)) {
735341
+ logForDebugging(`PackageManagerAutoUpdater: current version ${"1.77.9"} is already at or above maxVersion ${maxVersion}, skipping update`);
735281
735342
  setUpdateAvailable(false);
735282
735343
  return;
735283
735344
  }
735284
735345
  latest = maxVersion;
735285
735346
  }
735286
- const hasUpdate = latest && !gte("1.77.8", latest) && !shouldSkipVersion(latest);
735347
+ const hasUpdate = latest && !gte("1.77.9", latest) && !shouldSkipVersion(latest);
735287
735348
  setUpdateAvailable(!!hasUpdate);
735288
735349
  if (hasUpdate) {
735289
- logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.77.8"} -> ${latest}`);
735350
+ logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.77.9"} -> ${latest}`);
735290
735351
  }
735291
735352
  };
735292
735353
  $2[0] = t1;
@@ -735320,7 +735381,7 @@ function PackageManagerAutoUpdater(t0) {
735320
735381
  wrap: "truncate",
735321
735382
  children: [
735322
735383
  "currentVersion: ",
735323
- "1.77.8"
735384
+ "1.77.9"
735324
735385
  ]
735325
735386
  }, undefined, true, undefined, this);
735326
735387
  $2[3] = verbose;
@@ -746120,7 +746181,7 @@ function buildStatusLineCommandInput(permissionMode, exceeds200kTokens, settings
746120
746181
  project_dir: getOriginalCwd(),
746121
746182
  added_dirs: addedDirs
746122
746183
  },
746123
- version: "1.77.8",
746184
+ version: "1.77.9",
746124
746185
  output_style: {
746125
746186
  name: outputStyleName
746126
746187
  },
@@ -746255,7 +746316,7 @@ function StatusLineInner({
746255
746316
  const attention = customStatusError ?? taskAttention;
746256
746317
  const terminalSize = React132.useContext(TerminalSizeContext);
746257
746318
  const defaultStatusLineText = buildDefaultStatusBar({
746258
- version: "1.77.8",
746319
+ version: "1.77.9",
746259
746320
  providerLabel: providerRuntime.providerLabel,
746260
746321
  authMode: providerRuntime.authLabel,
746261
746322
  model: renderModelName(mainLoopModel) || providerRuntime.model || "",
@@ -758540,7 +758601,7 @@ async function submitTranscriptShare(messages, trigger2, appearanceId) {
758540
758601
  } catch {}
758541
758602
  const data = {
758542
758603
  trigger: trigger2,
758543
- version: "1.77.8",
758604
+ version: "1.77.9",
758544
758605
  platform: process.platform,
758545
758606
  transcript,
758546
758607
  subagentTranscripts: Object.keys(subagentTranscripts).length > 0 ? subagentTranscripts : undefined,
@@ -770914,7 +770975,7 @@ function WelcomeV2() {
770914
770975
  dimColor: true,
770915
770976
  children: [
770916
770977
  "v",
770917
- "1.77.8"
770978
+ "1.77.9"
770918
770979
  ]
770919
770980
  }, undefined, true, undefined, this)
770920
770981
  ]
@@ -772174,7 +772235,7 @@ function completeOnboarding() {
772174
772235
  saveGlobalConfig((current) => ({
772175
772236
  ...current,
772176
772237
  hasCompletedOnboarding: true,
772177
- lastOnboardingVersion: "1.77.8"
772238
+ lastOnboardingVersion: "1.77.9"
772178
772239
  }));
772179
772240
  }
772180
772241
  function showDialog(root2, renderer) {
@@ -777218,7 +777279,7 @@ function appendToLog(path24, message) {
777218
777279
  cwd: getFsImplementation().cwd(),
777219
777280
  userType: process.env.USER_TYPE,
777220
777281
  sessionId: getSessionId(),
777221
- version: "1.77.8"
777282
+ version: "1.77.9"
777222
777283
  };
777223
777284
  getLogWriter(path24).write(messageWithTimestamp);
777224
777285
  }
@@ -781377,8 +781438,8 @@ async function getEnvLessBridgeConfig() {
781377
781438
  }
781378
781439
  async function checkEnvLessBridgeMinVersion() {
781379
781440
  const cfg = await getEnvLessBridgeConfig();
781380
- if (cfg.min_version && lt("1.77.8", cfg.min_version)) {
781381
- return `Your version of UR (${"1.77.8"}) is too old for Remote Control.
781441
+ if (cfg.min_version && lt("1.77.9", cfg.min_version)) {
781442
+ return `Your version of UR (${"1.77.9"}) is too old for Remote Control.
781382
781443
  Version ${cfg.min_version} or higher is required. Run \`ur update\` to update.`;
781383
781444
  }
781384
781445
  return null;
@@ -781852,7 +781913,7 @@ async function initBridgeCore(params) {
781852
781913
  const rawApi = createBridgeApiClient({
781853
781914
  baseUrl,
781854
781915
  getAccessToken,
781855
- runnerVersion: "1.77.8",
781916
+ runnerVersion: "1.77.9",
781856
781917
  onDebug: logForDebugging,
781857
781918
  onAuth401,
781858
781919
  getTrustedDeviceToken
@@ -791325,7 +791386,7 @@ function getAgUiCapabilities() {
791325
791386
  name: "UR-Nexus",
791326
791387
  type: "ur-nexus",
791327
791388
  description: "Provider-flexible, local-first autonomous engineering workflow agent.",
791328
- version: "1.77.8",
791389
+ version: "1.77.9",
791329
791390
  provider: "UR",
791330
791391
  documentationUrl: "https://github.com/Maitham16/UR/blob/master/docs/AG_UI.md"
791331
791392
  },
@@ -792465,7 +792526,7 @@ function createMCPServer(cwd4, debug2, verbose) {
792465
792526
  };
792466
792527
  const server2 = new Server({
792467
792528
  name: "ur-nexus",
792468
- version: "1.77.8"
792529
+ version: "1.77.9"
792469
792530
  }, {
792470
792531
  capabilities: {
792471
792532
  tools: {}
@@ -793623,7 +793684,7 @@ function thrownResponse(error40) {
793623
793684
  }
793624
793685
  async function createUrMcp2026Runtime(options4) {
793625
793686
  const server2 = createMCPServer(options4.cwd, options4.debug === true, options4.verbose === true);
793626
- const client2 = new Client({ name: "ur-mcp-2026-adapter", version: "1.77.8" }, { capabilities: {} });
793687
+ const client2 = new Client({ name: "ur-mcp-2026-adapter", version: "1.77.9" }, { capabilities: {} });
793627
793688
  const [clientTransport, serverTransport] = createLinkedTransportPair();
793628
793689
  try {
793629
793690
  await server2.connect(serverTransport);
@@ -793634,7 +793695,7 @@ async function createUrMcp2026Runtime(options4) {
793634
793695
  }
793635
793696
  const runtime2 = new Mcp2026Runtime({
793636
793697
  cwd: options4.cwd,
793637
- version: "1.77.8",
793698
+ version: "1.77.9",
793638
793699
  backend: {
793639
793700
  listTools: async () => {
793640
793701
  const listed = await client2.listTools();
@@ -795775,7 +795836,7 @@ async function update() {
795775
795836
  logEvent("tengu_update_check", {});
795776
795837
  const diagnostic2 = await getDoctorDiagnostic();
795777
795838
  const result = await checkUpgradeStatus({
795778
- currentVersion: "1.77.8",
795839
+ currentVersion: "1.77.9",
795779
795840
  packageName: UR_AGENT_PACKAGE_NAME,
795780
795841
  installationType: diagnostic2.installationType,
795781
795842
  latestVersion: () => getLatestNpmPackageVersion(UR_AGENT_PACKAGE_NAME)
@@ -797091,7 +797152,7 @@ ${customInstructions}` : customInstructions;
797091
797152
  }
797092
797153
  }
797093
797154
  logForDiagnosticsNoPII("info", "started", {
797094
- version: "1.77.8",
797155
+ version: "1.77.9",
797095
797156
  is_native_binary: isInBundledMode()
797096
797157
  });
797097
797158
  registerCleanup(async () => {
@@ -797877,7 +797938,7 @@ Usage: ur --remote "your task description"`, () => gracefulShutdown(1));
797877
797938
  pendingHookMessages
797878
797939
  }, renderAndRun);
797879
797940
  }
797880
- }).version("1.77.8 (UR-Nexus)", "-v, --version", "Output the version number");
797941
+ }).version("1.77.9 (UR-Nexus)", "-v, --version", "Output the version number");
797881
797942
  program2.option("-w, --worktree [name]", "Create a new git worktree for this session (optionally specify a name)");
797882
797943
  program2.option("--tmux", "Create a tmux session for the worktree (requires --worktree). Uses iTerm2 native panes when available; use --tmux=classic for traditional tmux.");
797883
797944
  if (canUserConfigureAdvisor()) {
@@ -798929,7 +798990,7 @@ if (false) {}
798929
798990
  async function main2() {
798930
798991
  const args = process.argv.slice(2);
798931
798992
  if (args.length === 1 && (args[0] === "--version" || args[0] === "-v" || args[0] === "-V")) {
798932
- console.log(`${"1.77.8"} (UR-Nexus)`);
798993
+ console.log(`${"1.77.9"} (UR-Nexus)`);
798933
798994
  return;
798934
798995
  }
798935
798996
  if (args[0] === "a2a" && args[1] === "serve" && !args.includes("--help") && !args.includes("-h")) {
@@ -19,7 +19,7 @@ You need:
19
19
 
20
20
  ```sh
21
21
  ur --version
22
- # expected for this release: "1.77.8 (UR-Nexus)"
22
+ # expected for this release: "1.78.0 (UR-Nexus)"
23
23
  ```
24
24
 
25
25
  ## 0.1 First-workspace model selection (1.45.4)
@@ -45,7 +45,7 @@
45
45
  <main id="content" class="content">
46
46
  <header class="topbar">
47
47
  <div>
48
- <p class="eyebrow">Version 1.77.8</p>
48
+ <p class="eyebrow">Version 1.78.0</p>
49
49
  <h1>UR-Nexus Documentation</h1>
50
50
  <p class="lead">A practical, tutorial-style reference for installing, configuring, automating, extending, and operating UR-Nexus.</p>
51
51
  </div>
@@ -7,7 +7,7 @@ plugins {
7
7
  }
8
8
 
9
9
  group = "dev.urnexus"
10
- version = "1.77.8"
10
+ version = "1.78.0"
11
11
 
12
12
  repositories {
13
13
  mavenCentral()
@@ -2,7 +2,7 @@
2
2
  "name": "ur-inline-diffs",
3
3
  "displayName": "UR Inline Diffs",
4
4
  "description": "Review, apply, and reject UR inline diff bundles from .ur/ide/diffs inside VS Code.",
5
- "version": "1.77.8",
5
+ "version": "1.78.0",
6
6
  "publisher": "ur-nexus",
7
7
  "engines": {
8
8
  "vscode": "^1.92.0"
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ur-agent",
3
- "version": "1.77.8",
3
+ "version": "1.78.0",
4
4
  "description": "UR-Nexus — autonomous engineering workflow engine (plan, execute, test, verify, document, benchmark, reproduce)",
5
5
  "type": "module",
6
6
  "packageManager": "bun@1.3.14",