ur-agent 1.78.5 → 1.78.6

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,21 @@
1
1
  # Changelog
2
2
 
3
+ ## 1.78.6
4
+
5
+ - Delegation is the default for independent work rather than something held in
6
+ reserve. The guidance described subagents as valuable but warned against
7
+ using them "excessively when not needed", which reads as a reason not to —
8
+ so a request with several independent parts was worked through one step at a
9
+ time unless delegation was asked for by name. The test is now whether the
10
+ parts depend on each other: exploring several areas, researching more than
11
+ one question, or chasing independent leads is one call per part, issued
12
+ together so they run at once. Ordered work stays sequential and edits to one
13
+ file stay with the main agent, since parallel writers conflict.
14
+ - The four tests that pack a tarball or build a TypeScript program carry an
15
+ explicit budget. They are slow by nature and were running against the default
16
+ timeout, which passes on an idle machine and fails on a busy one — a budget
17
+ travels with the test regardless of how the suite is invoked.
18
+
3
19
  ## 1.78.5
4
20
 
5
21
  - A forward task dependency is recognised by its id rather than by the target
package/dist/cli.js CHANGED
@@ -107590,7 +107590,7 @@ var init_auth = __esm(() => {
107590
107590
 
107591
107591
  // src/utils/userAgent.ts
107592
107592
  function getURCodeUserAgent() {
107593
- return `ur/${"1.78.5"}`;
107593
+ return `ur/${"1.78.6"}`;
107594
107594
  }
107595
107595
 
107596
107596
  // src/utils/workloadContext.ts
@@ -107612,7 +107612,7 @@ function getUserAgent() {
107612
107612
  const clientApp = process.env.UR_AGENT_SDK_CLIENT_APP ? `, client-app/${process.env.UR_AGENT_SDK_CLIENT_APP}` : "";
107613
107613
  const workload = getWorkload();
107614
107614
  const workloadSuffix = workload ? `, workload/${workload}` : "";
107615
- return `ur-cli/${"1.78.5"} (${process.env.USER_TYPE}, ${process.env.UR_CODE_ENTRYPOINT ?? "cli"}${agentSdkVersion}${clientApp}${workloadSuffix})`;
107615
+ return `ur-cli/${"1.78.6"} (${process.env.USER_TYPE}, ${process.env.UR_CODE_ENTRYPOINT ?? "cli"}${agentSdkVersion}${clientApp}${workloadSuffix})`;
107616
107616
  }
107617
107617
  function getMCPUserAgent() {
107618
107618
  const parts = [];
@@ -107626,7 +107626,7 @@ function getMCPUserAgent() {
107626
107626
  parts.push(`client-app/${process.env.UR_AGENT_SDK_CLIENT_APP}`);
107627
107627
  }
107628
107628
  const suffix = parts.length > 0 ? ` (${parts.join(", ")})` : "";
107629
- return `ur/${"1.78.5"}${suffix}`;
107629
+ return `ur/${"1.78.6"}${suffix}`;
107630
107630
  }
107631
107631
  function getWebFetchUserAgent() {
107632
107632
  return `UR-User (${getURCodeUserAgent()})`;
@@ -107764,7 +107764,7 @@ var init_user = __esm(() => {
107764
107764
  deviceId,
107765
107765
  sessionId: getSessionId(),
107766
107766
  email: getEmail(),
107767
- appVersion: "1.78.5",
107767
+ appVersion: "1.78.6",
107768
107768
  platform: getHostPlatformForAnalytics(),
107769
107769
  organizationUuid,
107770
107770
  accountUuid,
@@ -115651,7 +115651,7 @@ var init_metadata = __esm(() => {
115651
115651
  COMPOUND_OPERATOR_REGEX = /\s*(?:&&|\|\||[;|])\s*/;
115652
115652
  WHITESPACE_REGEX = /\s+/;
115653
115653
  getVersionBase = memoize_default(() => {
115654
- const match = "1.78.5".match(/^\d+\.\d+\.\d+(?:-[a-z]+)?/);
115654
+ const match = "1.78.6".match(/^\d+\.\d+\.\d+(?:-[a-z]+)?/);
115655
115655
  return match ? match[0] : undefined;
115656
115656
  });
115657
115657
  buildEnvContext = memoize_default(async () => {
@@ -115691,7 +115691,7 @@ var init_metadata = __esm(() => {
115691
115691
  isGithubAction: isEnvTruthy(process.env.GITHUB_ACTIONS),
115692
115692
  isURCodeAction: isEnvTruthy(process.env.UR_CODE_ACTION),
115693
115693
  isURAiAuth: isURAISubscriber(),
115694
- version: "1.78.5",
115694
+ version: "1.78.6",
115695
115695
  versionBase: getVersionBase(),
115696
115696
  buildTime: "",
115697
115697
  deploymentEnvironment: env2.detectDeploymentEnvironment(),
@@ -116361,7 +116361,7 @@ function initialize1PEventLogging() {
116361
116361
  const platform2 = getPlatform();
116362
116362
  const attributes = {
116363
116363
  [import_semantic_conventions4.ATTR_SERVICE_NAME]: "ur",
116364
- [import_semantic_conventions4.ATTR_SERVICE_VERSION]: "1.78.5"
116364
+ [import_semantic_conventions4.ATTR_SERVICE_VERSION]: "1.78.6"
116365
116365
  };
116366
116366
  if (platform2 === "wsl") {
116367
116367
  const wslVersion = getWslVersion();
@@ -116389,7 +116389,7 @@ function initialize1PEventLogging() {
116389
116389
  })
116390
116390
  ]
116391
116391
  });
116392
- firstPartyEventLogger = firstPartyEventLoggerProvider.getLogger("com.urhq.ur.events", "1.78.5");
116392
+ firstPartyEventLogger = firstPartyEventLoggerProvider.getLogger("com.urhq.ur.events", "1.78.6");
116393
116393
  }
116394
116394
  async function reinitialize1PEventLoggingIfConfigChanged() {
116395
116395
  if (!is1PEventLoggingEnabled() || !firstPartyEventLoggerProvider) {
@@ -126171,7 +126171,7 @@ function formatAgentTrendReport(report = buildAgentTrendReport()) {
126171
126171
  function formatA2AAgentCard(options = {}, pretty = true) {
126172
126172
  return JSON.stringify(buildA2AAgentCard(options), null, pretty ? 2 : 0);
126173
126173
  }
126174
- var urVersion = "1.78.5", researchSnapshotDate = "2026-07-15", coverage, priorityRoadmap;
126174
+ var urVersion = "1.78.6", researchSnapshotDate = "2026-07-15", coverage, priorityRoadmap;
126175
126175
  var init_trends = __esm(() => {
126176
126176
  init_a2aCardSignature();
126177
126177
  coverage = [
@@ -128974,7 +128974,7 @@ function getAttributionHeader(fingerprint) {
128974
128974
  if (!isAttributionHeaderEnabled()) {
128975
128975
  return "";
128976
128976
  }
128977
- const version2 = `${"1.78.5"}.${fingerprint}`;
128977
+ const version2 = `${"1.78.6"}.${fingerprint}`;
128978
128978
  const entrypoint = process.env.UR_CODE_ENTRYPOINT ?? "unknown";
128979
128979
  const cch = "";
128980
128980
  const workload = getWorkload();
@@ -156978,7 +156978,7 @@ var init_projectSafety = __esm(() => {
156978
156978
  function getInstruments() {
156979
156979
  if (instruments)
156980
156980
  return instruments;
156981
- const meter = import_api10.metrics.getMeter("ur-agent.gen_ai", "1.78.5");
156981
+ const meter = import_api10.metrics.getMeter("ur-agent.gen_ai", "1.78.6");
156982
156982
  instruments = {
156983
156983
  operationDuration: meter.createHistogram("gen_ai.client.operation.duration", {
156984
156984
  description: "GenAI operation duration.",
@@ -157076,7 +157076,7 @@ function genAiAgentAttributes() {
157076
157076
  "gen_ai.operation.name": GEN_AI_OPERATION_INVOKE_AGENT,
157077
157077
  "gen_ai.provider.name": "ur",
157078
157078
  "gen_ai.agent.name": "UR-Nexus",
157079
- "gen_ai.agent.version": "1.78.5"
157079
+ "gen_ai.agent.version": "1.78.6"
157080
157080
  };
157081
157081
  }
157082
157082
  function genAiWorkflowAttributes(workflowName) {
@@ -157092,7 +157092,7 @@ function genAiWorkflowAttributes(workflowName) {
157092
157092
  function startGenAiWorkflowSpan(workflowName) {
157093
157093
  const attributes = genAiWorkflowAttributes(workflowName);
157094
157094
  const name = typeof attributes["gen_ai.workflow.name"] === "string" ? `invoke_workflow ${attributes["gen_ai.workflow.name"]}` : GEN_AI_OPERATION_INVOKE_WORKFLOW;
157095
- return import_api10.trace.getTracer("ur-agent.gen_ai", "1.78.5").startSpan(name, { kind: import_api10.SpanKind.INTERNAL, attributes });
157095
+ return import_api10.trace.getTracer("ur-agent.gen_ai", "1.78.6").startSpan(name, { kind: import_api10.SpanKind.INTERNAL, attributes });
157096
157096
  }
157097
157097
  function endGenAiWorkflowSpan(span, options2 = {}) {
157098
157098
  try {
@@ -157130,7 +157130,7 @@ function startGenAiMemorySpan(operation, options2 = {}) {
157130
157130
  if (options2.recordCount !== undefined && Number.isInteger(options2.recordCount) && options2.recordCount >= 0) {
157131
157131
  attributes["gen_ai.memory.record.count"] = options2.recordCount;
157132
157132
  }
157133
- return import_api10.trace.getTracer("ur-agent.gen_ai", "1.78.5").startSpan(operation, { kind: import_api10.SpanKind.INTERNAL, attributes });
157133
+ return import_api10.trace.getTracer("ur-agent.gen_ai", "1.78.6").startSpan(operation, { kind: import_api10.SpanKind.INTERNAL, attributes });
157134
157134
  }
157135
157135
  function endGenAiMemorySpan(span, options2 = {}) {
157136
157136
  try {
@@ -250794,7 +250794,7 @@ function getTelemetryAttributes() {
250794
250794
  attributes["session.id"] = sessionId;
250795
250795
  }
250796
250796
  if (shouldIncludeAttribute("OTEL_METRICS_INCLUDE_VERSION")) {
250797
- attributes["app.version"] = "1.78.5";
250797
+ attributes["app.version"] = "1.78.6";
250798
250798
  }
250799
250799
  const oauthAccount = getOauthAccountInfo();
250800
250800
  if (oauthAccount) {
@@ -297301,7 +297301,7 @@ function getInstallationEnv() {
297301
297301
  return;
297302
297302
  }
297303
297303
  function getURCodeVersion() {
297304
- return "1.78.5";
297304
+ return "1.78.6";
297305
297305
  }
297306
297306
  async function getInstalledVSCodeExtensionVersion(command) {
297307
297307
  const { stdout } = await execFileNoThrow(command, ["--list-extensions", "--show-versions"], {
@@ -304632,7 +304632,7 @@ async function setupSdkMcpClients(sdkMcpConfigs, sendMcpMessage) {
304632
304632
  const client2 = new Client({
304633
304633
  name: "ur",
304634
304634
  title: "UR",
304635
- version: "1.78.5",
304635
+ version: "1.78.6",
304636
304636
  description: "UR-Nexus autonomous engineering workflow engine",
304637
304637
  websiteUrl: PRODUCT_URL
304638
304638
  }, {
@@ -304992,7 +304992,7 @@ var init_client5 = __esm(() => {
304992
304992
  const client2 = new Client({
304993
304993
  name: "ur",
304994
304994
  title: "UR",
304995
- version: "1.78.5",
304995
+ version: "1.78.6",
304996
304996
  description: "UR-Nexus autonomous engineering workflow engine",
304997
304997
  websiteUrl: PRODUCT_URL
304998
304998
  }, {
@@ -317601,7 +317601,7 @@ async function createRuntime() {
317601
317601
  bootstrapTelemetry();
317602
317602
  const resource = defaultResource().merge(detectResources({ detectors: [envDetector] })).merge(resourceFromAttributes({
317603
317603
  [import_semantic_conventions7.ATTR_SERVICE_NAME]: "ur-agent",
317604
- [import_semantic_conventions7.ATTR_SERVICE_VERSION]: "1.78.5"
317604
+ [import_semantic_conventions7.ATTR_SERVICE_VERSION]: "1.78.6"
317605
317605
  }));
317606
317606
  const tracerProvider = exporters.traces.length > 0 ? new BasicTracerProvider({
317607
317607
  resource,
@@ -317634,11 +317634,11 @@ async function createRuntime() {
317634
317634
  setMeterProvider(meterProvider);
317635
317635
  setLoggerProvider(loggerProvider);
317636
317636
  if (meterProvider) {
317637
- const meter = meterProvider.getMeter("ur-agent", "1.78.5");
317637
+ const meter = meterProvider.getMeter("ur-agent", "1.78.6");
317638
317638
  setMeter(meter, (name, options2) => meter.createCounter(name, options2));
317639
317639
  }
317640
317640
  if (loggerProvider) {
317641
- setEventLogger(loggerProvider.getLogger("ur-agent.events", "1.78.5"));
317641
+ setEventLogger(loggerProvider.getLogger("ur-agent.events", "1.78.6"));
317642
317642
  }
317643
317643
  if (!cleanupRegistered2) {
317644
317644
  cleanupRegistered2 = true;
@@ -318300,9 +318300,9 @@ async function assertMinVersion() {
318300
318300
  if (false) {}
318301
318301
  try {
318302
318302
  const versionConfig = await getDynamicConfig_BLOCKS_ON_INIT("tengu_version_config", { minVersion: "0.0.0" });
318303
- if (versionConfig.minVersion && lt("1.78.5", versionConfig.minVersion)) {
318303
+ if (versionConfig.minVersion && lt("1.78.6", versionConfig.minVersion)) {
318304
318304
  console.error(`
318305
- It looks like your version of UR (${"1.78.5"}) needs an update.
318305
+ It looks like your version of UR (${"1.78.6"}) needs an update.
318306
318306
  A newer version (${versionConfig.minVersion} or higher) is required to continue.
318307
318307
 
318308
318308
  To update, please run:
@@ -318518,7 +318518,7 @@ async function installGlobalPackage(specificVersion) {
318518
318518
  logError2(new AutoUpdaterError("Another process is currently installing an update"));
318519
318519
  logEvent("tengu_auto_updater_lock_contention", {
318520
318520
  pid: process.pid,
318521
- currentVersion: "1.78.5"
318521
+ currentVersion: "1.78.6"
318522
318522
  });
318523
318523
  return "in_progress";
318524
318524
  }
@@ -318527,7 +318527,7 @@ async function installGlobalPackage(specificVersion) {
318527
318527
  if (!env2.isRunningWithBun() && env2.isNpmFromWindowsPath()) {
318528
318528
  logError2(new Error("Windows NPM detected in WSL environment"));
318529
318529
  logEvent("tengu_auto_updater_windows_npm_in_wsl", {
318530
- currentVersion: "1.78.5"
318530
+ currentVersion: "1.78.6"
318531
318531
  });
318532
318532
  console.error(`
318533
318533
  Error: Windows NPM detected in WSL
@@ -319062,7 +319062,7 @@ function detectLinuxGlobPatternWarnings() {
319062
319062
  }
319063
319063
  async function getDoctorDiagnostic() {
319064
319064
  const installationType = await getCurrentInstallationType();
319065
- const version2 = typeof MACRO !== "undefined" ? "1.78.5" : "unknown";
319065
+ const version2 = typeof MACRO !== "undefined" ? "1.78.6" : "unknown";
319066
319066
  const installationPath = await getInstallationPath();
319067
319067
  const invokedBinary = getInvokedBinary();
319068
319068
  const multipleInstallations = await detectMultipleInstallations();
@@ -319997,8 +319997,8 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
319997
319997
  const maxVersion = await getMaxVersion();
319998
319998
  if (maxVersion && gt(version2, maxVersion)) {
319999
319999
  logForDebugging(`Native installer: maxVersion ${maxVersion} is set, capping update from ${version2} to ${maxVersion}`);
320000
- if (gte("1.78.5", maxVersion)) {
320001
- logForDebugging(`Native installer: current version ${"1.78.5"} is already at or above maxVersion ${maxVersion}, skipping update`);
320000
+ if (gte("1.78.6", maxVersion)) {
320001
+ logForDebugging(`Native installer: current version ${"1.78.6"} is already at or above maxVersion ${maxVersion}, skipping update`);
320002
320002
  logEvent("tengu_native_update_skipped_max_version", {
320003
320003
  latency_ms: Date.now() - startTime,
320004
320004
  max_version: maxVersion,
@@ -320009,7 +320009,7 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
320009
320009
  version2 = maxVersion;
320010
320010
  }
320011
320011
  }
320012
- if (!forceReinstall && version2 === "1.78.5" && await versionIsAvailable(version2) && await isPossibleURBinary(executablePath)) {
320012
+ if (!forceReinstall && version2 === "1.78.6" && await versionIsAvailable(version2) && await isPossibleURBinary(executablePath)) {
320013
320013
  logForDebugging(`Found ${version2} at ${executablePath}, skipping install`);
320014
320014
  logEvent("tengu_native_update_complete", {
320015
320015
  latency_ms: Date.now() - startTime,
@@ -389730,7 +389730,7 @@ function isAnyTracingEnabled() {
389730
389730
  return isTelemetryEnabled() || isEnhancedTelemetryEnabled() || isBetaTracingEnabled();
389731
389731
  }
389732
389732
  function getTracer() {
389733
- return import_api39.trace.getTracer("ur-agent.gen_ai", "1.78.5");
389733
+ return import_api39.trace.getTracer("ur-agent.gen_ai", "1.78.6");
389734
389734
  }
389735
389735
  function createSpanAttributes(spanType, customAttributes = {}) {
389736
389736
  const baseAttributes = getTelemetryAttributes();
@@ -419956,7 +419956,7 @@ function Feedback({
419956
419956
  platform: env2.platform,
419957
419957
  gitRepo: envInfo.isGit,
419958
419958
  terminal: env2.terminal,
419959
- version: "1.78.5",
419959
+ version: "1.78.6",
419960
419960
  transcript: normalizeMessagesForAPI(messages),
419961
419961
  errors: sanitizedErrors,
419962
419962
  lastApiRequest: getLastAPIRequest(),
@@ -420148,7 +420148,7 @@ function Feedback({
420148
420148
  ", ",
420149
420149
  env2.terminal,
420150
420150
  ", v",
420151
- "1.78.5"
420151
+ "1.78.6"
420152
420152
  ]
420153
420153
  }, undefined, true, undefined, this)
420154
420154
  ]
@@ -420254,7 +420254,7 @@ ${sanitizedDescription}
420254
420254
  ` + `**Environment Info**
420255
420255
  ` + `- Platform: ${env2.platform}
420256
420256
  ` + `- Terminal: ${env2.terminal}
420257
- ` + `- Version: ${"1.78.5"}
420257
+ ` + `- Version: ${"1.78.6"}
420258
420258
  ` + `- Feedback ID: ${feedbackId}
420259
420259
  ` + `
420260
420260
  **Errors**
@@ -423364,7 +423364,7 @@ function buildPrimarySection() {
423364
423364
  }, undefined, false, undefined, this);
423365
423365
  return [{
423366
423366
  label: "Version",
423367
- value: "1.78.5"
423367
+ value: "1.78.6"
423368
423368
  }, {
423369
423369
  label: "Session name",
423370
423370
  value: nameValue
@@ -426746,7 +426746,7 @@ function Config({
426746
426746
  }
426747
426747
  }, undefined, false, undefined, this)
426748
426748
  }, undefined, false, undefined, this) : showSubmenu === "ChannelDowngrade" ? /* @__PURE__ */ jsx_dev_runtime179.jsxDEV(ChannelDowngradeDialog, {
426749
- currentVersion: "1.78.5",
426749
+ currentVersion: "1.78.6",
426750
426750
  onChoice: (choice) => {
426751
426751
  setShowSubmenu(null);
426752
426752
  setTabsHidden(false);
@@ -426758,7 +426758,7 @@ function Config({
426758
426758
  autoUpdatesChannel: "stable"
426759
426759
  };
426760
426760
  if (choice === "stay") {
426761
- newSettings.minimumVersion = "1.78.5";
426761
+ newSettings.minimumVersion = "1.78.6";
426762
426762
  }
426763
426763
  updateSettingsForSource("userSettings", newSettings);
426764
426764
  setSettingsData((prev_27) => ({
@@ -434822,7 +434822,7 @@ function HelpV2(t0) {
434822
434822
  let t6;
434823
434823
  if ($2[31] !== tabs) {
434824
434824
  t6 = /* @__PURE__ */ jsx_dev_runtime206.jsxDEV(Tabs, {
434825
- title: `UR v${"1.78.5"}`,
434825
+ title: `UR v${"1.78.6"}`,
434826
434826
  color: "professionalBlue",
434827
434827
  defaultTab: "general",
434828
434828
  children: tabs
@@ -435755,7 +435755,7 @@ function buildToolUseContext(tools, readFileStateCache, toolPermissionContext, a
435755
435755
  async function handleInitialize(options2) {
435756
435756
  return {
435757
435757
  name: "UR",
435758
- version: "1.78.5",
435758
+ version: "1.78.6",
435759
435759
  protocolVersion: "0.1.0",
435760
435760
  workspaceRoot: options2.cwd,
435761
435761
  capabilities: {
@@ -452863,7 +452863,7 @@ function getAllReleaseNotes(changelogContent = getStoredChangelogFromMemory()) {
452863
452863
  return [];
452864
452864
  }
452865
452865
  }
452866
- async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.78.5") {
452866
+ async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.78.6") {
452867
452867
  if (process.env.USER_TYPE === "ant") {
452868
452868
  const changelog = "";
452869
452869
  if (changelog) {
@@ -452890,7 +452890,7 @@ async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.78.5")
452890
452890
  releaseNotes
452891
452891
  };
452892
452892
  }
452893
- function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.78.5") {
452893
+ function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.78.6") {
452894
452894
  if (process.env.USER_TYPE === "ant") {
452895
452895
  const changelog = "";
452896
452896
  if (changelog) {
@@ -455756,7 +455756,7 @@ function getRecentActivitySync() {
455756
455756
  return cachedActivity;
455757
455757
  }
455758
455758
  function getLogoDisplayData() {
455759
- const version2 = process.env.DEMO_VERSION ?? "1.78.5";
455759
+ const version2 = process.env.DEMO_VERSION ?? "1.78.6";
455760
455760
  const serverUrl = getDirectConnectServerUrl();
455761
455761
  const displayPath = process.env.DEMO_VERSION ? "/code/ur" : getDisplayPath(getCwd());
455762
455762
  const cwd2 = serverUrl ? `${displayPath} in ${serverUrl.replace(/^https?:\/\//, "")}` : displayPath;
@@ -456623,7 +456623,7 @@ function LogoV2() {
456623
456623
  if ($2[2] === Symbol.for("react.memo_cache_sentinel")) {
456624
456624
  t2 = () => {
456625
456625
  const currentConfig2 = getGlobalConfig();
456626
- if (currentConfig2.lastReleaseNotesSeen === "1.78.5") {
456626
+ if (currentConfig2.lastReleaseNotesSeen === "1.78.6") {
456627
456627
  return;
456628
456628
  }
456629
456629
  saveGlobalConfig(_temp325);
@@ -457308,12 +457308,12 @@ function LogoV2() {
457308
457308
  return t41;
457309
457309
  }
457310
457310
  function _temp325(current) {
457311
- if (current.lastReleaseNotesSeen === "1.78.5") {
457311
+ if (current.lastReleaseNotesSeen === "1.78.6") {
457312
457312
  return current;
457313
457313
  }
457314
457314
  return {
457315
457315
  ...current,
457316
- lastReleaseNotesSeen: "1.78.5"
457316
+ lastReleaseNotesSeen: "1.78.6"
457317
457317
  };
457318
457318
  }
457319
457319
  function _temp241(s_0) {
@@ -474127,7 +474127,7 @@ function compileAgenticCiWorkflow(specName = "default", options2 = {}) {
474127
474127
  if (spec.name !== specName) {
474128
474128
  throw new Error("Agentic CI workflow spec name does not match");
474129
474129
  }
474130
- const packageVersion = options2.packageVersion ?? (typeof MACRO !== "undefined" ? "1.78.5" : "1.78.5");
474130
+ const packageVersion = options2.packageVersion ?? (typeof MACRO !== "undefined" ? "1.78.6" : "1.78.6");
474131
474131
  if (!/^\d+\.\d+\.\d+(?:-[0-9A-Za-z.-]+)?$/.test(packageVersion)) {
474132
474132
  throw new Error("invalid ur-agent package version");
474133
474133
  }
@@ -475120,7 +475120,7 @@ runner; \`ur trigger\` is the inbound parser that decides what to run.
475120
475120
  path: ".github/workflows/ur.yml",
475121
475121
  root: "project",
475122
475122
  content: compileAgenticCiWorkflow("default", {
475123
- packageVersion: typeof MACRO !== "undefined" ? "1.78.5" : "1.78.5"
475123
+ packageVersion: typeof MACRO !== "undefined" ? "1.78.6" : "1.78.6"
475124
475124
  })
475125
475125
  },
475126
475126
  {
@@ -475183,7 +475183,7 @@ function value(tokens, flag) {
475183
475183
  return index2 >= 0 ? tokens[index2 + 1] : undefined;
475184
475184
  }
475185
475185
  function cliVersion() {
475186
- return typeof MACRO !== "undefined" ? "1.78.5" : "1.78.5";
475186
+ return typeof MACRO !== "undefined" ? "1.78.6" : "1.78.6";
475187
475187
  }
475188
475188
  function workflowPath(cwd2) {
475189
475189
  return join159(cwd2, ".github", "workflows", "ur-agentic-ci.yml");
@@ -481039,7 +481039,7 @@ function createAcpStdioApp(deps) {
481039
481039
  }
481040
481040
  },
481041
481041
  authMethods: [],
481042
- agentInfo: { name: "UR-Nexus", version: "1.78.5" }
481042
+ agentInfo: { name: "UR-Nexus", version: "1.78.6" }
481043
481043
  })).onRequest("authenticate", () => ({})).onRequest("session/new", async (context6) => {
481044
481044
  const result = runtime2.newSession(context6.params.cwd, context6.params.mcpServers, context6.params.additionalDirectories);
481045
481045
  await runtime2.announce({
@@ -481136,7 +481136,7 @@ function createAcpStdioAgent(deps) {
481136
481136
  }
481137
481137
  },
481138
481138
  authMethods: [],
481139
- agentInfo: { name: "UR-Nexus", version: "1.78.5" }
481139
+ agentInfo: { name: "UR-Nexus", version: "1.78.6" }
481140
481140
  });
481141
481141
  return;
481142
481142
  case "authenticate":
@@ -690596,7 +690596,7 @@ async function captureMemoryDiagnostics(trigger2, dumpNumber = 0) {
690596
690596
  smapsRollup,
690597
690597
  platform: process.platform,
690598
690598
  nodeVersion: process.version,
690599
- ccVersion: "1.78.5"
690599
+ ccVersion: "1.78.6"
690600
690600
  };
690601
690601
  }
690602
690602
  async function performHeapDump(trigger2 = "manual", dumpNumber = 0) {
@@ -691176,7 +691176,7 @@ var init_bridge_kick = __esm(() => {
691176
691176
  var call154 = async () => {
691177
691177
  return {
691178
691178
  type: "text",
691179
- value: "1.78.5"
691179
+ value: "1.78.6"
691180
691180
  };
691181
691181
  }, version2, version_default;
691182
691182
  var init_version = __esm(() => {
@@ -702443,7 +702443,7 @@ function generateHtmlReport(data, insights) {
702443
702443
  </html>`;
702444
702444
  }
702445
702445
  function buildExportData(data, insights, facets, remoteStats) {
702446
- const version3 = typeof MACRO !== "undefined" ? "1.78.5" : "unknown";
702446
+ const version3 = typeof MACRO !== "undefined" ? "1.78.6" : "unknown";
702447
702447
  const remote_hosts_collected = remoteStats?.hosts.filter((h2) => h2.sessionCount > 0).map((h2) => h2.name);
702448
702448
  const facets_summary = {
702449
702449
  total: facets.size,
@@ -706757,7 +706757,7 @@ var init_sessionStorage = __esm(() => {
706757
706757
  init_settings2();
706758
706758
  init_slowOperations();
706759
706759
  init_uuid();
706760
- VERSION7 = typeof MACRO !== "undefined" ? "1.78.5" : "unknown";
706760
+ VERSION7 = typeof MACRO !== "undefined" ? "1.78.6" : "unknown";
706761
706761
  MAX_TOMBSTONE_REWRITE_BYTES = 50 * 1024 * 1024;
706762
706762
  SKIP_FIRST_PROMPT_PATTERN = /^(?:\s*<[a-z][\w-]*[\s>]|\[Request interrupted by user[^\]]*\])/;
706763
706763
  EPHEMERAL_PROGRESS_TYPES = new Set([
@@ -707972,7 +707972,7 @@ var init_filesystem = __esm(() => {
707972
707972
  });
707973
707973
  getBundledSkillsRoot = memoize_default(function getBundledSkillsRoot2() {
707974
707974
  const nonce = randomBytes20(16).toString("hex");
707975
- return join232(getURTempDir(), "bundled-skills", "1.78.5", nonce);
707975
+ return join232(getURTempDir(), "bundled-skills", "1.78.6", nonce);
707976
707976
  });
707977
707977
  getResolvedWorkingDirPaths = memoize_default(getPathsForPermissionCheck);
707978
707978
  });
@@ -713559,7 +713559,7 @@ function getOllamaToolDisciplineSection() {
713559
713559
  `);
713560
713560
  }
713561
713561
  function getAgentToolSection() {
713562
- return isForkSubagentEnabled() ? `Calling ${AGENT_TOOL_NAME} without a subagent_type creates a fork, which runs in the background and keeps its tool output out of your context \u2014 so you can keep chatting with the user while it works. Reach for it when research or multi-step implementation work would otherwise fill your context with raw output you won't need again. **If you ARE the fork** \u2014 execute directly; do not re-delegate.` : `Use the ${AGENT_TOOL_NAME} tool with specialized agents when the task at hand matches the agent's description. Subagents are valuable for parallelizing independent queries or for protecting the main context window from excessive results, but they should not be used excessively when not needed. Importantly, avoid duplicating work that subagents are already doing - if you delegate research to a subagent, do not also perform the same searches yourself.`;
713562
+ return isForkSubagentEnabled() ? `Calling ${AGENT_TOOL_NAME} without a subagent_type creates a fork, which runs in the background and keeps its tool output out of your context \u2014 so you can keep chatting with the user while it works. Reach for it when research or multi-step implementation work would otherwise fill your context with raw output you won't need again. **If you ARE the fork** \u2014 execute directly; do not re-delegate.` : `Use the ${AGENT_TOOL_NAME} tool with specialized agents when the task at hand matches the agent's description, and reach for it by default whenever a request contains parts that do not depend on each other. Concretely: exploring several areas of a codebase, researching more than one question, or investigating independent leads are each one ${AGENT_TOOL_NAME} call per part, issued together in a single message so they run at once. Doing that work yourself, one step after another, is slower and fills your context with output you will not need again \u2014 so the bar for delegating is "are these parts independent", not "is this too big for me". Two exceptions: work that must happen in order stays sequential, and edits to the same file stay with you, since parallel writers conflict. Never repeat work you have delegated \u2014 if a subagent is researching something, do not also search for it yourself.`;
713563
713563
  }
713564
713564
  function getDiscoverSkillsGuidance() {
713565
713565
  if (false) {}
@@ -714329,7 +714329,7 @@ function computeFingerprint(messageText2, version3) {
714329
714329
  }
714330
714330
  function computeFingerprintFromMessages(messages) {
714331
714331
  const firstMessageText = extractFirstMessageText(messages);
714332
- return computeFingerprint(firstMessageText, "1.78.5");
714332
+ return computeFingerprint(firstMessageText, "1.78.6");
714333
714333
  }
714334
714334
  var FINGERPRINT_SALT = "59cf53e54c78";
714335
714335
  var init_fingerprint = () => {};
@@ -716251,7 +716251,7 @@ async function sideQuery(opts) {
716251
716251
  betas.push(STRUCTURED_OUTPUTS_BETA_HEADER);
716252
716252
  }
716253
716253
  const messageText2 = extractFirstUserMessageText(messages);
716254
- const fingerprint2 = computeFingerprint(messageText2, "1.78.5");
716254
+ const fingerprint2 = computeFingerprint(messageText2, "1.78.6");
716255
716255
  const attributionHeader = getAttributionHeader(fingerprint2);
716256
716256
  const systemBlocks = [
716257
716257
  attributionHeader ? { type: "text", text: attributionHeader } : null,
@@ -721088,7 +721088,7 @@ function buildSystemInitMessage(inputs) {
721088
721088
  slash_commands: inputs.commands.filter((c4) => c4.userInvocable !== false).map((c4) => c4.name),
721089
721089
  apiKeySource: getURHQApiKeyWithSource().source,
721090
721090
  betas: getSdkBetas(),
721091
- ur_version: "1.78.5",
721091
+ ur_version: "1.78.6",
721092
721092
  output_style: outputStyle2,
721093
721093
  agents: inputs.agents.map((agent2) => agent2.agentType),
721094
721094
  skills: inputs.skills.filter((s) => s.userInvocable !== false).map((skill2) => skill2.name),
@@ -734960,7 +734960,7 @@ var init_useVoiceEnabled = __esm(() => {
734960
734960
  function getSemverPart(version3) {
734961
734961
  return `${import_semver13.major(version3, { loose: true })}.${import_semver13.minor(version3, { loose: true })}.${import_semver13.patch(version3, { loose: true })}`;
734962
734962
  }
734963
- function useUpdateNotification(updatedVersion, initialVersion = "1.78.5") {
734963
+ function useUpdateNotification(updatedVersion, initialVersion = "1.78.6") {
734964
734964
  const [lastNotifiedSemver, setLastNotifiedSemver] = import_react223.useState(() => getSemverPart(initialVersion));
734965
734965
  if (!updatedVersion) {
734966
734966
  return null;
@@ -735009,7 +735009,7 @@ function AutoUpdater({
735009
735009
  return;
735010
735010
  }
735011
735011
  if (false) {}
735012
- const currentVersion = "1.78.5";
735012
+ const currentVersion = "1.78.6";
735013
735013
  const channel = getInitialSettings()?.autoUpdatesChannel ?? "latest";
735014
735014
  let latestVersion = await getLatestVersion(channel);
735015
735015
  const isDisabled = isAutoUpdaterDisabled();
@@ -735238,12 +735238,12 @@ function NativeAutoUpdater({
735238
735238
  logEvent("tengu_native_auto_updater_start", {});
735239
735239
  try {
735240
735240
  const maxVersion = await getMaxVersion();
735241
- if (maxVersion && gt("1.78.5", maxVersion)) {
735241
+ if (maxVersion && gt("1.78.6", maxVersion)) {
735242
735242
  const msg = await getMaxVersionMessage();
735243
735243
  setMaxVersionIssue(msg ?? "affects your version");
735244
735244
  }
735245
735245
  const result = await installLatest(channel);
735246
- const currentVersion = "1.78.5";
735246
+ const currentVersion = "1.78.6";
735247
735247
  const latencyMs = Date.now() - startTime;
735248
735248
  if (result.lockFailed) {
735249
735249
  logEvent("tengu_native_auto_updater_lock_contention", {
@@ -735380,17 +735380,17 @@ function PackageManagerAutoUpdater(t0) {
735380
735380
  const maxVersion = await getMaxVersion();
735381
735381
  if (maxVersion && latest && gt(latest, maxVersion)) {
735382
735382
  logForDebugging(`PackageManagerAutoUpdater: maxVersion ${maxVersion} is set, capping update from ${latest} to ${maxVersion}`);
735383
- if (gte("1.78.5", maxVersion)) {
735384
- logForDebugging(`PackageManagerAutoUpdater: current version ${"1.78.5"} is already at or above maxVersion ${maxVersion}, skipping update`);
735383
+ if (gte("1.78.6", maxVersion)) {
735384
+ logForDebugging(`PackageManagerAutoUpdater: current version ${"1.78.6"} is already at or above maxVersion ${maxVersion}, skipping update`);
735385
735385
  setUpdateAvailable(false);
735386
735386
  return;
735387
735387
  }
735388
735388
  latest = maxVersion;
735389
735389
  }
735390
- const hasUpdate = latest && !gte("1.78.5", latest) && !shouldSkipVersion(latest);
735390
+ const hasUpdate = latest && !gte("1.78.6", latest) && !shouldSkipVersion(latest);
735391
735391
  setUpdateAvailable(!!hasUpdate);
735392
735392
  if (hasUpdate) {
735393
- logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.78.5"} -> ${latest}`);
735393
+ logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.78.6"} -> ${latest}`);
735394
735394
  }
735395
735395
  };
735396
735396
  $2[0] = t1;
@@ -735424,7 +735424,7 @@ function PackageManagerAutoUpdater(t0) {
735424
735424
  wrap: "truncate",
735425
735425
  children: [
735426
735426
  "currentVersion: ",
735427
- "1.78.5"
735427
+ "1.78.6"
735428
735428
  ]
735429
735429
  }, undefined, true, undefined, this);
735430
735430
  $2[3] = verbose;
@@ -746224,7 +746224,7 @@ function buildStatusLineCommandInput(permissionMode, exceeds200kTokens, settings
746224
746224
  project_dir: getOriginalCwd(),
746225
746225
  added_dirs: addedDirs
746226
746226
  },
746227
- version: "1.78.5",
746227
+ version: "1.78.6",
746228
746228
  output_style: {
746229
746229
  name: outputStyleName
746230
746230
  },
@@ -746359,7 +746359,7 @@ function StatusLineInner({
746359
746359
  const attention = customStatusError ?? taskAttention;
746360
746360
  const terminalSize = React132.useContext(TerminalSizeContext);
746361
746361
  const defaultStatusLineText = buildDefaultStatusBar({
746362
- version: "1.78.5",
746362
+ version: "1.78.6",
746363
746363
  providerLabel: providerRuntime.providerLabel,
746364
746364
  authMode: providerRuntime.authLabel,
746365
746365
  model: renderModelName(mainLoopModel) || providerRuntime.model || "",
@@ -758644,7 +758644,7 @@ async function submitTranscriptShare(messages, trigger2, appearanceId) {
758644
758644
  } catch {}
758645
758645
  const data = {
758646
758646
  trigger: trigger2,
758647
- version: "1.78.5",
758647
+ version: "1.78.6",
758648
758648
  platform: process.platform,
758649
758649
  transcript,
758650
758650
  subagentTranscripts: Object.keys(subagentTranscripts).length > 0 ? subagentTranscripts : undefined,
@@ -771018,7 +771018,7 @@ function WelcomeV2() {
771018
771018
  dimColor: true,
771019
771019
  children: [
771020
771020
  "v",
771021
- "1.78.5"
771021
+ "1.78.6"
771022
771022
  ]
771023
771023
  }, undefined, true, undefined, this)
771024
771024
  ]
@@ -772278,7 +772278,7 @@ function completeOnboarding() {
772278
772278
  saveGlobalConfig((current) => ({
772279
772279
  ...current,
772280
772280
  hasCompletedOnboarding: true,
772281
- lastOnboardingVersion: "1.78.5"
772281
+ lastOnboardingVersion: "1.78.6"
772282
772282
  }));
772283
772283
  }
772284
772284
  function showDialog(root2, renderer) {
@@ -777322,7 +777322,7 @@ function appendToLog(path24, message) {
777322
777322
  cwd: getFsImplementation().cwd(),
777323
777323
  userType: process.env.USER_TYPE,
777324
777324
  sessionId: getSessionId(),
777325
- version: "1.78.5"
777325
+ version: "1.78.6"
777326
777326
  };
777327
777327
  getLogWriter(path24).write(messageWithTimestamp);
777328
777328
  }
@@ -781481,8 +781481,8 @@ async function getEnvLessBridgeConfig() {
781481
781481
  }
781482
781482
  async function checkEnvLessBridgeMinVersion() {
781483
781483
  const cfg = await getEnvLessBridgeConfig();
781484
- if (cfg.min_version && lt("1.78.5", cfg.min_version)) {
781485
- return `Your version of UR (${"1.78.5"}) is too old for Remote Control.
781484
+ if (cfg.min_version && lt("1.78.6", cfg.min_version)) {
781485
+ return `Your version of UR (${"1.78.6"}) is too old for Remote Control.
781486
781486
  Version ${cfg.min_version} or higher is required. Run \`ur update\` to update.`;
781487
781487
  }
781488
781488
  return null;
@@ -781956,7 +781956,7 @@ async function initBridgeCore(params) {
781956
781956
  const rawApi = createBridgeApiClient({
781957
781957
  baseUrl,
781958
781958
  getAccessToken,
781959
- runnerVersion: "1.78.5",
781959
+ runnerVersion: "1.78.6",
781960
781960
  onDebug: logForDebugging,
781961
781961
  onAuth401,
781962
781962
  getTrustedDeviceToken
@@ -791429,7 +791429,7 @@ function getAgUiCapabilities() {
791429
791429
  name: "UR-Nexus",
791430
791430
  type: "ur-nexus",
791431
791431
  description: "Provider-flexible, local-first autonomous engineering workflow agent.",
791432
- version: "1.78.5",
791432
+ version: "1.78.6",
791433
791433
  provider: "UR",
791434
791434
  documentationUrl: "https://github.com/Maitham16/UR/blob/master/docs/AG_UI.md"
791435
791435
  },
@@ -792569,7 +792569,7 @@ function createMCPServer(cwd4, debug2, verbose) {
792569
792569
  };
792570
792570
  const server2 = new Server({
792571
792571
  name: "ur-nexus",
792572
- version: "1.78.5"
792572
+ version: "1.78.6"
792573
792573
  }, {
792574
792574
  capabilities: {
792575
792575
  tools: {}
@@ -793727,7 +793727,7 @@ function thrownResponse(error40) {
793727
793727
  }
793728
793728
  async function createUrMcp2026Runtime(options4) {
793729
793729
  const server2 = createMCPServer(options4.cwd, options4.debug === true, options4.verbose === true);
793730
- const client2 = new Client({ name: "ur-mcp-2026-adapter", version: "1.78.5" }, { capabilities: {} });
793730
+ const client2 = new Client({ name: "ur-mcp-2026-adapter", version: "1.78.6" }, { capabilities: {} });
793731
793731
  const [clientTransport, serverTransport] = createLinkedTransportPair();
793732
793732
  try {
793733
793733
  await server2.connect(serverTransport);
@@ -793738,7 +793738,7 @@ async function createUrMcp2026Runtime(options4) {
793738
793738
  }
793739
793739
  const runtime2 = new Mcp2026Runtime({
793740
793740
  cwd: options4.cwd,
793741
- version: "1.78.5",
793741
+ version: "1.78.6",
793742
793742
  backend: {
793743
793743
  listTools: async () => {
793744
793744
  const listed = await client2.listTools();
@@ -795879,7 +795879,7 @@ async function update() {
795879
795879
  logEvent("tengu_update_check", {});
795880
795880
  const diagnostic2 = await getDoctorDiagnostic();
795881
795881
  const result = await checkUpgradeStatus({
795882
- currentVersion: "1.78.5",
795882
+ currentVersion: "1.78.6",
795883
795883
  packageName: UR_AGENT_PACKAGE_NAME,
795884
795884
  installationType: diagnostic2.installationType,
795885
795885
  latestVersion: () => getLatestNpmPackageVersion(UR_AGENT_PACKAGE_NAME)
@@ -797195,7 +797195,7 @@ ${customInstructions}` : customInstructions;
797195
797195
  }
797196
797196
  }
797197
797197
  logForDiagnosticsNoPII("info", "started", {
797198
- version: "1.78.5",
797198
+ version: "1.78.6",
797199
797199
  is_native_binary: isInBundledMode()
797200
797200
  });
797201
797201
  registerCleanup(async () => {
@@ -797981,7 +797981,7 @@ Usage: ur --remote "your task description"`, () => gracefulShutdown(1));
797981
797981
  pendingHookMessages
797982
797982
  }, renderAndRun);
797983
797983
  }
797984
- }).version("1.78.5 (UR-Nexus)", "-v, --version", "Output the version number");
797984
+ }).version("1.78.6 (UR-Nexus)", "-v, --version", "Output the version number");
797985
797985
  program2.option("-w, --worktree [name]", "Create a new git worktree for this session (optionally specify a name)");
797986
797986
  program2.option("--tmux", "Create a tmux session for the worktree (requires --worktree). Uses iTerm2 native panes when available; use --tmux=classic for traditional tmux.");
797987
797987
  if (canUserConfigureAdvisor()) {
@@ -799033,7 +799033,7 @@ if (false) {}
799033
799033
  async function main2() {
799034
799034
  const args = process.argv.slice(2);
799035
799035
  if (args.length === 1 && (args[0] === "--version" || args[0] === "-v" || args[0] === "-V")) {
799036
- console.log(`${"1.78.5"} (UR-Nexus)`);
799036
+ console.log(`${"1.78.6"} (UR-Nexus)`);
799037
799037
  return;
799038
799038
  }
799039
799039
  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.78.5 (UR-Nexus)"
22
+ # expected for this release: "1.78.6 (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.78.5</p>
48
+ <p class="eyebrow">Version 1.78.6</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.78.5"
10
+ version = "1.78.6"
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.78.5",
5
+ "version": "1.78.6",
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.78.5",
3
+ "version": "1.78.6",
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",