ur-agent 1.27.1 → 1.27.2

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.
Files changed (2) hide show
  1. package/dist/cli.js +234 -156
  2. package/package.json +1 -1
package/dist/cli.js CHANGED
@@ -56142,32 +56142,44 @@ __export(exports_urhqSubscription, {
56142
56142
  });
56143
56143
  import { randomUUID as randomUUID3 } from "crypto";
56144
56144
  async function createURHQSubscriptionClient(providerId, options) {
56145
+ const messagesAPI = {
56146
+ async create(params) {
56147
+ return {
56148
+ id: `${providerId}-${randomUUID3()}`,
56149
+ type: "message",
56150
+ role: "assistant",
56151
+ model: params.model,
56152
+ content: [{ type: "text", text: "Subscription CLI response" }],
56153
+ stop_reason: "end_turn",
56154
+ stop_sequence: null,
56155
+ usage: {
56156
+ input_tokens: 0,
56157
+ output_tokens: 0,
56158
+ cache_creation_input_tokens: 0,
56159
+ cache_read_input_tokens: 0
56160
+ }
56161
+ };
56162
+ },
56163
+ async countTokens(params) {
56164
+ return {
56165
+ input_tokens: estimateTokenCount(params)
56166
+ };
56167
+ },
56168
+ async withResponse(params) {
56169
+ const clientRequestId = params?.headers?.["x-client-request-id"];
56170
+ const data = await messagesAPI.create(params);
56171
+ return {
56172
+ data,
56173
+ request_id: data.id,
56174
+ response: {
56175
+ headers: clientRequestId ? { "x-client-request-id": clientRequestId } : {}
56176
+ }
56177
+ };
56178
+ }
56179
+ };
56145
56180
  return {
56146
56181
  beta: {
56147
- messages: {
56148
- async create(params) {
56149
- return {
56150
- id: `${providerId}-${randomUUID3()}`,
56151
- type: "message",
56152
- role: "assistant",
56153
- model: params.model,
56154
- content: [{ type: "text", text: "Subscription CLI response" }],
56155
- stop_reason: "end_turn",
56156
- stop_sequence: null,
56157
- usage: {
56158
- input_tokens: 0,
56159
- output_tokens: 0,
56160
- cache_creation_input_tokens: 0,
56161
- cache_read_input_tokens: 0
56162
- }
56163
- };
56164
- },
56165
- async countTokens(params) {
56166
- return {
56167
- input_tokens: estimateTokenCount(params)
56168
- };
56169
- }
56170
- }
56182
+ messages: messagesAPI
56171
56183
  }
56172
56184
  };
56173
56185
  }
@@ -56186,53 +56198,96 @@ import { randomUUID as randomUUID4 } from "crypto";
56186
56198
  async function createOpenRouterClient(options) {
56187
56199
  const { apiKey, maxRetries } = options;
56188
56200
  const OPENROUTER_BASE = "https://openrouter.ai/api/v1";
56189
- return {
56190
- beta: {
56191
- messages: {
56192
- async create(params) {
56193
- try {
56194
- const response = await axios_default.post(`${OPENROUTER_BASE}/chat/completions`, {
56195
- model: params.model,
56196
- messages: params.messages,
56197
- max_tokens: params.max_tokens,
56198
- stream: false
56199
- }, {
56200
- headers: {
56201
- "Content-Type": "application/json",
56202
- Authorization: `Bearer ${apiKey}`,
56203
- "HTTP-Referer": "https://ur-agent.local",
56204
- "X-Title": "UR-AGENT"
56205
- },
56206
- timeout: 60000
56207
- });
56208
- const data = response.data;
56209
- return {
56210
- id: `openrouter-${randomUUID4()}`,
56211
- type: "message",
56212
- role: "assistant",
56213
- model: data.model,
56214
- content: [{ type: "text", text: data.choices?.[0]?.message?.content ?? "" }],
56215
- stop_reason: data.choices?.[0]?.finish_reason ?? "end_turn",
56216
- stop_sequence: null,
56217
- usage: {
56218
- input_tokens: data.usage?.prompt_tokens ?? 0,
56219
- output_tokens: data.usage?.completion_tokens ?? 0,
56220
- cache_creation_input_tokens: 0,
56221
- cache_read_input_tokens: 0
56222
- }
56223
- };
56224
- } catch (error40) {
56225
- throw new Error(`OpenRouter API call failed: ${error40 instanceof Error ? error40.message : "unknown error"}`);
56201
+ const messagesAPI = {
56202
+ async create(params) {
56203
+ try {
56204
+ const response = await axios_default.post(`${OPENROUTER_BASE}/chat/completions`, {
56205
+ model: params.model,
56206
+ messages: params.messages,
56207
+ max_tokens: params.max_tokens,
56208
+ stream: false
56209
+ }, {
56210
+ headers: {
56211
+ "Content-Type": "application/json",
56212
+ Authorization: `Bearer ${apiKey}`,
56213
+ "HTTP-Referer": "https://ur-agent.local",
56214
+ "X-Title": "UR-AGENT"
56215
+ },
56216
+ timeout: 60000
56217
+ });
56218
+ const data = response.data;
56219
+ return {
56220
+ id: `openrouter-${randomUUID4()}`,
56221
+ type: "message",
56222
+ role: "assistant",
56223
+ model: data.model,
56224
+ content: [{ type: "text", text: data.choices?.[0]?.message?.content ?? "" }],
56225
+ stop_reason: data.choices?.[0]?.finish_reason ?? "end_turn",
56226
+ stop_sequence: null,
56227
+ usage: {
56228
+ input_tokens: data.usage?.prompt_tokens ?? 0,
56229
+ output_tokens: data.usage?.completion_tokens ?? 0,
56230
+ cache_creation_input_tokens: 0,
56231
+ cache_read_input_tokens: 0
56226
56232
  }
56227
- },
56228
- async countTokens(params) {
56229
- return {
56230
- input_tokens: estimateTokenCount2(params)
56231
- };
56232
- }
56233
+ };
56234
+ } catch (error40) {
56235
+ throw new Error(`OpenRouter API call failed: ${error40 instanceof Error ? error40.message : "unknown error"}`);
56236
+ }
56237
+ },
56238
+ async countTokens(params) {
56239
+ return {
56240
+ input_tokens: estimateTokenCount2(params)
56241
+ };
56242
+ },
56243
+ async withResponse(params) {
56244
+ const clientRequestId = params?.headers?.["x-client-request-id"];
56245
+ try {
56246
+ const response = await axios_default.post(`${OPENROUTER_BASE}/chat/completions`, {
56247
+ model: params.model,
56248
+ messages: params.messages,
56249
+ max_tokens: params.max_tokens,
56250
+ stream: false
56251
+ }, {
56252
+ headers: {
56253
+ "Content-Type": "application/json",
56254
+ Authorization: `Bearer ${apiKey}`,
56255
+ "HTTP-Referer": "https://ur-agent.local",
56256
+ "X-Title": "UR-AGENT",
56257
+ ...clientRequestId && { "x-client-request-id": clientRequestId }
56258
+ },
56259
+ timeout: 60000
56260
+ });
56261
+ const data = response.data;
56262
+ return {
56263
+ data: {
56264
+ id: `openrouter-${randomUUID4()}`,
56265
+ type: "message",
56266
+ role: "assistant",
56267
+ model: data.model,
56268
+ content: [{ type: "text", text: data.choices?.[0]?.message?.content ?? "" }],
56269
+ stop_reason: data.choices?.[0]?.finish_reason ?? "end_turn",
56270
+ stop_sequence: null,
56271
+ usage: {
56272
+ input_tokens: data.usage?.prompt_tokens ?? 0,
56273
+ output_tokens: data.usage?.completion_tokens ?? 0,
56274
+ cache_creation_input_tokens: 0,
56275
+ cache_read_input_tokens: 0
56276
+ }
56277
+ },
56278
+ response,
56279
+ request_id: data.id ?? response.headers?.["x-request-id"] ?? randomUUID4()
56280
+ };
56281
+ } catch (error40) {
56282
+ throw new Error(`OpenRouter API call failed: ${error40 instanceof Error ? error40.message : "unknown error"}`);
56233
56283
  }
56234
56284
  }
56235
56285
  };
56286
+ return {
56287
+ beta: {
56288
+ messages: messagesAPI
56289
+ }
56290
+ };
56236
56291
  }
56237
56292
  function estimateTokenCount2(params) {
56238
56293
  const text = JSON.stringify(params.messages ?? []);
@@ -56250,30 +56305,53 @@ __export(exports_standardAPI, {
56250
56305
  import { randomUUID as randomUUID5 } from "crypto";
56251
56306
  async function createStandardAPIClient(options) {
56252
56307
  const { providerId, apiKey, baseUrl, maxRetries } = options;
56308
+ const messagesAPI = {
56309
+ async create(params) {
56310
+ const endpoint = getAPIEndpoint(providerId, baseUrl);
56311
+ try {
56312
+ const response = await axios_default.post(endpoint, buildAPIRequest(providerId, params), {
56313
+ headers: {
56314
+ "Content-Type": "application/json",
56315
+ Authorization: `Bearer ${apiKey}`
56316
+ },
56317
+ timeout: 60000
56318
+ });
56319
+ return parseAPIResponse(providerId, response.data);
56320
+ } catch (error40) {
56321
+ throw new Error(`Provider ${providerId} API call failed: ${error40 instanceof Error ? error40.message : "unknown error"}`);
56322
+ }
56323
+ },
56324
+ async countTokens(params) {
56325
+ return {
56326
+ input_tokens: estimateTokenCount3(params)
56327
+ };
56328
+ },
56329
+ async withResponse(params) {
56330
+ const endpoint = getAPIEndpoint(providerId, baseUrl);
56331
+ const clientRequestId = params?.headers?.["x-client-request-id"];
56332
+ try {
56333
+ const response = await axios_default.post(endpoint, buildAPIRequest(providerId, params), {
56334
+ headers: {
56335
+ "Content-Type": "application/json",
56336
+ Authorization: `Bearer ${apiKey}`,
56337
+ ...clientRequestId && { "x-client-request-id": clientRequestId }
56338
+ },
56339
+ timeout: 60000
56340
+ });
56341
+ const data = parseAPIResponse(providerId, response.data);
56342
+ return {
56343
+ data,
56344
+ response,
56345
+ request_id: response.data?.id ?? response.headers?.["x-request-id"] ?? randomUUID5()
56346
+ };
56347
+ } catch (error40) {
56348
+ throw new Error(`Provider ${providerId} API call failed: ${error40 instanceof Error ? error40.message : "unknown error"}`);
56349
+ }
56350
+ }
56351
+ };
56253
56352
  return {
56254
56353
  beta: {
56255
- messages: {
56256
- async create(params) {
56257
- const endpoint = getAPIEndpoint(providerId, baseUrl);
56258
- try {
56259
- const response = await axios_default.post(endpoint, buildAPIRequest(providerId, params), {
56260
- headers: {
56261
- "Content-Type": "application/json",
56262
- Authorization: `Bearer ${apiKey}`
56263
- },
56264
- timeout: 60000
56265
- });
56266
- return parseAPIResponse(providerId, response.data);
56267
- } catch (error40) {
56268
- throw new Error(`Provider ${providerId} API call failed: ${error40 instanceof Error ? error40.message : "unknown error"}`);
56269
- }
56270
- },
56271
- async countTokens(params) {
56272
- return {
56273
- input_tokens: estimateTokenCount3(params)
56274
- };
56275
- }
56276
- }
56354
+ messages: messagesAPI
56277
56355
  }
56278
56356
  };
56279
56357
  }
@@ -68197,7 +68275,7 @@ var init_auth = __esm(() => {
68197
68275
 
68198
68276
  // src/utils/userAgent.ts
68199
68277
  function getURCodeUserAgent() {
68200
- return `ur/${"1.27.1"}`;
68278
+ return `ur/${"1.27.2"}`;
68201
68279
  }
68202
68280
 
68203
68281
  // src/utils/workloadContext.ts
@@ -68219,7 +68297,7 @@ function getUserAgent() {
68219
68297
  const clientApp = process.env.UR_AGENT_SDK_CLIENT_APP ? `, client-app/${process.env.UR_AGENT_SDK_CLIENT_APP}` : "";
68220
68298
  const workload = getWorkload();
68221
68299
  const workloadSuffix = workload ? `, workload/${workload}` : "";
68222
- return `ur-cli/${"1.27.1"} (${process.env.USER_TYPE}, ${process.env.UR_CODE_ENTRYPOINT ?? "cli"}${agentSdkVersion}${clientApp}${workloadSuffix})`;
68300
+ return `ur-cli/${"1.27.2"} (${process.env.USER_TYPE}, ${process.env.UR_CODE_ENTRYPOINT ?? "cli"}${agentSdkVersion}${clientApp}${workloadSuffix})`;
68223
68301
  }
68224
68302
  function getMCPUserAgent() {
68225
68303
  const parts = [];
@@ -68233,7 +68311,7 @@ function getMCPUserAgent() {
68233
68311
  parts.push(`client-app/${process.env.UR_AGENT_SDK_CLIENT_APP}`);
68234
68312
  }
68235
68313
  const suffix = parts.length > 0 ? ` (${parts.join(", ")})` : "";
68236
- return `ur/${"1.27.1"}${suffix}`;
68314
+ return `ur/${"1.27.2"}${suffix}`;
68237
68315
  }
68238
68316
  function getWebFetchUserAgent() {
68239
68317
  return `UR-User (${getURCodeUserAgent()})`;
@@ -68371,7 +68449,7 @@ var init_user = __esm(() => {
68371
68449
  deviceId,
68372
68450
  sessionId: getSessionId(),
68373
68451
  email: getEmail(),
68374
- appVersion: "1.27.1",
68452
+ appVersion: "1.27.2",
68375
68453
  platform: getHostPlatformForAnalytics(),
68376
68454
  organizationUuid,
68377
68455
  accountUuid,
@@ -74888,7 +74966,7 @@ var init_metadata = __esm(() => {
74888
74966
  COMPOUND_OPERATOR_REGEX = /\s*(?:&&|\|\||[;|])\s*/;
74889
74967
  WHITESPACE_REGEX = /\s+/;
74890
74968
  getVersionBase = memoize_default(() => {
74891
- const match = "1.27.1".match(/^\d+\.\d+\.\d+(?:-[a-z]+)?/);
74969
+ const match = "1.27.2".match(/^\d+\.\d+\.\d+(?:-[a-z]+)?/);
74892
74970
  return match ? match[0] : undefined;
74893
74971
  });
74894
74972
  buildEnvContext = memoize_default(async () => {
@@ -74928,7 +75006,7 @@ var init_metadata = __esm(() => {
74928
75006
  isGithubAction: isEnvTruthy(process.env.GITHUB_ACTIONS),
74929
75007
  isURCodeAction: isEnvTruthy(process.env.UR_CODE_ACTION),
74930
75008
  isURAiAuth: isURAISubscriber2(),
74931
- version: "1.27.1",
75009
+ version: "1.27.2",
74932
75010
  versionBase: getVersionBase(),
74933
75011
  buildTime: "",
74934
75012
  deploymentEnvironment: env2.detectDeploymentEnvironment(),
@@ -75598,7 +75676,7 @@ function initialize1PEventLogging() {
75598
75676
  const platform2 = getPlatform();
75599
75677
  const attributes = {
75600
75678
  [import_semantic_conventions4.ATTR_SERVICE_NAME]: "ur",
75601
- [import_semantic_conventions4.ATTR_SERVICE_VERSION]: "1.27.1"
75679
+ [import_semantic_conventions4.ATTR_SERVICE_VERSION]: "1.27.2"
75602
75680
  };
75603
75681
  if (platform2 === "wsl") {
75604
75682
  const wslVersion = getWslVersion();
@@ -75625,7 +75703,7 @@ function initialize1PEventLogging() {
75625
75703
  })
75626
75704
  ]
75627
75705
  });
75628
- firstPartyEventLogger = firstPartyEventLoggerProvider.getLogger("com.urhq.ur.events", "1.27.1");
75706
+ firstPartyEventLogger = firstPartyEventLoggerProvider.getLogger("com.urhq.ur.events", "1.27.2");
75629
75707
  }
75630
75708
  async function reinitialize1PEventLoggingIfConfigChanged() {
75631
75709
  if (!is1PEventLoggingEnabled() || !firstPartyEventLoggerProvider) {
@@ -80922,7 +81000,7 @@ function formatAgentTrendReport(report = buildAgentTrendReport()) {
80922
81000
  function formatA2AAgentCard(options = {}, pretty = true) {
80923
81001
  return JSON.stringify(buildA2AAgentCard(options), null, pretty ? 2 : 0);
80924
81002
  }
80925
- var urVersion = "1.27.1", coverage, priorityRoadmap;
81003
+ var urVersion = "1.27.2", coverage, priorityRoadmap;
80926
81004
  var init_trends = __esm(() => {
80927
81005
  coverage = [
80928
81006
  {
@@ -82914,7 +82992,7 @@ function getAttributionHeader(fingerprint) {
82914
82992
  if (!isAttributionHeaderEnabled()) {
82915
82993
  return "";
82916
82994
  }
82917
- const version2 = `${"1.27.1"}.${fingerprint}`;
82995
+ const version2 = `${"1.27.2"}.${fingerprint}`;
82918
82996
  const entrypoint = process.env.UR_CODE_ENTRYPOINT ?? "unknown";
82919
82997
  const cch = "";
82920
82998
  const workload = getWorkload();
@@ -190583,7 +190661,7 @@ function getTelemetryAttributes() {
190583
190661
  attributes["session.id"] = sessionId;
190584
190662
  }
190585
190663
  if (shouldIncludeAttribute("OTEL_METRICS_INCLUDE_VERSION")) {
190586
- attributes["app.version"] = "1.27.1";
190664
+ attributes["app.version"] = "1.27.2";
190587
190665
  }
190588
190666
  const oauthAccount = getOauthAccountInfo();
190589
190667
  if (oauthAccount) {
@@ -225985,7 +226063,7 @@ function getInstallationEnv() {
225985
226063
  return;
225986
226064
  }
225987
226065
  function getURCodeVersion() {
225988
- return "1.27.1";
226066
+ return "1.27.2";
225989
226067
  }
225990
226068
  async function getInstalledVSCodeExtensionVersion(command) {
225991
226069
  const { stdout } = await execFileNoThrow(command, ["--list-extensions", "--show-versions"], {
@@ -228824,7 +228902,7 @@ async function setupSdkMcpClients(sdkMcpConfigs, sendMcpMessage) {
228824
228902
  const client2 = new Client({
228825
228903
  name: "ur",
228826
228904
  title: "UR",
228827
- version: "1.27.1",
228905
+ version: "1.27.2",
228828
228906
  description: "UR-AGENT autonomous engineering workflow engine",
228829
228907
  websiteUrl: PRODUCT_URL
228830
228908
  }, {
@@ -229178,7 +229256,7 @@ var init_client5 = __esm(() => {
229178
229256
  const client2 = new Client({
229179
229257
  name: "ur",
229180
229258
  title: "UR",
229181
- version: "1.27.1",
229259
+ version: "1.27.2",
229182
229260
  description: "UR-AGENT autonomous engineering workflow engine",
229183
229261
  websiteUrl: PRODUCT_URL
229184
229262
  }, {
@@ -238991,9 +239069,9 @@ async function assertMinVersion() {
238991
239069
  if (false) {}
238992
239070
  try {
238993
239071
  const versionConfig = await getDynamicConfig_BLOCKS_ON_INIT("tengu_version_config", { minVersion: "0.0.0" });
238994
- if (versionConfig.minVersion && lt("1.27.1", versionConfig.minVersion)) {
239072
+ if (versionConfig.minVersion && lt("1.27.2", versionConfig.minVersion)) {
238995
239073
  console.error(`
238996
- It looks like your version of UR (${"1.27.1"}) needs an update.
239074
+ It looks like your version of UR (${"1.27.2"}) needs an update.
238997
239075
  A newer version (${versionConfig.minVersion} or higher) is required to continue.
238998
239076
 
238999
239077
  To update, please run:
@@ -239209,7 +239287,7 @@ async function installGlobalPackage(specificVersion) {
239209
239287
  logError2(new AutoUpdaterError("Another process is currently installing an update"));
239210
239288
  logEvent("tengu_auto_updater_lock_contention", {
239211
239289
  pid: process.pid,
239212
- currentVersion: "1.27.1"
239290
+ currentVersion: "1.27.2"
239213
239291
  });
239214
239292
  return "in_progress";
239215
239293
  }
@@ -239218,7 +239296,7 @@ async function installGlobalPackage(specificVersion) {
239218
239296
  if (!env2.isRunningWithBun() && env2.isNpmFromWindowsPath()) {
239219
239297
  logError2(new Error("Windows NPM detected in WSL environment"));
239220
239298
  logEvent("tengu_auto_updater_windows_npm_in_wsl", {
239221
- currentVersion: "1.27.1"
239299
+ currentVersion: "1.27.2"
239222
239300
  });
239223
239301
  console.error(`
239224
239302
  Error: Windows NPM detected in WSL
@@ -239753,7 +239831,7 @@ function detectLinuxGlobPatternWarnings() {
239753
239831
  }
239754
239832
  async function getDoctorDiagnostic() {
239755
239833
  const installationType = await getCurrentInstallationType();
239756
- const version2 = typeof MACRO !== "undefined" ? "1.27.1" : "unknown";
239834
+ const version2 = typeof MACRO !== "undefined" ? "1.27.2" : "unknown";
239757
239835
  const installationPath = await getInstallationPath();
239758
239836
  const invokedBinary = getInvokedBinary();
239759
239837
  const multipleInstallations = await detectMultipleInstallations();
@@ -240688,8 +240766,8 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
240688
240766
  const maxVersion = await getMaxVersion();
240689
240767
  if (maxVersion && gt(version2, maxVersion)) {
240690
240768
  logForDebugging(`Native installer: maxVersion ${maxVersion} is set, capping update from ${version2} to ${maxVersion}`);
240691
- if (gte("1.27.1", maxVersion)) {
240692
- logForDebugging(`Native installer: current version ${"1.27.1"} is already at or above maxVersion ${maxVersion}, skipping update`);
240769
+ if (gte("1.27.2", maxVersion)) {
240770
+ logForDebugging(`Native installer: current version ${"1.27.2"} is already at or above maxVersion ${maxVersion}, skipping update`);
240693
240771
  logEvent("tengu_native_update_skipped_max_version", {
240694
240772
  latency_ms: Date.now() - startTime,
240695
240773
  max_version: maxVersion,
@@ -240700,7 +240778,7 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
240700
240778
  version2 = maxVersion;
240701
240779
  }
240702
240780
  }
240703
- if (!forceReinstall && version2 === "1.27.1" && await versionIsAvailable(version2) && await isPossibleURBinary(executablePath)) {
240781
+ if (!forceReinstall && version2 === "1.27.2" && await versionIsAvailable(version2) && await isPossibleURBinary(executablePath)) {
240704
240782
  logForDebugging(`Found ${version2} at ${executablePath}, skipping install`);
240705
240783
  logEvent("tengu_native_update_complete", {
240706
240784
  latency_ms: Date.now() - startTime,
@@ -337612,7 +337690,7 @@ function Feedback({
337612
337690
  platform: env2.platform,
337613
337691
  gitRepo: envInfo.isGit,
337614
337692
  terminal: env2.terminal,
337615
- version: "1.27.1",
337693
+ version: "1.27.2",
337616
337694
  transcript: normalizeMessagesForAPI(messages),
337617
337695
  errors: sanitizedErrors,
337618
337696
  lastApiRequest: getLastAPIRequest(),
@@ -337804,7 +337882,7 @@ function Feedback({
337804
337882
  ", ",
337805
337883
  env2.terminal,
337806
337884
  ", v",
337807
- "1.27.1"
337885
+ "1.27.2"
337808
337886
  ]
337809
337887
  }, undefined, true, undefined, this)
337810
337888
  ]
@@ -337910,7 +337988,7 @@ ${sanitizedDescription}
337910
337988
  ` + `**Environment Info**
337911
337989
  ` + `- Platform: ${env2.platform}
337912
337990
  ` + `- Terminal: ${env2.terminal}
337913
- ` + `- Version: ${"1.27.1"}
337991
+ ` + `- Version: ${"1.27.2"}
337914
337992
  ` + `- Feedback ID: ${feedbackId}
337915
337993
  ` + `
337916
337994
  **Errors**
@@ -341021,7 +341099,7 @@ function buildPrimarySection() {
341021
341099
  }, undefined, false, undefined, this);
341022
341100
  return [{
341023
341101
  label: "Version",
341024
- value: "1.27.1"
341102
+ value: "1.27.2"
341025
341103
  }, {
341026
341104
  label: "Session name",
341027
341105
  value: nameValue
@@ -344327,7 +344405,7 @@ function Config({
344327
344405
  }
344328
344406
  }, undefined, false, undefined, this)
344329
344407
  }, undefined, false, undefined, this) : showSubmenu === "ChannelDowngrade" ? /* @__PURE__ */ jsx_dev_runtime177.jsxDEV(ChannelDowngradeDialog, {
344330
- currentVersion: "1.27.1",
344408
+ currentVersion: "1.27.2",
344331
344409
  onChoice: (choice) => {
344332
344410
  setShowSubmenu(null);
344333
344411
  setTabsHidden(false);
@@ -344339,7 +344417,7 @@ function Config({
344339
344417
  autoUpdatesChannel: "stable"
344340
344418
  };
344341
344419
  if (choice === "stay") {
344342
- newSettings.minimumVersion = "1.27.1";
344420
+ newSettings.minimumVersion = "1.27.2";
344343
344421
  }
344344
344422
  updateSettingsForSource("userSettings", newSettings);
344345
344423
  setSettingsData((prev_27) => ({
@@ -352409,7 +352487,7 @@ function HelpV2(t0) {
352409
352487
  let t6;
352410
352488
  if ($3[31] !== tabs) {
352411
352489
  t6 = /* @__PURE__ */ jsx_dev_runtime204.jsxDEV(Tabs, {
352412
- title: `UR v${"1.27.1"}`,
352490
+ title: `UR v${"1.27.2"}`,
352413
352491
  color: "professionalBlue",
352414
352492
  defaultTab: "general",
352415
352493
  children: tabs
@@ -372511,7 +372589,7 @@ function getAllReleaseNotes(changelogContent = getStoredChangelogFromMemory()) {
372511
372589
  return [];
372512
372590
  }
372513
372591
  }
372514
- async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.27.1") {
372592
+ async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.27.2") {
372515
372593
  if (process.env.USER_TYPE === "ant") {
372516
372594
  const changelog = "";
372517
372595
  if (changelog) {
@@ -372538,7 +372616,7 @@ async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.27.1")
372538
372616
  releaseNotes
372539
372617
  };
372540
372618
  }
372541
- function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.27.1") {
372619
+ function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.27.2") {
372542
372620
  if (process.env.USER_TYPE === "ant") {
372543
372621
  const changelog = "";
372544
372622
  if (changelog) {
@@ -373708,7 +373786,7 @@ function getRecentActivitySync() {
373708
373786
  return cachedActivity;
373709
373787
  }
373710
373788
  function getLogoDisplayData() {
373711
- const version2 = process.env.DEMO_VERSION ?? "1.27.1";
373789
+ const version2 = process.env.DEMO_VERSION ?? "1.27.2";
373712
373790
  const serverUrl = getDirectConnectServerUrl();
373713
373791
  const displayPath = process.env.DEMO_VERSION ? "/code/ur" : getDisplayPath(getCwd2());
373714
373792
  const cwd2 = serverUrl ? `${displayPath} in ${serverUrl.replace(/^https?:\/\//, "")}` : displayPath;
@@ -374497,7 +374575,7 @@ function LogoV2() {
374497
374575
  if ($3[2] === Symbol.for("react.memo_cache_sentinel")) {
374498
374576
  t2 = () => {
374499
374577
  const currentConfig = getGlobalConfig();
374500
- if (currentConfig.lastReleaseNotesSeen === "1.27.1") {
374578
+ if (currentConfig.lastReleaseNotesSeen === "1.27.2") {
374501
374579
  return;
374502
374580
  }
374503
374581
  saveGlobalConfig(_temp326);
@@ -375182,12 +375260,12 @@ function LogoV2() {
375182
375260
  return t41;
375183
375261
  }
375184
375262
  function _temp326(current) {
375185
- if (current.lastReleaseNotesSeen === "1.27.1") {
375263
+ if (current.lastReleaseNotesSeen === "1.27.2") {
375186
375264
  return current;
375187
375265
  }
375188
375266
  return {
375189
375267
  ...current,
375190
- lastReleaseNotesSeen: "1.27.1"
375268
+ lastReleaseNotesSeen: "1.27.2"
375191
375269
  };
375192
375270
  }
375193
375271
  function _temp243(s_0) {
@@ -392176,7 +392254,7 @@ function buildToolUseContext(tools, readFileStateCache) {
392176
392254
  async function handleInitialize() {
392177
392255
  return {
392178
392256
  name: "ur-agent",
392179
- version: "1.27.1",
392257
+ version: "1.27.2",
392180
392258
  protocolVersion: "0.1.0"
392181
392259
  };
392182
392260
  }
@@ -591170,7 +591248,7 @@ async function captureMemoryDiagnostics(trigger2, dumpNumber = 0) {
591170
591248
  smapsRollup,
591171
591249
  platform: process.platform,
591172
591250
  nodeVersion: process.version,
591173
- ccVersion: "1.27.1"
591251
+ ccVersion: "1.27.2"
591174
591252
  };
591175
591253
  }
591176
591254
  async function performHeapDump(trigger2 = "manual", dumpNumber = 0) {
@@ -591756,7 +591834,7 @@ var init_bridge_kick = __esm(() => {
591756
591834
  var call136 = async () => {
591757
591835
  return {
591758
591836
  type: "text",
591759
- value: "1.27.1"
591837
+ value: "1.27.2"
591760
591838
  };
591761
591839
  }, version2, version_default;
591762
591840
  var init_version = __esm(() => {
@@ -601675,7 +601753,7 @@ function generateHtmlReport(data, insights) {
601675
601753
  </html>`;
601676
601754
  }
601677
601755
  function buildExportData(data, insights, facets, remoteStats) {
601678
- const version3 = typeof MACRO !== "undefined" ? "1.27.1" : "unknown";
601756
+ const version3 = typeof MACRO !== "undefined" ? "1.27.2" : "unknown";
601679
601757
  const remote_hosts_collected = remoteStats?.hosts.filter((h2) => h2.sessionCount > 0).map((h2) => h2.name);
601680
601758
  const facets_summary = {
601681
601759
  total: facets.size,
@@ -605952,7 +606030,7 @@ var init_sessionStorage = __esm(() => {
605952
606030
  init_settings2();
605953
606031
  init_slowOperations();
605954
606032
  init_uuid();
605955
- VERSION5 = typeof MACRO !== "undefined" ? "1.27.1" : "unknown";
606033
+ VERSION5 = typeof MACRO !== "undefined" ? "1.27.2" : "unknown";
605956
606034
  MAX_TOMBSTONE_REWRITE_BYTES = 50 * 1024 * 1024;
605957
606035
  SKIP_FIRST_PROMPT_PATTERN = /^(?:\s*<[a-z][\w-]*[\s>]|\[Request interrupted by user[^\]]*\])/;
605958
606036
  EPHEMERAL_PROGRESS_TYPES = new Set([
@@ -607157,7 +607235,7 @@ var init_filesystem = __esm(() => {
607157
607235
  });
607158
607236
  getBundledSkillsRoot = memoize_default(function getBundledSkillsRoot2() {
607159
607237
  const nonce = randomBytes18(16).toString("hex");
607160
- return join200(getURTempDir(), "bundled-skills", "1.27.1", nonce);
607238
+ return join200(getURTempDir(), "bundled-skills", "1.27.2", nonce);
607161
607239
  });
607162
607240
  getResolvedWorkingDirPaths = memoize_default(getPathsForPermissionCheck);
607163
607241
  });
@@ -613447,7 +613525,7 @@ function computeFingerprint(messageText, version3) {
613447
613525
  }
613448
613526
  function computeFingerprintFromMessages(messages) {
613449
613527
  const firstMessageText = extractFirstMessageText(messages);
613450
- return computeFingerprint(firstMessageText, "1.27.1");
613528
+ return computeFingerprint(firstMessageText, "1.27.2");
613451
613529
  }
613452
613530
  var FINGERPRINT_SALT = "59cf53e54c78";
613453
613531
  var init_fingerprint = () => {};
@@ -615313,7 +615391,7 @@ async function sideQuery(opts) {
615313
615391
  betas.push(STRUCTURED_OUTPUTS_BETA_HEADER);
615314
615392
  }
615315
615393
  const messageText = extractFirstUserMessageText(messages);
615316
- const fingerprint = computeFingerprint(messageText, "1.27.1");
615394
+ const fingerprint = computeFingerprint(messageText, "1.27.2");
615317
615395
  const attributionHeader = getAttributionHeader(fingerprint);
615318
615396
  const systemBlocks = [
615319
615397
  attributionHeader ? { type: "text", text: attributionHeader } : null,
@@ -620050,7 +620128,7 @@ function buildSystemInitMessage(inputs) {
620050
620128
  slash_commands: inputs.commands.filter((c4) => c4.userInvocable !== false).map((c4) => c4.name),
620051
620129
  apiKeySource: getURHQApiKeyWithSource().source,
620052
620130
  betas: getSdkBetas(),
620053
- ur_version: "1.27.1",
620131
+ ur_version: "1.27.2",
620054
620132
  output_style: outputStyle2,
620055
620133
  agents: inputs.agents.map((agent) => agent.agentType),
620056
620134
  skills: inputs.skills.filter((s) => s.userInvocable !== false).map((skill2) => skill2.name),
@@ -634678,7 +634756,7 @@ var init_useVoiceEnabled = __esm(() => {
634678
634756
  function getSemverPart(version3) {
634679
634757
  return `${import_semver13.major(version3, { loose: true })}.${import_semver13.minor(version3, { loose: true })}.${import_semver13.patch(version3, { loose: true })}`;
634680
634758
  }
634681
- function useUpdateNotification(updatedVersion, initialVersion = "1.27.1") {
634759
+ function useUpdateNotification(updatedVersion, initialVersion = "1.27.2") {
634682
634760
  const [lastNotifiedSemver, setLastNotifiedSemver] = import_react226.useState(() => getSemverPart(initialVersion));
634683
634761
  if (!updatedVersion) {
634684
634762
  return null;
@@ -634727,7 +634805,7 @@ function AutoUpdater({
634727
634805
  return;
634728
634806
  }
634729
634807
  if (false) {}
634730
- const currentVersion = "1.27.1";
634808
+ const currentVersion = "1.27.2";
634731
634809
  const channel = getInitialSettings()?.autoUpdatesChannel ?? "latest";
634732
634810
  let latestVersion = await getLatestVersion(channel);
634733
634811
  const isDisabled = isAutoUpdaterDisabled();
@@ -634956,12 +635034,12 @@ function NativeAutoUpdater({
634956
635034
  logEvent("tengu_native_auto_updater_start", {});
634957
635035
  try {
634958
635036
  const maxVersion = await getMaxVersion();
634959
- if (maxVersion && gt("1.27.1", maxVersion)) {
635037
+ if (maxVersion && gt("1.27.2", maxVersion)) {
634960
635038
  const msg = await getMaxVersionMessage();
634961
635039
  setMaxVersionIssue(msg ?? "affects your version");
634962
635040
  }
634963
635041
  const result = await installLatest(channel);
634964
- const currentVersion = "1.27.1";
635042
+ const currentVersion = "1.27.2";
634965
635043
  const latencyMs = Date.now() - startTime;
634966
635044
  if (result.lockFailed) {
634967
635045
  logEvent("tengu_native_auto_updater_lock_contention", {
@@ -635098,17 +635176,17 @@ function PackageManagerAutoUpdater(t0) {
635098
635176
  const maxVersion = await getMaxVersion();
635099
635177
  if (maxVersion && latest && gt(latest, maxVersion)) {
635100
635178
  logForDebugging(`PackageManagerAutoUpdater: maxVersion ${maxVersion} is set, capping update from ${latest} to ${maxVersion}`);
635101
- if (gte("1.27.1", maxVersion)) {
635102
- logForDebugging(`PackageManagerAutoUpdater: current version ${"1.27.1"} is already at or above maxVersion ${maxVersion}, skipping update`);
635179
+ if (gte("1.27.2", maxVersion)) {
635180
+ logForDebugging(`PackageManagerAutoUpdater: current version ${"1.27.2"} is already at or above maxVersion ${maxVersion}, skipping update`);
635103
635181
  setUpdateAvailable(false);
635104
635182
  return;
635105
635183
  }
635106
635184
  latest = maxVersion;
635107
635185
  }
635108
- const hasUpdate = latest && !gte("1.27.1", latest) && !shouldSkipVersion(latest);
635186
+ const hasUpdate = latest && !gte("1.27.2", latest) && !shouldSkipVersion(latest);
635109
635187
  setUpdateAvailable(!!hasUpdate);
635110
635188
  if (hasUpdate) {
635111
- logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.27.1"} -> ${latest}`);
635189
+ logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.27.2"} -> ${latest}`);
635112
635190
  }
635113
635191
  };
635114
635192
  $3[0] = t1;
@@ -635142,7 +635220,7 @@ function PackageManagerAutoUpdater(t0) {
635142
635220
  wrap: "truncate",
635143
635221
  children: [
635144
635222
  "currentVersion: ",
635145
- "1.27.1"
635223
+ "1.27.2"
635146
635224
  ]
635147
635225
  }, undefined, true, undefined, this);
635148
635226
  $3[3] = verbose;
@@ -647588,7 +647666,7 @@ function buildStatusLineCommandInput(permissionMode, exceeds200kTokens, settings
647588
647666
  project_dir: getOriginalCwd(),
647589
647667
  added_dirs: addedDirs
647590
647668
  },
647591
- version: "1.27.1",
647669
+ version: "1.27.2",
647592
647670
  output_style: {
647593
647671
  name: outputStyleName
647594
647672
  },
@@ -647663,7 +647741,7 @@ function StatusLineInner({
647663
647741
  const taskValues = Object.values(tasks2);
647664
647742
  const taskRunningCount = taskValues.filter((task2) => task2.status === "running" || task2.status === "pending").length;
647665
647743
  const defaultStatusLineText = buildDefaultStatusBar({
647666
- version: "1.27.1",
647744
+ version: "1.27.2",
647667
647745
  providerLabel: providerRuntime.providerLabel,
647668
647746
  authMode: providerRuntime.authLabel,
647669
647747
  model: providerRuntime.model ?? renderModelName(mainLoopModel),
@@ -659149,7 +659227,7 @@ async function submitTranscriptShare(messages, trigger2, appearanceId) {
659149
659227
  } catch {}
659150
659228
  const data = {
659151
659229
  trigger: trigger2,
659152
- version: "1.27.1",
659230
+ version: "1.27.2",
659153
659231
  platform: process.platform,
659154
659232
  transcript,
659155
659233
  subagentTranscripts: Object.keys(subagentTranscripts).length > 0 ? subagentTranscripts : undefined,
@@ -671031,7 +671109,7 @@ function WelcomeV2() {
671031
671109
  dimColor: true,
671032
671110
  children: [
671033
671111
  "v",
671034
- "1.27.1"
671112
+ "1.27.2"
671035
671113
  ]
671036
671114
  }, undefined, true, undefined, this)
671037
671115
  ]
@@ -672291,7 +672369,7 @@ function completeOnboarding() {
672291
672369
  saveGlobalConfig((current) => ({
672292
672370
  ...current,
672293
672371
  hasCompletedOnboarding: true,
672294
- lastOnboardingVersion: "1.27.1"
672372
+ lastOnboardingVersion: "1.27.2"
672295
672373
  }));
672296
672374
  }
672297
672375
  function showDialog(root2, renderer) {
@@ -677392,7 +677470,7 @@ function appendToLog(path24, message) {
677392
677470
  cwd: getFsImplementation().cwd(),
677393
677471
  userType: process.env.USER_TYPE,
677394
677472
  sessionId: getSessionId(),
677395
- version: "1.27.1"
677473
+ version: "1.27.2"
677396
677474
  };
677397
677475
  getLogWriter(path24).write(messageWithTimestamp);
677398
677476
  }
@@ -681486,8 +681564,8 @@ async function getEnvLessBridgeConfig() {
681486
681564
  }
681487
681565
  async function checkEnvLessBridgeMinVersion() {
681488
681566
  const cfg = await getEnvLessBridgeConfig();
681489
- if (cfg.min_version && lt("1.27.1", cfg.min_version)) {
681490
- return `Your version of UR (${"1.27.1"}) is too old for Remote Control.
681567
+ if (cfg.min_version && lt("1.27.2", cfg.min_version)) {
681568
+ return `Your version of UR (${"1.27.2"}) is too old for Remote Control.
681491
681569
  Version ${cfg.min_version} or higher is required. Run \`ur update\` to update.`;
681492
681570
  }
681493
681571
  return null;
@@ -681961,7 +682039,7 @@ async function initBridgeCore(params) {
681961
682039
  const rawApi = createBridgeApiClient({
681962
682040
  baseUrl,
681963
682041
  getAccessToken,
681964
- runnerVersion: "1.27.1",
682042
+ runnerVersion: "1.27.2",
681965
682043
  onDebug: logForDebugging,
681966
682044
  onAuth401,
681967
682045
  getTrustedDeviceToken
@@ -687642,7 +687720,7 @@ async function startMCPServer(cwd3, debug2, verbose) {
687642
687720
  setCwd(cwd3);
687643
687721
  const server2 = new Server({
687644
687722
  name: "ur/tengu",
687645
- version: "1.27.1"
687723
+ version: "1.27.2"
687646
687724
  }, {
687647
687725
  capabilities: {
687648
687726
  tools: {}
@@ -689455,7 +689533,7 @@ async function update() {
689455
689533
  logEvent("tengu_update_check", {});
689456
689534
  const diagnostic = await getDoctorDiagnostic();
689457
689535
  const result = await checkUpgradeStatus({
689458
- currentVersion: "1.27.1",
689536
+ currentVersion: "1.27.2",
689459
689537
  packageName: UR_AGENT_PACKAGE_NAME,
689460
689538
  installationType: diagnostic.installationType,
689461
689539
  latestVersion: () => getLatestNpmPackageVersion(UR_AGENT_PACKAGE_NAME)
@@ -690701,7 +690779,7 @@ ${customInstructions}` : customInstructions;
690701
690779
  }
690702
690780
  }
690703
690781
  logForDiagnosticsNoPII("info", "started", {
690704
- version: "1.27.1",
690782
+ version: "1.27.2",
690705
690783
  is_native_binary: isInBundledMode()
690706
690784
  });
690707
690785
  registerCleanup(async () => {
@@ -691485,7 +691563,7 @@ Usage: ur --remote "your task description"`, () => gracefulShutdown(1));
691485
691563
  pendingHookMessages
691486
691564
  }, renderAndRun);
691487
691565
  }
691488
- }).version("1.27.1 (UR-AGENT)", "-v, --version", "Output the version number");
691566
+ }).version("1.27.2 (UR-AGENT)", "-v, --version", "Output the version number");
691489
691567
  program2.option("-w, --worktree [name]", "Create a new git worktree for this session (optionally specify a name)");
691490
691568
  program2.option("--tmux", "Create a tmux session for the worktree (requires --worktree). Uses iTerm2 native panes when available; use --tmux=classic for traditional tmux.");
691491
691569
  if (canUserConfigureAdvisor()) {
@@ -692362,7 +692440,7 @@ if (false) {}
692362
692440
  async function main2() {
692363
692441
  const args = process.argv.slice(2);
692364
692442
  if (args.length === 1 && (args[0] === "--version" || args[0] === "-v" || args[0] === "-V")) {
692365
- console.log(`${"1.27.1"} (UR-AGENT)`);
692443
+ console.log(`${"1.27.2"} (UR-AGENT)`);
692366
692444
  return;
692367
692445
  }
692368
692446
  if (args[0] === "a2a" && args[1] === "serve" && !args.includes("--help") && !args.includes("-h")) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ur-agent",
3
- "version": "1.27.1",
3
+ "version": "1.27.2",
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",