ur-agent 1.65.2 → 1.65.3

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,22 @@
1
1
  # Changelog
2
2
 
3
+ ## 1.65.3
4
+
5
+ - Removed two tips for things that do not exist: `/mobile to use UR from the
6
+ UR app on your phone` (no such command, no such app) and a pointer to
7
+ `ur.ai/web` (no DNS record, same dead domain class as the `ur.com` links
8
+ removed earlier). Tips are the first thing a new user reads, so a tip for
9
+ something that is not there is the worst place to be wrong.
10
+ - Added short tips covering the command surface that was going unnoticed —
11
+ spec-driven development, compiler-accurate renames, semantic code search,
12
+ crews and arenas, evals, guardrails, the audit trail, the security suite,
13
+ research and multimodal commands, and the tools added this week. One line
14
+ each: the goal is recall, not documentation.
15
+ - Added `test/tipsAreReal.test.ts`: every command a tip names must exist in the
16
+ slash-command reference, and no tip may reference a domain UR does not own.
17
+ It also asserts the checker finds real citations, so it cannot start passing
18
+ vacuously on an empty match.
19
+
3
20
  ## 1.65.2
4
21
 
5
22
  - Fixed `--discover-ollama` having no effect on model discovery or requests.
package/dist/cli.js CHANGED
@@ -75238,7 +75238,7 @@ var init_auth = __esm(() => {
75238
75238
 
75239
75239
  // src/utils/userAgent.ts
75240
75240
  function getURCodeUserAgent() {
75241
- return `ur/${"1.65.2"}`;
75241
+ return `ur/${"1.65.3"}`;
75242
75242
  }
75243
75243
 
75244
75244
  // src/utils/workloadContext.ts
@@ -75260,7 +75260,7 @@ function getUserAgent() {
75260
75260
  const clientApp = process.env.UR_AGENT_SDK_CLIENT_APP ? `, client-app/${process.env.UR_AGENT_SDK_CLIENT_APP}` : "";
75261
75261
  const workload = getWorkload();
75262
75262
  const workloadSuffix = workload ? `, workload/${workload}` : "";
75263
- return `ur-cli/${"1.65.2"} (${process.env.USER_TYPE}, ${process.env.UR_CODE_ENTRYPOINT ?? "cli"}${agentSdkVersion}${clientApp}${workloadSuffix})`;
75263
+ return `ur-cli/${"1.65.3"} (${process.env.USER_TYPE}, ${process.env.UR_CODE_ENTRYPOINT ?? "cli"}${agentSdkVersion}${clientApp}${workloadSuffix})`;
75264
75264
  }
75265
75265
  function getMCPUserAgent() {
75266
75266
  const parts = [];
@@ -75274,7 +75274,7 @@ function getMCPUserAgent() {
75274
75274
  parts.push(`client-app/${process.env.UR_AGENT_SDK_CLIENT_APP}`);
75275
75275
  }
75276
75276
  const suffix = parts.length > 0 ? ` (${parts.join(", ")})` : "";
75277
- return `ur/${"1.65.2"}${suffix}`;
75277
+ return `ur/${"1.65.3"}${suffix}`;
75278
75278
  }
75279
75279
  function getWebFetchUserAgent() {
75280
75280
  return `UR-User (${getURCodeUserAgent()})`;
@@ -75412,7 +75412,7 @@ var init_user = __esm(() => {
75412
75412
  deviceId,
75413
75413
  sessionId: getSessionId(),
75414
75414
  email: getEmail(),
75415
- appVersion: "1.65.2",
75415
+ appVersion: "1.65.3",
75416
75416
  platform: getHostPlatformForAnalytics(),
75417
75417
  organizationUuid,
75418
75418
  accountUuid,
@@ -83612,7 +83612,7 @@ var init_metadata = __esm(() => {
83612
83612
  COMPOUND_OPERATOR_REGEX = /\s*(?:&&|\|\||[;|])\s*/;
83613
83613
  WHITESPACE_REGEX = /\s+/;
83614
83614
  getVersionBase = memoize_default(() => {
83615
- const match = "1.65.2".match(/^\d+\.\d+\.\d+(?:-[a-z]+)?/);
83615
+ const match = "1.65.3".match(/^\d+\.\d+\.\d+(?:-[a-z]+)?/);
83616
83616
  return match ? match[0] : undefined;
83617
83617
  });
83618
83618
  buildEnvContext = memoize_default(async () => {
@@ -83652,7 +83652,7 @@ var init_metadata = __esm(() => {
83652
83652
  isGithubAction: isEnvTruthy(process.env.GITHUB_ACTIONS),
83653
83653
  isURCodeAction: isEnvTruthy(process.env.UR_CODE_ACTION),
83654
83654
  isURAiAuth: isURAISubscriber(),
83655
- version: "1.65.2",
83655
+ version: "1.65.3",
83656
83656
  versionBase: getVersionBase(),
83657
83657
  buildTime: "",
83658
83658
  deploymentEnvironment: env2.detectDeploymentEnvironment(),
@@ -84322,7 +84322,7 @@ function initialize1PEventLogging() {
84322
84322
  const platform2 = getPlatform();
84323
84323
  const attributes = {
84324
84324
  [import_semantic_conventions4.ATTR_SERVICE_NAME]: "ur",
84325
- [import_semantic_conventions4.ATTR_SERVICE_VERSION]: "1.65.2"
84325
+ [import_semantic_conventions4.ATTR_SERVICE_VERSION]: "1.65.3"
84326
84326
  };
84327
84327
  if (platform2 === "wsl") {
84328
84328
  const wslVersion = getWslVersion();
@@ -84350,7 +84350,7 @@ function initialize1PEventLogging() {
84350
84350
  })
84351
84351
  ]
84352
84352
  });
84353
- firstPartyEventLogger = firstPartyEventLoggerProvider.getLogger("com.urhq.ur.events", "1.65.2");
84353
+ firstPartyEventLogger = firstPartyEventLoggerProvider.getLogger("com.urhq.ur.events", "1.65.3");
84354
84354
  }
84355
84355
  async function reinitialize1PEventLoggingIfConfigChanged() {
84356
84356
  if (!is1PEventLoggingEnabled() || !firstPartyEventLoggerProvider) {
@@ -94205,7 +94205,7 @@ function formatAgentTrendReport(report = buildAgentTrendReport()) {
94205
94205
  function formatA2AAgentCard(options = {}, pretty = true) {
94206
94206
  return JSON.stringify(buildA2AAgentCard(options), null, pretty ? 2 : 0);
94207
94207
  }
94208
- var urVersion = "1.65.2", researchSnapshotDate = "2026-07-15", coverage, priorityRoadmap;
94208
+ var urVersion = "1.65.3", researchSnapshotDate = "2026-07-15", coverage, priorityRoadmap;
94209
94209
  var init_trends = __esm(() => {
94210
94210
  init_a2aCardSignature();
94211
94211
  coverage = [
@@ -97008,7 +97008,7 @@ function getAttributionHeader(fingerprint) {
97008
97008
  if (!isAttributionHeaderEnabled()) {
97009
97009
  return "";
97010
97010
  }
97011
- const version2 = `${"1.65.2"}.${fingerprint}`;
97011
+ const version2 = `${"1.65.3"}.${fingerprint}`;
97012
97012
  const entrypoint = process.env.UR_CODE_ENTRYPOINT ?? "unknown";
97013
97013
  const cch = "";
97014
97014
  const workload = getWorkload();
@@ -154772,7 +154772,7 @@ var init_projectSafety = __esm(() => {
154772
154772
  function getInstruments() {
154773
154773
  if (instruments)
154774
154774
  return instruments;
154775
- const meter = import_api10.metrics.getMeter("ur-agent.gen_ai", "1.65.2");
154775
+ const meter = import_api10.metrics.getMeter("ur-agent.gen_ai", "1.65.3");
154776
154776
  instruments = {
154777
154777
  operationDuration: meter.createHistogram("gen_ai.client.operation.duration", {
154778
154778
  description: "GenAI operation duration.",
@@ -154870,7 +154870,7 @@ function genAiAgentAttributes() {
154870
154870
  "gen_ai.operation.name": GEN_AI_OPERATION_INVOKE_AGENT,
154871
154871
  "gen_ai.provider.name": "ur",
154872
154872
  "gen_ai.agent.name": "UR-Nexus",
154873
- "gen_ai.agent.version": "1.65.2"
154873
+ "gen_ai.agent.version": "1.65.3"
154874
154874
  };
154875
154875
  }
154876
154876
  function genAiWorkflowAttributes(workflowName) {
@@ -154886,7 +154886,7 @@ function genAiWorkflowAttributes(workflowName) {
154886
154886
  function startGenAiWorkflowSpan(workflowName) {
154887
154887
  const attributes = genAiWorkflowAttributes(workflowName);
154888
154888
  const name = typeof attributes["gen_ai.workflow.name"] === "string" ? `invoke_workflow ${attributes["gen_ai.workflow.name"]}` : GEN_AI_OPERATION_INVOKE_WORKFLOW;
154889
- return import_api10.trace.getTracer("ur-agent.gen_ai", "1.65.2").startSpan(name, { kind: import_api10.SpanKind.INTERNAL, attributes });
154889
+ return import_api10.trace.getTracer("ur-agent.gen_ai", "1.65.3").startSpan(name, { kind: import_api10.SpanKind.INTERNAL, attributes });
154890
154890
  }
154891
154891
  function endGenAiWorkflowSpan(span, options2 = {}) {
154892
154892
  try {
@@ -154924,7 +154924,7 @@ function startGenAiMemorySpan(operation, options2 = {}) {
154924
154924
  if (options2.recordCount !== undefined && Number.isInteger(options2.recordCount) && options2.recordCount >= 0) {
154925
154925
  attributes["gen_ai.memory.record.count"] = options2.recordCount;
154926
154926
  }
154927
- return import_api10.trace.getTracer("ur-agent.gen_ai", "1.65.2").startSpan(operation, { kind: import_api10.SpanKind.INTERNAL, attributes });
154927
+ return import_api10.trace.getTracer("ur-agent.gen_ai", "1.65.3").startSpan(operation, { kind: import_api10.SpanKind.INTERNAL, attributes });
154928
154928
  }
154929
154929
  function endGenAiMemorySpan(span, options2 = {}) {
154930
154930
  try {
@@ -206443,7 +206443,7 @@ function getTelemetryAttributes() {
206443
206443
  attributes["session.id"] = sessionId;
206444
206444
  }
206445
206445
  if (shouldIncludeAttribute("OTEL_METRICS_INCLUDE_VERSION")) {
206446
- attributes["app.version"] = "1.65.2";
206446
+ attributes["app.version"] = "1.65.3";
206447
206447
  }
206448
206448
  const oauthAccount = getOauthAccountInfo();
206449
206449
  if (oauthAccount) {
@@ -252980,7 +252980,7 @@ function getInstallationEnv() {
252980
252980
  return;
252981
252981
  }
252982
252982
  function getURCodeVersion() {
252983
- return "1.65.2";
252983
+ return "1.65.3";
252984
252984
  }
252985
252985
  async function getInstalledVSCodeExtensionVersion(command) {
252986
252986
  const { stdout } = await execFileNoThrow(command, ["--list-extensions", "--show-versions"], {
@@ -260311,7 +260311,7 @@ async function setupSdkMcpClients(sdkMcpConfigs, sendMcpMessage) {
260311
260311
  const client2 = new Client({
260312
260312
  name: "ur",
260313
260313
  title: "UR",
260314
- version: "1.65.2",
260314
+ version: "1.65.3",
260315
260315
  description: "UR-Nexus autonomous engineering workflow engine",
260316
260316
  websiteUrl: PRODUCT_URL
260317
260317
  }, {
@@ -260671,7 +260671,7 @@ var init_client5 = __esm(() => {
260671
260671
  const client2 = new Client({
260672
260672
  name: "ur",
260673
260673
  title: "UR",
260674
- version: "1.65.2",
260674
+ version: "1.65.3",
260675
260675
  description: "UR-Nexus autonomous engineering workflow engine",
260676
260676
  websiteUrl: PRODUCT_URL
260677
260677
  }, {
@@ -273272,7 +273272,7 @@ async function createRuntime() {
273272
273272
  bootstrapTelemetry();
273273
273273
  const resource = defaultResource().merge(detectResources({ detectors: [envDetector] })).merge(resourceFromAttributes({
273274
273274
  [import_semantic_conventions7.ATTR_SERVICE_NAME]: "ur-agent",
273275
- [import_semantic_conventions7.ATTR_SERVICE_VERSION]: "1.65.2"
273275
+ [import_semantic_conventions7.ATTR_SERVICE_VERSION]: "1.65.3"
273276
273276
  }));
273277
273277
  const tracerProvider = exporters.traces.length > 0 ? new BasicTracerProvider({
273278
273278
  resource,
@@ -273305,11 +273305,11 @@ async function createRuntime() {
273305
273305
  setMeterProvider(meterProvider);
273306
273306
  setLoggerProvider(loggerProvider);
273307
273307
  if (meterProvider) {
273308
- const meter = meterProvider.getMeter("ur-agent", "1.65.2");
273308
+ const meter = meterProvider.getMeter("ur-agent", "1.65.3");
273309
273309
  setMeter(meter, (name, options2) => meter.createCounter(name, options2));
273310
273310
  }
273311
273311
  if (loggerProvider) {
273312
- setEventLogger(loggerProvider.getLogger("ur-agent.events", "1.65.2"));
273312
+ setEventLogger(loggerProvider.getLogger("ur-agent.events", "1.65.3"));
273313
273313
  }
273314
273314
  if (!cleanupRegistered2) {
273315
273315
  cleanupRegistered2 = true;
@@ -273971,9 +273971,9 @@ async function assertMinVersion() {
273971
273971
  if (false) {}
273972
273972
  try {
273973
273973
  const versionConfig = await getDynamicConfig_BLOCKS_ON_INIT("tengu_version_config", { minVersion: "0.0.0" });
273974
- if (versionConfig.minVersion && lt("1.65.2", versionConfig.minVersion)) {
273974
+ if (versionConfig.minVersion && lt("1.65.3", versionConfig.minVersion)) {
273975
273975
  console.error(`
273976
- It looks like your version of UR (${"1.65.2"}) needs an update.
273976
+ It looks like your version of UR (${"1.65.3"}) needs an update.
273977
273977
  A newer version (${versionConfig.minVersion} or higher) is required to continue.
273978
273978
 
273979
273979
  To update, please run:
@@ -274189,7 +274189,7 @@ async function installGlobalPackage(specificVersion) {
274189
274189
  logError2(new AutoUpdaterError("Another process is currently installing an update"));
274190
274190
  logEvent("tengu_auto_updater_lock_contention", {
274191
274191
  pid: process.pid,
274192
- currentVersion: "1.65.2"
274192
+ currentVersion: "1.65.3"
274193
274193
  });
274194
274194
  return "in_progress";
274195
274195
  }
@@ -274198,7 +274198,7 @@ async function installGlobalPackage(specificVersion) {
274198
274198
  if (!env2.isRunningWithBun() && env2.isNpmFromWindowsPath()) {
274199
274199
  logError2(new Error("Windows NPM detected in WSL environment"));
274200
274200
  logEvent("tengu_auto_updater_windows_npm_in_wsl", {
274201
- currentVersion: "1.65.2"
274201
+ currentVersion: "1.65.3"
274202
274202
  });
274203
274203
  console.error(`
274204
274204
  Error: Windows NPM detected in WSL
@@ -274733,7 +274733,7 @@ function detectLinuxGlobPatternWarnings() {
274733
274733
  }
274734
274734
  async function getDoctorDiagnostic() {
274735
274735
  const installationType = await getCurrentInstallationType();
274736
- const version2 = typeof MACRO !== "undefined" ? "1.65.2" : "unknown";
274736
+ const version2 = typeof MACRO !== "undefined" ? "1.65.3" : "unknown";
274737
274737
  const installationPath = await getInstallationPath();
274738
274738
  const invokedBinary = getInvokedBinary();
274739
274739
  const multipleInstallations = await detectMultipleInstallations();
@@ -275668,8 +275668,8 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
275668
275668
  const maxVersion = await getMaxVersion();
275669
275669
  if (maxVersion && gt(version2, maxVersion)) {
275670
275670
  logForDebugging(`Native installer: maxVersion ${maxVersion} is set, capping update from ${version2} to ${maxVersion}`);
275671
- if (gte("1.65.2", maxVersion)) {
275672
- logForDebugging(`Native installer: current version ${"1.65.2"} is already at or above maxVersion ${maxVersion}, skipping update`);
275671
+ if (gte("1.65.3", maxVersion)) {
275672
+ logForDebugging(`Native installer: current version ${"1.65.3"} is already at or above maxVersion ${maxVersion}, skipping update`);
275673
275673
  logEvent("tengu_native_update_skipped_max_version", {
275674
275674
  latency_ms: Date.now() - startTime,
275675
275675
  max_version: maxVersion,
@@ -275680,7 +275680,7 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
275680
275680
  version2 = maxVersion;
275681
275681
  }
275682
275682
  }
275683
- if (!forceReinstall && version2 === "1.65.2" && await versionIsAvailable(version2) && await isPossibleURBinary(executablePath)) {
275683
+ if (!forceReinstall && version2 === "1.65.3" && await versionIsAvailable(version2) && await isPossibleURBinary(executablePath)) {
275684
275684
  logForDebugging(`Found ${version2} at ${executablePath}, skipping install`);
275685
275685
  logEvent("tengu_native_update_complete", {
275686
275686
  latency_ms: Date.now() - startTime,
@@ -345975,7 +345975,7 @@ function isAnyTracingEnabled() {
345975
345975
  return isTelemetryEnabled() || isEnhancedTelemetryEnabled() || isBetaTracingEnabled();
345976
345976
  }
345977
345977
  function getTracer() {
345978
- return import_api39.trace.getTracer("ur-agent.gen_ai", "1.65.2");
345978
+ return import_api39.trace.getTracer("ur-agent.gen_ai", "1.65.3");
345979
345979
  }
345980
345980
  function createSpanAttributes(spanType, customAttributes = {}) {
345981
345981
  const baseAttributes = getTelemetryAttributes();
@@ -375568,7 +375568,7 @@ function Feedback({
375568
375568
  platform: env2.platform,
375569
375569
  gitRepo: envInfo.isGit,
375570
375570
  terminal: env2.terminal,
375571
- version: "1.65.2",
375571
+ version: "1.65.3",
375572
375572
  transcript: normalizeMessagesForAPI(messages),
375573
375573
  errors: sanitizedErrors,
375574
375574
  lastApiRequest: getLastAPIRequest(),
@@ -375760,7 +375760,7 @@ function Feedback({
375760
375760
  ", ",
375761
375761
  env2.terminal,
375762
375762
  ", v",
375763
- "1.65.2"
375763
+ "1.65.3"
375764
375764
  ]
375765
375765
  }, undefined, true, undefined, this)
375766
375766
  ]
@@ -375866,7 +375866,7 @@ ${sanitizedDescription}
375866
375866
  ` + `**Environment Info**
375867
375867
  ` + `- Platform: ${env2.platform}
375868
375868
  ` + `- Terminal: ${env2.terminal}
375869
- ` + `- Version: ${"1.65.2"}
375869
+ ` + `- Version: ${"1.65.3"}
375870
375870
  ` + `- Feedback ID: ${feedbackId}
375871
375871
  ` + `
375872
375872
  **Errors**
@@ -378976,7 +378976,7 @@ function buildPrimarySection() {
378976
378976
  }, undefined, false, undefined, this);
378977
378977
  return [{
378978
378978
  label: "Version",
378979
- value: "1.65.2"
378979
+ value: "1.65.3"
378980
378980
  }, {
378981
378981
  label: "Session name",
378982
378982
  value: nameValue
@@ -382306,7 +382306,7 @@ function Config({
382306
382306
  }
382307
382307
  }, undefined, false, undefined, this)
382308
382308
  }, undefined, false, undefined, this) : showSubmenu === "ChannelDowngrade" ? /* @__PURE__ */ jsx_dev_runtime179.jsxDEV(ChannelDowngradeDialog, {
382309
- currentVersion: "1.65.2",
382309
+ currentVersion: "1.65.3",
382310
382310
  onChoice: (choice) => {
382311
382311
  setShowSubmenu(null);
382312
382312
  setTabsHidden(false);
@@ -382318,7 +382318,7 @@ function Config({
382318
382318
  autoUpdatesChannel: "stable"
382319
382319
  };
382320
382320
  if (choice === "stay") {
382321
- newSettings.minimumVersion = "1.65.2";
382321
+ newSettings.minimumVersion = "1.65.3";
382322
382322
  }
382323
382323
  updateSettingsForSource("userSettings", newSettings);
382324
382324
  setSettingsData((prev_27) => ({
@@ -390382,7 +390382,7 @@ function HelpV2(t0) {
390382
390382
  let t6;
390383
390383
  if ($2[31] !== tabs) {
390384
390384
  t6 = /* @__PURE__ */ jsx_dev_runtime206.jsxDEV(Tabs, {
390385
- title: `UR v${"1.65.2"}`,
390385
+ title: `UR v${"1.65.3"}`,
390386
390386
  color: "professionalBlue",
390387
390387
  defaultTab: "general",
390388
390388
  children: tabs
@@ -391299,7 +391299,7 @@ function buildToolUseContext(tools, readFileStateCache, toolPermissionContext, a
391299
391299
  async function handleInitialize(options2) {
391300
391300
  return {
391301
391301
  name: "UR",
391302
- version: "1.65.2",
391302
+ version: "1.65.3",
391303
391303
  protocolVersion: "0.1.0",
391304
391304
  workspaceRoot: options2.cwd,
391305
391305
  capabilities: {
@@ -408407,7 +408407,7 @@ function getAllReleaseNotes(changelogContent = getStoredChangelogFromMemory()) {
408407
408407
  return [];
408408
408408
  }
408409
408409
  }
408410
- async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.65.2") {
408410
+ async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.65.3") {
408411
408411
  if (process.env.USER_TYPE === "ant") {
408412
408412
  const changelog = "";
408413
408413
  if (changelog) {
@@ -408434,7 +408434,7 @@ async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.65.2")
408434
408434
  releaseNotes
408435
408435
  };
408436
408436
  }
408437
- function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.65.2") {
408437
+ function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.65.3") {
408438
408438
  if (process.env.USER_TYPE === "ant") {
408439
408439
  const changelog = "";
408440
408440
  if (changelog) {
@@ -411291,7 +411291,7 @@ function getRecentActivitySync() {
411291
411291
  return cachedActivity;
411292
411292
  }
411293
411293
  function getLogoDisplayData() {
411294
- const version2 = process.env.DEMO_VERSION ?? "1.65.2";
411294
+ const version2 = process.env.DEMO_VERSION ?? "1.65.3";
411295
411295
  const serverUrl = getDirectConnectServerUrl();
411296
411296
  const displayPath = process.env.DEMO_VERSION ? "/code/ur" : getDisplayPath(getCwd());
411297
411297
  const cwd2 = serverUrl ? `${displayPath} in ${serverUrl.replace(/^https?:\/\//, "")}` : displayPath;
@@ -412175,7 +412175,7 @@ function LogoV2() {
412175
412175
  if ($2[2] === Symbol.for("react.memo_cache_sentinel")) {
412176
412176
  t2 = () => {
412177
412177
  const currentConfig2 = getGlobalConfig();
412178
- if (currentConfig2.lastReleaseNotesSeen === "1.65.2") {
412178
+ if (currentConfig2.lastReleaseNotesSeen === "1.65.3") {
412179
412179
  return;
412180
412180
  }
412181
412181
  saveGlobalConfig(_temp327);
@@ -412860,12 +412860,12 @@ function LogoV2() {
412860
412860
  return t41;
412861
412861
  }
412862
412862
  function _temp327(current) {
412863
- if (current.lastReleaseNotesSeen === "1.65.2") {
412863
+ if (current.lastReleaseNotesSeen === "1.65.3") {
412864
412864
  return current;
412865
412865
  }
412866
412866
  return {
412867
412867
  ...current,
412868
- lastReleaseNotesSeen: "1.65.2"
412868
+ lastReleaseNotesSeen: "1.65.3"
412869
412869
  };
412870
412870
  }
412871
412871
  function _temp241(s_0) {
@@ -429663,7 +429663,7 @@ function compileAgenticCiWorkflow(specName = "default", options2 = {}) {
429663
429663
  if (spec.name !== specName) {
429664
429664
  throw new Error("Agentic CI workflow spec name does not match");
429665
429665
  }
429666
- const packageVersion = options2.packageVersion ?? (typeof MACRO !== "undefined" ? "1.65.2" : "1.65.2");
429666
+ const packageVersion = options2.packageVersion ?? (typeof MACRO !== "undefined" ? "1.65.3" : "1.65.3");
429667
429667
  if (!/^\d+\.\d+\.\d+(?:-[0-9A-Za-z.-]+)?$/.test(packageVersion)) {
429668
429668
  throw new Error("invalid ur-agent package version");
429669
429669
  }
@@ -430656,7 +430656,7 @@ runner; \`ur trigger\` is the inbound parser that decides what to run.
430656
430656
  path: ".github/workflows/ur.yml",
430657
430657
  root: "project",
430658
430658
  content: compileAgenticCiWorkflow("default", {
430659
- packageVersion: typeof MACRO !== "undefined" ? "1.65.2" : "1.65.2"
430659
+ packageVersion: typeof MACRO !== "undefined" ? "1.65.3" : "1.65.3"
430660
430660
  })
430661
430661
  },
430662
430662
  {
@@ -430719,7 +430719,7 @@ function value(tokens, flag) {
430719
430719
  return index2 >= 0 ? tokens[index2 + 1] : undefined;
430720
430720
  }
430721
430721
  function cliVersion() {
430722
- return typeof MACRO !== "undefined" ? "1.65.2" : "1.65.2";
430722
+ return typeof MACRO !== "undefined" ? "1.65.3" : "1.65.3";
430723
430723
  }
430724
430724
  function workflowPath(cwd2) {
430725
430725
  return join159(cwd2, ".github", "workflows", "ur-agentic-ci.yml");
@@ -436575,7 +436575,7 @@ function createAcpStdioApp(deps) {
436575
436575
  }
436576
436576
  },
436577
436577
  authMethods: [],
436578
- agentInfo: { name: "UR-Nexus", version: "1.65.2" }
436578
+ agentInfo: { name: "UR-Nexus", version: "1.65.3" }
436579
436579
  })).onRequest("authenticate", () => ({})).onRequest("session/new", async (context6) => {
436580
436580
  const result = runtime2.newSession(context6.params.cwd, context6.params.mcpServers, context6.params.additionalDirectories);
436581
436581
  await runtime2.announce({
@@ -436672,7 +436672,7 @@ function createAcpStdioAgent(deps) {
436672
436672
  }
436673
436673
  },
436674
436674
  authMethods: [],
436675
- agentInfo: { name: "UR-Nexus", version: "1.65.2" }
436675
+ agentInfo: { name: "UR-Nexus", version: "1.65.3" }
436676
436676
  });
436677
436677
  return;
436678
436678
  case "authenticate":
@@ -645049,7 +645049,7 @@ async function captureMemoryDiagnostics(trigger2, dumpNumber = 0) {
645049
645049
  smapsRollup,
645050
645050
  platform: process.platform,
645051
645051
  nodeVersion: process.version,
645052
- ccVersion: "1.65.2"
645052
+ ccVersion: "1.65.3"
645053
645053
  };
645054
645054
  }
645055
645055
  async function performHeapDump(trigger2 = "manual", dumpNumber = 0) {
@@ -645629,7 +645629,7 @@ var init_bridge_kick = __esm(() => {
645629
645629
  var call153 = async () => {
645630
645630
  return {
645631
645631
  type: "text",
645632
- value: "1.65.2"
645632
+ value: "1.65.3"
645633
645633
  };
645634
645634
  }, version2, version_default;
645635
645635
  var init_version = __esm(() => {
@@ -656700,7 +656700,7 @@ function generateHtmlReport(data, insights) {
656700
656700
  </html>`;
656701
656701
  }
656702
656702
  function buildExportData(data, insights, facets, remoteStats) {
656703
- const version3 = typeof MACRO !== "undefined" ? "1.65.2" : "unknown";
656703
+ const version3 = typeof MACRO !== "undefined" ? "1.65.3" : "unknown";
656704
656704
  const remote_hosts_collected = remoteStats?.hosts.filter((h2) => h2.sessionCount > 0).map((h2) => h2.name);
656705
656705
  const facets_summary = {
656706
656706
  total: facets.size,
@@ -661011,7 +661011,7 @@ var init_sessionStorage = __esm(() => {
661011
661011
  init_settings2();
661012
661012
  init_slowOperations();
661013
661013
  init_uuid();
661014
- VERSION7 = typeof MACRO !== "undefined" ? "1.65.2" : "unknown";
661014
+ VERSION7 = typeof MACRO !== "undefined" ? "1.65.3" : "unknown";
661015
661015
  MAX_TOMBSTONE_REWRITE_BYTES = 50 * 1024 * 1024;
661016
661016
  SKIP_FIRST_PROMPT_PATTERN = /^(?:\s*<[a-z][\w-]*[\s>]|\[Request interrupted by user[^\]]*\])/;
661017
661017
  EPHEMERAL_PROGRESS_TYPES = new Set([
@@ -662226,7 +662226,7 @@ var init_filesystem = __esm(() => {
662226
662226
  });
662227
662227
  getBundledSkillsRoot = memoize_default(function getBundledSkillsRoot2() {
662228
662228
  const nonce = randomBytes20(16).toString("hex");
662229
- return join232(getURTempDir(), "bundled-skills", "1.65.2", nonce);
662229
+ return join232(getURTempDir(), "bundled-skills", "1.65.3", nonce);
662230
662230
  });
662231
662231
  getResolvedWorkingDirPaths = memoize_default(getPathsForPermissionCheck);
662232
662232
  });
@@ -668521,7 +668521,7 @@ function computeFingerprint(messageText2, version3) {
668521
668521
  }
668522
668522
  function computeFingerprintFromMessages(messages) {
668523
668523
  const firstMessageText = extractFirstMessageText(messages);
668524
- return computeFingerprint(firstMessageText, "1.65.2");
668524
+ return computeFingerprint(firstMessageText, "1.65.3");
668525
668525
  }
668526
668526
  var FINGERPRINT_SALT = "59cf53e54c78";
668527
668527
  var init_fingerprint = () => {};
@@ -670417,7 +670417,7 @@ async function sideQuery(opts) {
670417
670417
  betas.push(STRUCTURED_OUTPUTS_BETA_HEADER);
670418
670418
  }
670419
670419
  const messageText2 = extractFirstUserMessageText(messages);
670420
- const fingerprint2 = computeFingerprint(messageText2, "1.65.2");
670420
+ const fingerprint2 = computeFingerprint(messageText2, "1.65.3");
670421
670421
  const attributionHeader = getAttributionHeader(fingerprint2);
670422
670422
  const systemBlocks = [
670423
670423
  attributionHeader ? { type: "text", text: attributionHeader } : null,
@@ -675188,7 +675188,7 @@ function buildSystemInitMessage(inputs) {
675188
675188
  slash_commands: inputs.commands.filter((c4) => c4.userInvocable !== false).map((c4) => c4.name),
675189
675189
  apiKeySource: getURHQApiKeyWithSource().source,
675190
675190
  betas: getSdkBetas(),
675191
- ur_version: "1.65.2",
675191
+ ur_version: "1.65.3",
675192
675192
  output_style: outputStyle2,
675193
675193
  agents: inputs.agents.map((agent2) => agent2.agentType),
675194
675194
  skills: inputs.skills.filter((s) => s.userInvocable !== false).map((skill2) => skill2.name),
@@ -689048,7 +689048,7 @@ var init_useVoiceEnabled = __esm(() => {
689048
689048
  function getSemverPart(version3) {
689049
689049
  return `${import_semver13.major(version3, { loose: true })}.${import_semver13.minor(version3, { loose: true })}.${import_semver13.patch(version3, { loose: true })}`;
689050
689050
  }
689051
- function useUpdateNotification(updatedVersion, initialVersion = "1.65.2") {
689051
+ function useUpdateNotification(updatedVersion, initialVersion = "1.65.3") {
689052
689052
  const [lastNotifiedSemver, setLastNotifiedSemver] = import_react222.useState(() => getSemverPart(initialVersion));
689053
689053
  if (!updatedVersion) {
689054
689054
  return null;
@@ -689097,7 +689097,7 @@ function AutoUpdater({
689097
689097
  return;
689098
689098
  }
689099
689099
  if (false) {}
689100
- const currentVersion = "1.65.2";
689100
+ const currentVersion = "1.65.3";
689101
689101
  const channel = getInitialSettings()?.autoUpdatesChannel ?? "latest";
689102
689102
  let latestVersion = await getLatestVersion(channel);
689103
689103
  const isDisabled = isAutoUpdaterDisabled();
@@ -689326,12 +689326,12 @@ function NativeAutoUpdater({
689326
689326
  logEvent("tengu_native_auto_updater_start", {});
689327
689327
  try {
689328
689328
  const maxVersion = await getMaxVersion();
689329
- if (maxVersion && gt("1.65.2", maxVersion)) {
689329
+ if (maxVersion && gt("1.65.3", maxVersion)) {
689330
689330
  const msg = await getMaxVersionMessage();
689331
689331
  setMaxVersionIssue(msg ?? "affects your version");
689332
689332
  }
689333
689333
  const result = await installLatest(channel);
689334
- const currentVersion = "1.65.2";
689334
+ const currentVersion = "1.65.3";
689335
689335
  const latencyMs = Date.now() - startTime;
689336
689336
  if (result.lockFailed) {
689337
689337
  logEvent("tengu_native_auto_updater_lock_contention", {
@@ -689468,17 +689468,17 @@ function PackageManagerAutoUpdater(t0) {
689468
689468
  const maxVersion = await getMaxVersion();
689469
689469
  if (maxVersion && latest && gt(latest, maxVersion)) {
689470
689470
  logForDebugging(`PackageManagerAutoUpdater: maxVersion ${maxVersion} is set, capping update from ${latest} to ${maxVersion}`);
689471
- if (gte("1.65.2", maxVersion)) {
689472
- logForDebugging(`PackageManagerAutoUpdater: current version ${"1.65.2"} is already at or above maxVersion ${maxVersion}, skipping update`);
689471
+ if (gte("1.65.3", maxVersion)) {
689472
+ logForDebugging(`PackageManagerAutoUpdater: current version ${"1.65.3"} is already at or above maxVersion ${maxVersion}, skipping update`);
689473
689473
  setUpdateAvailable(false);
689474
689474
  return;
689475
689475
  }
689476
689476
  latest = maxVersion;
689477
689477
  }
689478
- const hasUpdate = latest && !gte("1.65.2", latest) && !shouldSkipVersion(latest);
689478
+ const hasUpdate = latest && !gte("1.65.3", latest) && !shouldSkipVersion(latest);
689479
689479
  setUpdateAvailable(!!hasUpdate);
689480
689480
  if (hasUpdate) {
689481
- logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.65.2"} -> ${latest}`);
689481
+ logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.65.3"} -> ${latest}`);
689482
689482
  }
689483
689483
  };
689484
689484
  $2[0] = t1;
@@ -689512,7 +689512,7 @@ function PackageManagerAutoUpdater(t0) {
689512
689512
  wrap: "truncate",
689513
689513
  children: [
689514
689514
  "currentVersion: ",
689515
- "1.65.2"
689515
+ "1.65.3"
689516
689516
  ]
689517
689517
  }, undefined, true, undefined, this);
689518
689518
  $2[3] = verbose;
@@ -700209,7 +700209,7 @@ function buildStatusLineCommandInput(permissionMode, exceeds200kTokens, settings
700209
700209
  project_dir: getOriginalCwd(),
700210
700210
  added_dirs: addedDirs
700211
700211
  },
700212
- version: "1.65.2",
700212
+ version: "1.65.3",
700213
700213
  output_style: {
700214
700214
  name: outputStyleName
700215
700215
  },
@@ -700292,7 +700292,7 @@ function StatusLineInner({
700292
700292
  const taskValues = Object.values(tasks2);
700293
700293
  const taskRunningCount = taskValues.filter((task2) => task2.status === "running" || task2.status === "pending").length;
700294
700294
  const defaultStatusLineText = buildDefaultStatusBar({
700295
- version: "1.65.2",
700295
+ version: "1.65.3",
700296
700296
  providerLabel: providerRuntime.providerLabel,
700297
700297
  authMode: providerRuntime.authLabel,
700298
700298
  model: providerRuntime.model ?? renderModelName(mainLoopModel),
@@ -712435,7 +712435,7 @@ async function submitTranscriptShare(messages, trigger2, appearanceId) {
712435
712435
  } catch {}
712436
712436
  const data = {
712437
712437
  trigger: trigger2,
712438
- version: "1.65.2",
712438
+ version: "1.65.3",
712439
712439
  platform: process.platform,
712440
712440
  transcript,
712441
712441
  subagentTranscripts: Object.keys(subagentTranscripts).length > 0 ? subagentTranscripts : undefined,
@@ -714679,16 +714679,101 @@ var init_tipRegistry = __esm(() => {
714679
714679
  },
714680
714680
  {
714681
714681
  id: "web-app",
714682
- content: async () => "Run tasks in the cloud while you keep coding locally \xB7 ur.ai/web",
714682
+ content: async () => '/cloud run "<task>" to run a task in an isolated worktree while you keep coding',
714683
714683
  cooldownSessions: 15,
714684
714684
  isRelevant: async () => true
714685
714685
  },
714686
714686
  {
714687
- id: "mobile-app",
714688
- content: async () => "/mobile to use UR from the UR app on your phone",
714687
+ id: "model-doctor-capabilities",
714688
+ content: async () => "ur model-doctor shows which local models can actually use tools and vision \u2014 a model without tools will describe work instead of doing it",
714689
+ cooldownSessions: 12,
714690
+ isRelevant: async () => true
714691
+ },
714692
+ {
714693
+ id: "selftest-drills",
714694
+ content: async () => "ur selftest run checks the shipped binary end to end after an upgrade, and prints the checks that need a live model",
714689
714695
  cooldownSessions: 15,
714690
714696
  isRelevant: async () => true
714691
714697
  },
714698
+ {
714699
+ id: "sources-provenance",
714700
+ content: async () => '/sources lists every page and MCP result that entered this session \xB7 /sources --check "<claim>" says whether it came from one',
714701
+ cooldownSessions: 12,
714702
+ isRelevant: async () => true
714703
+ },
714704
+ {
714705
+ id: "agent-inspect-costs",
714706
+ content: async () => "ur agent-inspect --costs breaks a fan-out down per agent, labelled with what each one was doing",
714707
+ cooldownSessions: 15,
714708
+ isRelevant: async () => true
714709
+ },
714710
+ {
714711
+ id: "memory-integrity",
714712
+ content: async () => "ur memory-integrity record then verify detects memory files edited, deleted, or dropped in by something other than UR",
714713
+ cooldownSessions: 20,
714714
+ isRelevant: async () => true
714715
+ },
714716
+ {
714717
+ id: "grade-trajectory",
714718
+ content: async () => "ur grade-trajectory --file <transcript.jsonl> --min-score 70 grades how a run worked, not just what it concluded, and exits non-zero to gate CI",
714719
+ cooldownSessions: 20,
714720
+ isRelevant: async () => true
714721
+ },
714722
+ {
714723
+ id: "ci-loop-heal",
714724
+ content: async () => 'ur ci-loop --command "bun test" fixes failures and reruns until green',
714725
+ cooldownSessions: 12,
714726
+ isRelevant: async () => true
714727
+ },
714728
+ ...[
714729
+ ["spec-driven", "/spec init <name> \u2014 requirements \u2192 design \u2192 tasks, run with proof gates"],
714730
+ ["repo-edit", "/repo-edit rename <sym> --to <new> \u2014 compiler-accurate rename with rollback"],
714731
+ ["code-index", '/code-index search "<idea>" \u2014 semantic search over your code, local embeddings'],
714732
+ ["knowledge", "/knowledge add <file> then /knowledge search \u2014 curated notes with provenance"],
714733
+ ["context-pack", "/context-pack \u2014 scan architecture, record decisions and constraints under .ur/"],
714734
+ ["semantic-memory", '/semantic-memory search "<topic>" \u2014 search past memory by meaning'],
714735
+ ["remember", "/remember <fact> \u2014 store a durable preference \xB7 /forget to remove it"],
714736
+ ["wiki", "/wiki generate \u2014 living repo wiki plus a prompt-injected repo map"],
714737
+ ["crew", "/crew create <name> --workers 3 \u2014 lead splits a goal, workers claim tasks"],
714738
+ ["arena", '/arena "<task>" --agents 3 \u2014 N attempts in isolated worktrees, judged'],
714739
+ ["pattern", '/pattern run debate "<question>" \u2014 PEER, debate, handoff and parallel patterns'],
714740
+ ["goal", '/goal add <name> --objective "<x>" \u2014 objectives that persist across sessions'],
714741
+ ["bg", '/bg run "<task>" \u2014 detached local agent you can steer, log and kill'],
714742
+ ["worktree", "/task start <name> --worktree \u2014 isolated branch per task, PR handoff"],
714743
+ ["eval", "/eval run <suite> --repeat 3 \u2014 replayable graded cases with CI gates"],
714744
+ ["test-first", "/test-first run \u2014 detect the stack, then compile/test/lint loops"],
714745
+ ["guardrails", '/guardrails check "<text>" \u2014 regex, PII and LLM rules with tripwires'],
714746
+ ["audit", "/audit export --format csv \u2014 hash-chained trail with tamper verification"],
714747
+ ["security-suite", "/security scan \u2014 secrets, threat model, dependency vulnerabilities"],
714748
+ ["sandbox", '/sandbox eval "<command>" \u2014 see what the OS sandbox would allow'],
714749
+ ["permission-profile", "/permission-profile use <name> \u2014 switch a named permission set"],
714750
+ ["escalate", '/escalate run "<task>" \u2014 fast model, escalating hard steps to an oracle'],
714751
+ ["model-route", '/model-route "<task>" \u2014 pick the model that fits the work'],
714752
+ ["advisor", "/advisor <model> \u2014 a second model critiques the main one"],
714753
+ ["rewind", "/rewind \u2014 restore code and conversation to an earlier checkpoint"],
714754
+ ["undo", "/undo \u2014 revert the last file edit, including a file it created"],
714755
+ ["diff", "/diff \u2014 uncommitted changes and per-turn diffs"],
714756
+ ["trace", "/trace \u2014 what the last turns actually called, with results"],
714757
+ ["research", "/research, /paper, /cite, /graph \u2014 notes, papers and a claim graph"],
714758
+ ["multimodal", "/image, /video, /youtube, /pdf \u2014 inspect media and documents"],
714759
+ ["browser", '/browser "<url> <task>" \u2014 drive a real browser \xB7 /browser-qa to replay'],
714760
+ ["mcp", "/mcp \u2014 connect MCP servers \xB7 /plugin for plugins and marketplaces"],
714761
+ ["skills", "/skill run <name> \xB7 /create-skill <name> \u2014 reusable workflows"],
714762
+ ["toolsmith", "/toolsmith <name> python \u2014 scaffold a local helper tool UR can run"],
714763
+ ["workflow", "/workflow run <name> \u2014 declarative steps with dependencies"],
714764
+ ["automation", '/automation create <name> --schedule "0 3 * * *" \u2014 project-local cron'],
714765
+ ["devcontainer", "/devcontainer exec -- <cmd> \u2014 run in a reproducible container"],
714766
+ ["ur-doctor", "/ur-doctor \u2014 full health check: tools, Ollama, .ur, MCP, Playwright"],
714767
+ ["dna", "/dna \u2014 detect language, package manager, build, test and lint"],
714768
+ ["statusline", "/statusline \u2014 put model, branch and context in your prompt"],
714769
+ ["speak", "/speak <text> \u2014 read a line aloud with the system voice"],
714770
+ ["computer", "/computer screenshot \u2014 desktop control; changes need --yes"]
714771
+ ].map(([id, text]) => ({
714772
+ id: `cmd-${id}`,
714773
+ content: async () => text,
714774
+ cooldownSessions: 25,
714775
+ isRelevant: async () => true
714776
+ })),
714692
714777
  {
714693
714778
  id: "modelOplan-mode-reminder",
714694
714779
  content: async () => `Your default model setting is plan mode. Press ${getShortcutDisplay("chat:cycleMode", "Chat", "shift+tab")} twice to activate Plan Mode.`,
@@ -724715,7 +724800,7 @@ function WelcomeV2() {
724715
724800
  dimColor: true,
724716
724801
  children: [
724717
724802
  "v",
724718
- "1.65.2"
724803
+ "1.65.3"
724719
724804
  ]
724720
724805
  }, undefined, true, undefined, this)
724721
724806
  ]
@@ -725975,7 +726060,7 @@ function completeOnboarding() {
725975
726060
  saveGlobalConfig((current) => ({
725976
726061
  ...current,
725977
726062
  hasCompletedOnboarding: true,
725978
- lastOnboardingVersion: "1.65.2"
726063
+ lastOnboardingVersion: "1.65.3"
725979
726064
  }));
725980
726065
  }
725981
726066
  function showDialog(root2, renderer) {
@@ -731019,7 +731104,7 @@ function appendToLog(path24, message) {
731019
731104
  cwd: getFsImplementation().cwd(),
731020
731105
  userType: process.env.USER_TYPE,
731021
731106
  sessionId: getSessionId(),
731022
- version: "1.65.2"
731107
+ version: "1.65.3"
731023
731108
  };
731024
731109
  getLogWriter(path24).write(messageWithTimestamp);
731025
731110
  }
@@ -735178,8 +735263,8 @@ async function getEnvLessBridgeConfig() {
735178
735263
  }
735179
735264
  async function checkEnvLessBridgeMinVersion() {
735180
735265
  const cfg = await getEnvLessBridgeConfig();
735181
- if (cfg.min_version && lt("1.65.2", cfg.min_version)) {
735182
- return `Your version of UR (${"1.65.2"}) is too old for Remote Control.
735266
+ if (cfg.min_version && lt("1.65.3", cfg.min_version)) {
735267
+ return `Your version of UR (${"1.65.3"}) is too old for Remote Control.
735183
735268
  Version ${cfg.min_version} or higher is required. Run \`ur update\` to update.`;
735184
735269
  }
735185
735270
  return null;
@@ -735653,7 +735738,7 @@ async function initBridgeCore(params) {
735653
735738
  const rawApi = createBridgeApiClient({
735654
735739
  baseUrl,
735655
735740
  getAccessToken,
735656
- runnerVersion: "1.65.2",
735741
+ runnerVersion: "1.65.3",
735657
735742
  onDebug: logForDebugging,
735658
735743
  onAuth401,
735659
735744
  getTrustedDeviceToken
@@ -745126,7 +745211,7 @@ function getAgUiCapabilities() {
745126
745211
  name: "UR-Nexus",
745127
745212
  type: "ur-nexus",
745128
745213
  description: "Provider-flexible, local-first autonomous engineering workflow agent.",
745129
- version: "1.65.2",
745214
+ version: "1.65.3",
745130
745215
  provider: "UR",
745131
745216
  documentationUrl: "https://github.com/Maitham16/UR/blob/master/docs/AG_UI.md"
745132
745217
  },
@@ -746266,7 +746351,7 @@ function createMCPServer(cwd4, debug2, verbose) {
746266
746351
  };
746267
746352
  const server2 = new Server({
746268
746353
  name: "ur-nexus",
746269
- version: "1.65.2"
746354
+ version: "1.65.3"
746270
746355
  }, {
746271
746356
  capabilities: {
746272
746357
  tools: {}
@@ -747424,7 +747509,7 @@ function thrownResponse(error40) {
747424
747509
  }
747425
747510
  async function createUrMcp2026Runtime(options4) {
747426
747511
  const server2 = createMCPServer(options4.cwd, options4.debug === true, options4.verbose === true);
747427
- const client2 = new Client({ name: "ur-mcp-2026-adapter", version: "1.65.2" }, { capabilities: {} });
747512
+ const client2 = new Client({ name: "ur-mcp-2026-adapter", version: "1.65.3" }, { capabilities: {} });
747428
747513
  const [clientTransport, serverTransport] = createLinkedTransportPair();
747429
747514
  try {
747430
747515
  await server2.connect(serverTransport);
@@ -747435,7 +747520,7 @@ async function createUrMcp2026Runtime(options4) {
747435
747520
  }
747436
747521
  const runtime2 = new Mcp2026Runtime({
747437
747522
  cwd: options4.cwd,
747438
- version: "1.65.2",
747523
+ version: "1.65.3",
747439
747524
  backend: {
747440
747525
  listTools: async () => {
747441
747526
  const listed = await client2.listTools();
@@ -749568,7 +749653,7 @@ async function update() {
749568
749653
  logEvent("tengu_update_check", {});
749569
749654
  const diagnostic2 = await getDoctorDiagnostic();
749570
749655
  const result = await checkUpgradeStatus({
749571
- currentVersion: "1.65.2",
749656
+ currentVersion: "1.65.3",
749572
749657
  packageName: UR_AGENT_PACKAGE_NAME,
749573
749658
  installationType: diagnostic2.installationType,
749574
749659
  latestVersion: () => getLatestNpmPackageVersion(UR_AGENT_PACKAGE_NAME)
@@ -750884,7 +750969,7 @@ ${customInstructions}` : customInstructions;
750884
750969
  }
750885
750970
  }
750886
750971
  logForDiagnosticsNoPII("info", "started", {
750887
- version: "1.65.2",
750972
+ version: "1.65.3",
750888
750973
  is_native_binary: isInBundledMode()
750889
750974
  });
750890
750975
  registerCleanup(async () => {
@@ -751670,7 +751755,7 @@ Usage: ur --remote "your task description"`, () => gracefulShutdown(1));
751670
751755
  pendingHookMessages
751671
751756
  }, renderAndRun);
751672
751757
  }
751673
- }).version("1.65.2 (UR-Nexus)", "-v, --version", "Output the version number");
751758
+ }).version("1.65.3 (UR-Nexus)", "-v, --version", "Output the version number");
751674
751759
  program2.option("-w, --worktree [name]", "Create a new git worktree for this session (optionally specify a name)");
751675
751760
  program2.option("--tmux", "Create a tmux session for the worktree (requires --worktree). Uses iTerm2 native panes when available; use --tmux=classic for traditional tmux.");
751676
751761
  if (canUserConfigureAdvisor()) {
@@ -752722,7 +752807,7 @@ if (false) {}
752722
752807
  async function main2() {
752723
752808
  const args = process.argv.slice(2);
752724
752809
  if (args.length === 1 && (args[0] === "--version" || args[0] === "-v" || args[0] === "-V")) {
752725
- console.log(`${"1.65.2"} (UR-Nexus)`);
752810
+ console.log(`${"1.65.3"} (UR-Nexus)`);
752726
752811
  return;
752727
752812
  }
752728
752813
  if (args[0] === "a2a" && args[1] === "serve" && !args.includes("--help") && !args.includes("-h")) {
@@ -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.65.2</p>
48
+ <p class="eyebrow">Version 1.65.3</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.65.2"
10
+ version = "1.65.3"
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.65.2",
5
+ "version": "1.65.3",
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.65.2",
3
+ "version": "1.65.3",
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",