ur-agent 1.70.0 → 1.72.0
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/dist/cli.js
CHANGED
|
@@ -74478,7 +74478,7 @@ function getAuthTokenSource() {
|
|
|
74478
74478
|
}
|
|
74479
74479
|
const oauthTokens = getURAIOAuthTokens();
|
|
74480
74480
|
if (shouldUseURAIAuth(oauthTokens?.scopes) && oauthTokens?.accessToken) {
|
|
74481
|
-
return { source: "ur.
|
|
74481
|
+
return { source: "ur.com", hasToken: true };
|
|
74482
74482
|
}
|
|
74483
74483
|
return { source: "none", hasToken: false };
|
|
74484
74484
|
}
|
|
@@ -75394,14 +75394,14 @@ function getAccountInformation() {
|
|
|
75394
75394
|
if (apiKey) {
|
|
75395
75395
|
accountInfo.apiKeySource = apiKeySource;
|
|
75396
75396
|
}
|
|
75397
|
-
if (authTokenSource === "ur.
|
|
75397
|
+
if (authTokenSource === "ur.com" || apiKeySource === "/login managed key") {
|
|
75398
75398
|
const orgName = getOauthAccountInfo()?.organizationName;
|
|
75399
75399
|
if (orgName) {
|
|
75400
75400
|
accountInfo.organization = orgName;
|
|
75401
75401
|
}
|
|
75402
75402
|
}
|
|
75403
75403
|
const email3 = getOauthAccountInfo()?.emailAddress;
|
|
75404
|
-
if ((authTokenSource === "ur.
|
|
75404
|
+
if ((authTokenSource === "ur.com" || apiKeySource === "/login managed key") && email3) {
|
|
75405
75405
|
accountInfo.email = email3;
|
|
75406
75406
|
}
|
|
75407
75407
|
return accountInfo;
|
|
@@ -75577,7 +75577,7 @@ var init_auth = __esm(() => {
|
|
|
75577
75577
|
|
|
75578
75578
|
// src/utils/userAgent.ts
|
|
75579
75579
|
function getURCodeUserAgent() {
|
|
75580
|
-
return `ur/${"1.
|
|
75580
|
+
return `ur/${"1.72.0"}`;
|
|
75581
75581
|
}
|
|
75582
75582
|
|
|
75583
75583
|
// src/utils/workloadContext.ts
|
|
@@ -75599,7 +75599,7 @@ function getUserAgent() {
|
|
|
75599
75599
|
const clientApp = process.env.UR_AGENT_SDK_CLIENT_APP ? `, client-app/${process.env.UR_AGENT_SDK_CLIENT_APP}` : "";
|
|
75600
75600
|
const workload = getWorkload();
|
|
75601
75601
|
const workloadSuffix = workload ? `, workload/${workload}` : "";
|
|
75602
|
-
return `ur-cli/${"1.
|
|
75602
|
+
return `ur-cli/${"1.72.0"} (${process.env.USER_TYPE}, ${process.env.UR_CODE_ENTRYPOINT ?? "cli"}${agentSdkVersion}${clientApp}${workloadSuffix})`;
|
|
75603
75603
|
}
|
|
75604
75604
|
function getMCPUserAgent() {
|
|
75605
75605
|
const parts = [];
|
|
@@ -75613,7 +75613,7 @@ function getMCPUserAgent() {
|
|
|
75613
75613
|
parts.push(`client-app/${process.env.UR_AGENT_SDK_CLIENT_APP}`);
|
|
75614
75614
|
}
|
|
75615
75615
|
const suffix = parts.length > 0 ? ` (${parts.join(", ")})` : "";
|
|
75616
|
-
return `ur/${"1.
|
|
75616
|
+
return `ur/${"1.72.0"}${suffix}`;
|
|
75617
75617
|
}
|
|
75618
75618
|
function getWebFetchUserAgent() {
|
|
75619
75619
|
return `UR-User (${getURCodeUserAgent()})`;
|
|
@@ -75751,7 +75751,7 @@ var init_user = __esm(() => {
|
|
|
75751
75751
|
deviceId,
|
|
75752
75752
|
sessionId: getSessionId(),
|
|
75753
75753
|
email: getEmail(),
|
|
75754
|
-
appVersion: "1.
|
|
75754
|
+
appVersion: "1.72.0",
|
|
75755
75755
|
platform: getHostPlatformForAnalytics(),
|
|
75756
75756
|
organizationUuid,
|
|
75757
75757
|
accountUuid,
|
|
@@ -83480,7 +83480,7 @@ function normalizeNameForMCP(name) {
|
|
|
83480
83480
|
}
|
|
83481
83481
|
return normalized;
|
|
83482
83482
|
}
|
|
83483
|
-
var URAI_SERVER_PREFIX = "ur.
|
|
83483
|
+
var URAI_SERVER_PREFIX = "ur.com ";
|
|
83484
83484
|
|
|
83485
83485
|
// src/utils/computerUse/common.ts
|
|
83486
83486
|
var exports_common = {};
|
|
@@ -83951,7 +83951,7 @@ var init_metadata = __esm(() => {
|
|
|
83951
83951
|
COMPOUND_OPERATOR_REGEX = /\s*(?:&&|\|\||[;|])\s*/;
|
|
83952
83952
|
WHITESPACE_REGEX = /\s+/;
|
|
83953
83953
|
getVersionBase = memoize_default(() => {
|
|
83954
|
-
const match = "1.
|
|
83954
|
+
const match = "1.72.0".match(/^\d+\.\d+\.\d+(?:-[a-z]+)?/);
|
|
83955
83955
|
return match ? match[0] : undefined;
|
|
83956
83956
|
});
|
|
83957
83957
|
buildEnvContext = memoize_default(async () => {
|
|
@@ -83991,7 +83991,7 @@ var init_metadata = __esm(() => {
|
|
|
83991
83991
|
isGithubAction: isEnvTruthy(process.env.GITHUB_ACTIONS),
|
|
83992
83992
|
isURCodeAction: isEnvTruthy(process.env.UR_CODE_ACTION),
|
|
83993
83993
|
isURAiAuth: isURAISubscriber(),
|
|
83994
|
-
version: "1.
|
|
83994
|
+
version: "1.72.0",
|
|
83995
83995
|
versionBase: getVersionBase(),
|
|
83996
83996
|
buildTime: "",
|
|
83997
83997
|
deploymentEnvironment: env2.detectDeploymentEnvironment(),
|
|
@@ -84661,7 +84661,7 @@ function initialize1PEventLogging() {
|
|
|
84661
84661
|
const platform2 = getPlatform();
|
|
84662
84662
|
const attributes = {
|
|
84663
84663
|
[import_semantic_conventions4.ATTR_SERVICE_NAME]: "ur",
|
|
84664
|
-
[import_semantic_conventions4.ATTR_SERVICE_VERSION]: "1.
|
|
84664
|
+
[import_semantic_conventions4.ATTR_SERVICE_VERSION]: "1.72.0"
|
|
84665
84665
|
};
|
|
84666
84666
|
if (platform2 === "wsl") {
|
|
84667
84667
|
const wslVersion = getWslVersion();
|
|
@@ -84689,7 +84689,7 @@ function initialize1PEventLogging() {
|
|
|
84689
84689
|
})
|
|
84690
84690
|
]
|
|
84691
84691
|
});
|
|
84692
|
-
firstPartyEventLogger = firstPartyEventLoggerProvider.getLogger("com.urhq.ur.events", "1.
|
|
84692
|
+
firstPartyEventLogger = firstPartyEventLoggerProvider.getLogger("com.urhq.ur.events", "1.72.0");
|
|
84693
84693
|
}
|
|
84694
84694
|
async function reinitialize1PEventLoggingIfConfigChanged() {
|
|
84695
84695
|
if (!is1PEventLoggingEnabled() || !firstPartyEventLoggerProvider) {
|
|
@@ -87407,7 +87407,7 @@ function getValidationTip(context3) {
|
|
|
87407
87407
|
}
|
|
87408
87408
|
return tip;
|
|
87409
87409
|
}
|
|
87410
|
-
var DOCUMENTATION_BASE = "https://docs.ur.
|
|
87410
|
+
var DOCUMENTATION_BASE = "https://docs.ur.com/docs/en", TIP_MATCHERS, PATH_DOC_LINKS;
|
|
87411
87411
|
var init_validationTips = __esm(() => {
|
|
87412
87412
|
TIP_MATCHERS = [
|
|
87413
87413
|
{
|
|
@@ -94565,7 +94565,7 @@ function formatAgentTrendReport(report = buildAgentTrendReport()) {
|
|
|
94565
94565
|
function formatA2AAgentCard(options = {}, pretty = true) {
|
|
94566
94566
|
return JSON.stringify(buildA2AAgentCard(options), null, pretty ? 2 : 0);
|
|
94567
94567
|
}
|
|
94568
|
-
var urVersion = "1.
|
|
94568
|
+
var urVersion = "1.72.0", researchSnapshotDate = "2026-07-15", coverage, priorityRoadmap;
|
|
94569
94569
|
var init_trends = __esm(() => {
|
|
94570
94570
|
init_a2aCardSignature();
|
|
94571
94571
|
coverage = [
|
|
@@ -97368,7 +97368,7 @@ function getAttributionHeader(fingerprint) {
|
|
|
97368
97368
|
if (!isAttributionHeaderEnabled()) {
|
|
97369
97369
|
return "";
|
|
97370
97370
|
}
|
|
97371
|
-
const version2 = `${"1.
|
|
97371
|
+
const version2 = `${"1.72.0"}.${fingerprint}`;
|
|
97372
97372
|
const entrypoint = process.env.UR_CODE_ENTRYPOINT ?? "unknown";
|
|
97373
97373
|
const cch = "";
|
|
97374
97374
|
const workload = getWorkload();
|
|
@@ -144728,7 +144728,7 @@ function getFeedbackGuideline() {
|
|
|
144728
144728
|
}
|
|
144729
144729
|
return "- When you cannot find an answer or the feature doesn't exist, direct the user to use /feedback to report a feature request or bug";
|
|
144730
144730
|
}
|
|
144731
|
-
var UR_CODE_DOCS_MAP_URL = "https://docs.ur.
|
|
144731
|
+
var UR_CODE_DOCS_MAP_URL = "https://docs.ur.com/docs/en/ur_docs_map.md", CDP_DOCS_MAP_URL = "https://docs.claude.com/llms.txt", UR_CODE_GUIDE_AGENT_TYPE = "ur-guide", UR_CODE_GUIDE_AGENT;
|
|
144732
144732
|
var init_urCodeGuideAgent = __esm(() => {
|
|
144733
144733
|
init_prompt2();
|
|
144734
144734
|
init_prompt();
|
|
@@ -155132,7 +155132,7 @@ var init_projectSafety = __esm(() => {
|
|
|
155132
155132
|
function getInstruments() {
|
|
155133
155133
|
if (instruments)
|
|
155134
155134
|
return instruments;
|
|
155135
|
-
const meter = import_api10.metrics.getMeter("ur-agent.gen_ai", "1.
|
|
155135
|
+
const meter = import_api10.metrics.getMeter("ur-agent.gen_ai", "1.72.0");
|
|
155136
155136
|
instruments = {
|
|
155137
155137
|
operationDuration: meter.createHistogram("gen_ai.client.operation.duration", {
|
|
155138
155138
|
description: "GenAI operation duration.",
|
|
@@ -155230,7 +155230,7 @@ function genAiAgentAttributes() {
|
|
|
155230
155230
|
"gen_ai.operation.name": GEN_AI_OPERATION_INVOKE_AGENT,
|
|
155231
155231
|
"gen_ai.provider.name": "ur",
|
|
155232
155232
|
"gen_ai.agent.name": "UR-Nexus",
|
|
155233
|
-
"gen_ai.agent.version": "1.
|
|
155233
|
+
"gen_ai.agent.version": "1.72.0"
|
|
155234
155234
|
};
|
|
155235
155235
|
}
|
|
155236
155236
|
function genAiWorkflowAttributes(workflowName) {
|
|
@@ -155246,7 +155246,7 @@ function genAiWorkflowAttributes(workflowName) {
|
|
|
155246
155246
|
function startGenAiWorkflowSpan(workflowName) {
|
|
155247
155247
|
const attributes = genAiWorkflowAttributes(workflowName);
|
|
155248
155248
|
const name = typeof attributes["gen_ai.workflow.name"] === "string" ? `invoke_workflow ${attributes["gen_ai.workflow.name"]}` : GEN_AI_OPERATION_INVOKE_WORKFLOW;
|
|
155249
|
-
return import_api10.trace.getTracer("ur-agent.gen_ai", "1.
|
|
155249
|
+
return import_api10.trace.getTracer("ur-agent.gen_ai", "1.72.0").startSpan(name, { kind: import_api10.SpanKind.INTERNAL, attributes });
|
|
155250
155250
|
}
|
|
155251
155251
|
function endGenAiWorkflowSpan(span, options2 = {}) {
|
|
155252
155252
|
try {
|
|
@@ -155284,7 +155284,7 @@ function startGenAiMemorySpan(operation, options2 = {}) {
|
|
|
155284
155284
|
if (options2.recordCount !== undefined && Number.isInteger(options2.recordCount) && options2.recordCount >= 0) {
|
|
155285
155285
|
attributes["gen_ai.memory.record.count"] = options2.recordCount;
|
|
155286
155286
|
}
|
|
155287
|
-
return import_api10.trace.getTracer("ur-agent.gen_ai", "1.
|
|
155287
|
+
return import_api10.trace.getTracer("ur-agent.gen_ai", "1.72.0").startSpan(operation, { kind: import_api10.SpanKind.INTERNAL, attributes });
|
|
155288
155288
|
}
|
|
155289
155289
|
function endGenAiMemorySpan(span, options2 = {}) {
|
|
155290
155290
|
try {
|
|
@@ -248755,7 +248755,7 @@ function getTelemetryAttributes() {
|
|
|
248755
248755
|
attributes["session.id"] = sessionId;
|
|
248756
248756
|
}
|
|
248757
248757
|
if (shouldIncludeAttribute("OTEL_METRICS_INCLUDE_VERSION")) {
|
|
248758
|
-
attributes["app.version"] = "1.
|
|
248758
|
+
attributes["app.version"] = "1.72.0";
|
|
248759
248759
|
}
|
|
248760
248760
|
const oauthAccount = getOauthAccountInfo();
|
|
248761
248761
|
if (oauthAccount) {
|
|
@@ -284351,7 +284351,7 @@ function getRemoteSessionUrl(sessionId, ingressUrl) {
|
|
|
284351
284351
|
const baseUrl = getURAiBaseUrl(compatId, ingressUrl);
|
|
284352
284352
|
return `${baseUrl}/code/${compatId}`;
|
|
284353
284353
|
}
|
|
284354
|
-
var PRODUCT_URL = "https://github.com/Maitham16/UR", UR_AI_BASE_URL = "https://ur.
|
|
284354
|
+
var PRODUCT_URL = "https://github.com/Maitham16/UR", UR_AI_BASE_URL = "https://ur.com", UR_AI_STAGING_BASE_URL = "https://ur-ai.staging.ant.dev", UR_AI_LOCAL_BASE_URL = "http://localhost:4000";
|
|
284355
284355
|
|
|
284356
284356
|
// src/keybindings/defaultBindings.ts
|
|
284357
284357
|
var IMAGE_PASTE_KEY, SUPPORTS_TERMINAL_VT_MODE, MODE_CYCLE_KEY, DEFAULT_BINDINGS;
|
|
@@ -289693,7 +289693,7 @@ var init_urai = __esm(() => {
|
|
|
289693
289693
|
const configs = {};
|
|
289694
289694
|
const usedNormalizedNames = new Set;
|
|
289695
289695
|
for (const server2 of response.data.data) {
|
|
289696
|
-
const baseName = `ur.
|
|
289696
|
+
const baseName = `ur.com ${server2.display_name}`;
|
|
289697
289697
|
let finalName = baseName;
|
|
289698
289698
|
let finalNormalized = normalizeNameForMCP(finalName);
|
|
289699
289699
|
let count3 = 1;
|
|
@@ -289859,7 +289859,7 @@ function dedupURAiMcpServers(urAiServers, manualServers) {
|
|
|
289859
289859
|
const sig = getMcpServerSignature(config2);
|
|
289860
289860
|
const manualDup = sig !== null ? manualSigs.get(sig) : undefined;
|
|
289861
289861
|
if (manualDup !== undefined) {
|
|
289862
|
-
logForDebugging(`Suppressing ur.
|
|
289862
|
+
logForDebugging(`Suppressing ur.com connector "${name}": duplicates manually-configured "${manualDup}"`);
|
|
289863
289863
|
suppressed.push({ name, duplicateOf: manualDup });
|
|
289864
289864
|
continue;
|
|
289865
289865
|
}
|
|
@@ -290485,7 +290485,7 @@ function parseMcpConfig(params) {
|
|
|
290485
290485
|
...filePath && { file: filePath },
|
|
290486
290486
|
path: `mcpServers.${name}`,
|
|
290487
290487
|
message: `Windows requires 'cmd /c' wrapper to execute npx`,
|
|
290488
|
-
suggestion: `Change command to "cmd" with args ["/c", "npx", ...]. See: https://docs.ur.
|
|
290488
|
+
suggestion: `Change command to "cmd" with args ["/c", "npx", ...]. See: https://docs.ur.com/docs/en/mcp#configure-mcp-servers`,
|
|
290489
290489
|
mcpErrorMetadata: {
|
|
290490
290490
|
scope,
|
|
290491
290491
|
serverName: name,
|
|
@@ -290743,7 +290743,7 @@ function describeMcpConfigFilePath(scope) {
|
|
|
290743
290743
|
case "enterprise":
|
|
290744
290744
|
return getEnterpriseMcpFilePath();
|
|
290745
290745
|
case "urai":
|
|
290746
|
-
return "ur.
|
|
290746
|
+
return "ur.com";
|
|
290747
290747
|
default:
|
|
290748
290748
|
return scope;
|
|
290749
290749
|
}
|
|
@@ -290761,7 +290761,7 @@ function getScopeLabel(scope) {
|
|
|
290761
290761
|
case "enterprise":
|
|
290762
290762
|
return "Enterprise config (managed by your organization)";
|
|
290763
290763
|
case "urai":
|
|
290764
|
-
return "ur.
|
|
290764
|
+
return "ur.com config";
|
|
290765
290765
|
default:
|
|
290766
290766
|
return scope;
|
|
290767
290767
|
}
|
|
@@ -292879,7 +292879,7 @@ function createMcpAuthTool(serverName, config2) {
|
|
|
292879
292879
|
return {
|
|
292880
292880
|
data: {
|
|
292881
292881
|
status: "unsupported",
|
|
292882
|
-
message: `This is a ur.
|
|
292882
|
+
message: `This is a ur.com MCP connector. Ask the user to run /mcp and select "${serverName}" to authenticate.`
|
|
292883
292883
|
}
|
|
292884
292884
|
};
|
|
292885
292885
|
}
|
|
@@ -295298,7 +295298,7 @@ function getInstallationEnv() {
|
|
|
295298
295298
|
return;
|
|
295299
295299
|
}
|
|
295300
295300
|
function getURCodeVersion() {
|
|
295301
|
-
return "1.
|
|
295301
|
+
return "1.72.0";
|
|
295302
295302
|
}
|
|
295303
295303
|
async function getInstalledVSCodeExtensionVersion(command) {
|
|
295304
295304
|
const { stdout } = await execFileNoThrow(command, ["--list-extensions", "--show-versions"], {
|
|
@@ -297186,7 +297186,7 @@ function getURInChromeMCPToolOverrides(toolName) {
|
|
|
297186
297186
|
function isMCPToolResult(output) {
|
|
297187
297187
|
return typeof output === "object" && output !== null;
|
|
297188
297188
|
}
|
|
297189
|
-
var jsx_dev_runtime38, CHROME_EXTENSION_FOCUS_TAB_URL_BASE = "https://ur.
|
|
297189
|
+
var jsx_dev_runtime38, CHROME_EXTENSION_FOCUS_TAB_URL_BASE = "https://ur.com/chrome/tab/";
|
|
297190
297190
|
var init_toolRendering = __esm(() => {
|
|
297191
297191
|
init_MessageResponse();
|
|
297192
297192
|
init_supports_hyperlinks();
|
|
@@ -301842,7 +301842,7 @@ function handleRemoteAuthFailure(name, serverRef, transportType) {
|
|
|
301842
301842
|
const label = {
|
|
301843
301843
|
sse: "SSE",
|
|
301844
301844
|
http: "HTTP",
|
|
301845
|
-
"urai-proxy": "ur.
|
|
301845
|
+
"urai-proxy": "ur.com proxy"
|
|
301846
301846
|
};
|
|
301847
301847
|
logMCPDebug(name, `Authentication required for ${label[transportType]} server`);
|
|
301848
301848
|
setMcpAuthCacheEntry(name);
|
|
@@ -301854,7 +301854,7 @@ function createURAiProxyFetch(innerFetch) {
|
|
|
301854
301854
|
await checkAndRefreshOAuthTokenIfNeeded();
|
|
301855
301855
|
const currentTokens = getURAIOAuthTokens();
|
|
301856
301856
|
if (!currentTokens) {
|
|
301857
|
-
throw new Error("No ur.
|
|
301857
|
+
throw new Error("No ur.com OAuth token available");
|
|
301858
301858
|
}
|
|
301859
301859
|
const headers = new Headers(init?.headers);
|
|
301860
301860
|
headers.set("Authorization", `Bearer ${currentTokens.accessToken}`);
|
|
@@ -302629,7 +302629,7 @@ async function setupSdkMcpClients(sdkMcpConfigs, sendMcpMessage) {
|
|
|
302629
302629
|
const client2 = new Client({
|
|
302630
302630
|
name: "ur",
|
|
302631
302631
|
title: "UR",
|
|
302632
|
-
version: "1.
|
|
302632
|
+
version: "1.72.0",
|
|
302633
302633
|
description: "UR-Nexus autonomous engineering workflow engine",
|
|
302634
302634
|
websiteUrl: PRODUCT_URL
|
|
302635
302635
|
}, {
|
|
@@ -302919,14 +302919,14 @@ var init_client5 = __esm(() => {
|
|
|
302919
302919
|
} else if (serverRef.type === "sdk") {
|
|
302920
302920
|
throw new Error("SDK servers should be handled in print.ts");
|
|
302921
302921
|
} else if (serverRef.type === "urai-proxy") {
|
|
302922
|
-
logMCPDebug(name, `Initializing ur.
|
|
302922
|
+
logMCPDebug(name, `Initializing ur.com proxy transport for server ${serverRef.id}`);
|
|
302923
302923
|
const tokens = getURAIOAuthTokens();
|
|
302924
302924
|
if (!tokens) {
|
|
302925
|
-
throw new Error("No ur.
|
|
302925
|
+
throw new Error("No ur.com OAuth token found");
|
|
302926
302926
|
}
|
|
302927
302927
|
const oauthConfig = getOauthConfig();
|
|
302928
302928
|
const proxyUrl = `${oauthConfig.MCP_PROXY_URL}${oauthConfig.MCP_PROXY_PATH.replace("{server_id}", serverRef.id)}`;
|
|
302929
|
-
logMCPDebug(name, `Using ur.
|
|
302929
|
+
logMCPDebug(name, `Using ur.com proxy at ${proxyUrl}`);
|
|
302930
302930
|
const fetchWithAuth = createURAiProxyFetch(globalThis.fetch);
|
|
302931
302931
|
const proxyOptions = getProxyFetchOptions();
|
|
302932
302932
|
const transportOptions = {
|
|
@@ -302940,7 +302940,7 @@ var init_client5 = __esm(() => {
|
|
|
302940
302940
|
}
|
|
302941
302941
|
};
|
|
302942
302942
|
transport = new StreamableHTTPClientTransport(new URL(proxyUrl), transportOptions);
|
|
302943
|
-
logMCPDebug(name, `ur.
|
|
302943
|
+
logMCPDebug(name, `ur.com proxy transport created successfully`);
|
|
302944
302944
|
} else if ((serverRef.type === "stdio" || !serverRef.type) && isURInChromeMCPServer(name)) {
|
|
302945
302945
|
const { createChromeContext } = await Promise.resolve().then(() => (init_mcpServer2(), exports_mcpServer2));
|
|
302946
302946
|
const { createURForChromeMcpServer: createURForChromeMcpServer2 } = await Promise.resolve().then(() => (init_chromeMcpCompat(), exports_chromeMcpCompat));
|
|
@@ -302989,7 +302989,7 @@ var init_client5 = __esm(() => {
|
|
|
302989
302989
|
const client2 = new Client({
|
|
302990
302990
|
name: "ur",
|
|
302991
302991
|
title: "UR",
|
|
302992
|
-
version: "1.
|
|
302992
|
+
version: "1.72.0",
|
|
302993
302993
|
description: "UR-Nexus autonomous engineering workflow engine",
|
|
302994
302994
|
websiteUrl: PRODUCT_URL
|
|
302995
302995
|
}, {
|
|
@@ -303070,7 +303070,7 @@ var init_client5 = __esm(() => {
|
|
|
303070
303070
|
return handleRemoteAuthFailure(name, serverRef, "http");
|
|
303071
303071
|
}
|
|
303072
303072
|
} else if (serverRef.type === "urai-proxy" && error40 instanceof Error) {
|
|
303073
|
-
logMCPDebug(name, `ur.
|
|
303073
|
+
logMCPDebug(name, `ur.com proxy connection failed after ${elapsed}ms: ${error40.message}`);
|
|
303074
303074
|
logMCPError(name, error40);
|
|
303075
303075
|
const errorCode2 = error40.code;
|
|
303076
303076
|
if (errorCode2 === 401) {
|
|
@@ -315528,7 +315528,7 @@ async function createRuntime() {
|
|
|
315528
315528
|
bootstrapTelemetry();
|
|
315529
315529
|
const resource = defaultResource().merge(detectResources({ detectors: [envDetector] })).merge(resourceFromAttributes({
|
|
315530
315530
|
[import_semantic_conventions7.ATTR_SERVICE_NAME]: "ur-agent",
|
|
315531
|
-
[import_semantic_conventions7.ATTR_SERVICE_VERSION]: "1.
|
|
315531
|
+
[import_semantic_conventions7.ATTR_SERVICE_VERSION]: "1.72.0"
|
|
315532
315532
|
}));
|
|
315533
315533
|
const tracerProvider = exporters.traces.length > 0 ? new BasicTracerProvider({
|
|
315534
315534
|
resource,
|
|
@@ -315561,11 +315561,11 @@ async function createRuntime() {
|
|
|
315561
315561
|
setMeterProvider(meterProvider);
|
|
315562
315562
|
setLoggerProvider(loggerProvider);
|
|
315563
315563
|
if (meterProvider) {
|
|
315564
|
-
const meter = meterProvider.getMeter("ur-agent", "1.
|
|
315564
|
+
const meter = meterProvider.getMeter("ur-agent", "1.72.0");
|
|
315565
315565
|
setMeter(meter, (name, options2) => meter.createCounter(name, options2));
|
|
315566
315566
|
}
|
|
315567
315567
|
if (loggerProvider) {
|
|
315568
|
-
setEventLogger(loggerProvider.getLogger("ur-agent.events", "1.
|
|
315568
|
+
setEventLogger(loggerProvider.getLogger("ur-agent.events", "1.72.0"));
|
|
315569
315569
|
}
|
|
315570
315570
|
if (!cleanupRegistered2) {
|
|
315571
315571
|
cleanupRegistered2 = true;
|
|
@@ -316227,9 +316227,9 @@ async function assertMinVersion() {
|
|
|
316227
316227
|
if (false) {}
|
|
316228
316228
|
try {
|
|
316229
316229
|
const versionConfig = await getDynamicConfig_BLOCKS_ON_INIT("tengu_version_config", { minVersion: "0.0.0" });
|
|
316230
|
-
if (versionConfig.minVersion && lt("1.
|
|
316230
|
+
if (versionConfig.minVersion && lt("1.72.0", versionConfig.minVersion)) {
|
|
316231
316231
|
console.error(`
|
|
316232
|
-
It looks like your version of UR (${"1.
|
|
316232
|
+
It looks like your version of UR (${"1.72.0"}) needs an update.
|
|
316233
316233
|
A newer version (${versionConfig.minVersion} or higher) is required to continue.
|
|
316234
316234
|
|
|
316235
316235
|
To update, please run:
|
|
@@ -316445,7 +316445,7 @@ async function installGlobalPackage(specificVersion) {
|
|
|
316445
316445
|
logError2(new AutoUpdaterError("Another process is currently installing an update"));
|
|
316446
316446
|
logEvent("tengu_auto_updater_lock_contention", {
|
|
316447
316447
|
pid: process.pid,
|
|
316448
|
-
currentVersion: "1.
|
|
316448
|
+
currentVersion: "1.72.0"
|
|
316449
316449
|
});
|
|
316450
316450
|
return "in_progress";
|
|
316451
316451
|
}
|
|
@@ -316454,7 +316454,7 @@ async function installGlobalPackage(specificVersion) {
|
|
|
316454
316454
|
if (!env2.isRunningWithBun() && env2.isNpmFromWindowsPath()) {
|
|
316455
316455
|
logError2(new Error("Windows NPM detected in WSL environment"));
|
|
316456
316456
|
logEvent("tengu_auto_updater_windows_npm_in_wsl", {
|
|
316457
|
-
currentVersion: "1.
|
|
316457
|
+
currentVersion: "1.72.0"
|
|
316458
316458
|
});
|
|
316459
316459
|
console.error(`
|
|
316460
316460
|
Error: Windows NPM detected in WSL
|
|
@@ -316989,7 +316989,7 @@ function detectLinuxGlobPatternWarnings() {
|
|
|
316989
316989
|
}
|
|
316990
316990
|
async function getDoctorDiagnostic() {
|
|
316991
316991
|
const installationType = await getCurrentInstallationType();
|
|
316992
|
-
const version2 = typeof MACRO !== "undefined" ? "1.
|
|
316992
|
+
const version2 = typeof MACRO !== "undefined" ? "1.72.0" : "unknown";
|
|
316993
316993
|
const installationPath = await getInstallationPath();
|
|
316994
316994
|
const invokedBinary = getInvokedBinary();
|
|
316995
316995
|
const multipleInstallations = await detectMultipleInstallations();
|
|
@@ -317924,8 +317924,8 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
|
|
|
317924
317924
|
const maxVersion = await getMaxVersion();
|
|
317925
317925
|
if (maxVersion && gt(version2, maxVersion)) {
|
|
317926
317926
|
logForDebugging(`Native installer: maxVersion ${maxVersion} is set, capping update from ${version2} to ${maxVersion}`);
|
|
317927
|
-
if (gte("1.
|
|
317928
|
-
logForDebugging(`Native installer: current version ${"1.
|
|
317927
|
+
if (gte("1.72.0", maxVersion)) {
|
|
317928
|
+
logForDebugging(`Native installer: current version ${"1.72.0"} is already at or above maxVersion ${maxVersion}, skipping update`);
|
|
317929
317929
|
logEvent("tengu_native_update_skipped_max_version", {
|
|
317930
317930
|
latency_ms: Date.now() - startTime,
|
|
317931
317931
|
max_version: maxVersion,
|
|
@@ -317936,7 +317936,7 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
|
|
|
317936
317936
|
version2 = maxVersion;
|
|
317937
317937
|
}
|
|
317938
317938
|
}
|
|
317939
|
-
if (!forceReinstall && version2 === "1.
|
|
317939
|
+
if (!forceReinstall && version2 === "1.72.0" && await versionIsAvailable(version2) && await isPossibleURBinary(executablePath)) {
|
|
317940
317940
|
logForDebugging(`Found ${version2} at ${executablePath}, skipping install`);
|
|
317941
317941
|
logEvent("tengu_native_update_complete", {
|
|
317942
317942
|
latency_ms: Date.now() - startTime,
|
|
@@ -319257,8 +319257,8 @@ async function authStatus(opts) {
|
|
|
319257
319257
|
let authMethod = "none";
|
|
319258
319258
|
if (using3P) {
|
|
319259
319259
|
authMethod = "third_party";
|
|
319260
|
-
} else if (authTokenSource === "ur.
|
|
319261
|
-
authMethod = "ur.
|
|
319260
|
+
} else if (authTokenSource === "ur.com") {
|
|
319261
|
+
authMethod = "ur.com";
|
|
319262
319262
|
} else if (authTokenSource === "apiKeyHelper") {
|
|
319263
319263
|
authMethod = "api_key_helper";
|
|
319264
319264
|
} else if (authTokenSource !== "none") {
|
|
@@ -319266,7 +319266,7 @@ async function authStatus(opts) {
|
|
|
319266
319266
|
} else if (apiKeySource === "URHQ_API_KEY" || hasApiKeyEnvVar) {
|
|
319267
319267
|
authMethod = "api_key";
|
|
319268
319268
|
} else if (apiKeySource === "/login managed key") {
|
|
319269
|
-
authMethod = "ur.
|
|
319269
|
+
authMethod = "ur.com";
|
|
319270
319270
|
}
|
|
319271
319271
|
if (opts.text) {
|
|
319272
319272
|
const properties = [
|
|
@@ -319307,7 +319307,7 @@ async function authStatus(opts) {
|
|
|
319307
319307
|
if (resolvedApiKeySource) {
|
|
319308
319308
|
output.apiKeySource = resolvedApiKeySource;
|
|
319309
319309
|
}
|
|
319310
|
-
if (authMethod === "ur.
|
|
319310
|
+
if (authMethod === "ur.com") {
|
|
319311
319311
|
output.email = oauthAccount?.emailAddress ?? null;
|
|
319312
319312
|
output.orgId = oauthAccount?.organizationUuid ?? null;
|
|
319313
319313
|
output.orgName = oauthAccount?.organizationName ?? null;
|
|
@@ -321841,7 +321841,7 @@ var init_coreSchemas = __esm(() => {
|
|
|
321841
321841
|
]).optional(),
|
|
321842
321842
|
isUsingOverage: exports_external.boolean().optional(),
|
|
321843
321843
|
surpassedThreshold: exports_external.number().optional()
|
|
321844
|
-
}).describe("Rate limit information for ur.
|
|
321844
|
+
}).describe("Rate limit information for ur.com subscription users."));
|
|
321845
321845
|
SDKAssistantMessageSchema = lazySchema(() => exports_external.object({
|
|
321846
321846
|
type: exports_external.literal("assistant"),
|
|
321847
321847
|
message: APIAssistantMessagePlaceholder(),
|
|
@@ -327574,8 +327574,8 @@ function OAuthStatusMessage(t0) {
|
|
|
327574
327574
|
"\xB7 Amazon Bedrock:",
|
|
327575
327575
|
" ",
|
|
327576
327576
|
/* @__PURE__ */ jsx_dev_runtime72.jsxDEV(Link, {
|
|
327577
|
-
url: "https://docs.ur.
|
|
327578
|
-
children: "https://docs.ur.
|
|
327577
|
+
url: "https://docs.ur.com/docs/en/amazon-bedrock",
|
|
327578
|
+
children: "https://docs.ur.com/docs/en/amazon-bedrock"
|
|
327579
327579
|
}, undefined, false, undefined, this)
|
|
327580
327580
|
]
|
|
327581
327581
|
}, undefined, true, undefined, this);
|
|
@@ -327590,8 +327590,8 @@ function OAuthStatusMessage(t0) {
|
|
|
327590
327590
|
"\xB7 Microsoft Foundry:",
|
|
327591
327591
|
" ",
|
|
327592
327592
|
/* @__PURE__ */ jsx_dev_runtime72.jsxDEV(Link, {
|
|
327593
|
-
url: "https://docs.ur.
|
|
327594
|
-
children: "https://docs.ur.
|
|
327593
|
+
url: "https://docs.ur.com/docs/en/microsoft-foundry",
|
|
327594
|
+
children: "https://docs.ur.com/docs/en/microsoft-foundry"
|
|
327595
327595
|
}, undefined, false, undefined, this)
|
|
327596
327596
|
]
|
|
327597
327597
|
}, undefined, true, undefined, this);
|
|
@@ -327613,8 +327613,8 @@ function OAuthStatusMessage(t0) {
|
|
|
327613
327613
|
"\xB7 Vertex AI:",
|
|
327614
327614
|
" ",
|
|
327615
327615
|
/* @__PURE__ */ jsx_dev_runtime72.jsxDEV(Link, {
|
|
327616
|
-
url: "https://docs.ur.
|
|
327617
|
-
children: "https://docs.ur.
|
|
327616
|
+
url: "https://docs.ur.com/docs/en/google-vertex-ai",
|
|
327617
|
+
children: "https://docs.ur.com/docs/en/google-vertex-ai"
|
|
327618
327618
|
}, undefined, false, undefined, this)
|
|
327619
327619
|
]
|
|
327620
327620
|
}, undefined, true, undefined, this)
|
|
@@ -328584,7 +328584,7 @@ async function runExtraUsage() {
|
|
|
328584
328584
|
value: "Please contact your admin to manage extra usage settings."
|
|
328585
328585
|
};
|
|
328586
328586
|
}
|
|
328587
|
-
const url3 = isTeamOrEnterprise ? "https://ur.
|
|
328587
|
+
const url3 = isTeamOrEnterprise ? "https://ur.com/admin-settings/usage" : "https://ur.com/settings/usage";
|
|
328588
328588
|
try {
|
|
328589
328589
|
const opened = await openBrowser(url3);
|
|
328590
328590
|
return { type: "browser-opened", url: url3, opened };
|
|
@@ -343636,7 +343636,7 @@ async function _bundleWithFallback(gitRoot, bundlePath, maxBytes, hasStash, sign
|
|
|
343636
343636
|
}
|
|
343637
343637
|
return {
|
|
343638
343638
|
ok: false,
|
|
343639
|
-
error: "Repo is too large to bundle. Please setup GitHub on https://ur.
|
|
343639
|
+
error: "Repo is too large to bundle. Please setup GitHub on https://ur.com/code",
|
|
343640
343640
|
failReason: "too_large"
|
|
343641
343641
|
};
|
|
343642
343642
|
}
|
|
@@ -344372,7 +344372,7 @@ async function teleportToRemote(options2) {
|
|
|
344372
344372
|
});
|
|
344373
344373
|
if (!bundle.success) {
|
|
344374
344374
|
logError2(new Error(`Bundle upload failed: ${bundle.error}`));
|
|
344375
|
-
const setup = repoInfo ? ". Please setup GitHub on https://ur.
|
|
344375
|
+
const setup = repoInfo ? ". Please setup GitHub on https://ur.com/code" : "";
|
|
344376
344376
|
let msg;
|
|
344377
344377
|
switch (bundle.failReason) {
|
|
344378
344378
|
case "empty_repo":
|
|
@@ -344647,7 +344647,7 @@ function formatPreconditionError(error40) {
|
|
|
344647
344647
|
case "not_logged_in":
|
|
344648
344648
|
return "Please run /login and sign in with your UR account (not Console).";
|
|
344649
344649
|
case "no_remote_environment":
|
|
344650
|
-
return "No cloud environment available. Set one up at https://ur.
|
|
344650
|
+
return "No cloud environment available. Set one up at https://ur.com/code/onboarding?magic=env-setup";
|
|
344651
344651
|
case "not_in_git_repo":
|
|
344652
344652
|
return "Background tasks require a git repository. Initialize git or run from a git repository.";
|
|
344653
344653
|
case "no_git_remote":
|
|
@@ -367476,7 +367476,7 @@ function isPreapprovedHost(hostname3, pathname) {
|
|
|
367476
367476
|
var PREAPPROVED_HOSTS, HOSTNAME_ONLY, PATH_PREFIXES;
|
|
367477
367477
|
var init_preapproved = __esm(() => {
|
|
367478
367478
|
PREAPPROVED_HOSTS = new Set([
|
|
367479
|
-
"docs.ur.
|
|
367479
|
+
"docs.ur.com",
|
|
367480
367480
|
"modelcontextprotocol.io",
|
|
367481
367481
|
"github.com/Maitham16",
|
|
367482
367482
|
"agentskills.io",
|
|
@@ -368043,7 +368043,7 @@ var init_utils11 = __esm(() => {
|
|
|
368043
368043
|
};
|
|
368044
368044
|
DomainCheckFailedError = class DomainCheckFailedError extends Error {
|
|
368045
368045
|
constructor(domain2) {
|
|
368046
|
-
super(`Unable to verify if domain ${domain2} is safe to fetch. This may be due to network restrictions or enterprise security policies blocking ur.
|
|
368046
|
+
super(`Unable to verify if domain ${domain2} is safe to fetch. This may be due to network restrictions or enterprise security policies blocking ur.com.`);
|
|
368047
368047
|
this.name = "DomainCheckFailedError";
|
|
368048
368048
|
}
|
|
368049
368049
|
};
|
|
@@ -371589,6 +371589,7 @@ var init_ExitPlanModeV2Tool = __esm(() => {
|
|
|
371589
371589
|
hasTaskTool: exports_external.boolean().optional().describe("Whether the Agent tool is available in the current context"),
|
|
371590
371590
|
planWasEdited: exports_external.boolean().optional().describe("True when the user edited the plan (CCR web UI or Ctrl+G); determines whether the plan is echoed back in tool_result"),
|
|
371591
371591
|
awaitingLeaderApproval: exports_external.boolean().optional().describe("When true, the teammate has sent a plan approval request to the team leader"),
|
|
371592
|
+
alreadyExited: exports_external.boolean().optional().describe("When true, plan mode had already been exited and this call was a no-op"),
|
|
371592
371593
|
requestId: exports_external.string().optional().describe("Unique identifier for the plan approval request")
|
|
371593
371594
|
}));
|
|
371594
371595
|
ExitPlanModeV2Tool = buildTool({
|
|
@@ -371638,6 +371639,9 @@ var init_ExitPlanModeV2Tool = __esm(() => {
|
|
|
371638
371639
|
mode,
|
|
371639
371640
|
hasExitedPlanModeInSession: hasExitedPlanModeInSession()
|
|
371640
371641
|
});
|
|
371642
|
+
if (hasExitedPlanModeInSession()) {
|
|
371643
|
+
return { result: true };
|
|
371644
|
+
}
|
|
371641
371645
|
return {
|
|
371642
371646
|
result: false,
|
|
371643
371647
|
message: "You are not in plan mode. This tool is only for exiting plan mode after writing a plan. If your plan was already approved, continue with implementation.",
|
|
@@ -371653,6 +371657,12 @@ var init_ExitPlanModeV2Tool = __esm(() => {
|
|
|
371653
371657
|
updatedInput: input
|
|
371654
371658
|
};
|
|
371655
371659
|
}
|
|
371660
|
+
if (context5.getAppState().toolPermissionContext.mode !== "plan" && hasExitedPlanModeInSession()) {
|
|
371661
|
+
return {
|
|
371662
|
+
behavior: "allow",
|
|
371663
|
+
updatedInput: input
|
|
371664
|
+
};
|
|
371665
|
+
}
|
|
371656
371666
|
return {
|
|
371657
371667
|
behavior: "ask",
|
|
371658
371668
|
message: "Exit plan mode?",
|
|
@@ -371667,6 +371677,9 @@ var init_ExitPlanModeV2Tool = __esm(() => {
|
|
|
371667
371677
|
const filePath = getPlanFilePath(context5.agentId);
|
|
371668
371678
|
const inputPlan = "plan" in input && typeof input.plan === "string" ? input.plan : undefined;
|
|
371669
371679
|
const plan = inputPlan ?? getPlan(context5.agentId);
|
|
371680
|
+
if (!isTeammate() && context5.getAppState().toolPermissionContext.mode !== "plan" && hasExitedPlanModeInSession()) {
|
|
371681
|
+
return { data: { plan, isAgent, filePath, alreadyExited: true } };
|
|
371682
|
+
}
|
|
371670
371683
|
if (inputPlan !== undefined && filePath) {
|
|
371671
371684
|
await writeFile21(filePath, inputPlan, "utf-8").catch((e) => logError2(e));
|
|
371672
371685
|
persistFileSnapshotIfRemote();
|
|
@@ -371759,8 +371772,16 @@ var init_ExitPlanModeV2Tool = __esm(() => {
|
|
|
371759
371772
|
hasTaskTool,
|
|
371760
371773
|
planWasEdited,
|
|
371761
371774
|
awaitingLeaderApproval,
|
|
371762
|
-
requestId
|
|
371775
|
+
requestId,
|
|
371776
|
+
alreadyExited
|
|
371763
371777
|
}, toolUseID) {
|
|
371778
|
+
if (alreadyExited) {
|
|
371779
|
+
return {
|
|
371780
|
+
type: "tool_result",
|
|
371781
|
+
content: "Plan mode is already exited \u2014 this call did nothing. Continue with the implementation and do not call ExitPlanMode again this turn.",
|
|
371782
|
+
tool_use_id: toolUseID
|
|
371783
|
+
};
|
|
371784
|
+
}
|
|
371764
371785
|
if (awaitingLeaderApproval) {
|
|
371765
371786
|
return {
|
|
371766
371787
|
type: "tool_result",
|
|
@@ -373264,9 +373285,25 @@ function normalizeQuestionOptionInput(value) {
|
|
|
373264
373285
|
} : {}
|
|
373265
373286
|
};
|
|
373266
373287
|
}
|
|
373288
|
+
function optionsField(question) {
|
|
373289
|
+
for (const name of ["options", "choices", "values", "items", "alternatives", "candidates", "selections"]) {
|
|
373290
|
+
const value = question[name];
|
|
373291
|
+
if (Array.isArray(value))
|
|
373292
|
+
return value;
|
|
373293
|
+
if (typeof value === "string") {
|
|
373294
|
+
const parsed = parseToolInputJsonLenient(value);
|
|
373295
|
+
if (Array.isArray(parsed))
|
|
373296
|
+
return parsed;
|
|
373297
|
+
}
|
|
373298
|
+
}
|
|
373299
|
+
return null;
|
|
373300
|
+
}
|
|
373267
373301
|
function normalizeQuestionInput(value, index2) {
|
|
373268
373302
|
const question = objectValue3(value);
|
|
373269
|
-
if (!question
|
|
373303
|
+
if (!question)
|
|
373304
|
+
return value;
|
|
373305
|
+
const options2 = optionsField(question);
|
|
373306
|
+
if (!options2)
|
|
373270
373307
|
return value;
|
|
373271
373308
|
const questionText = stringField2(question, ["question", "questionText", "question_text", "prompt", "text", "title", "message", "body"]);
|
|
373272
373309
|
if (!questionText)
|
|
@@ -373274,7 +373311,7 @@ function normalizeQuestionInput(value, index2) {
|
|
|
373274
373311
|
return {
|
|
373275
373312
|
question: questionText,
|
|
373276
373313
|
header: typeof question.header === "string" && question.header.trim() ? question.header.trim().slice(0, ASK_USER_QUESTION_TOOL_CHIP_WIDTH) : headerFromQuestion2(questionText, index2),
|
|
373277
|
-
options:
|
|
373314
|
+
options: options2.map(normalizeQuestionOptionInput),
|
|
373278
373315
|
...typeof question.multiSelect === "boolean" ? {
|
|
373279
373316
|
multiSelect: question.multiSelect
|
|
373280
373317
|
} : {}
|
|
@@ -387704,7 +387741,7 @@ function isAnyTracingEnabled() {
|
|
|
387704
387741
|
return isTelemetryEnabled() || isEnhancedTelemetryEnabled() || isBetaTracingEnabled();
|
|
387705
387742
|
}
|
|
387706
387743
|
function getTracer() {
|
|
387707
|
-
return import_api39.trace.getTracer("ur-agent.gen_ai", "1.
|
|
387744
|
+
return import_api39.trace.getTracer("ur-agent.gen_ai", "1.72.0");
|
|
387708
387745
|
}
|
|
387709
387746
|
function createSpanAttributes(spanType, customAttributes = {}) {
|
|
387710
387747
|
const baseAttributes = getTelemetryAttributes();
|
|
@@ -410140,7 +410177,7 @@ function getAssistantMessageFromError(error40, model, options2) {
|
|
|
410140
410177
|
});
|
|
410141
410178
|
}
|
|
410142
410179
|
if (error40.message.includes("Extra usage is required for long context")) {
|
|
410143
|
-
const hint = getIsNonInteractiveSession() ? "enable extra usage at ur.
|
|
410180
|
+
const hint = getIsNonInteractiveSession() ? "enable extra usage at ur.com/settings/usage, or use --model to switch to standard context" : "run /extra-usage to enable, or /model to switch to standard context";
|
|
410144
410181
|
return createAssistantAPIErrorMessage({
|
|
410145
410182
|
content: `${API_ERROR_MESSAGE_PREFIX}: Extra usage is required for 1M context \xB7 ${hint}`,
|
|
410146
410183
|
error: "rate_limit"
|
|
@@ -417893,7 +417930,7 @@ function Feedback({
|
|
|
417893
417930
|
platform: env2.platform,
|
|
417894
417931
|
gitRepo: envInfo.isGit,
|
|
417895
417932
|
terminal: env2.terminal,
|
|
417896
|
-
version: "1.
|
|
417933
|
+
version: "1.72.0",
|
|
417897
417934
|
transcript: normalizeMessagesForAPI(messages),
|
|
417898
417935
|
errors: sanitizedErrors,
|
|
417899
417936
|
lastApiRequest: getLastAPIRequest(),
|
|
@@ -418085,7 +418122,7 @@ function Feedback({
|
|
|
418085
418122
|
", ",
|
|
418086
418123
|
env2.terminal,
|
|
418087
418124
|
", v",
|
|
418088
|
-
"1.
|
|
418125
|
+
"1.72.0"
|
|
418089
418126
|
]
|
|
418090
418127
|
}, undefined, true, undefined, this)
|
|
418091
418128
|
]
|
|
@@ -418191,7 +418228,7 @@ ${sanitizedDescription}
|
|
|
418191
418228
|
` + `**Environment Info**
|
|
418192
418229
|
` + `- Platform: ${env2.platform}
|
|
418193
418230
|
` + `- Terminal: ${env2.terminal}
|
|
418194
|
-
` + `- Version: ${"1.
|
|
418231
|
+
` + `- Version: ${"1.72.0"}
|
|
418195
418232
|
` + `- Feedback ID: ${feedbackId}
|
|
418196
418233
|
` + `
|
|
418197
418234
|
**Errors**
|
|
@@ -420268,7 +420305,7 @@ async function openCurrentSessionInDesktop() {
|
|
|
420268
420305
|
if (!installed) {
|
|
420269
420306
|
return {
|
|
420270
420307
|
success: false,
|
|
420271
|
-
error: "UR Desktop is not installed. Install it from https://ur.
|
|
420308
|
+
error: "UR Desktop is not installed. Install it from https://ur.com/download"
|
|
420272
420309
|
};
|
|
420273
420310
|
}
|
|
420274
420311
|
const deepLinkUrl = buildDesktopDeepLink(sessionId);
|
|
@@ -420373,9 +420410,9 @@ var init_LoadingState = __esm(() => {
|
|
|
420373
420410
|
function getDownloadUrl() {
|
|
420374
420411
|
switch (process.platform) {
|
|
420375
420412
|
case "win32":
|
|
420376
|
-
return "https://ur.
|
|
420413
|
+
return "https://ur.com/api/desktop/win32/x64/exe/latest/redirect";
|
|
420377
420414
|
default:
|
|
420378
|
-
return "https://ur.
|
|
420415
|
+
return "https://ur.com/api/desktop/darwin/universal/dmg/latest/redirect";
|
|
420379
420416
|
}
|
|
420380
420417
|
}
|
|
420381
420418
|
function DesktopHandoff(t0) {
|
|
@@ -420574,7 +420611,7 @@ async function _temp214(onDone_0) {
|
|
|
420574
420611
|
await gracefulShutdown(0, "other");
|
|
420575
420612
|
}
|
|
420576
420613
|
function _temp61() {}
|
|
420577
|
-
var import_compiler_runtime125, import_react99, jsx_dev_runtime169, DESKTOP_DOCS_URL = "https://ur.
|
|
420614
|
+
var import_compiler_runtime125, import_react99, jsx_dev_runtime169, DESKTOP_DOCS_URL = "https://ur.com/desktop";
|
|
420578
420615
|
var init_DesktopHandoff = __esm(() => {
|
|
420579
420616
|
init_ink2();
|
|
420580
420617
|
init_browser();
|
|
@@ -421301,7 +421338,7 @@ function buildPrimarySection() {
|
|
|
421301
421338
|
}, undefined, false, undefined, this);
|
|
421302
421339
|
return [{
|
|
421303
421340
|
label: "Version",
|
|
421304
|
-
value: "1.
|
|
421341
|
+
value: "1.72.0"
|
|
421305
421342
|
}, {
|
|
421306
421343
|
label: "Session name",
|
|
421307
421344
|
value: nameValue
|
|
@@ -424631,7 +424668,7 @@ function Config({
|
|
|
424631
424668
|
}
|
|
424632
424669
|
}, undefined, false, undefined, this)
|
|
424633
424670
|
}, undefined, false, undefined, this) : showSubmenu === "ChannelDowngrade" ? /* @__PURE__ */ jsx_dev_runtime179.jsxDEV(ChannelDowngradeDialog, {
|
|
424634
|
-
currentVersion: "1.
|
|
424671
|
+
currentVersion: "1.72.0",
|
|
424635
424672
|
onChoice: (choice) => {
|
|
424636
424673
|
setShowSubmenu(null);
|
|
424637
424674
|
setTabsHidden(false);
|
|
@@ -424643,7 +424680,7 @@ function Config({
|
|
|
424643
424680
|
autoUpdatesChannel: "stable"
|
|
424644
424681
|
};
|
|
424645
424682
|
if (choice === "stay") {
|
|
424646
|
-
newSettings.minimumVersion = "1.
|
|
424683
|
+
newSettings.minimumVersion = "1.72.0";
|
|
424647
424684
|
}
|
|
424648
424685
|
updateSettingsForSource("userSettings", newSettings);
|
|
424649
424686
|
setSettingsData((prev_27) => ({
|
|
@@ -429266,8 +429303,8 @@ function McpParsingWarnings() {
|
|
|
429266
429303
|
"For help configuring MCP servers, see:",
|
|
429267
429304
|
" ",
|
|
429268
429305
|
/* @__PURE__ */ jsx_dev_runtime194.jsxDEV(Link, {
|
|
429269
|
-
url: "https://docs.ur.
|
|
429270
|
-
children: "https://docs.ur.
|
|
429306
|
+
url: "https://docs.ur.com/docs/en/mcp",
|
|
429307
|
+
children: "https://docs.ur.com/docs/en/mcp"
|
|
429271
429308
|
}, undefined, false, undefined, this)
|
|
429272
429309
|
]
|
|
429273
429310
|
}, undefined, true, undefined, this)
|
|
@@ -431838,7 +431875,7 @@ ${editorHint}`, {
|
|
|
431838
431875
|
children: [
|
|
431839
431876
|
"Learn more: ",
|
|
431840
431877
|
/* @__PURE__ */ jsx_dev_runtime202.jsxDEV(Link, {
|
|
431841
|
-
url: "https://docs.ur.
|
|
431878
|
+
url: "https://docs.ur.com/docs/en/memory"
|
|
431842
431879
|
}, undefined, false, undefined, this)
|
|
431843
431880
|
]
|
|
431844
431881
|
}, undefined, true, undefined, this)
|
|
@@ -432707,7 +432744,7 @@ function HelpV2(t0) {
|
|
|
432707
432744
|
let t6;
|
|
432708
432745
|
if ($2[31] !== tabs) {
|
|
432709
432746
|
t6 = /* @__PURE__ */ jsx_dev_runtime206.jsxDEV(Tabs, {
|
|
432710
|
-
title: `UR v${"1.
|
|
432747
|
+
title: `UR v${"1.72.0"}`,
|
|
432711
432748
|
color: "professionalBlue",
|
|
432712
432749
|
defaultTab: "general",
|
|
432713
432750
|
children: tabs
|
|
@@ -432726,7 +432763,7 @@ function HelpV2(t0) {
|
|
|
432726
432763
|
"For more help:",
|
|
432727
432764
|
" ",
|
|
432728
432765
|
/* @__PURE__ */ jsx_dev_runtime206.jsxDEV(Link, {
|
|
432729
|
-
url: "https://docs.ur.
|
|
432766
|
+
url: "https://docs.ur.com/docs/en/overview"
|
|
432730
432767
|
}, undefined, false, undefined, this)
|
|
432731
432768
|
]
|
|
432732
432769
|
}, undefined, true, undefined, this)
|
|
@@ -433640,7 +433677,7 @@ function buildToolUseContext(tools, readFileStateCache, toolPermissionContext, a
|
|
|
433640
433677
|
async function handleInitialize(options2) {
|
|
433641
433678
|
return {
|
|
433642
433679
|
name: "UR",
|
|
433643
|
-
version: "1.
|
|
433680
|
+
version: "1.72.0",
|
|
433644
433681
|
protocolVersion: "0.1.0",
|
|
433645
433682
|
workspaceRoot: options2.cwd,
|
|
433646
433683
|
capabilities: {
|
|
@@ -435356,7 +435393,7 @@ Usage notes:
|
|
|
435356
435393
|
\`\`\`
|
|
435357
435394
|
# UR.md
|
|
435358
435395
|
|
|
435359
|
-
This file provides guidance to UR (ur.
|
|
435396
|
+
This file provides guidance to UR (ur.com/code) when working with code in this repository.
|
|
435360
435397
|
\`\`\``, command3, init_default3;
|
|
435361
435398
|
var init_init = __esm(() => {
|
|
435362
435399
|
init_projectOnboardingState();
|
|
@@ -435664,7 +435701,7 @@ function generateKeybindingsTemplate() {
|
|
|
435664
435701
|
const bindings = filterReservedShortcuts(DEFAULT_BINDINGS);
|
|
435665
435702
|
const config3 = {
|
|
435666
435703
|
$schema: "https://www.schemastore.org/ur-keybindings.json",
|
|
435667
|
-
$docs: "https://docs.ur.
|
|
435704
|
+
$docs: "https://docs.ur.com/docs/en/keybindings",
|
|
435668
435705
|
bindings
|
|
435669
435706
|
};
|
|
435670
435707
|
return jsonStringify(config3, null, 2) + `
|
|
@@ -436522,7 +436559,7 @@ function MCPListPanel(t0) {
|
|
|
436522
436559
|
paddingLeft: 2,
|
|
436523
436560
|
children: /* @__PURE__ */ jsx_dev_runtime211.jsxDEV(ThemedText, {
|
|
436524
436561
|
bold: true,
|
|
436525
|
-
children: "ur.
|
|
436562
|
+
children: "ur.com"
|
|
436526
436563
|
}, undefined, false, undefined, this)
|
|
436527
436564
|
}, undefined, false, undefined, this),
|
|
436528
436565
|
urAiServers.map((server_5) => renderServerItem(server_5))
|
|
@@ -436621,8 +436658,8 @@ function MCPListPanel(t0) {
|
|
|
436621
436658
|
dimColor: true,
|
|
436622
436659
|
children: [
|
|
436623
436660
|
/* @__PURE__ */ jsx_dev_runtime211.jsxDEV(Link, {
|
|
436624
|
-
url: "https://docs.ur.
|
|
436625
|
-
children: "https://docs.ur.
|
|
436661
|
+
url: "https://docs.ur.com/docs/en/mcp",
|
|
436662
|
+
children: "https://docs.ur.com/docs/en/mcp"
|
|
436626
436663
|
}, undefined, false, undefined, this),
|
|
436627
436664
|
" ",
|
|
436628
436665
|
"for help"
|
|
@@ -436972,7 +437009,7 @@ function gateChannelServer(serverName, capabilities, pluginSource) {
|
|
|
436972
437009
|
return {
|
|
436973
437010
|
action: "skip",
|
|
436974
437011
|
kind: "auth",
|
|
436975
|
-
reason: "channels requires ur.
|
|
437012
|
+
reason: "channels requires ur.com authentication (run /login)"
|
|
436976
437013
|
};
|
|
436977
437014
|
}
|
|
436978
437015
|
const sub = getSubscriptionType();
|
|
@@ -437405,7 +437442,7 @@ function useManageMCPConnections(dynamicMcpConfig, isStrictMcpConfig = false) {
|
|
|
437405
437442
|
});
|
|
437406
437443
|
const enabledURaiConfigs = Object.fromEntries(Object.entries(uraiConfigs).filter(([name]) => !isMcpServerDisabled(name)));
|
|
437407
437444
|
getMcpToolsCommandsAndResources(onConnectionAttempt, enabledURaiConfigs).catch((error40) => {
|
|
437408
|
-
logMCPError("useManageMcpConnections", `Failed to get ur.
|
|
437445
|
+
logMCPError("useManageMcpConnections", `Failed to get ur.com MCP resources: ${errorMessage2(error40)}`);
|
|
437409
437446
|
});
|
|
437410
437447
|
}
|
|
437411
437448
|
}
|
|
@@ -438459,7 +438496,7 @@ function MCPRemoteServerMenu({
|
|
|
438459
438496
|
}, undefined, true, undefined, this) : /* @__PURE__ */ jsx_dev_runtime215.jsxDEV(jsx_dev_runtime215.Fragment, {
|
|
438460
438497
|
children: [
|
|
438461
438498
|
/* @__PURE__ */ jsx_dev_runtime215.jsxDEV(ThemedText, {
|
|
438462
|
-
children: 'This will open ur.
|
|
438499
|
+
children: 'This will open ur.com in the browser. Find the MCP server in the list and click "Disconnect".'
|
|
438463
438500
|
}, undefined, false, undefined, this),
|
|
438464
438501
|
/* @__PURE__ */ jsx_dev_runtime215.jsxDEV(ThemedBox_default, {
|
|
438465
438502
|
marginLeft: 3,
|
|
@@ -439818,7 +439855,7 @@ function MCPSettings(t0) {
|
|
|
439818
439855
|
t9 = $2[25];
|
|
439819
439856
|
}
|
|
439820
439857
|
const serverTools_0 = t9;
|
|
439821
|
-
const defaultTab = viewState.server.transport === "urai-proxy" ? "ur.
|
|
439858
|
+
const defaultTab = viewState.server.transport === "urai-proxy" ? "ur.com" : "UR";
|
|
439822
439859
|
if (viewState.server.transport === "stdio") {
|
|
439823
439860
|
let t10;
|
|
439824
439861
|
if ($2[26] !== viewState.server) {
|
|
@@ -450748,7 +450785,7 @@ function getAllReleaseNotes(changelogContent = getStoredChangelogFromMemory()) {
|
|
|
450748
450785
|
return [];
|
|
450749
450786
|
}
|
|
450750
450787
|
}
|
|
450751
|
-
async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.
|
|
450788
|
+
async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.72.0") {
|
|
450752
450789
|
if (process.env.USER_TYPE === "ant") {
|
|
450753
450790
|
const changelog = "";
|
|
450754
450791
|
if (changelog) {
|
|
@@ -450775,7 +450812,7 @@ async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.70.0")
|
|
|
450775
450812
|
releaseNotes
|
|
450776
450813
|
};
|
|
450777
450814
|
}
|
|
450778
|
-
function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.
|
|
450815
|
+
function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.72.0") {
|
|
450779
450816
|
if (process.env.USER_TYPE === "ant") {
|
|
450780
450817
|
const changelog = "";
|
|
450781
450818
|
if (changelog) {
|
|
@@ -453641,7 +453678,7 @@ function getRecentActivitySync() {
|
|
|
453641
453678
|
return cachedActivity;
|
|
453642
453679
|
}
|
|
453643
453680
|
function getLogoDisplayData() {
|
|
453644
|
-
const version2 = process.env.DEMO_VERSION ?? "1.
|
|
453681
|
+
const version2 = process.env.DEMO_VERSION ?? "1.72.0";
|
|
453645
453682
|
const serverUrl = getDirectConnectServerUrl();
|
|
453646
453683
|
const displayPath = process.env.DEMO_VERSION ? "/code/ur" : getDisplayPath(getCwd());
|
|
453647
453684
|
const cwd2 = serverUrl ? `${displayPath} in ${serverUrl.replace(/^https?:\/\//, "")}` : displayPath;
|
|
@@ -454508,7 +454545,7 @@ function LogoV2() {
|
|
|
454508
454545
|
if ($2[2] === Symbol.for("react.memo_cache_sentinel")) {
|
|
454509
454546
|
t2 = () => {
|
|
454510
454547
|
const currentConfig2 = getGlobalConfig();
|
|
454511
|
-
if (currentConfig2.lastReleaseNotesSeen === "1.
|
|
454548
|
+
if (currentConfig2.lastReleaseNotesSeen === "1.72.0") {
|
|
454512
454549
|
return;
|
|
454513
454550
|
}
|
|
454514
454551
|
saveGlobalConfig(_temp325);
|
|
@@ -455193,12 +455230,12 @@ function LogoV2() {
|
|
|
455193
455230
|
return t41;
|
|
455194
455231
|
}
|
|
455195
455232
|
function _temp325(current) {
|
|
455196
|
-
if (current.lastReleaseNotesSeen === "1.
|
|
455233
|
+
if (current.lastReleaseNotesSeen === "1.72.0") {
|
|
455197
455234
|
return current;
|
|
455198
455235
|
}
|
|
455199
455236
|
return {
|
|
455200
455237
|
...current,
|
|
455201
|
-
lastReleaseNotesSeen: "1.
|
|
455238
|
+
lastReleaseNotesSeen: "1.72.0"
|
|
455202
455239
|
};
|
|
455203
455240
|
}
|
|
455204
455241
|
function _temp241(s_0) {
|
|
@@ -455938,7 +455975,7 @@ var init_statusNoticeDefinitions = __esm(() => {
|
|
|
455938
455975
|
children: [
|
|
455939
455976
|
"\xB7 Trying to use",
|
|
455940
455977
|
" ",
|
|
455941
|
-
authTokenInfo.source === "ur.
|
|
455978
|
+
authTokenInfo.source === "ur.com" ? "ur.com" : authTokenInfo.source,
|
|
455942
455979
|
"?",
|
|
455943
455980
|
" ",
|
|
455944
455981
|
apiKeySource === "URHQ_API_KEY" ? 'Unset the URHQ_API_KEY environment variable, or ur /logout then say "No" to the API key approval before login.' : apiKeySource === "apiKeyHelper" ? "Unset the apiKeyHelper setting." : "ur /logout"
|
|
@@ -455951,7 +455988,7 @@ var init_statusNoticeDefinitions = __esm(() => {
|
|
|
455951
455988
|
apiKeySource,
|
|
455952
455989
|
"?",
|
|
455953
455990
|
" ",
|
|
455954
|
-
authTokenInfo.source === "ur.
|
|
455991
|
+
authTokenInfo.source === "ur.com" ? "ur /logout to sign out." : `Unset the ${authTokenInfo.source} environment variable.`
|
|
455955
455992
|
]
|
|
455956
455993
|
}, undefined, true, undefined, this)
|
|
455957
455994
|
]
|
|
@@ -462563,13 +462600,13 @@ async function launchAndDone(args, context6, onDone, billingNote, signal) {
|
|
|
462563
462600
|
var jsx_dev_runtime257, call36 = async (onDone, context6, args) => {
|
|
462564
462601
|
const gate = await checkOverageGate();
|
|
462565
462602
|
if (gate.kind === "not-enabled") {
|
|
462566
|
-
onDone("Free ultrareviews used. Enable Extra Usage at https://ur.
|
|
462603
|
+
onDone("Free ultrareviews used. Enable Extra Usage at https://ur.com/settings/billing to continue.", {
|
|
462567
462604
|
display: "system"
|
|
462568
462605
|
});
|
|
462569
462606
|
return null;
|
|
462570
462607
|
}
|
|
462571
462608
|
if (gate.kind === "low-balance") {
|
|
462572
|
-
onDone(`Balance too low to launch ultrareview ($${gate.available.toFixed(2)} available, $10 minimum). Top up at https://ur.
|
|
462609
|
+
onDone(`Balance too low to launch ultrareview ($${gate.available.toFixed(2)} available, $10 minimum). Top up at https://ur.com/settings/billing`, {
|
|
462573
462610
|
display: "system"
|
|
462574
462611
|
});
|
|
462575
462612
|
return null;
|
|
@@ -462596,7 +462633,7 @@ var init_ultrareviewCommand = __esm(() => {
|
|
|
462596
462633
|
});
|
|
462597
462634
|
|
|
462598
462635
|
// src/commands/review.ts
|
|
462599
|
-
var CCR_TERMS_URL = "https://docs.ur.
|
|
462636
|
+
var CCR_TERMS_URL = "https://docs.ur.com/docs/en/ur-on-the-web", LOCAL_REVIEW_PROMPT = (args) => `
|
|
462600
462637
|
You are an expert code reviewer. Follow these steps:
|
|
462601
462638
|
|
|
462602
462639
|
1. If no PR number is provided in the args, run \`gh pr list\` to show open PRs
|
|
@@ -463195,7 +463232,7 @@ var init_teammateViewHelpers = __esm(() => {
|
|
|
463195
463232
|
});
|
|
463196
463233
|
|
|
463197
463234
|
// src/bridge/types.ts
|
|
463198
|
-
var DEFAULT_SESSION_TIMEOUT_MS, BRIDGE_LOGIN_INSTRUCTION = "Remote Control is only available with ur.
|
|
463235
|
+
var DEFAULT_SESSION_TIMEOUT_MS, BRIDGE_LOGIN_INSTRUCTION = "Remote Control is only available with ur.com subscriptions. Please use `/login` to sign in with your ur.com account.", BRIDGE_LOGIN_ERROR, REMOTE_CONTROL_DISCONNECTED_MSG = "Remote Control disconnected.";
|
|
463199
463236
|
var init_types14 = __esm(() => {
|
|
463200
463237
|
DEFAULT_SESSION_TIMEOUT_MS = 24 * 60 * 60 * 1000;
|
|
463201
463238
|
BRIDGE_LOGIN_ERROR = `Error: You must be logged in to use Remote Control.
|
|
@@ -463707,7 +463744,7 @@ ${reasons}`,
|
|
|
463707
463744
|
} : prev);
|
|
463708
463745
|
}
|
|
463709
463746
|
}
|
|
463710
|
-
var ULTRAPLAN_TIMEOUT_MS, CCR_TERMS_URL2 = "https://docs.ur.
|
|
463747
|
+
var ULTRAPLAN_TIMEOUT_MS, CCR_TERMS_URL2 = "https://docs.ur.com/docs/en/ur-on-the-web", _rawPrompt, DEFAULT_INSTRUCTIONS, ULTRAPLAN_INSTRUCTIONS, call40 = async (onDone, context6, args) => {
|
|
463711
463748
|
const blurb = args.trim();
|
|
463712
463749
|
if (!blurb) {
|
|
463713
463750
|
const msg = await launchUltraplan({
|
|
@@ -472012,7 +472049,7 @@ function compileAgenticCiWorkflow(specName = "default", options2 = {}) {
|
|
|
472012
472049
|
if (spec.name !== specName) {
|
|
472013
472050
|
throw new Error("Agentic CI workflow spec name does not match");
|
|
472014
472051
|
}
|
|
472015
|
-
const packageVersion = options2.packageVersion ?? (typeof MACRO !== "undefined" ? "1.
|
|
472052
|
+
const packageVersion = options2.packageVersion ?? (typeof MACRO !== "undefined" ? "1.72.0" : "1.72.0");
|
|
472016
472053
|
if (!/^\d+\.\d+\.\d+(?:-[0-9A-Za-z.-]+)?$/.test(packageVersion)) {
|
|
472017
472054
|
throw new Error("invalid ur-agent package version");
|
|
472018
472055
|
}
|
|
@@ -473005,7 +473042,7 @@ runner; \`ur trigger\` is the inbound parser that decides what to run.
|
|
|
473005
473042
|
path: ".github/workflows/ur.yml",
|
|
473006
473043
|
root: "project",
|
|
473007
473044
|
content: compileAgenticCiWorkflow("default", {
|
|
473008
|
-
packageVersion: typeof MACRO !== "undefined" ? "1.
|
|
473045
|
+
packageVersion: typeof MACRO !== "undefined" ? "1.72.0" : "1.72.0"
|
|
473009
473046
|
})
|
|
473010
473047
|
},
|
|
473011
473048
|
{
|
|
@@ -473068,7 +473105,7 @@ function value(tokens, flag) {
|
|
|
473068
473105
|
return index2 >= 0 ? tokens[index2 + 1] : undefined;
|
|
473069
473106
|
}
|
|
473070
473107
|
function cliVersion() {
|
|
473071
|
-
return typeof MACRO !== "undefined" ? "1.
|
|
473108
|
+
return typeof MACRO !== "undefined" ? "1.72.0" : "1.72.0";
|
|
473072
473109
|
}
|
|
473073
473110
|
function workflowPath(cwd2) {
|
|
473074
473111
|
return join159(cwd2, ".github", "workflows", "ur-agentic-ci.yml");
|
|
@@ -478924,7 +478961,7 @@ function createAcpStdioApp(deps) {
|
|
|
478924
478961
|
}
|
|
478925
478962
|
},
|
|
478926
478963
|
authMethods: [],
|
|
478927
|
-
agentInfo: { name: "UR-Nexus", version: "1.
|
|
478964
|
+
agentInfo: { name: "UR-Nexus", version: "1.72.0" }
|
|
478928
478965
|
})).onRequest("authenticate", () => ({})).onRequest("session/new", async (context6) => {
|
|
478929
478966
|
const result = runtime2.newSession(context6.params.cwd, context6.params.mcpServers, context6.params.additionalDirectories);
|
|
478930
478967
|
await runtime2.announce({
|
|
@@ -479021,7 +479058,7 @@ function createAcpStdioAgent(deps) {
|
|
|
479021
479058
|
}
|
|
479022
479059
|
},
|
|
479023
479060
|
authMethods: [],
|
|
479024
|
-
agentInfo: { name: "UR-Nexus", version: "1.
|
|
479061
|
+
agentInfo: { name: "UR-Nexus", version: "1.72.0" }
|
|
479025
479062
|
});
|
|
479026
479063
|
return;
|
|
479027
479064
|
case "authenticate":
|
|
@@ -494327,7 +494364,7 @@ function desktopQaFixtureJsonSchema() {
|
|
|
494327
494364
|
});
|
|
494328
494365
|
return {
|
|
494329
494366
|
$schema: "https://json-schema.org/draft/2020-12/schema",
|
|
494330
|
-
$id: "https://ur.
|
|
494367
|
+
$id: "https://ur.com/schemas/desktop-qa-fixture-v1.json",
|
|
494331
494368
|
title: "UR desktop QA fixture",
|
|
494332
494369
|
type: "object",
|
|
494333
494370
|
additionalProperties: false,
|
|
@@ -678493,8 +678530,8 @@ function FastModePicker(t0) {
|
|
|
678493
678530
|
"Learn more:",
|
|
678494
678531
|
" ",
|
|
678495
678532
|
/* @__PURE__ */ jsx_dev_runtime286.jsxDEV(Link, {
|
|
678496
|
-
url: "https://docs.ur.
|
|
678497
|
-
children: "https://docs.ur.
|
|
678533
|
+
url: "https://docs.ur.com/docs/en/fast-mode",
|
|
678534
|
+
children: "https://docs.ur.com/docs/en/fast-mode"
|
|
678498
678535
|
}, undefined, false, undefined, this)
|
|
678499
678536
|
]
|
|
678500
678537
|
}, undefined, true, undefined, this);
|
|
@@ -678985,7 +679022,7 @@ function GracePeriodContentBody() {
|
|
|
678985
679022
|
children: [
|
|
678986
679023
|
"\u2014 Allow the use of your chats and coding sessions to train and improve URHQ AI models. Change anytime in your Privacy Settings (",
|
|
678987
679024
|
/* @__PURE__ */ jsx_dev_runtime289.jsxDEV(Link, {
|
|
678988
|
-
url: "https://ur.
|
|
679025
|
+
url: "https://ur.com/settings/data-privacy-controls"
|
|
678989
679026
|
}, undefined, false, undefined, this),
|
|
678990
679027
|
")."
|
|
678991
679028
|
]
|
|
@@ -679030,7 +679067,7 @@ function GracePeriodContentBody() {
|
|
|
679030
679067
|
let t6;
|
|
679031
679068
|
if ($2[6] === Symbol.for("react.memo_cache_sentinel")) {
|
|
679032
679069
|
t6 = /* @__PURE__ */ jsx_dev_runtime289.jsxDEV(Link, {
|
|
679033
|
-
url: "https://ur.
|
|
679070
|
+
url: "https://ur.com/legal/terms"
|
|
679034
679071
|
}, undefined, false, undefined, this);
|
|
679035
679072
|
$2[6] = t6;
|
|
679036
679073
|
} else {
|
|
@@ -679039,7 +679076,7 @@ function GracePeriodContentBody() {
|
|
|
679039
679076
|
let t7;
|
|
679040
679077
|
if ($2[7] === Symbol.for("react.memo_cache_sentinel")) {
|
|
679041
679078
|
t7 = /* @__PURE__ */ jsx_dev_runtime289.jsxDEV(Link, {
|
|
679042
|
-
url: "https://ur.
|
|
679079
|
+
url: "https://ur.com/legal/terms"
|
|
679043
679080
|
}, undefined, false, undefined, this);
|
|
679044
679081
|
$2[7] = t7;
|
|
679045
679082
|
} else {
|
|
@@ -679059,7 +679096,7 @@ function GracePeriodContentBody() {
|
|
|
679059
679096
|
t7,
|
|
679060
679097
|
") and Privacy Policy (",
|
|
679061
679098
|
/* @__PURE__ */ jsx_dev_runtime289.jsxDEV(Link, {
|
|
679062
|
-
url: "https://ur.
|
|
679099
|
+
url: "https://ur.com/legal/privacy"
|
|
679063
679100
|
}, undefined, false, undefined, this),
|
|
679064
679101
|
")"
|
|
679065
679102
|
]
|
|
@@ -679105,7 +679142,7 @@ function PostGracePeriodContentBody() {
|
|
|
679105
679142
|
children: "Allow the use of your chats and coding sessions to train and improve URHQ AI models. You can change this anytime in Privacy Settings"
|
|
679106
679143
|
}, undefined, false, undefined, this),
|
|
679107
679144
|
/* @__PURE__ */ jsx_dev_runtime289.jsxDEV(Link, {
|
|
679108
|
-
url: "https://ur.
|
|
679145
|
+
url: "https://ur.com/settings/data-privacy-controls"
|
|
679109
679146
|
}, undefined, false, undefined, this)
|
|
679110
679147
|
]
|
|
679111
679148
|
}, undefined, true, undefined, this);
|
|
@@ -679142,7 +679179,7 @@ function PostGracePeriodContentBody() {
|
|
|
679142
679179
|
let t4;
|
|
679143
679180
|
if ($2[4] === Symbol.for("react.memo_cache_sentinel")) {
|
|
679144
679181
|
t4 = /* @__PURE__ */ jsx_dev_runtime289.jsxDEV(Link, {
|
|
679145
|
-
url: "https://ur.
|
|
679182
|
+
url: "https://ur.com/legal/terms"
|
|
679146
679183
|
}, undefined, false, undefined, this);
|
|
679147
679184
|
$2[4] = t4;
|
|
679148
679185
|
} else {
|
|
@@ -679151,7 +679188,7 @@ function PostGracePeriodContentBody() {
|
|
|
679151
679188
|
let t5;
|
|
679152
679189
|
if ($2[5] === Symbol.for("react.memo_cache_sentinel")) {
|
|
679153
679190
|
t5 = /* @__PURE__ */ jsx_dev_runtime289.jsxDEV(Link, {
|
|
679154
|
-
url: "https://ur.
|
|
679191
|
+
url: "https://ur.com/legal/terms"
|
|
679155
679192
|
}, undefined, false, undefined, this);
|
|
679156
679193
|
$2[5] = t5;
|
|
679157
679194
|
} else {
|
|
@@ -679171,7 +679208,7 @@ function PostGracePeriodContentBody() {
|
|
|
679171
679208
|
t5,
|
|
679172
679209
|
") and Privacy Policy (",
|
|
679173
679210
|
/* @__PURE__ */ jsx_dev_runtime289.jsxDEV(Link, {
|
|
679174
|
-
url: "https://ur.
|
|
679211
|
+
url: "https://ur.com/legal/privacy"
|
|
679175
679212
|
}, undefined, false, undefined, this),
|
|
679176
679213
|
")"
|
|
679177
679214
|
]
|
|
@@ -679559,7 +679596,7 @@ function PrivacySettingsDialog(t0) {
|
|
|
679559
679596
|
"Review and manage your privacy settings at",
|
|
679560
679597
|
" ",
|
|
679561
679598
|
/* @__PURE__ */ jsx_dev_runtime289.jsxDEV(Link, {
|
|
679562
|
-
url: "https://ur.
|
|
679599
|
+
url: "https://ur.com/settings/data-privacy-controls"
|
|
679563
679600
|
}, undefined, false, undefined, this)
|
|
679564
679601
|
]
|
|
679565
679602
|
}, undefined, true, undefined, this);
|
|
@@ -679701,7 +679738,7 @@ async function call142(onDone) {
|
|
|
679701
679738
|
location: "settings"
|
|
679702
679739
|
}, undefined, false, undefined, this);
|
|
679703
679740
|
}
|
|
679704
|
-
var jsx_dev_runtime290, FALLBACK_MESSAGE = "Review and manage your privacy settings at https://ur.
|
|
679741
|
+
var jsx_dev_runtime290, FALLBACK_MESSAGE = "Review and manage your privacy settings at https://ur.com/settings/data-privacy-controls";
|
|
679705
679742
|
var init_privacy_settings = __esm(() => {
|
|
679706
679743
|
init_Grove();
|
|
679707
679744
|
init_analytics();
|
|
@@ -680239,7 +680276,7 @@ function SelectEventMode(t0) {
|
|
|
680239
680276
|
" This menu is read-only. To add or modify hooks, edit settings.json directly or ask UR.",
|
|
680240
680277
|
" ",
|
|
680241
680278
|
/* @__PURE__ */ jsx_dev_runtime291.jsxDEV(Link, {
|
|
680242
|
-
url: "https://docs.ur.
|
|
680279
|
+
url: "https://docs.ur.com/docs/en/hooks",
|
|
680243
680280
|
children: "Learn more"
|
|
680244
680281
|
}, undefined, false, undefined, this)
|
|
680245
680282
|
]
|
|
@@ -688186,7 +688223,7 @@ async function captureMemoryDiagnostics(trigger2, dumpNumber = 0) {
|
|
|
688186
688223
|
smapsRollup,
|
|
688187
688224
|
platform: process.platform,
|
|
688188
688225
|
nodeVersion: process.version,
|
|
688189
|
-
ccVersion: "1.
|
|
688226
|
+
ccVersion: "1.72.0"
|
|
688190
688227
|
};
|
|
688191
688228
|
}
|
|
688192
688229
|
async function performHeapDump(trigger2 = "manual", dumpNumber = 0) {
|
|
@@ -688766,7 +688803,7 @@ var init_bridge_kick = __esm(() => {
|
|
|
688766
688803
|
var call153 = async () => {
|
|
688767
688804
|
return {
|
|
688768
688805
|
type: "text",
|
|
688769
|
-
value: "1.
|
|
688806
|
+
value: "1.72.0"
|
|
688770
688807
|
};
|
|
688771
688808
|
}, version2, version_default;
|
|
688772
688809
|
var init_version = __esm(() => {
|
|
@@ -689482,8 +689519,8 @@ function OverridesSelect(t0) {
|
|
|
689482
689519
|
"Learn more:",
|
|
689483
689520
|
" ",
|
|
689484
689521
|
/* @__PURE__ */ jsx_dev_runtime325.jsxDEV(Link, {
|
|
689485
|
-
url: "https://docs.ur.
|
|
689486
|
-
children: "docs.ur.
|
|
689522
|
+
url: "https://docs.ur.com/docs/en/sandboxing#configure-sandboxing",
|
|
689523
|
+
children: "docs.ur.com/docs/en/sandboxing#configure-sandboxing"
|
|
689487
689524
|
}, undefined, false, undefined, this)
|
|
689488
689525
|
]
|
|
689489
689526
|
}, undefined, true, undefined, this)
|
|
@@ -689853,8 +689890,8 @@ function SandboxModeTab(t0) {
|
|
|
689853
689890
|
"Learn more:",
|
|
689854
689891
|
" ",
|
|
689855
689892
|
/* @__PURE__ */ jsx_dev_runtime326.jsxDEV(Link, {
|
|
689856
|
-
url: "https://docs.ur.
|
|
689857
|
-
children: "docs.ur.
|
|
689893
|
+
url: "https://docs.ur.com/docs/en/sandboxing",
|
|
689894
|
+
children: "docs.ur.com/docs/en/sandboxing"
|
|
689858
689895
|
}, undefined, false, undefined, this)
|
|
689859
689896
|
]
|
|
689860
689897
|
}, undefined, true, undefined, this)
|
|
@@ -690407,7 +690444,7 @@ async function isChromeExtensionInstalled() {
|
|
|
690407
690444
|
}
|
|
690408
690445
|
return isChromeExtensionInstalledPortable(browserPaths, logForDebugging);
|
|
690409
690446
|
}
|
|
690410
|
-
var CHROME_EXTENSION_RECONNECT_URL = "https://ur.
|
|
690447
|
+
var CHROME_EXTENSION_RECONNECT_URL = "https://ur.com/chrome/reconnect", NATIVE_HOST_IDENTIFIER = "com.urhq.ur_browser_extension", NATIVE_HOST_MANIFEST_NAME, shouldAutoEnable = undefined;
|
|
690411
690448
|
var init_setup2 = __esm(() => {
|
|
690412
690449
|
init_chromeMcpCompat();
|
|
690413
690450
|
init_state();
|
|
@@ -690642,7 +690679,7 @@ function URInChromeMenu(t0) {
|
|
|
690642
690679
|
if ($2[23] !== isURAISubscriber2) {
|
|
690643
690680
|
t8 = !isURAISubscriber2 && /* @__PURE__ */ jsx_dev_runtime328.jsxDEV(ThemedText, {
|
|
690644
690681
|
color: "error",
|
|
690645
|
-
children: "UR in Chrome requires a ur.
|
|
690682
|
+
children: "UR in Chrome requires a ur.com subscription."
|
|
690646
690683
|
}, undefined, false, undefined, this);
|
|
690647
690684
|
$2[23] = isURAISubscriber2;
|
|
690648
690685
|
$2[24] = t8;
|
|
@@ -690736,7 +690773,7 @@ function URInChromeMenu(t0) {
|
|
|
690736
690773
|
if ($2[33] === Symbol.for("react.memo_cache_sentinel")) {
|
|
690737
690774
|
t10 = /* @__PURE__ */ jsx_dev_runtime328.jsxDEV(ThemedText, {
|
|
690738
690775
|
dimColor: true,
|
|
690739
|
-
children: "Learn more: https://docs.ur.
|
|
690776
|
+
children: "Learn more: https://docs.ur.com/docs/en/chrome"
|
|
690740
690777
|
}, undefined, false, undefined, this);
|
|
690741
690778
|
$2[33] = t10;
|
|
690742
690779
|
} else {
|
|
@@ -690793,7 +690830,7 @@ function _temp268(c4) {
|
|
|
690793
690830
|
function _temp151(s) {
|
|
690794
690831
|
return s.mcp.clients;
|
|
690795
690832
|
}
|
|
690796
|
-
var import_compiler_runtime245, import_react179, jsx_dev_runtime328, CHROME_EXTENSION_URL = "https://ur.
|
|
690833
|
+
var import_compiler_runtime245, import_react179, jsx_dev_runtime328, CHROME_EXTENSION_URL = "https://ur.com/chrome", CHROME_PERMISSIONS_URL = "https://ur.com/chrome/permissions", CHROME_RECONNECT_URL = "https://ur.com/chrome/reconnect", call156 = async function(onDone) {
|
|
690797
690834
|
const isExtensionInstalled = await isChromeExtensionInstalled();
|
|
690798
690835
|
const config3 = getGlobalConfig();
|
|
690799
690836
|
const isSubscriber = isURAISubscriber();
|
|
@@ -693877,7 +693914,7 @@ function _temp155(env4) {
|
|
|
693877
693914
|
value: env4.environment_id
|
|
693878
693915
|
};
|
|
693879
693916
|
}
|
|
693880
|
-
var import_compiler_runtime249, import_react185, jsx_dev_runtime340, DIALOG_TITLE = "Select Remote Environment", SETUP_HINT = `Configure environments at: https://ur.
|
|
693917
|
+
var import_compiler_runtime249, import_react185, jsx_dev_runtime340, DIALOG_TITLE = "Select Remote Environment", SETUP_HINT = `Configure environments at: https://ur.com/code`;
|
|
693881
693918
|
var init_RemoteEnvironmentDialog = __esm(() => {
|
|
693882
693919
|
init_source2();
|
|
693883
693920
|
init_figures();
|
|
@@ -693954,7 +693991,7 @@ async function call166(onDone, context6) {
|
|
|
693954
693991
|
return null;
|
|
693955
693992
|
}
|
|
693956
693993
|
}
|
|
693957
|
-
const url3 = "https://ur.
|
|
693994
|
+
const url3 = "https://ur.com/upgrade/max";
|
|
693958
693995
|
await openBrowser(url3);
|
|
693959
693996
|
return /* @__PURE__ */ jsx_dev_runtime342.jsxDEV(Login, {
|
|
693960
693997
|
startingMessage: "Starting new login following /upgrade. Exit with Ctrl-C to use existing account.",
|
|
@@ -693965,7 +694002,7 @@ async function call166(onDone, context6) {
|
|
|
693965
694002
|
}, undefined, false, undefined, this);
|
|
693966
694003
|
} catch (error40) {
|
|
693967
694004
|
logError2(error40);
|
|
693968
|
-
setTimeout(onDone, 0, "Failed to open browser. Please visit https://ur.
|
|
694005
|
+
setTimeout(onDone, 0, "Failed to open browser. Please visit https://ur.com/upgrade/max to upgrade.");
|
|
693969
694006
|
}
|
|
693970
694007
|
return null;
|
|
693971
694008
|
}
|
|
@@ -699837,7 +699874,7 @@ function generateHtmlReport(data, insights) {
|
|
|
699837
699874
|
</html>`;
|
|
699838
699875
|
}
|
|
699839
699876
|
function buildExportData(data, insights, facets, remoteStats) {
|
|
699840
|
-
const version3 = typeof MACRO !== "undefined" ? "1.
|
|
699877
|
+
const version3 = typeof MACRO !== "undefined" ? "1.72.0" : "unknown";
|
|
699841
699878
|
const remote_hosts_collected = remoteStats?.hosts.filter((h2) => h2.sessionCount > 0).map((h2) => h2.name);
|
|
699842
699879
|
const facets_summary = {
|
|
699843
699880
|
total: facets.size,
|
|
@@ -704148,7 +704185,7 @@ var init_sessionStorage = __esm(() => {
|
|
|
704148
704185
|
init_settings2();
|
|
704149
704186
|
init_slowOperations();
|
|
704150
704187
|
init_uuid();
|
|
704151
|
-
VERSION7 = typeof MACRO !== "undefined" ? "1.
|
|
704188
|
+
VERSION7 = typeof MACRO !== "undefined" ? "1.72.0" : "unknown";
|
|
704152
704189
|
MAX_TOMBSTONE_REWRITE_BYTES = 50 * 1024 * 1024;
|
|
704153
704190
|
SKIP_FIRST_PROMPT_PATTERN = /^(?:\s*<[a-z][\w-]*[\s>]|\[Request interrupted by user[^\]]*\])/;
|
|
704154
704191
|
EPHEMERAL_PROGRESS_TYPES = new Set([
|
|
@@ -705363,7 +705400,7 @@ var init_filesystem = __esm(() => {
|
|
|
705363
705400
|
});
|
|
705364
705401
|
getBundledSkillsRoot = memoize_default(function getBundledSkillsRoot2() {
|
|
705365
705402
|
const nonce = randomBytes20(16).toString("hex");
|
|
705366
|
-
return join232(getURTempDir(), "bundled-skills", "1.
|
|
705403
|
+
return join232(getURTempDir(), "bundled-skills", "1.72.0", nonce);
|
|
705367
705404
|
});
|
|
705368
705405
|
getResolvedWorkingDirPaths = memoize_default(getPathsForPermissionCheck);
|
|
705369
705406
|
});
|
|
@@ -711095,7 +711132,7 @@ async function computeSimpleEnvInfo(modelId, additionalWorkingDirectories) {
|
|
|
711095
711132
|
modelDescription,
|
|
711096
711133
|
knowledgeCutoffMessage,
|
|
711097
711134
|
includeURProductInfo ? `UR uses the provider and model selected in /model. Do not invent UR-specific model IDs; choose models from the active provider's model list.` : null,
|
|
711098
|
-
includeURProductInfo ? `UR is available as a CLI in the terminal, desktop app (Mac/Windows), web app (ur.
|
|
711135
|
+
includeURProductInfo ? `UR is available as a CLI in the terminal, desktop app (Mac/Windows), web app (ur.com/code), and IDE extensions (VS Code, JetBrains).` : null,
|
|
711099
711136
|
includeURProductInfo ? `Fast mode for UR keeps the selected provider/model and requests faster output when that backend supports it. It can be toggled with /fast.` : null
|
|
711100
711137
|
].filter((item) => item !== null);
|
|
711101
711138
|
const repoMap = loadRepoMapForPrompt(cwd2);
|
|
@@ -711666,7 +711703,7 @@ function computeFingerprint(messageText2, version3) {
|
|
|
711666
711703
|
}
|
|
711667
711704
|
function computeFingerprintFromMessages(messages) {
|
|
711668
711705
|
const firstMessageText = extractFirstMessageText(messages);
|
|
711669
|
-
return computeFingerprint(firstMessageText, "1.
|
|
711706
|
+
return computeFingerprint(firstMessageText, "1.72.0");
|
|
711670
711707
|
}
|
|
711671
711708
|
var FINGERPRINT_SALT = "59cf53e54c78";
|
|
711672
711709
|
var init_fingerprint = () => {};
|
|
@@ -713562,7 +713599,7 @@ async function sideQuery(opts) {
|
|
|
713562
713599
|
betas.push(STRUCTURED_OUTPUTS_BETA_HEADER);
|
|
713563
713600
|
}
|
|
713564
713601
|
const messageText2 = extractFirstUserMessageText(messages);
|
|
713565
|
-
const fingerprint2 = computeFingerprint(messageText2, "1.
|
|
713602
|
+
const fingerprint2 = computeFingerprint(messageText2, "1.72.0");
|
|
713566
713603
|
const attributionHeader = getAttributionHeader(fingerprint2);
|
|
713567
713604
|
const systemBlocks = [
|
|
713568
713605
|
attributionHeader ? { type: "text", text: attributionHeader } : null,
|
|
@@ -717669,7 +717706,7 @@ function CostThresholdDialog(t0) {
|
|
|
717669
717706
|
children: "Learn more about how to monitor your spending:"
|
|
717670
717707
|
}, undefined, false, undefined, this),
|
|
717671
717708
|
/* @__PURE__ */ jsx_dev_runtime351.jsxDEV(Link, {
|
|
717672
|
-
url: "https://docs.ur.
|
|
717709
|
+
url: "https://docs.ur.com/docs/en/costs"
|
|
717673
717710
|
}, undefined, false, undefined, this)
|
|
717674
717711
|
]
|
|
717675
717712
|
}, undefined, true, undefined, this);
|
|
@@ -718349,7 +718386,7 @@ function buildSystemInitMessage(inputs) {
|
|
|
718349
718386
|
slash_commands: inputs.commands.filter((c4) => c4.userInvocable !== false).map((c4) => c4.name),
|
|
718350
718387
|
apiKeySource: getURHQApiKeyWithSource().source,
|
|
718351
718388
|
betas: getSdkBetas(),
|
|
718352
|
-
ur_version: "1.
|
|
718389
|
+
ur_version: "1.72.0",
|
|
718353
718390
|
output_style: outputStyle2,
|
|
718354
718391
|
agents: inputs.agents.map((agent2) => agent2.agentType),
|
|
718355
718392
|
skills: inputs.skills.filter((s) => s.userInvocable !== false).map((skill2) => skill2.name),
|
|
@@ -732209,7 +732246,7 @@ var init_useVoiceEnabled = __esm(() => {
|
|
|
732209
732246
|
function getSemverPart(version3) {
|
|
732210
732247
|
return `${import_semver13.major(version3, { loose: true })}.${import_semver13.minor(version3, { loose: true })}.${import_semver13.patch(version3, { loose: true })}`;
|
|
732211
732248
|
}
|
|
732212
|
-
function useUpdateNotification(updatedVersion, initialVersion = "1.
|
|
732249
|
+
function useUpdateNotification(updatedVersion, initialVersion = "1.72.0") {
|
|
732213
732250
|
const [lastNotifiedSemver, setLastNotifiedSemver] = import_react222.useState(() => getSemverPart(initialVersion));
|
|
732214
732251
|
if (!updatedVersion) {
|
|
732215
732252
|
return null;
|
|
@@ -732258,7 +732295,7 @@ function AutoUpdater({
|
|
|
732258
732295
|
return;
|
|
732259
732296
|
}
|
|
732260
732297
|
if (false) {}
|
|
732261
|
-
const currentVersion = "1.
|
|
732298
|
+
const currentVersion = "1.72.0";
|
|
732262
732299
|
const channel = getInitialSettings()?.autoUpdatesChannel ?? "latest";
|
|
732263
732300
|
let latestVersion = await getLatestVersion(channel);
|
|
732264
732301
|
const isDisabled = isAutoUpdaterDisabled();
|
|
@@ -732487,12 +732524,12 @@ function NativeAutoUpdater({
|
|
|
732487
732524
|
logEvent("tengu_native_auto_updater_start", {});
|
|
732488
732525
|
try {
|
|
732489
732526
|
const maxVersion = await getMaxVersion();
|
|
732490
|
-
if (maxVersion && gt("1.
|
|
732527
|
+
if (maxVersion && gt("1.72.0", maxVersion)) {
|
|
732491
732528
|
const msg = await getMaxVersionMessage();
|
|
732492
732529
|
setMaxVersionIssue(msg ?? "affects your version");
|
|
732493
732530
|
}
|
|
732494
732531
|
const result = await installLatest(channel);
|
|
732495
|
-
const currentVersion = "1.
|
|
732532
|
+
const currentVersion = "1.72.0";
|
|
732496
732533
|
const latencyMs = Date.now() - startTime;
|
|
732497
732534
|
if (result.lockFailed) {
|
|
732498
732535
|
logEvent("tengu_native_auto_updater_lock_contention", {
|
|
@@ -732629,17 +732666,17 @@ function PackageManagerAutoUpdater(t0) {
|
|
|
732629
732666
|
const maxVersion = await getMaxVersion();
|
|
732630
732667
|
if (maxVersion && latest && gt(latest, maxVersion)) {
|
|
732631
732668
|
logForDebugging(`PackageManagerAutoUpdater: maxVersion ${maxVersion} is set, capping update from ${latest} to ${maxVersion}`);
|
|
732632
|
-
if (gte("1.
|
|
732633
|
-
logForDebugging(`PackageManagerAutoUpdater: current version ${"1.
|
|
732669
|
+
if (gte("1.72.0", maxVersion)) {
|
|
732670
|
+
logForDebugging(`PackageManagerAutoUpdater: current version ${"1.72.0"} is already at or above maxVersion ${maxVersion}, skipping update`);
|
|
732634
732671
|
setUpdateAvailable(false);
|
|
732635
732672
|
return;
|
|
732636
732673
|
}
|
|
732637
732674
|
latest = maxVersion;
|
|
732638
732675
|
}
|
|
732639
|
-
const hasUpdate = latest && !gte("1.
|
|
732676
|
+
const hasUpdate = latest && !gte("1.72.0", latest) && !shouldSkipVersion(latest);
|
|
732640
732677
|
setUpdateAvailable(!!hasUpdate);
|
|
732641
732678
|
if (hasUpdate) {
|
|
732642
|
-
logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.
|
|
732679
|
+
logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.72.0"} -> ${latest}`);
|
|
732643
732680
|
}
|
|
732644
732681
|
};
|
|
732645
732682
|
$2[0] = t1;
|
|
@@ -732673,7 +732710,7 @@ function PackageManagerAutoUpdater(t0) {
|
|
|
732673
732710
|
wrap: "truncate",
|
|
732674
732711
|
children: [
|
|
732675
732712
|
"currentVersion: ",
|
|
732676
|
-
"1.
|
|
732713
|
+
"1.72.0"
|
|
732677
732714
|
]
|
|
732678
732715
|
}, undefined, true, undefined, this);
|
|
732679
732716
|
$2[3] = verbose;
|
|
@@ -743385,7 +743422,7 @@ function buildStatusLineCommandInput(permissionMode, exceeds200kTokens, settings
|
|
|
743385
743422
|
project_dir: getOriginalCwd(),
|
|
743386
743423
|
added_dirs: addedDirs
|
|
743387
743424
|
},
|
|
743388
|
-
version: "1.
|
|
743425
|
+
version: "1.72.0",
|
|
743389
743426
|
output_style: {
|
|
743390
743427
|
name: outputStyleName
|
|
743391
743428
|
},
|
|
@@ -743463,7 +743500,7 @@ function StatusLineInner({
|
|
|
743463
743500
|
const taskValues = Object.values(tasks2);
|
|
743464
743501
|
const taskRunningCount = taskValues.filter((task2) => task2.status === "running" || task2.status === "pending").length;
|
|
743465
743502
|
const defaultStatusLineText = buildDefaultStatusBar({
|
|
743466
|
-
version: "1.
|
|
743503
|
+
version: "1.72.0",
|
|
743467
743504
|
providerLabel: providerRuntime.providerLabel,
|
|
743468
743505
|
authMode: providerRuntime.authLabel,
|
|
743469
743506
|
model: renderModelName(mainLoopModel) || providerRuntime.model || "",
|
|
@@ -755554,7 +755591,7 @@ function RemoteCallout({
|
|
|
755554
755591
|
}, []);
|
|
755555
755592
|
const options4 = [{
|
|
755556
755593
|
label: "Enable Remote Control for this session",
|
|
755557
|
-
description: "Opens a secure connection to ur.
|
|
755594
|
+
description: "Opens a secure connection to ur.com.",
|
|
755558
755595
|
value: "enable"
|
|
755559
755596
|
}, {
|
|
755560
755597
|
label: "Never mind",
|
|
@@ -755573,7 +755610,7 @@ function RemoteCallout({
|
|
|
755573
755610
|
flexDirection: "column",
|
|
755574
755611
|
children: [
|
|
755575
755612
|
/* @__PURE__ */ jsx_dev_runtime433.jsxDEV(ThemedText, {
|
|
755576
|
-
children: "Remote Control lets you access this CLI session from the web (ur.
|
|
755613
|
+
children: "Remote Control lets you access this CLI session from the web (ur.com/code) or the UR app, so you can pick up where you left off on any device."
|
|
755577
755614
|
}, undefined, false, undefined, this),
|
|
755578
755615
|
/* @__PURE__ */ jsx_dev_runtime433.jsxDEV(ThemedText, {
|
|
755579
755616
|
children: " "
|
|
@@ -755641,7 +755678,7 @@ async function submitTranscriptShare(messages, trigger2, appearanceId) {
|
|
|
755641
755678
|
} catch {}
|
|
755642
755679
|
const data = {
|
|
755643
755680
|
trigger: trigger2,
|
|
755644
|
-
version: "1.
|
|
755681
|
+
version: "1.72.0",
|
|
755645
755682
|
platform: process.platform,
|
|
755646
755683
|
transcript,
|
|
755647
755684
|
subagentTranscripts: Object.keys(subagentTranscripts).length > 0 ? subagentTranscripts : undefined,
|
|
@@ -756459,7 +756496,7 @@ function TranscriptSharePrompt(t0) {
|
|
|
756459
756496
|
marginLeft: 2,
|
|
756460
756497
|
children: /* @__PURE__ */ jsx_dev_runtime434.jsxDEV(ThemedText, {
|
|
756461
756498
|
dimColor: true,
|
|
756462
|
-
children: "Learn more: https://docs.ur.
|
|
756499
|
+
children: "Learn more: https://docs.ur.com/docs/en/data-usage#session-quality-surveys"
|
|
756463
756500
|
}, undefined, false, undefined, this)
|
|
756464
756501
|
}, undefined, false, undefined, this);
|
|
756465
756502
|
$2[7] = t4;
|
|
@@ -756875,7 +756912,7 @@ async function _temp196() {
|
|
|
756875
756912
|
key: "chrome-requires-subscription",
|
|
756876
756913
|
jsx: /* @__PURE__ */ jsx_dev_runtime436.jsxDEV(ThemedText, {
|
|
756877
756914
|
color: "error",
|
|
756878
|
-
children: "UR in Chrome requires a ur.
|
|
756915
|
+
children: "UR in Chrome requires a ur.com subscription"
|
|
756879
756916
|
}, undefined, false, undefined, this),
|
|
756880
756917
|
priority: "immediate",
|
|
756881
756918
|
timeoutMs: 5000
|
|
@@ -756887,7 +756924,7 @@ async function _temp196() {
|
|
|
756887
756924
|
key: "chrome-extension-not-detected",
|
|
756888
756925
|
jsx: /* @__PURE__ */ jsx_dev_runtime436.jsxDEV(ThemedText, {
|
|
756889
756926
|
color: "warning",
|
|
756890
|
-
children: "Chrome extension not detected \xB7 https://ur.
|
|
756927
|
+
children: "Chrome extension not detected \xB7 https://ur.com/chrome to install"
|
|
756891
756928
|
}, undefined, false, undefined, this),
|
|
756892
756929
|
priority: "immediate",
|
|
756893
756930
|
timeoutMs: 3000
|
|
@@ -759486,7 +759523,7 @@ function useMcpConnectivityStatus(t0) {
|
|
|
759486
759523
|
color: "error",
|
|
759487
759524
|
children: [
|
|
759488
759525
|
failedURAiClients.length,
|
|
759489
|
-
" ur.
|
|
759526
|
+
" ur.com",
|
|
759490
759527
|
" ",
|
|
759491
759528
|
failedURAiClients.length === 1 ? "connector" : "connectors",
|
|
759492
759529
|
" ",
|
|
@@ -759536,7 +759573,7 @@ function useMcpConnectivityStatus(t0) {
|
|
|
759536
759573
|
color: "warning",
|
|
759537
759574
|
children: [
|
|
759538
759575
|
needsAuthURAiServers.length,
|
|
759539
|
-
" ur.
|
|
759576
|
+
" ur.com",
|
|
759540
759577
|
" ",
|
|
759541
759578
|
needsAuthURAiServers.length === 1 ? "connector needs" : "connectors need",
|
|
759542
759579
|
" ",
|
|
@@ -767120,7 +767157,7 @@ function MCPServerDialogCopy() {
|
|
|
767120
767157
|
"MCP servers may execute code or access system resources. All tool calls require approval. Learn more in the",
|
|
767121
767158
|
" ",
|
|
767122
767159
|
/* @__PURE__ */ jsx_dev_runtime457.jsxDEV(Link, {
|
|
767123
|
-
url: "https://docs.ur.
|
|
767160
|
+
url: "https://docs.ur.com/docs/en/mcp",
|
|
767124
767161
|
children: "MCP documentation"
|
|
767125
767162
|
}, undefined, false, undefined, this),
|
|
767126
767163
|
"."
|
|
@@ -767772,7 +767809,7 @@ function PreflightStep(t0) {
|
|
|
767772
767809
|
}, undefined, false, undefined, this),
|
|
767773
767810
|
/* @__PURE__ */ jsx_dev_runtime461.jsxDEV(ThemedText, {
|
|
767774
767811
|
color: "suggestion",
|
|
767775
|
-
children: "See https://docs.ur.
|
|
767812
|
+
children: "See https://docs.ur.com/docs/en/network-config"
|
|
767776
767813
|
}, undefined, false, undefined, this)
|
|
767777
767814
|
]
|
|
767778
767815
|
}, undefined, true, undefined, this) : /* @__PURE__ */ jsx_dev_runtime461.jsxDEV(ThemedBox_default, {
|
|
@@ -768006,7 +768043,7 @@ function WelcomeV2() {
|
|
|
768006
768043
|
dimColor: true,
|
|
768007
768044
|
children: [
|
|
768008
768045
|
"v",
|
|
768009
|
-
"1.
|
|
768046
|
+
"1.72.0"
|
|
768010
768047
|
]
|
|
768011
768048
|
}, undefined, true, undefined, this)
|
|
768012
768049
|
]
|
|
@@ -768256,7 +768293,7 @@ function Onboarding({
|
|
|
768256
768293
|
"For more details see:",
|
|
768257
768294
|
/* @__PURE__ */ jsx_dev_runtime466.jsxDEV(Newline, {}, undefined, false, undefined, this),
|
|
768258
768295
|
/* @__PURE__ */ jsx_dev_runtime466.jsxDEV(Link, {
|
|
768259
|
-
url: "https://docs.ur.
|
|
768296
|
+
url: "https://docs.ur.com/docs/en/security"
|
|
768260
768297
|
}, undefined, false, undefined, this)
|
|
768261
768298
|
]
|
|
768262
768299
|
}, undefined, true, undefined, this)
|
|
@@ -768830,7 +768867,7 @@ function TrustDialog(t0) {
|
|
|
768830
768867
|
t19 = /* @__PURE__ */ jsx_dev_runtime467.jsxDEV(ThemedText, {
|
|
768831
768868
|
dimColor: true,
|
|
768832
768869
|
children: /* @__PURE__ */ jsx_dev_runtime467.jsxDEV(Link, {
|
|
768833
|
-
url: "https://docs.ur.
|
|
768870
|
+
url: "https://docs.ur.com/docs/en/security",
|
|
768834
768871
|
children: "Security guide"
|
|
768835
768872
|
}, undefined, false, undefined, this)
|
|
768836
768873
|
}, undefined, false, undefined, this);
|
|
@@ -769015,7 +769052,7 @@ function BypassPermissionsModeDialog(t0) {
|
|
|
769015
769052
|
children: "By proceeding, you accept all responsibility for actions taken while running in Bypass Permissions mode."
|
|
769016
769053
|
}, undefined, false, undefined, this),
|
|
769017
769054
|
/* @__PURE__ */ jsx_dev_runtime468.jsxDEV(Link, {
|
|
769018
|
-
url: "https://docs.ur.
|
|
769055
|
+
url: "https://docs.ur.com/docs/en/security"
|
|
769019
769056
|
}, undefined, false, undefined, this)
|
|
769020
769057
|
]
|
|
769021
769058
|
}, undefined, true, undefined, this);
|
|
@@ -769201,7 +769238,7 @@ function URInChromeOnboarding(t0) {
|
|
|
769201
769238
|
" ",
|
|
769202
769239
|
"or visit ",
|
|
769203
769240
|
/* @__PURE__ */ jsx_dev_runtime469.jsxDEV(Link, {
|
|
769204
|
-
url: "https://docs.ur.
|
|
769241
|
+
url: "https://docs.ur.com/docs/en/chrome"
|
|
769205
769242
|
}, undefined, false, undefined, this)
|
|
769206
769243
|
]
|
|
769207
769244
|
}, undefined, true, undefined, this);
|
|
@@ -769248,7 +769285,7 @@ function _temp295(current) {
|
|
|
769248
769285
|
hasCompletedURInChromeOnboarding: true
|
|
769249
769286
|
};
|
|
769250
769287
|
}
|
|
769251
|
-
var import_compiler_runtime352, import_react322, jsx_dev_runtime469, CHROME_EXTENSION_URL2 = "https://ur.
|
|
769288
|
+
var import_compiler_runtime352, import_react322, jsx_dev_runtime469, CHROME_EXTENSION_URL2 = "https://ur.com/chrome", CHROME_PERMISSIONS_URL2 = "https://ur.com/chrome/permissions";
|
|
769252
769289
|
var init_URInChromeOnboarding = __esm(() => {
|
|
769253
769290
|
init_analytics();
|
|
769254
769291
|
init_ink2();
|
|
@@ -769266,7 +769303,7 @@ function completeOnboarding() {
|
|
|
769266
769303
|
saveGlobalConfig((current) => ({
|
|
769267
769304
|
...current,
|
|
769268
769305
|
hasCompletedOnboarding: true,
|
|
769269
|
-
lastOnboardingVersion: "1.
|
|
769306
|
+
lastOnboardingVersion: "1.72.0"
|
|
769270
769307
|
}));
|
|
769271
769308
|
}
|
|
769272
769309
|
function showDialog(root2, renderer) {
|
|
@@ -771950,7 +771987,7 @@ var init_keybindings3 = __esm(() => {
|
|
|
771950
771987
|
init_bundledSkills();
|
|
771951
771988
|
FILE_FORMAT_EXAMPLE = {
|
|
771952
771989
|
$schema: "https://www.schemastore.org/ur-keybindings.json",
|
|
771953
|
-
$docs: "https://docs.ur.
|
|
771990
|
+
$docs: "https://docs.ur.com/docs/en/keybindings",
|
|
771954
771991
|
bindings: [
|
|
771955
771992
|
{
|
|
771956
771993
|
context: "Chat",
|
|
@@ -774310,7 +774347,7 @@ function appendToLog(path24, message) {
|
|
|
774310
774347
|
cwd: getFsImplementation().cwd(),
|
|
774311
774348
|
userType: process.env.USER_TYPE,
|
|
774312
774349
|
sessionId: getSessionId(),
|
|
774313
|
-
version: "1.
|
|
774350
|
+
version: "1.72.0"
|
|
774314
774351
|
};
|
|
774315
774352
|
getLogWriter(path24).write(messageWithTimestamp);
|
|
774316
774353
|
}
|
|
@@ -778469,8 +778506,8 @@ async function getEnvLessBridgeConfig() {
|
|
|
778469
778506
|
}
|
|
778470
778507
|
async function checkEnvLessBridgeMinVersion() {
|
|
778471
778508
|
const cfg = await getEnvLessBridgeConfig();
|
|
778472
|
-
if (cfg.min_version && lt("1.
|
|
778473
|
-
return `Your version of UR (${"1.
|
|
778509
|
+
if (cfg.min_version && lt("1.72.0", cfg.min_version)) {
|
|
778510
|
+
return `Your version of UR (${"1.72.0"}) is too old for Remote Control.
|
|
778474
778511
|
Version ${cfg.min_version} or higher is required. Run \`ur update\` to update.`;
|
|
778475
778512
|
}
|
|
778476
778513
|
return null;
|
|
@@ -778944,7 +778981,7 @@ async function initBridgeCore(params) {
|
|
|
778944
778981
|
const rawApi = createBridgeApiClient({
|
|
778945
778982
|
baseUrl,
|
|
778946
778983
|
getAccessToken,
|
|
778947
|
-
runnerVersion: "1.
|
|
778984
|
+
runnerVersion: "1.72.0",
|
|
778948
778985
|
onDebug: logForDebugging,
|
|
778949
778986
|
onAuth401,
|
|
778950
778987
|
getTrustedDeviceToken
|
|
@@ -788417,7 +788454,7 @@ function getAgUiCapabilities() {
|
|
|
788417
788454
|
name: "UR-Nexus",
|
|
788418
788455
|
type: "ur-nexus",
|
|
788419
788456
|
description: "Provider-flexible, local-first autonomous engineering workflow agent.",
|
|
788420
|
-
version: "1.
|
|
788457
|
+
version: "1.72.0",
|
|
788421
788458
|
provider: "UR",
|
|
788422
788459
|
documentationUrl: "https://github.com/Maitham16/UR/blob/master/docs/AG_UI.md"
|
|
788423
788460
|
},
|
|
@@ -789557,7 +789594,7 @@ function createMCPServer(cwd4, debug2, verbose) {
|
|
|
789557
789594
|
};
|
|
789558
789595
|
const server2 = new Server({
|
|
789559
789596
|
name: "ur-nexus",
|
|
789560
|
-
version: "1.
|
|
789597
|
+
version: "1.72.0"
|
|
789561
789598
|
}, {
|
|
789562
789599
|
capabilities: {
|
|
789563
789600
|
tools: {}
|
|
@@ -790715,7 +790752,7 @@ function thrownResponse(error40) {
|
|
|
790715
790752
|
}
|
|
790716
790753
|
async function createUrMcp2026Runtime(options4) {
|
|
790717
790754
|
const server2 = createMCPServer(options4.cwd, options4.debug === true, options4.verbose === true);
|
|
790718
|
-
const client2 = new Client({ name: "ur-mcp-2026-adapter", version: "1.
|
|
790755
|
+
const client2 = new Client({ name: "ur-mcp-2026-adapter", version: "1.72.0" }, { capabilities: {} });
|
|
790719
790756
|
const [clientTransport, serverTransport] = createLinkedTransportPair();
|
|
790720
790757
|
try {
|
|
790721
790758
|
await server2.connect(serverTransport);
|
|
@@ -790726,7 +790763,7 @@ async function createUrMcp2026Runtime(options4) {
|
|
|
790726
790763
|
}
|
|
790727
790764
|
const runtime2 = new Mcp2026Runtime({
|
|
790728
790765
|
cwd: options4.cwd,
|
|
790729
|
-
version: "1.
|
|
790766
|
+
version: "1.72.0",
|
|
790730
790767
|
backend: {
|
|
790731
790768
|
listTools: async () => {
|
|
790732
790769
|
const listed = await client2.listTools();
|
|
@@ -792859,7 +792896,7 @@ async function update() {
|
|
|
792859
792896
|
logEvent("tengu_update_check", {});
|
|
792860
792897
|
const diagnostic2 = await getDoctorDiagnostic();
|
|
792861
792898
|
const result = await checkUpgradeStatus({
|
|
792862
|
-
currentVersion: "1.
|
|
792899
|
+
currentVersion: "1.72.0",
|
|
792863
792900
|
packageName: UR_AGENT_PACKAGE_NAME,
|
|
792864
792901
|
installationType: diagnostic2.installationType,
|
|
792865
792902
|
latestVersion: () => getLatestNpmPackageVersion(UR_AGENT_PACKAGE_NAME)
|
|
@@ -793717,7 +793754,7 @@ ${hint}` : hint;
|
|
|
793717
793754
|
blocked
|
|
793718
793755
|
} = filterMcpServersByPolicy(configs);
|
|
793719
793756
|
if (blocked.length > 0) {
|
|
793720
|
-
process.stderr.write(`Warning: ur.
|
|
793757
|
+
process.stderr.write(`Warning: ur.com MCP ${plural(blocked.length, "server")} blocked by enterprise policy: ${blocked.join(", ")}
|
|
793721
793758
|
`);
|
|
793722
793759
|
}
|
|
793723
793760
|
return allowed;
|
|
@@ -794175,7 +794212,7 @@ ${customInstructions}` : customInstructions;
|
|
|
794175
794212
|
}
|
|
794176
794213
|
}
|
|
794177
794214
|
logForDiagnosticsNoPII("info", "started", {
|
|
794178
|
-
version: "1.
|
|
794215
|
+
version: "1.72.0",
|
|
794179
794216
|
is_native_binary: isInBundledMode()
|
|
794180
794217
|
});
|
|
794181
794218
|
registerCleanup(async () => {
|
|
@@ -794340,7 +794377,7 @@ ${customInstructions}` : customInstructions;
|
|
|
794340
794377
|
suppressed.add(name);
|
|
794341
794378
|
}
|
|
794342
794379
|
if (suppressed.size > 0) {
|
|
794343
|
-
logForDebugging(`[MCP] Lazy dedup: suppressing ${suppressed.size} plugin server(s) that duplicate ur.
|
|
794380
|
+
logForDebugging(`[MCP] Lazy dedup: suppressing ${suppressed.size} plugin server(s) that duplicate ur.com connectors: ${[...suppressed].join(", ")}`);
|
|
794344
794381
|
for (const c4 of headlessStore.getState().mcp.clients) {
|
|
794345
794382
|
if (!suppressed.has(c4.name) || c4.type !== "connected")
|
|
794346
794383
|
continue;
|
|
@@ -794386,7 +794423,7 @@ ${customInstructions}` : customInstructions;
|
|
|
794386
794423
|
if (uraiTimer)
|
|
794387
794424
|
clearTimeout(uraiTimer);
|
|
794388
794425
|
if (uraiTimedOut) {
|
|
794389
|
-
logForDebugging(`[MCP] ur.
|
|
794426
|
+
logForDebugging(`[MCP] ur.com connectors not ready after ${UR_AI_MCP_TIMEOUT_MS}ms \u2014 proceeding; background connection continues`);
|
|
794390
794427
|
}
|
|
794391
794428
|
profileCheckpoint("after_connectMcp_urai");
|
|
794392
794429
|
if (!isBareMode()) {
|
|
@@ -794961,7 +794998,7 @@ Usage: ur --remote "your task description"`, () => gracefulShutdown(1));
|
|
|
794961
794998
|
pendingHookMessages
|
|
794962
794999
|
}, renderAndRun);
|
|
794963
795000
|
}
|
|
794964
|
-
}).version("1.
|
|
795001
|
+
}).version("1.72.0 (UR-Nexus)", "-v, --version", "Output the version number");
|
|
794965
795002
|
program2.option("-w, --worktree [name]", "Create a new git worktree for this session (optionally specify a name)");
|
|
794966
795003
|
program2.option("--tmux", "Create a tmux session for the worktree (requires --worktree). Uses iTerm2 native panes when available; use --tmux=classic for traditional tmux.");
|
|
794967
795004
|
if (canUserConfigureAdvisor()) {
|
|
@@ -796013,7 +796050,7 @@ if (false) {}
|
|
|
796013
796050
|
async function main2() {
|
|
796014
796051
|
const args = process.argv.slice(2);
|
|
796015
796052
|
if (args.length === 1 && (args[0] === "--version" || args[0] === "-v" || args[0] === "-V")) {
|
|
796016
|
-
console.log(`${"1.
|
|
796053
|
+
console.log(`${"1.72.0"} (UR-Nexus)`);
|
|
796017
796054
|
return;
|
|
796018
796055
|
}
|
|
796019
796056
|
if (args[0] === "a2a" && args[1] === "serve" && !args.includes("--help") && !args.includes("-h")) {
|