ur-agent 1.44.4 → 1.44.5

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,12 @@
1
1
  # Changelog
2
2
 
3
+ ## 1.44.5
4
+
5
+ - Change `dontAsk` permission mode into an auto-approval mode for operations
6
+ that would otherwise require manual approval. Explicit deny rules and
7
+ security-policy blocks still apply.
8
+ - Expose `dontAsk` in the interactive permission-mode cycle.
9
+
3
10
  ## 1.44.4
4
11
 
5
12
  - The agent now learns from every run automatically — no `/learn run` needed.
package/dist/cli.js CHANGED
@@ -71438,7 +71438,7 @@ var init_auth = __esm(() => {
71438
71438
 
71439
71439
  // src/utils/userAgent.ts
71440
71440
  function getURCodeUserAgent() {
71441
- return `ur/${"1.44.4"}`;
71441
+ return `ur/${"1.44.5"}`;
71442
71442
  }
71443
71443
 
71444
71444
  // src/utils/workloadContext.ts
@@ -71460,7 +71460,7 @@ function getUserAgent() {
71460
71460
  const clientApp = process.env.UR_AGENT_SDK_CLIENT_APP ? `, client-app/${process.env.UR_AGENT_SDK_CLIENT_APP}` : "";
71461
71461
  const workload = getWorkload();
71462
71462
  const workloadSuffix = workload ? `, workload/${workload}` : "";
71463
- return `ur-cli/${"1.44.4"} (${process.env.USER_TYPE}, ${process.env.UR_CODE_ENTRYPOINT ?? "cli"}${agentSdkVersion}${clientApp}${workloadSuffix})`;
71463
+ return `ur-cli/${"1.44.5"} (${process.env.USER_TYPE}, ${process.env.UR_CODE_ENTRYPOINT ?? "cli"}${agentSdkVersion}${clientApp}${workloadSuffix})`;
71464
71464
  }
71465
71465
  function getMCPUserAgent() {
71466
71466
  const parts = [];
@@ -71474,7 +71474,7 @@ function getMCPUserAgent() {
71474
71474
  parts.push(`client-app/${process.env.UR_AGENT_SDK_CLIENT_APP}`);
71475
71475
  }
71476
71476
  const suffix = parts.length > 0 ? ` (${parts.join(", ")})` : "";
71477
- return `ur/${"1.44.4"}${suffix}`;
71477
+ return `ur/${"1.44.5"}${suffix}`;
71478
71478
  }
71479
71479
  function getWebFetchUserAgent() {
71480
71480
  return `UR-User (${getURCodeUserAgent()})`;
@@ -71612,7 +71612,7 @@ var init_user = __esm(() => {
71612
71612
  deviceId,
71613
71613
  sessionId: getSessionId(),
71614
71614
  email: getEmail(),
71615
- appVersion: "1.44.4",
71615
+ appVersion: "1.44.5",
71616
71616
  platform: getHostPlatformForAnalytics(),
71617
71617
  organizationUuid,
71618
71618
  accountUuid,
@@ -78129,7 +78129,7 @@ var init_metadata = __esm(() => {
78129
78129
  COMPOUND_OPERATOR_REGEX = /\s*(?:&&|\|\||[;|])\s*/;
78130
78130
  WHITESPACE_REGEX = /\s+/;
78131
78131
  getVersionBase = memoize_default(() => {
78132
- const match = "1.44.4".match(/^\d+\.\d+\.\d+(?:-[a-z]+)?/);
78132
+ const match = "1.44.5".match(/^\d+\.\d+\.\d+(?:-[a-z]+)?/);
78133
78133
  return match ? match[0] : undefined;
78134
78134
  });
78135
78135
  buildEnvContext = memoize_default(async () => {
@@ -78169,7 +78169,7 @@ var init_metadata = __esm(() => {
78169
78169
  isGithubAction: isEnvTruthy(process.env.GITHUB_ACTIONS),
78170
78170
  isURCodeAction: isEnvTruthy(process.env.UR_CODE_ACTION),
78171
78171
  isURAiAuth: isURAISubscriber(),
78172
- version: "1.44.4",
78172
+ version: "1.44.5",
78173
78173
  versionBase: getVersionBase(),
78174
78174
  buildTime: "",
78175
78175
  deploymentEnvironment: env2.detectDeploymentEnvironment(),
@@ -78839,7 +78839,7 @@ function initialize1PEventLogging() {
78839
78839
  const platform2 = getPlatform();
78840
78840
  const attributes = {
78841
78841
  [import_semantic_conventions4.ATTR_SERVICE_NAME]: "ur",
78842
- [import_semantic_conventions4.ATTR_SERVICE_VERSION]: "1.44.4"
78842
+ [import_semantic_conventions4.ATTR_SERVICE_VERSION]: "1.44.5"
78843
78843
  };
78844
78844
  if (platform2 === "wsl") {
78845
78845
  const wslVersion = getWslVersion();
@@ -78866,7 +78866,7 @@ function initialize1PEventLogging() {
78866
78866
  })
78867
78867
  ]
78868
78868
  });
78869
- firstPartyEventLogger = firstPartyEventLoggerProvider.getLogger("com.urhq.ur.events", "1.44.4");
78869
+ firstPartyEventLogger = firstPartyEventLoggerProvider.getLogger("com.urhq.ur.events", "1.44.5");
78870
78870
  }
78871
78871
  async function reinitialize1PEventLoggingIfConfigChanged() {
78872
78872
  if (!is1PEventLoggingEnabled() || !firstPartyEventLoggerProvider) {
@@ -80206,7 +80206,7 @@ var init_PermissionMode = __esm(() => {
80206
80206
  },
80207
80207
  dontAsk: {
80208
80208
  title: "Don't Ask",
80209
- shortTitle: "DontAsk",
80209
+ shortTitle: "Don't Ask",
80210
80210
  symbol: "\u23F5\u23F5",
80211
80211
  color: "error",
80212
80212
  external: "dontAsk"
@@ -84757,7 +84757,7 @@ function formatAgentTrendReport(report = buildAgentTrendReport()) {
84757
84757
  function formatA2AAgentCard(options = {}, pretty = true) {
84758
84758
  return JSON.stringify(buildA2AAgentCard(options), null, pretty ? 2 : 0);
84759
84759
  }
84760
- var urVersion = "1.44.4", coverage, priorityRoadmap;
84760
+ var urVersion = "1.44.5", coverage, priorityRoadmap;
84761
84761
  var init_trends = __esm(() => {
84762
84762
  coverage = [
84763
84763
  {
@@ -86752,7 +86752,7 @@ function getAttributionHeader(fingerprint) {
86752
86752
  if (!isAttributionHeaderEnabled()) {
86753
86753
  return "";
86754
86754
  }
86755
- const version2 = `${"1.44.4"}.${fingerprint}`;
86755
+ const version2 = `${"1.44.5"}.${fingerprint}`;
86756
86756
  const entrypoint = process.env.UR_CODE_ENTRYPOINT ?? "unknown";
86757
86757
  const cch = "";
86758
86758
  const workload = getWorkload();
@@ -194722,7 +194722,7 @@ function getTelemetryAttributes() {
194722
194722
  attributes["session.id"] = sessionId;
194723
194723
  }
194724
194724
  if (shouldIncludeAttribute("OTEL_METRICS_INCLUDE_VERSION")) {
194725
- attributes["app.version"] = "1.44.4";
194725
+ attributes["app.version"] = "1.44.5";
194726
194726
  }
194727
194727
  const oauthAccount = getOauthAccountInfo();
194728
194728
  if (oauthAccount) {
@@ -230110,7 +230110,7 @@ function getInstallationEnv() {
230110
230110
  return;
230111
230111
  }
230112
230112
  function getURCodeVersion() {
230113
- return "1.44.4";
230113
+ return "1.44.5";
230114
230114
  }
230115
230115
  async function getInstalledVSCodeExtensionVersion(command) {
230116
230116
  const { stdout } = await execFileNoThrow(command, ["--list-extensions", "--show-versions"], {
@@ -232949,7 +232949,7 @@ async function setupSdkMcpClients(sdkMcpConfigs, sendMcpMessage) {
232949
232949
  const client2 = new Client({
232950
232950
  name: "ur",
232951
232951
  title: "UR",
232952
- version: "1.44.4",
232952
+ version: "1.44.5",
232953
232953
  description: "UR-Nexus autonomous engineering workflow engine",
232954
232954
  websiteUrl: PRODUCT_URL
232955
232955
  }, {
@@ -233303,7 +233303,7 @@ var init_client5 = __esm(() => {
233303
233303
  const client2 = new Client({
233304
233304
  name: "ur",
233305
233305
  title: "UR",
233306
- version: "1.44.4",
233306
+ version: "1.44.5",
233307
233307
  description: "UR-Nexus autonomous engineering workflow engine",
233308
233308
  websiteUrl: PRODUCT_URL
233309
233309
  }, {
@@ -243117,9 +243117,9 @@ async function assertMinVersion() {
243117
243117
  if (false) {}
243118
243118
  try {
243119
243119
  const versionConfig = await getDynamicConfig_BLOCKS_ON_INIT("tengu_version_config", { minVersion: "0.0.0" });
243120
- if (versionConfig.minVersion && lt("1.44.4", versionConfig.minVersion)) {
243120
+ if (versionConfig.minVersion && lt("1.44.5", versionConfig.minVersion)) {
243121
243121
  console.error(`
243122
- It looks like your version of UR (${"1.44.4"}) needs an update.
243122
+ It looks like your version of UR (${"1.44.5"}) needs an update.
243123
243123
  A newer version (${versionConfig.minVersion} or higher) is required to continue.
243124
243124
 
243125
243125
  To update, please run:
@@ -243335,7 +243335,7 @@ async function installGlobalPackage(specificVersion) {
243335
243335
  logError2(new AutoUpdaterError("Another process is currently installing an update"));
243336
243336
  logEvent("tengu_auto_updater_lock_contention", {
243337
243337
  pid: process.pid,
243338
- currentVersion: "1.44.4"
243338
+ currentVersion: "1.44.5"
243339
243339
  });
243340
243340
  return "in_progress";
243341
243341
  }
@@ -243344,7 +243344,7 @@ async function installGlobalPackage(specificVersion) {
243344
243344
  if (!env2.isRunningWithBun() && env2.isNpmFromWindowsPath()) {
243345
243345
  logError2(new Error("Windows NPM detected in WSL environment"));
243346
243346
  logEvent("tengu_auto_updater_windows_npm_in_wsl", {
243347
- currentVersion: "1.44.4"
243347
+ currentVersion: "1.44.5"
243348
243348
  });
243349
243349
  console.error(`
243350
243350
  Error: Windows NPM detected in WSL
@@ -243879,7 +243879,7 @@ function detectLinuxGlobPatternWarnings() {
243879
243879
  }
243880
243880
  async function getDoctorDiagnostic() {
243881
243881
  const installationType = await getCurrentInstallationType();
243882
- const version2 = typeof MACRO !== "undefined" ? "1.44.4" : "unknown";
243882
+ const version2 = typeof MACRO !== "undefined" ? "1.44.5" : "unknown";
243883
243883
  const installationPath = await getInstallationPath();
243884
243884
  const invokedBinary = getInvokedBinary();
243885
243885
  const multipleInstallations = await detectMultipleInstallations();
@@ -244814,8 +244814,8 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
244814
244814
  const maxVersion = await getMaxVersion();
244815
244815
  if (maxVersion && gt(version2, maxVersion)) {
244816
244816
  logForDebugging(`Native installer: maxVersion ${maxVersion} is set, capping update from ${version2} to ${maxVersion}`);
244817
- if (gte("1.44.4", maxVersion)) {
244818
- logForDebugging(`Native installer: current version ${"1.44.4"} is already at or above maxVersion ${maxVersion}, skipping update`);
244817
+ if (gte("1.44.5", maxVersion)) {
244818
+ logForDebugging(`Native installer: current version ${"1.44.5"} is already at or above maxVersion ${maxVersion}, skipping update`);
244819
244819
  logEvent("tengu_native_update_skipped_max_version", {
244820
244820
  latency_ms: Date.now() - startTime,
244821
244821
  max_version: maxVersion,
@@ -244826,7 +244826,7 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
244826
244826
  version2 = maxVersion;
244827
244827
  }
244828
244828
  }
244829
- if (!forceReinstall && version2 === "1.44.4" && await versionIsAvailable(version2) && await isPossibleURBinary(executablePath)) {
244829
+ if (!forceReinstall && version2 === "1.44.5" && await versionIsAvailable(version2) && await isPossibleURBinary(executablePath)) {
244830
244830
  logForDebugging(`Found ${version2} at ${executablePath}, skipping install`);
244831
244831
  logEvent("tengu_native_update_complete", {
244832
244832
  latency_ms: Date.now() - startTime,
@@ -248525,7 +248525,7 @@ var init_coreSchemas = __esm(() => {
248525
248525
  decisionClassification: PermissionDecisionClassificationSchema().optional()
248526
248526
  })
248527
248527
  ]));
248528
- PermissionModeSchema = lazySchema(() => exports_external.enum(["default", "acceptEdits", "bypassPermissions", "plan", "dontAsk"]).describe("Permission mode for controlling how tool executions are handled. " + "'default' - Standard behavior, prompts for dangerous operations. " + "'acceptEdits' - Auto-accept file edit operations. " + "'bypassPermissions' - Bypass all permission checks (requires allowDangerouslySkipPermissions). " + "'plan' - Planning mode, no actual tool execution. " + "'dontAsk' - Don't prompt for permissions, deny if not pre-approved."));
248528
+ PermissionModeSchema = lazySchema(() => exports_external.enum(["default", "acceptEdits", "bypassPermissions", "plan", "dontAsk"]).describe("Permission mode for controlling how tool executions are handled. " + "'default' - Standard behavior, prompts for dangerous operations. " + "'acceptEdits' - Auto-accept file edit operations. " + "'bypassPermissions' - Bypass all permission checks (requires allowDangerouslySkipPermissions). " + "'plan' - Planning mode, no actual tool execution. " + "'dontAsk' - Don't prompt for permissions, auto-approve operations that would otherwise require manual approval."));
248529
248529
  HOOK_EVENTS2 = [
248530
248530
  "PreToolUse",
248531
248531
  "PostToolUse",
@@ -330543,9 +330543,6 @@ function withMemoryCorrectionHint(message) {
330543
330543
  function AUTO_REJECT_MESSAGE(toolName) {
330544
330544
  return `Permission to use ${toolName} has been denied. ${DENIAL_WORKAROUND_GUIDANCE}`;
330545
330545
  }
330546
- function DONT_ASK_REJECT_MESSAGE(toolName) {
330547
- return `Permission to use ${toolName} has been denied because UR is running in don't ask mode. ${DENIAL_WORKAROUND_GUIDANCE}`;
330548
- }
330549
330546
  function isSyntheticMessage(message) {
330550
330547
  return message.type !== "progress" && message.type !== "attachment" && message.type !== "system" && Array.isArray(message.message.content) && message.message.content[0]?.type === "text" && SYNTHETIC_MESSAGES.has(message.message.content[0].text);
330551
330548
  }
@@ -335738,12 +335735,12 @@ var CLASSIFIER_FAIL_CLOSED_REFRESH_MS, PERMISSION_RULE_SOURCES, hasPermissionsTo
335738
335735
  const appState = context3.getAppState();
335739
335736
  if (appState.toolPermissionContext.mode === "dontAsk") {
335740
335737
  return {
335741
- behavior: "deny",
335738
+ behavior: "allow",
335739
+ updatedInput: input,
335742
335740
  decisionReason: {
335743
335741
  type: "mode",
335744
335742
  mode: "dontAsk"
335745
- },
335746
- message: DONT_ASK_REJECT_MESSAGE(tool.name)
335743
+ }
335747
335744
  };
335748
335745
  }
335749
335746
  if (false) {}
@@ -341500,7 +341497,7 @@ function Feedback({
341500
341497
  platform: env2.platform,
341501
341498
  gitRepo: envInfo.isGit,
341502
341499
  terminal: env2.terminal,
341503
- version: "1.44.4",
341500
+ version: "1.44.5",
341504
341501
  transcript: normalizeMessagesForAPI(messages),
341505
341502
  errors: sanitizedErrors,
341506
341503
  lastApiRequest: getLastAPIRequest(),
@@ -341692,7 +341689,7 @@ function Feedback({
341692
341689
  ", ",
341693
341690
  env2.terminal,
341694
341691
  ", v",
341695
- "1.44.4"
341692
+ "1.44.5"
341696
341693
  ]
341697
341694
  }, undefined, true, undefined, this)
341698
341695
  ]
@@ -341798,7 +341795,7 @@ ${sanitizedDescription}
341798
341795
  ` + `**Environment Info**
341799
341796
  ` + `- Platform: ${env2.platform}
341800
341797
  ` + `- Terminal: ${env2.terminal}
341801
- ` + `- Version: ${"1.44.4"}
341798
+ ` + `- Version: ${"1.44.5"}
341802
341799
  ` + `- Feedback ID: ${feedbackId}
341803
341800
  ` + `
341804
341801
  **Errors**
@@ -344909,7 +344906,7 @@ function buildPrimarySection() {
344909
344906
  }, undefined, false, undefined, this);
344910
344907
  return [{
344911
344908
  label: "Version",
344912
- value: "1.44.4"
344909
+ value: "1.44.5"
344913
344910
  }, {
344914
344911
  label: "Session name",
344915
344912
  value: nameValue
@@ -348239,7 +348236,7 @@ function Config({
348239
348236
  }
348240
348237
  }, undefined, false, undefined, this)
348241
348238
  }, undefined, false, undefined, this) : showSubmenu === "ChannelDowngrade" ? /* @__PURE__ */ jsx_dev_runtime176.jsxDEV(ChannelDowngradeDialog, {
348242
- currentVersion: "1.44.4",
348239
+ currentVersion: "1.44.5",
348243
348240
  onChoice: (choice) => {
348244
348241
  setShowSubmenu(null);
348245
348242
  setTabsHidden(false);
@@ -348251,7 +348248,7 @@ function Config({
348251
348248
  autoUpdatesChannel: "stable"
348252
348249
  };
348253
348250
  if (choice === "stay") {
348254
- newSettings.minimumVersion = "1.44.4";
348251
+ newSettings.minimumVersion = "1.44.5";
348255
348252
  }
348256
348253
  updateSettingsForSource("userSettings", newSettings);
348257
348254
  setSettingsData((prev_27) => ({
@@ -356321,7 +356318,7 @@ function HelpV2(t0) {
356321
356318
  let t6;
356322
356319
  if ($3[31] !== tabs) {
356323
356320
  t6 = /* @__PURE__ */ jsx_dev_runtime203.jsxDEV(Tabs, {
356324
- title: `UR v${"1.44.4"}`,
356321
+ title: `UR v${"1.44.5"}`,
356325
356322
  color: "professionalBlue",
356326
356323
  defaultTab: "general",
356327
356324
  children: tabs
@@ -357067,7 +357064,7 @@ function buildToolUseContext(tools, readFileStateCache) {
357067
357064
  async function handleInitialize(options2) {
357068
357065
  return {
357069
357066
  name: "UR",
357070
- version: "1.44.4",
357067
+ version: "1.44.5",
357071
357068
  protocolVersion: "0.1.0",
357072
357069
  workspaceRoot: options2.cwd,
357073
357070
  capabilities: {
@@ -377209,7 +377206,7 @@ function getAllReleaseNotes(changelogContent = getStoredChangelogFromMemory()) {
377209
377206
  return [];
377210
377207
  }
377211
377208
  }
377212
- async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.44.4") {
377209
+ async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.44.5") {
377213
377210
  if (process.env.USER_TYPE === "ant") {
377214
377211
  const changelog = "";
377215
377212
  if (changelog) {
@@ -377236,7 +377233,7 @@ async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.44.4")
377236
377233
  releaseNotes
377237
377234
  };
377238
377235
  }
377239
- function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.44.4") {
377236
+ function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.44.5") {
377240
377237
  if (process.env.USER_TYPE === "ant") {
377241
377238
  const changelog = "";
377242
377239
  if (changelog) {
@@ -378415,7 +378412,7 @@ function getRecentActivitySync() {
378415
378412
  return cachedActivity;
378416
378413
  }
378417
378414
  function getLogoDisplayData() {
378418
- const version2 = process.env.DEMO_VERSION ?? "1.44.4";
378415
+ const version2 = process.env.DEMO_VERSION ?? "1.44.5";
378419
378416
  const serverUrl = getDirectConnectServerUrl();
378420
378417
  const displayPath = process.env.DEMO_VERSION ? "/code/ur" : getDisplayPath(getCwd());
378421
378418
  const cwd2 = serverUrl ? `${displayPath} in ${serverUrl.replace(/^https?:\/\//, "")}` : displayPath;
@@ -379204,7 +379201,7 @@ function LogoV2() {
379204
379201
  if ($3[2] === Symbol.for("react.memo_cache_sentinel")) {
379205
379202
  t2 = () => {
379206
379203
  const currentConfig2 = getGlobalConfig();
379207
- if (currentConfig2.lastReleaseNotesSeen === "1.44.4") {
379204
+ if (currentConfig2.lastReleaseNotesSeen === "1.44.5") {
379208
379205
  return;
379209
379206
  }
379210
379207
  saveGlobalConfig(_temp326);
@@ -379889,12 +379886,12 @@ function LogoV2() {
379889
379886
  return t41;
379890
379887
  }
379891
379888
  function _temp326(current) {
379892
- if (current.lastReleaseNotesSeen === "1.44.4") {
379889
+ if (current.lastReleaseNotesSeen === "1.44.5") {
379893
379890
  return current;
379894
379891
  }
379895
379892
  return {
379896
379893
  ...current,
379897
- lastReleaseNotesSeen: "1.44.4"
379894
+ lastReleaseNotesSeen: "1.44.5"
379898
379895
  };
379899
379896
  }
379900
379897
  function _temp241(s_0) {
@@ -596849,7 +596846,7 @@ async function captureMemoryDiagnostics(trigger2, dumpNumber = 0) {
596849
596846
  smapsRollup,
596850
596847
  platform: process.platform,
596851
596848
  nodeVersion: process.version,
596852
- ccVersion: "1.44.4"
596849
+ ccVersion: "1.44.5"
596853
596850
  };
596854
596851
  }
596855
596852
  async function performHeapDump(trigger2 = "manual", dumpNumber = 0) {
@@ -597435,7 +597432,7 @@ var init_bridge_kick = __esm(() => {
597435
597432
  var call138 = async () => {
597436
597433
  return {
597437
597434
  type: "text",
597438
- value: "1.44.4"
597435
+ value: "1.44.5"
597439
597436
  };
597440
597437
  }, version2, version_default;
597441
597438
  var init_version = __esm(() => {
@@ -607528,7 +607525,7 @@ function generateHtmlReport(data, insights) {
607528
607525
  </html>`;
607529
607526
  }
607530
607527
  function buildExportData(data, insights, facets, remoteStats) {
607531
- const version3 = typeof MACRO !== "undefined" ? "1.44.4" : "unknown";
607528
+ const version3 = typeof MACRO !== "undefined" ? "1.44.5" : "unknown";
607532
607529
  const remote_hosts_collected = remoteStats?.hosts.filter((h2) => h2.sessionCount > 0).map((h2) => h2.name);
607533
607530
  const facets_summary = {
607534
607531
  total: facets.size,
@@ -611810,7 +611807,7 @@ var init_sessionStorage = __esm(() => {
611810
611807
  init_settings2();
611811
611808
  init_slowOperations();
611812
611809
  init_uuid();
611813
- VERSION5 = typeof MACRO !== "undefined" ? "1.44.4" : "unknown";
611810
+ VERSION5 = typeof MACRO !== "undefined" ? "1.44.5" : "unknown";
611814
611811
  MAX_TOMBSTONE_REWRITE_BYTES = 50 * 1024 * 1024;
611815
611812
  SKIP_FIRST_PROMPT_PATTERN = /^(?:\s*<[a-z][\w-]*[\s>]|\[Request interrupted by user[^\]]*\])/;
611816
611813
  EPHEMERAL_PROGRESS_TYPES = new Set([
@@ -613015,7 +613012,7 @@ var init_filesystem = __esm(() => {
613015
613012
  });
613016
613013
  getBundledSkillsRoot = memoize_default(function getBundledSkillsRoot2() {
613017
613014
  const nonce = randomBytes18(16).toString("hex");
613018
- return join202(getURTempDir(), "bundled-skills", "1.44.4", nonce);
613015
+ return join202(getURTempDir(), "bundled-skills", "1.44.5", nonce);
613019
613016
  });
613020
613017
  getResolvedWorkingDirPaths = memoize_default(getPathsForPermissionCheck);
613021
613018
  });
@@ -619306,7 +619303,7 @@ function computeFingerprint(messageText2, version3) {
619306
619303
  }
619307
619304
  function computeFingerprintFromMessages(messages) {
619308
619305
  const firstMessageText = extractFirstMessageText(messages);
619309
- return computeFingerprint(firstMessageText, "1.44.4");
619306
+ return computeFingerprint(firstMessageText, "1.44.5");
619310
619307
  }
619311
619308
  var FINGERPRINT_SALT = "59cf53e54c78";
619312
619309
  var init_fingerprint = () => {};
@@ -621180,7 +621177,7 @@ async function sideQuery(opts) {
621180
621177
  betas.push(STRUCTURED_OUTPUTS_BETA_HEADER);
621181
621178
  }
621182
621179
  const messageText2 = extractFirstUserMessageText(messages);
621183
- const fingerprint2 = computeFingerprint(messageText2, "1.44.4");
621180
+ const fingerprint2 = computeFingerprint(messageText2, "1.44.5");
621184
621181
  const attributionHeader = getAttributionHeader(fingerprint2);
621185
621182
  const systemBlocks = [
621186
621183
  attributionHeader ? { type: "text", text: attributionHeader } : null,
@@ -625917,7 +625914,7 @@ function buildSystemInitMessage(inputs) {
625917
625914
  slash_commands: inputs.commands.filter((c4) => c4.userInvocable !== false).map((c4) => c4.name),
625918
625915
  apiKeySource: getURHQApiKeyWithSource().source,
625919
625916
  betas: getSdkBetas(),
625920
- ur_version: "1.44.4",
625917
+ ur_version: "1.44.5",
625921
625918
  output_style: outputStyle2,
625922
625919
  agents: inputs.agents.map((agent) => agent.agentType),
625923
625920
  skills: inputs.skills.filter((s) => s.userInvocable !== false).map((skill2) => skill2.name),
@@ -640545,7 +640542,7 @@ var init_useVoiceEnabled = __esm(() => {
640545
640542
  function getSemverPart(version3) {
640546
640543
  return `${import_semver13.major(version3, { loose: true })}.${import_semver13.minor(version3, { loose: true })}.${import_semver13.patch(version3, { loose: true })}`;
640547
640544
  }
640548
- function useUpdateNotification(updatedVersion, initialVersion = "1.44.4") {
640545
+ function useUpdateNotification(updatedVersion, initialVersion = "1.44.5") {
640549
640546
  const [lastNotifiedSemver, setLastNotifiedSemver] = import_react226.useState(() => getSemverPart(initialVersion));
640550
640547
  if (!updatedVersion) {
640551
640548
  return null;
@@ -640594,7 +640591,7 @@ function AutoUpdater({
640594
640591
  return;
640595
640592
  }
640596
640593
  if (false) {}
640597
- const currentVersion = "1.44.4";
640594
+ const currentVersion = "1.44.5";
640598
640595
  const channel = getInitialSettings()?.autoUpdatesChannel ?? "latest";
640599
640596
  let latestVersion = await getLatestVersion(channel);
640600
640597
  const isDisabled = isAutoUpdaterDisabled();
@@ -640823,12 +640820,12 @@ function NativeAutoUpdater({
640823
640820
  logEvent("tengu_native_auto_updater_start", {});
640824
640821
  try {
640825
640822
  const maxVersion = await getMaxVersion();
640826
- if (maxVersion && gt("1.44.4", maxVersion)) {
640823
+ if (maxVersion && gt("1.44.5", maxVersion)) {
640827
640824
  const msg = await getMaxVersionMessage();
640828
640825
  setMaxVersionIssue(msg ?? "affects your version");
640829
640826
  }
640830
640827
  const result = await installLatest(channel);
640831
- const currentVersion = "1.44.4";
640828
+ const currentVersion = "1.44.5";
640832
640829
  const latencyMs = Date.now() - startTime;
640833
640830
  if (result.lockFailed) {
640834
640831
  logEvent("tengu_native_auto_updater_lock_contention", {
@@ -640965,17 +640962,17 @@ function PackageManagerAutoUpdater(t0) {
640965
640962
  const maxVersion = await getMaxVersion();
640966
640963
  if (maxVersion && latest && gt(latest, maxVersion)) {
640967
640964
  logForDebugging(`PackageManagerAutoUpdater: maxVersion ${maxVersion} is set, capping update from ${latest} to ${maxVersion}`);
640968
- if (gte("1.44.4", maxVersion)) {
640969
- logForDebugging(`PackageManagerAutoUpdater: current version ${"1.44.4"} is already at or above maxVersion ${maxVersion}, skipping update`);
640965
+ if (gte("1.44.5", maxVersion)) {
640966
+ logForDebugging(`PackageManagerAutoUpdater: current version ${"1.44.5"} is already at or above maxVersion ${maxVersion}, skipping update`);
640970
640967
  setUpdateAvailable(false);
640971
640968
  return;
640972
640969
  }
640973
640970
  latest = maxVersion;
640974
640971
  }
640975
- const hasUpdate = latest && !gte("1.44.4", latest) && !shouldSkipVersion(latest);
640972
+ const hasUpdate = latest && !gte("1.44.5", latest) && !shouldSkipVersion(latest);
640976
640973
  setUpdateAvailable(!!hasUpdate);
640977
640974
  if (hasUpdate) {
640978
- logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.44.4"} -> ${latest}`);
640975
+ logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.44.5"} -> ${latest}`);
640979
640976
  }
640980
640977
  };
640981
640978
  $3[0] = t1;
@@ -641009,7 +641006,7 @@ function PackageManagerAutoUpdater(t0) {
641009
641006
  wrap: "truncate",
641010
641007
  children: [
641011
641008
  "currentVersion: ",
641012
- "1.44.4"
641009
+ "1.44.5"
641013
641010
  ]
641014
641011
  }, undefined, true, undefined, this);
641015
641012
  $3[3] = verbose;
@@ -646147,6 +646144,8 @@ function getNextPermissionMode(toolPermissionContext, _teamContext) {
646147
646144
  if (toolPermissionContext.isBypassPermissionsModeAvailable) {
646148
646145
  return "bypassPermissions";
646149
646146
  }
646147
+ return "dontAsk";
646148
+ case "dontAsk":
646150
646149
  if (canCycleToAuto(toolPermissionContext)) {
646151
646150
  return "auto";
646152
646151
  }
@@ -646156,8 +646155,6 @@ function getNextPermissionMode(toolPermissionContext, _teamContext) {
646156
646155
  return "auto";
646157
646156
  }
646158
646157
  return "default";
646159
- case "dontAsk":
646160
- return "default";
646161
646158
  default:
646162
646159
  return "default";
646163
646160
  }
@@ -653461,7 +653458,7 @@ function buildStatusLineCommandInput(permissionMode, exceeds200kTokens, settings
653461
653458
  project_dir: getOriginalCwd(),
653462
653459
  added_dirs: addedDirs
653463
653460
  },
653464
- version: "1.44.4",
653461
+ version: "1.44.5",
653465
653462
  output_style: {
653466
653463
  name: outputStyleName
653467
653464
  },
@@ -653544,7 +653541,7 @@ function StatusLineInner({
653544
653541
  const taskValues = Object.values(tasks2);
653545
653542
  const taskRunningCount = taskValues.filter((task2) => task2.status === "running" || task2.status === "pending").length;
653546
653543
  const defaultStatusLineText = buildDefaultStatusBar({
653547
- version: "1.44.4",
653544
+ version: "1.44.5",
653548
653545
  providerLabel: providerRuntime.providerLabel,
653549
653546
  authMode: providerRuntime.authLabel,
653550
653547
  model: providerRuntime.model ?? renderModelName(mainLoopModel),
@@ -665475,7 +665472,7 @@ async function submitTranscriptShare(messages, trigger2, appearanceId) {
665475
665472
  } catch {}
665476
665473
  const data = {
665477
665474
  trigger: trigger2,
665478
- version: "1.44.4",
665475
+ version: "1.44.5",
665479
665476
  platform: process.platform,
665480
665477
  transcript,
665481
665478
  subagentTranscripts: Object.keys(subagentTranscripts).length > 0 ? subagentTranscripts : undefined,
@@ -677360,7 +677357,7 @@ function WelcomeV2() {
677360
677357
  dimColor: true,
677361
677358
  children: [
677362
677359
  "v",
677363
- "1.44.4"
677360
+ "1.44.5"
677364
677361
  ]
677365
677362
  }, undefined, true, undefined, this)
677366
677363
  ]
@@ -678620,7 +678617,7 @@ function completeOnboarding() {
678620
678617
  saveGlobalConfig((current) => ({
678621
678618
  ...current,
678622
678619
  hasCompletedOnboarding: true,
678623
- lastOnboardingVersion: "1.44.4"
678620
+ lastOnboardingVersion: "1.44.5"
678624
678621
  }));
678625
678622
  }
678626
678623
  function showDialog(root2, renderer) {
@@ -682268,6 +682265,10 @@ Settings load in order: user \u2192 project \u2192 local (later overrides earlie
682268
682265
  }
682269
682266
  \`\`\`
682270
682267
 
682268
+ Set \`permissions.defaultMode\` to \`"dontAsk"\` to auto-approve operations that
682269
+ would otherwise stop for manual approval. Explicit deny rules and security
682270
+ policy blocks still apply.
682271
+
682271
682272
  **Permission Rule Syntax:**
682272
682273
  - Exact match: \`"Bash(npm run test)"\`
682273
682274
  - Prefix wildcard: \`"Bash(git:*)"\` - matches \`git status\`, \`git commit\`, etc.
@@ -683657,7 +683658,7 @@ function appendToLog(path24, message) {
683657
683658
  cwd: getFsImplementation().cwd(),
683658
683659
  userType: process.env.USER_TYPE,
683659
683660
  sessionId: getSessionId(),
683660
- version: "1.44.4"
683661
+ version: "1.44.5"
683661
683662
  };
683662
683663
  getLogWriter(path24).write(messageWithTimestamp);
683663
683664
  }
@@ -687751,8 +687752,8 @@ async function getEnvLessBridgeConfig() {
687751
687752
  }
687752
687753
  async function checkEnvLessBridgeMinVersion() {
687753
687754
  const cfg = await getEnvLessBridgeConfig();
687754
- if (cfg.min_version && lt("1.44.4", cfg.min_version)) {
687755
- return `Your version of UR (${"1.44.4"}) is too old for Remote Control.
687755
+ if (cfg.min_version && lt("1.44.5", cfg.min_version)) {
687756
+ return `Your version of UR (${"1.44.5"}) is too old for Remote Control.
687756
687757
  Version ${cfg.min_version} or higher is required. Run \`ur update\` to update.`;
687757
687758
  }
687758
687759
  return null;
@@ -688226,7 +688227,7 @@ async function initBridgeCore(params) {
688226
688227
  const rawApi = createBridgeApiClient({
688227
688228
  baseUrl,
688228
688229
  getAccessToken,
688229
- runnerVersion: "1.44.4",
688230
+ runnerVersion: "1.44.5",
688230
688231
  onDebug: logForDebugging,
688231
688232
  onAuth401,
688232
688233
  getTrustedDeviceToken
@@ -693908,7 +693909,7 @@ async function startMCPServer(cwd3, debug2, verbose) {
693908
693909
  setCwd(cwd3);
693909
693910
  const server2 = new Server({
693910
693911
  name: "ur/tengu",
693911
- version: "1.44.4"
693912
+ version: "1.44.5"
693912
693913
  }, {
693913
693914
  capabilities: {
693914
693915
  tools: {}
@@ -695950,7 +695951,7 @@ async function update() {
695950
695951
  logEvent("tengu_update_check", {});
695951
695952
  const diagnostic = await getDoctorDiagnostic();
695952
695953
  const result = await checkUpgradeStatus({
695953
- currentVersion: "1.44.4",
695954
+ currentVersion: "1.44.5",
695954
695955
  packageName: UR_AGENT_PACKAGE_NAME,
695955
695956
  installationType: diagnostic.installationType,
695956
695957
  latestVersion: () => getLatestNpmPackageVersion(UR_AGENT_PACKAGE_NAME)
@@ -697196,7 +697197,7 @@ ${customInstructions}` : customInstructions;
697196
697197
  }
697197
697198
  }
697198
697199
  logForDiagnosticsNoPII("info", "started", {
697199
- version: "1.44.4",
697200
+ version: "1.44.5",
697200
697201
  is_native_binary: isInBundledMode()
697201
697202
  });
697202
697203
  registerCleanup(async () => {
@@ -697982,7 +697983,7 @@ Usage: ur --remote "your task description"`, () => gracefulShutdown(1));
697982
697983
  pendingHookMessages
697983
697984
  }, renderAndRun);
697984
697985
  }
697985
- }).version("1.44.4 (UR-Nexus)", "-v, --version", "Output the version number");
697986
+ }).version("1.44.5 (UR-Nexus)", "-v, --version", "Output the version number");
697986
697987
  program2.option("-w, --worktree [name]", "Create a new git worktree for this session (optionally specify a name)");
697987
697988
  program2.option("--tmux", "Create a tmux session for the worktree (requires --worktree). Uses iTerm2 native panes when available; use --tmux=classic for traditional tmux.");
697988
697989
  if (canUserConfigureAdvisor()) {
@@ -698897,7 +698898,7 @@ if (false) {}
698897
698898
  async function main2() {
698898
698899
  const args = process.argv.slice(2);
698899
698900
  if (args.length === 1 && (args[0] === "--version" || args[0] === "-v" || args[0] === "-V")) {
698900
- console.log(`${"1.44.4"} (UR-Nexus)`);
698901
+ console.log(`${"1.44.5"} (UR-Nexus)`);
698901
698902
  return;
698902
698903
  }
698903
698904
  if (args[0] === "a2a" && args[1] === "serve" && !args.includes("--help") && !args.includes("-h")) {
@@ -44,7 +44,7 @@
44
44
  <main id="content" class="content">
45
45
  <header class="topbar">
46
46
  <div>
47
- <p class="eyebrow">Version 1.44.4</p>
47
+ <p class="eyebrow">Version 1.44.5</p>
48
48
  <h1>UR-Nexus Documentation</h1>
49
49
  <p class="lead">A practical, tutorial-style reference for installing, configuring, automating, extending, and operating UR-Nexus.</p>
50
50
  </div>
@@ -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.44.4",
5
+ "version": "1.44.5",
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.44.4",
3
+ "version": "1.44.5",
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",