ur-agent 1.30.1 → 1.30.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,20 @@
1
1
  # Changelog
2
2
 
3
+ ## 1.30.3
4
+
5
+ - Fix Codex CLI dispatch for real interactive terminals by inheriting terminal
6
+ stdin for `codex exec`. Codex treats both `/dev/null` and closed pipes as
7
+ piped stdin, so the previous `1.30.2` EOF approach still triggered
8
+ `Reading additional input from stdin`.
9
+
10
+ ## 1.30.2
11
+
12
+ - Fix Codex subscription dispatch failing with `exited 1 ... Reading additional
13
+ input from stdin`. `codex exec` reads stdin even when the prompt is an
14
+ argument; UR now gives it a closed, empty stdin pipe (EOF) instead of
15
+ `/dev/null`, so a logged-in Codex CLI runs correctly. Other subscription CLIs
16
+ are unchanged (prompt as argument, stdin ignored).
17
+
3
18
  ## 1.30.1
4
19
 
5
20
  - Fix Codex CLI runtime dispatch by ignoring stdin when UR already passes the
package/README.md CHANGED
@@ -304,7 +304,7 @@ viewer mode.
304
304
  Example:
305
305
 
306
306
  ```text
307
- UR-AGENT v1.30.1 | Provider: Codex CLI | Auth: subscription | model: codex/gpt-5.5 | mode: ask | branch: main | tasks: idle
307
+ UR-AGENT v1.30.3 | Provider: Codex CLI | Auth: subscription | model: codex/gpt-5.5 | mode: ask | branch: main | tasks: idle
308
308
  ```
309
309
 
310
310
  The bar reflects the active in-session provider/model immediately after a
package/dist/cli.js CHANGED
@@ -56823,6 +56823,7 @@ function createURHQSubscriptionClient(providerId, options) {
56823
56823
  }
56824
56824
  const prompt = messagesToPrompt(params);
56825
56825
  const result = await run(options.commandPath, spec.args(model, prompt), {
56826
+ stdinMode: spec.stdinMode,
56826
56827
  signal: requestOptions?.signal,
56827
56828
  timeoutMs: options.timeoutMs ?? 120000
56828
56829
  });
@@ -56881,7 +56882,9 @@ function createURHQSubscriptionClient(providerId, options) {
56881
56882
  };
56882
56883
  return { beta: { messages: messagesAPI } };
56883
56884
  }
56884
- function getSubscriptionCliStdinMode(input) {
56885
+ function getSubscriptionCliStdinMode(input, mode) {
56886
+ if (mode)
56887
+ return mode;
56885
56888
  return input === undefined ? "ignore" : "pipe";
56886
56889
  }
56887
56890
  function cliModelName(model) {
@@ -57006,7 +57009,7 @@ function estimateTokens(text) {
57006
57009
  }
57007
57010
  var CLI_SPECS, defaultRunner = (command, args, options) => new Promise((resolve8, reject) => {
57008
57011
  const child = spawn3(command, args, {
57009
- stdio: [getSubscriptionCliStdinMode(options.input), "pipe", "pipe"],
57012
+ stdio: [getSubscriptionCliStdinMode(options.input, options.stdinMode), "pipe", "pipe"],
57010
57013
  signal: options.signal
57011
57014
  });
57012
57015
  let stdout = "";
@@ -57028,7 +57031,7 @@ var CLI_SPECS, defaultRunner = (command, args, options) => new Promise((resolve8
57028
57031
  clearTimeout(timer);
57029
57032
  resolve8({ code: code ?? 1, stdout, stderr });
57030
57033
  });
57031
- if (options.input !== undefined) {
57034
+ if (options.input !== undefined && child.stdin) {
57032
57035
  child.stdin?.write(options.input);
57033
57036
  child.stdin?.end();
57034
57037
  }
@@ -57036,7 +57039,7 @@ var CLI_SPECS, defaultRunner = (command, args, options) => new Promise((resolve8
57036
57039
  var init_urhqSubscription = __esm(() => {
57037
57040
  init_streamingAdapters();
57038
57041
  CLI_SPECS = {
57039
- "codex-cli": { args: (model, prompt) => ["exec", "--model", model, prompt] },
57042
+ "codex-cli": { args: (model, prompt) => ["exec", "--model", model, prompt], stdinMode: "inherit" },
57040
57043
  "claude-code-cli": {
57041
57044
  args: (model, prompt) => ["-p", prompt, "--model", model, "--output-format", "json"]
57042
57045
  },
@@ -69309,7 +69312,7 @@ var init_auth = __esm(() => {
69309
69312
 
69310
69313
  // src/utils/userAgent.ts
69311
69314
  function getURCodeUserAgent() {
69312
- return `ur/${"1.30.1"}`;
69315
+ return `ur/${"1.30.3"}`;
69313
69316
  }
69314
69317
 
69315
69318
  // src/utils/workloadContext.ts
@@ -69331,7 +69334,7 @@ function getUserAgent() {
69331
69334
  const clientApp = process.env.UR_AGENT_SDK_CLIENT_APP ? `, client-app/${process.env.UR_AGENT_SDK_CLIENT_APP}` : "";
69332
69335
  const workload = getWorkload();
69333
69336
  const workloadSuffix = workload ? `, workload/${workload}` : "";
69334
- return `ur-cli/${"1.30.1"} (${process.env.USER_TYPE}, ${process.env.UR_CODE_ENTRYPOINT ?? "cli"}${agentSdkVersion}${clientApp}${workloadSuffix})`;
69337
+ return `ur-cli/${"1.30.3"} (${process.env.USER_TYPE}, ${process.env.UR_CODE_ENTRYPOINT ?? "cli"}${agentSdkVersion}${clientApp}${workloadSuffix})`;
69335
69338
  }
69336
69339
  function getMCPUserAgent() {
69337
69340
  const parts = [];
@@ -69345,7 +69348,7 @@ function getMCPUserAgent() {
69345
69348
  parts.push(`client-app/${process.env.UR_AGENT_SDK_CLIENT_APP}`);
69346
69349
  }
69347
69350
  const suffix = parts.length > 0 ? ` (${parts.join(", ")})` : "";
69348
- return `ur/${"1.30.1"}${suffix}`;
69351
+ return `ur/${"1.30.3"}${suffix}`;
69349
69352
  }
69350
69353
  function getWebFetchUserAgent() {
69351
69354
  return `UR-User (${getURCodeUserAgent()})`;
@@ -69483,7 +69486,7 @@ var init_user = __esm(() => {
69483
69486
  deviceId,
69484
69487
  sessionId: getSessionId(),
69485
69488
  email: getEmail(),
69486
- appVersion: "1.30.1",
69489
+ appVersion: "1.30.3",
69487
69490
  platform: getHostPlatformForAnalytics(),
69488
69491
  organizationUuid,
69489
69492
  accountUuid,
@@ -76000,7 +76003,7 @@ var init_metadata = __esm(() => {
76000
76003
  COMPOUND_OPERATOR_REGEX = /\s*(?:&&|\|\||[;|])\s*/;
76001
76004
  WHITESPACE_REGEX = /\s+/;
76002
76005
  getVersionBase = memoize_default(() => {
76003
- const match = "1.30.1".match(/^\d+\.\d+\.\d+(?:-[a-z]+)?/);
76006
+ const match = "1.30.3".match(/^\d+\.\d+\.\d+(?:-[a-z]+)?/);
76004
76007
  return match ? match[0] : undefined;
76005
76008
  });
76006
76009
  buildEnvContext = memoize_default(async () => {
@@ -76040,7 +76043,7 @@ var init_metadata = __esm(() => {
76040
76043
  isGithubAction: isEnvTruthy(process.env.GITHUB_ACTIONS),
76041
76044
  isURCodeAction: isEnvTruthy(process.env.UR_CODE_ACTION),
76042
76045
  isURAiAuth: isURAISubscriber2(),
76043
- version: "1.30.1",
76046
+ version: "1.30.3",
76044
76047
  versionBase: getVersionBase(),
76045
76048
  buildTime: "",
76046
76049
  deploymentEnvironment: env2.detectDeploymentEnvironment(),
@@ -76710,7 +76713,7 @@ function initialize1PEventLogging() {
76710
76713
  const platform2 = getPlatform();
76711
76714
  const attributes = {
76712
76715
  [import_semantic_conventions4.ATTR_SERVICE_NAME]: "ur",
76713
- [import_semantic_conventions4.ATTR_SERVICE_VERSION]: "1.30.1"
76716
+ [import_semantic_conventions4.ATTR_SERVICE_VERSION]: "1.30.3"
76714
76717
  };
76715
76718
  if (platform2 === "wsl") {
76716
76719
  const wslVersion = getWslVersion();
@@ -76737,7 +76740,7 @@ function initialize1PEventLogging() {
76737
76740
  })
76738
76741
  ]
76739
76742
  });
76740
- firstPartyEventLogger = firstPartyEventLoggerProvider.getLogger("com.urhq.ur.events", "1.30.1");
76743
+ firstPartyEventLogger = firstPartyEventLoggerProvider.getLogger("com.urhq.ur.events", "1.30.3");
76741
76744
  }
76742
76745
  async function reinitialize1PEventLoggingIfConfigChanged() {
76743
76746
  if (!is1PEventLoggingEnabled() || !firstPartyEventLoggerProvider) {
@@ -82034,7 +82037,7 @@ function formatAgentTrendReport(report = buildAgentTrendReport()) {
82034
82037
  function formatA2AAgentCard(options = {}, pretty = true) {
82035
82038
  return JSON.stringify(buildA2AAgentCard(options), null, pretty ? 2 : 0);
82036
82039
  }
82037
- var urVersion = "1.30.1", coverage, priorityRoadmap;
82040
+ var urVersion = "1.30.3", coverage, priorityRoadmap;
82038
82041
  var init_trends = __esm(() => {
82039
82042
  coverage = [
82040
82043
  {
@@ -84027,7 +84030,7 @@ function getAttributionHeader(fingerprint) {
84027
84030
  if (!isAttributionHeaderEnabled()) {
84028
84031
  return "";
84029
84032
  }
84030
- const version2 = `${"1.30.1"}.${fingerprint}`;
84033
+ const version2 = `${"1.30.3"}.${fingerprint}`;
84031
84034
  const entrypoint = process.env.UR_CODE_ENTRYPOINT ?? "unknown";
84032
84035
  const cch = "";
84033
84036
  const workload = getWorkload();
@@ -191700,7 +191703,7 @@ function getTelemetryAttributes() {
191700
191703
  attributes["session.id"] = sessionId;
191701
191704
  }
191702
191705
  if (shouldIncludeAttribute("OTEL_METRICS_INCLUDE_VERSION")) {
191703
- attributes["app.version"] = "1.30.1";
191706
+ attributes["app.version"] = "1.30.3";
191704
191707
  }
191705
191708
  const oauthAccount = getOauthAccountInfo();
191706
191709
  if (oauthAccount) {
@@ -227105,7 +227108,7 @@ function getInstallationEnv() {
227105
227108
  return;
227106
227109
  }
227107
227110
  function getURCodeVersion() {
227108
- return "1.30.1";
227111
+ return "1.30.3";
227109
227112
  }
227110
227113
  async function getInstalledVSCodeExtensionVersion(command) {
227111
227114
  const { stdout } = await execFileNoThrow(command, ["--list-extensions", "--show-versions"], {
@@ -229944,7 +229947,7 @@ async function setupSdkMcpClients(sdkMcpConfigs, sendMcpMessage) {
229944
229947
  const client2 = new Client({
229945
229948
  name: "ur",
229946
229949
  title: "UR",
229947
- version: "1.30.1",
229950
+ version: "1.30.3",
229948
229951
  description: "UR-AGENT autonomous engineering workflow engine",
229949
229952
  websiteUrl: PRODUCT_URL
229950
229953
  }, {
@@ -230298,7 +230301,7 @@ var init_client5 = __esm(() => {
230298
230301
  const client2 = new Client({
230299
230302
  name: "ur",
230300
230303
  title: "UR",
230301
- version: "1.30.1",
230304
+ version: "1.30.3",
230302
230305
  description: "UR-AGENT autonomous engineering workflow engine",
230303
230306
  websiteUrl: PRODUCT_URL
230304
230307
  }, {
@@ -240114,9 +240117,9 @@ async function assertMinVersion() {
240114
240117
  if (false) {}
240115
240118
  try {
240116
240119
  const versionConfig = await getDynamicConfig_BLOCKS_ON_INIT("tengu_version_config", { minVersion: "0.0.0" });
240117
- if (versionConfig.minVersion && lt("1.30.1", versionConfig.minVersion)) {
240120
+ if (versionConfig.minVersion && lt("1.30.3", versionConfig.minVersion)) {
240118
240121
  console.error(`
240119
- It looks like your version of UR (${"1.30.1"}) needs an update.
240122
+ It looks like your version of UR (${"1.30.3"}) needs an update.
240120
240123
  A newer version (${versionConfig.minVersion} or higher) is required to continue.
240121
240124
 
240122
240125
  To update, please run:
@@ -240332,7 +240335,7 @@ async function installGlobalPackage(specificVersion) {
240332
240335
  logError2(new AutoUpdaterError("Another process is currently installing an update"));
240333
240336
  logEvent("tengu_auto_updater_lock_contention", {
240334
240337
  pid: process.pid,
240335
- currentVersion: "1.30.1"
240338
+ currentVersion: "1.30.3"
240336
240339
  });
240337
240340
  return "in_progress";
240338
240341
  }
@@ -240341,7 +240344,7 @@ async function installGlobalPackage(specificVersion) {
240341
240344
  if (!env2.isRunningWithBun() && env2.isNpmFromWindowsPath()) {
240342
240345
  logError2(new Error("Windows NPM detected in WSL environment"));
240343
240346
  logEvent("tengu_auto_updater_windows_npm_in_wsl", {
240344
- currentVersion: "1.30.1"
240347
+ currentVersion: "1.30.3"
240345
240348
  });
240346
240349
  console.error(`
240347
240350
  Error: Windows NPM detected in WSL
@@ -240876,7 +240879,7 @@ function detectLinuxGlobPatternWarnings() {
240876
240879
  }
240877
240880
  async function getDoctorDiagnostic() {
240878
240881
  const installationType = await getCurrentInstallationType();
240879
- const version2 = typeof MACRO !== "undefined" ? "1.30.1" : "unknown";
240882
+ const version2 = typeof MACRO !== "undefined" ? "1.30.3" : "unknown";
240880
240883
  const installationPath = await getInstallationPath();
240881
240884
  const invokedBinary = getInvokedBinary();
240882
240885
  const multipleInstallations = await detectMultipleInstallations();
@@ -241811,8 +241814,8 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
241811
241814
  const maxVersion = await getMaxVersion();
241812
241815
  if (maxVersion && gt(version2, maxVersion)) {
241813
241816
  logForDebugging(`Native installer: maxVersion ${maxVersion} is set, capping update from ${version2} to ${maxVersion}`);
241814
- if (gte("1.30.1", maxVersion)) {
241815
- logForDebugging(`Native installer: current version ${"1.30.1"} is already at or above maxVersion ${maxVersion}, skipping update`);
241817
+ if (gte("1.30.3", maxVersion)) {
241818
+ logForDebugging(`Native installer: current version ${"1.30.3"} is already at or above maxVersion ${maxVersion}, skipping update`);
241816
241819
  logEvent("tengu_native_update_skipped_max_version", {
241817
241820
  latency_ms: Date.now() - startTime,
241818
241821
  max_version: maxVersion,
@@ -241823,7 +241826,7 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
241823
241826
  version2 = maxVersion;
241824
241827
  }
241825
241828
  }
241826
- if (!forceReinstall && version2 === "1.30.1" && await versionIsAvailable(version2) && await isPossibleURBinary(executablePath)) {
241829
+ if (!forceReinstall && version2 === "1.30.3" && await versionIsAvailable(version2) && await isPossibleURBinary(executablePath)) {
241827
241830
  logForDebugging(`Found ${version2} at ${executablePath}, skipping install`);
241828
241831
  logEvent("tengu_native_update_complete", {
241829
241832
  latency_ms: Date.now() - startTime,
@@ -338750,7 +338753,7 @@ function Feedback({
338750
338753
  platform: env2.platform,
338751
338754
  gitRepo: envInfo.isGit,
338752
338755
  terminal: env2.terminal,
338753
- version: "1.30.1",
338756
+ version: "1.30.3",
338754
338757
  transcript: normalizeMessagesForAPI(messages),
338755
338758
  errors: sanitizedErrors,
338756
338759
  lastApiRequest: getLastAPIRequest(),
@@ -338942,7 +338945,7 @@ function Feedback({
338942
338945
  ", ",
338943
338946
  env2.terminal,
338944
338947
  ", v",
338945
- "1.30.1"
338948
+ "1.30.3"
338946
338949
  ]
338947
338950
  }, undefined, true, undefined, this)
338948
338951
  ]
@@ -339048,7 +339051,7 @@ ${sanitizedDescription}
339048
339051
  ` + `**Environment Info**
339049
339052
  ` + `- Platform: ${env2.platform}
339050
339053
  ` + `- Terminal: ${env2.terminal}
339051
- ` + `- Version: ${"1.30.1"}
339054
+ ` + `- Version: ${"1.30.3"}
339052
339055
  ` + `- Feedback ID: ${feedbackId}
339053
339056
  ` + `
339054
339057
  **Errors**
@@ -342159,7 +342162,7 @@ function buildPrimarySection() {
342159
342162
  }, undefined, false, undefined, this);
342160
342163
  return [{
342161
342164
  label: "Version",
342162
- value: "1.30.1"
342165
+ value: "1.30.3"
342163
342166
  }, {
342164
342167
  label: "Session name",
342165
342168
  value: nameValue
@@ -345459,7 +345462,7 @@ function Config({
345459
345462
  }
345460
345463
  }, undefined, false, undefined, this)
345461
345464
  }, undefined, false, undefined, this) : showSubmenu === "ChannelDowngrade" ? /* @__PURE__ */ jsx_dev_runtime177.jsxDEV(ChannelDowngradeDialog, {
345462
- currentVersion: "1.30.1",
345465
+ currentVersion: "1.30.3",
345463
345466
  onChoice: (choice) => {
345464
345467
  setShowSubmenu(null);
345465
345468
  setTabsHidden(false);
@@ -345471,7 +345474,7 @@ function Config({
345471
345474
  autoUpdatesChannel: "stable"
345472
345475
  };
345473
345476
  if (choice === "stay") {
345474
- newSettings.minimumVersion = "1.30.1";
345477
+ newSettings.minimumVersion = "1.30.3";
345475
345478
  }
345476
345479
  updateSettingsForSource("userSettings", newSettings);
345477
345480
  setSettingsData((prev_27) => ({
@@ -353541,7 +353544,7 @@ function HelpV2(t0) {
353541
353544
  let t6;
353542
353545
  if ($3[31] !== tabs) {
353543
353546
  t6 = /* @__PURE__ */ jsx_dev_runtime204.jsxDEV(Tabs, {
353544
- title: `UR v${"1.30.1"}`,
353547
+ title: `UR v${"1.30.3"}`,
353545
353548
  color: "professionalBlue",
353546
353549
  defaultTab: "general",
353547
353550
  children: tabs
@@ -354287,7 +354290,7 @@ function buildToolUseContext(tools, readFileStateCache) {
354287
354290
  async function handleInitialize(options2) {
354288
354291
  return {
354289
354292
  name: "ur-agent",
354290
- version: "1.30.1",
354293
+ version: "1.30.3",
354291
354294
  protocolVersion: "0.1.0",
354292
354295
  workspaceRoot: options2.cwd,
354293
354296
  capabilities: {
@@ -374411,7 +374414,7 @@ function getAllReleaseNotes(changelogContent = getStoredChangelogFromMemory()) {
374411
374414
  return [];
374412
374415
  }
374413
374416
  }
374414
- async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.30.1") {
374417
+ async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.30.3") {
374415
374418
  if (process.env.USER_TYPE === "ant") {
374416
374419
  const changelog = "";
374417
374420
  if (changelog) {
@@ -374438,7 +374441,7 @@ async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.30.1")
374438
374441
  releaseNotes
374439
374442
  };
374440
374443
  }
374441
- function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.30.1") {
374444
+ function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.30.3") {
374442
374445
  if (process.env.USER_TYPE === "ant") {
374443
374446
  const changelog = "";
374444
374447
  if (changelog) {
@@ -375608,7 +375611,7 @@ function getRecentActivitySync() {
375608
375611
  return cachedActivity;
375609
375612
  }
375610
375613
  function getLogoDisplayData() {
375611
- const version2 = process.env.DEMO_VERSION ?? "1.30.1";
375614
+ const version2 = process.env.DEMO_VERSION ?? "1.30.3";
375612
375615
  const serverUrl = getDirectConnectServerUrl();
375613
375616
  const displayPath = process.env.DEMO_VERSION ? "/code/ur" : getDisplayPath(getCwd2());
375614
375617
  const cwd2 = serverUrl ? `${displayPath} in ${serverUrl.replace(/^https?:\/\//, "")}` : displayPath;
@@ -376397,7 +376400,7 @@ function LogoV2() {
376397
376400
  if ($3[2] === Symbol.for("react.memo_cache_sentinel")) {
376398
376401
  t2 = () => {
376399
376402
  const currentConfig = getGlobalConfig();
376400
- if (currentConfig.lastReleaseNotesSeen === "1.30.1") {
376403
+ if (currentConfig.lastReleaseNotesSeen === "1.30.3") {
376401
376404
  return;
376402
376405
  }
376403
376406
  saveGlobalConfig(_temp326);
@@ -377082,12 +377085,12 @@ function LogoV2() {
377082
377085
  return t41;
377083
377086
  }
377084
377087
  function _temp326(current) {
377085
- if (current.lastReleaseNotesSeen === "1.30.1") {
377088
+ if (current.lastReleaseNotesSeen === "1.30.3") {
377086
377089
  return current;
377087
377090
  }
377088
377091
  return {
377089
377092
  ...current,
377090
- lastReleaseNotesSeen: "1.30.1"
377093
+ lastReleaseNotesSeen: "1.30.3"
377091
377094
  };
377092
377095
  }
377093
377096
  function _temp243(s_0) {
@@ -592802,7 +592805,7 @@ async function captureMemoryDiagnostics(trigger2, dumpNumber = 0) {
592802
592805
  smapsRollup,
592803
592806
  platform: process.platform,
592804
592807
  nodeVersion: process.version,
592805
- ccVersion: "1.30.1"
592808
+ ccVersion: "1.30.3"
592806
592809
  };
592807
592810
  }
592808
592811
  async function performHeapDump(trigger2 = "manual", dumpNumber = 0) {
@@ -593388,7 +593391,7 @@ var init_bridge_kick = __esm(() => {
593388
593391
  var call136 = async () => {
593389
593392
  return {
593390
593393
  type: "text",
593391
- value: "1.30.1"
593394
+ value: "1.30.3"
593392
593395
  };
593393
593396
  }, version2, version_default;
593394
593397
  var init_version = __esm(() => {
@@ -603305,7 +603308,7 @@ function generateHtmlReport(data, insights) {
603305
603308
  </html>`;
603306
603309
  }
603307
603310
  function buildExportData(data, insights, facets, remoteStats) {
603308
- const version3 = typeof MACRO !== "undefined" ? "1.30.1" : "unknown";
603311
+ const version3 = typeof MACRO !== "undefined" ? "1.30.3" : "unknown";
603309
603312
  const remote_hosts_collected = remoteStats?.hosts.filter((h2) => h2.sessionCount > 0).map((h2) => h2.name);
603310
603313
  const facets_summary = {
603311
603314
  total: facets.size,
@@ -607583,7 +607586,7 @@ var init_sessionStorage = __esm(() => {
607583
607586
  init_settings2();
607584
607587
  init_slowOperations();
607585
607588
  init_uuid();
607586
- VERSION5 = typeof MACRO !== "undefined" ? "1.30.1" : "unknown";
607589
+ VERSION5 = typeof MACRO !== "undefined" ? "1.30.3" : "unknown";
607587
607590
  MAX_TOMBSTONE_REWRITE_BYTES = 50 * 1024 * 1024;
607588
607591
  SKIP_FIRST_PROMPT_PATTERN = /^(?:\s*<[a-z][\w-]*[\s>]|\[Request interrupted by user[^\]]*\])/;
607589
607592
  EPHEMERAL_PROGRESS_TYPES = new Set([
@@ -608788,7 +608791,7 @@ var init_filesystem = __esm(() => {
608788
608791
  });
608789
608792
  getBundledSkillsRoot = memoize_default(function getBundledSkillsRoot2() {
608790
608793
  const nonce = randomBytes18(16).toString("hex");
608791
- return join200(getURTempDir(), "bundled-skills", "1.30.1", nonce);
608794
+ return join200(getURTempDir(), "bundled-skills", "1.30.3", nonce);
608792
608795
  });
608793
608796
  getResolvedWorkingDirPaths = memoize_default(getPathsForPermissionCheck);
608794
608797
  });
@@ -615085,7 +615088,7 @@ function computeFingerprint(messageText2, version3) {
615085
615088
  }
615086
615089
  function computeFingerprintFromMessages(messages) {
615087
615090
  const firstMessageText = extractFirstMessageText(messages);
615088
- return computeFingerprint(firstMessageText, "1.30.1");
615091
+ return computeFingerprint(firstMessageText, "1.30.3");
615089
615092
  }
615090
615093
  var FINGERPRINT_SALT = "59cf53e54c78";
615091
615094
  var init_fingerprint = () => {};
@@ -616952,7 +616955,7 @@ async function sideQuery(opts) {
616952
616955
  betas.push(STRUCTURED_OUTPUTS_BETA_HEADER);
616953
616956
  }
616954
616957
  const messageText2 = extractFirstUserMessageText(messages);
616955
- const fingerprint = computeFingerprint(messageText2, "1.30.1");
616958
+ const fingerprint = computeFingerprint(messageText2, "1.30.3");
616956
616959
  const attributionHeader = getAttributionHeader(fingerprint);
616957
616960
  const systemBlocks = [
616958
616961
  attributionHeader ? { type: "text", text: attributionHeader } : null,
@@ -621689,7 +621692,7 @@ function buildSystemInitMessage(inputs) {
621689
621692
  slash_commands: inputs.commands.filter((c4) => c4.userInvocable !== false).map((c4) => c4.name),
621690
621693
  apiKeySource: getURHQApiKeyWithSource().source,
621691
621694
  betas: getSdkBetas(),
621692
- ur_version: "1.30.1",
621695
+ ur_version: "1.30.3",
621693
621696
  output_style: outputStyle2,
621694
621697
  agents: inputs.agents.map((agent) => agent.agentType),
621695
621698
  skills: inputs.skills.filter((s) => s.userInvocable !== false).map((skill2) => skill2.name),
@@ -636317,7 +636320,7 @@ var init_useVoiceEnabled = __esm(() => {
636317
636320
  function getSemverPart(version3) {
636318
636321
  return `${import_semver13.major(version3, { loose: true })}.${import_semver13.minor(version3, { loose: true })}.${import_semver13.patch(version3, { loose: true })}`;
636319
636322
  }
636320
- function useUpdateNotification(updatedVersion, initialVersion = "1.30.1") {
636323
+ function useUpdateNotification(updatedVersion, initialVersion = "1.30.3") {
636321
636324
  const [lastNotifiedSemver, setLastNotifiedSemver] = import_react226.useState(() => getSemverPart(initialVersion));
636322
636325
  if (!updatedVersion) {
636323
636326
  return null;
@@ -636366,7 +636369,7 @@ function AutoUpdater({
636366
636369
  return;
636367
636370
  }
636368
636371
  if (false) {}
636369
- const currentVersion = "1.30.1";
636372
+ const currentVersion = "1.30.3";
636370
636373
  const channel = getInitialSettings()?.autoUpdatesChannel ?? "latest";
636371
636374
  let latestVersion = await getLatestVersion(channel);
636372
636375
  const isDisabled = isAutoUpdaterDisabled();
@@ -636595,12 +636598,12 @@ function NativeAutoUpdater({
636595
636598
  logEvent("tengu_native_auto_updater_start", {});
636596
636599
  try {
636597
636600
  const maxVersion = await getMaxVersion();
636598
- if (maxVersion && gt("1.30.1", maxVersion)) {
636601
+ if (maxVersion && gt("1.30.3", maxVersion)) {
636599
636602
  const msg = await getMaxVersionMessage();
636600
636603
  setMaxVersionIssue(msg ?? "affects your version");
636601
636604
  }
636602
636605
  const result = await installLatest(channel);
636603
- const currentVersion = "1.30.1";
636606
+ const currentVersion = "1.30.3";
636604
636607
  const latencyMs = Date.now() - startTime;
636605
636608
  if (result.lockFailed) {
636606
636609
  logEvent("tengu_native_auto_updater_lock_contention", {
@@ -636737,17 +636740,17 @@ function PackageManagerAutoUpdater(t0) {
636737
636740
  const maxVersion = await getMaxVersion();
636738
636741
  if (maxVersion && latest && gt(latest, maxVersion)) {
636739
636742
  logForDebugging(`PackageManagerAutoUpdater: maxVersion ${maxVersion} is set, capping update from ${latest} to ${maxVersion}`);
636740
- if (gte("1.30.1", maxVersion)) {
636741
- logForDebugging(`PackageManagerAutoUpdater: current version ${"1.30.1"} is already at or above maxVersion ${maxVersion}, skipping update`);
636743
+ if (gte("1.30.3", maxVersion)) {
636744
+ logForDebugging(`PackageManagerAutoUpdater: current version ${"1.30.3"} is already at or above maxVersion ${maxVersion}, skipping update`);
636742
636745
  setUpdateAvailable(false);
636743
636746
  return;
636744
636747
  }
636745
636748
  latest = maxVersion;
636746
636749
  }
636747
- const hasUpdate = latest && !gte("1.30.1", latest) && !shouldSkipVersion(latest);
636750
+ const hasUpdate = latest && !gte("1.30.3", latest) && !shouldSkipVersion(latest);
636748
636751
  setUpdateAvailable(!!hasUpdate);
636749
636752
  if (hasUpdate) {
636750
- logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.30.1"} -> ${latest}`);
636753
+ logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.30.3"} -> ${latest}`);
636751
636754
  }
636752
636755
  };
636753
636756
  $3[0] = t1;
@@ -636781,7 +636784,7 @@ function PackageManagerAutoUpdater(t0) {
636781
636784
  wrap: "truncate",
636782
636785
  children: [
636783
636786
  "currentVersion: ",
636784
- "1.30.1"
636787
+ "1.30.3"
636785
636788
  ]
636786
636789
  }, undefined, true, undefined, this);
636787
636790
  $3[3] = verbose;
@@ -649238,7 +649241,7 @@ function buildStatusLineCommandInput(permissionMode, exceeds200kTokens, settings
649238
649241
  project_dir: getOriginalCwd(),
649239
649242
  added_dirs: addedDirs
649240
649243
  },
649241
- version: "1.30.1",
649244
+ version: "1.30.3",
649242
649245
  output_style: {
649243
649246
  name: outputStyleName
649244
649247
  },
@@ -649321,7 +649324,7 @@ function StatusLineInner({
649321
649324
  const taskValues = Object.values(tasks2);
649322
649325
  const taskRunningCount = taskValues.filter((task2) => task2.status === "running" || task2.status === "pending").length;
649323
649326
  const defaultStatusLineText = buildDefaultStatusBar({
649324
- version: "1.30.1",
649327
+ version: "1.30.3",
649325
649328
  providerLabel: providerRuntime.providerLabel,
649326
649329
  authMode: providerRuntime.authLabel,
649327
649330
  model: providerRuntime.model ?? renderModelName(mainLoopModel),
@@ -660809,7 +660812,7 @@ async function submitTranscriptShare(messages, trigger2, appearanceId) {
660809
660812
  } catch {}
660810
660813
  const data = {
660811
660814
  trigger: trigger2,
660812
- version: "1.30.1",
660815
+ version: "1.30.3",
660813
660816
  platform: process.platform,
660814
660817
  transcript,
660815
660818
  subagentTranscripts: Object.keys(subagentTranscripts).length > 0 ? subagentTranscripts : undefined,
@@ -672693,7 +672696,7 @@ function WelcomeV2() {
672693
672696
  dimColor: true,
672694
672697
  children: [
672695
672698
  "v",
672696
- "1.30.1"
672699
+ "1.30.3"
672697
672700
  ]
672698
672701
  }, undefined, true, undefined, this)
672699
672702
  ]
@@ -673953,7 +673956,7 @@ function completeOnboarding() {
673953
673956
  saveGlobalConfig((current) => ({
673954
673957
  ...current,
673955
673958
  hasCompletedOnboarding: true,
673956
- lastOnboardingVersion: "1.30.1"
673959
+ lastOnboardingVersion: "1.30.3"
673957
673960
  }));
673958
673961
  }
673959
673962
  function showDialog(root2, renderer) {
@@ -679057,7 +679060,7 @@ function appendToLog(path24, message) {
679057
679060
  cwd: getFsImplementation().cwd(),
679058
679061
  userType: process.env.USER_TYPE,
679059
679062
  sessionId: getSessionId(),
679060
- version: "1.30.1"
679063
+ version: "1.30.3"
679061
679064
  };
679062
679065
  getLogWriter(path24).write(messageWithTimestamp);
679063
679066
  }
@@ -683151,8 +683154,8 @@ async function getEnvLessBridgeConfig() {
683151
683154
  }
683152
683155
  async function checkEnvLessBridgeMinVersion() {
683153
683156
  const cfg = await getEnvLessBridgeConfig();
683154
- if (cfg.min_version && lt("1.30.1", cfg.min_version)) {
683155
- return `Your version of UR (${"1.30.1"}) is too old for Remote Control.
683157
+ if (cfg.min_version && lt("1.30.3", cfg.min_version)) {
683158
+ return `Your version of UR (${"1.30.3"}) is too old for Remote Control.
683156
683159
  Version ${cfg.min_version} or higher is required. Run \`ur update\` to update.`;
683157
683160
  }
683158
683161
  return null;
@@ -683626,7 +683629,7 @@ async function initBridgeCore(params) {
683626
683629
  const rawApi = createBridgeApiClient({
683627
683630
  baseUrl,
683628
683631
  getAccessToken,
683629
- runnerVersion: "1.30.1",
683632
+ runnerVersion: "1.30.3",
683630
683633
  onDebug: logForDebugging,
683631
683634
  onAuth401,
683632
683635
  getTrustedDeviceToken
@@ -689308,7 +689311,7 @@ async function startMCPServer(cwd3, debug2, verbose) {
689308
689311
  setCwd(cwd3);
689309
689312
  const server2 = new Server({
689310
689313
  name: "ur/tengu",
689311
- version: "1.30.1"
689314
+ version: "1.30.3"
689312
689315
  }, {
689313
689316
  capabilities: {
689314
689317
  tools: {}
@@ -691285,7 +691288,7 @@ async function update() {
691285
691288
  logEvent("tengu_update_check", {});
691286
691289
  const diagnostic = await getDoctorDiagnostic();
691287
691290
  const result = await checkUpgradeStatus({
691288
- currentVersion: "1.30.1",
691291
+ currentVersion: "1.30.3",
691289
691292
  packageName: UR_AGENT_PACKAGE_NAME,
691290
691293
  installationType: diagnostic.installationType,
691291
691294
  latestVersion: () => getLatestNpmPackageVersion(UR_AGENT_PACKAGE_NAME)
@@ -692531,7 +692534,7 @@ ${customInstructions}` : customInstructions;
692531
692534
  }
692532
692535
  }
692533
692536
  logForDiagnosticsNoPII("info", "started", {
692534
- version: "1.30.1",
692537
+ version: "1.30.3",
692535
692538
  is_native_binary: isInBundledMode()
692536
692539
  });
692537
692540
  registerCleanup(async () => {
@@ -693317,7 +693320,7 @@ Usage: ur --remote "your task description"`, () => gracefulShutdown(1));
693317
693320
  pendingHookMessages
693318
693321
  }, renderAndRun);
693319
693322
  }
693320
- }).version("1.30.1 (UR-AGENT)", "-v, --version", "Output the version number");
693323
+ }).version("1.30.3 (UR-AGENT)", "-v, --version", "Output the version number");
693321
693324
  program2.option("-w, --worktree [name]", "Create a new git worktree for this session (optionally specify a name)");
693322
693325
  program2.option("--tmux", "Create a tmux session for the worktree (requires --worktree). Uses iTerm2 native panes when available; use --tmux=classic for traditional tmux.");
693323
693326
  if (canUserConfigureAdvisor()) {
@@ -694202,7 +694205,7 @@ if (false) {}
694202
694205
  async function main2() {
694203
694206
  const args = process.argv.slice(2);
694204
694207
  if (args.length === 1 && (args[0] === "--version" || args[0] === "-v" || args[0] === "-V")) {
694205
- console.log(`${"1.30.1"} (UR-AGENT)`);
694208
+ console.log(`${"1.30.3"} (UR-AGENT)`);
694206
694209
  return;
694207
694210
  }
694208
694211
  if (args[0] === "a2a" && args[1] === "serve" && !args.includes("--help") && !args.includes("-h")) {
package/docs/USAGE.md CHANGED
@@ -246,7 +246,7 @@ Interactive sessions include a compact bottom status bar when stdout is a real
246
246
  terminal:
247
247
 
248
248
  ```text
249
- UR-AGENT v1.30.1 | Provider: Codex CLI | Auth: subscription | model: codex/gpt-5.5 | mode: ask | branch: main | tasks: idle | Update: 1.30.0 -> 1.30.1 available
249
+ UR-AGENT v1.30.3 | Provider: Codex CLI | Auth: subscription | model: codex/gpt-5.5 | mode: ask | branch: main | tasks: idle | Update: 1.30.2 -> 1.30.3 available
250
250
  ```
251
251
 
252
252
  The bar is not rendered in non-interactive mode, CI, dumb terminals, or
@@ -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.30.1</p>
47
+ <p class="eyebrow">Version 1.30.3</p>
48
48
  <h1>UR-AGENT Documentation</h1>
49
49
  <p class="lead">A practical, tutorial-style reference for installing, configuring, automating, extending, and operating UR-AGENT.</p>
50
50
  </div>
@@ -159,7 +159,7 @@ ur config set provider.fallback ollama</code></pre>
159
159
  </article>
160
160
  <article>
161
161
  <h3>Status bar and updates</h3>
162
- <pre><code>UR-AGENT v1.30.1 | Provider: Codex CLI | Auth: subscription | model: codex/gpt-5.5 | mode: ask | branch: main | tasks: idle | Update: 1.30.0 -&gt; 1.30.1 available</code></pre>
162
+ <pre><code>UR-AGENT v1.30.3 | Provider: Codex CLI | Auth: subscription | model: codex/gpt-5.5 | mode: ask | branch: main | tasks: idle | Update: 1.30.2 -&gt; 1.30.3 available</code></pre>
163
163
  <p>The interactive status bar shows provider, auth mode, model, branch, task state, checks status when known, and update availability. It is hidden in CI, dumb terminals, and non-interactive mode.</p>
164
164
  </article>
165
165
  </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.30.1",
5
+ "version": "1.30.3",
6
6
  "publisher": "ur-agent",
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.30.1",
3
+ "version": "1.30.3",
4
4
  "description": "UR-AGENT — autonomous engineering workflow engine (plan, execute, test, verify, document, benchmark, reproduce)",
5
5
  "type": "module",
6
6
  "packageManager": "bun@1.3.14",