ur-agent 1.50.0 → 1.50.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,37 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 1.50.2
|
|
4
|
+
|
|
5
|
+
- Fixed local-provider sessions showing "Not logged in · Run /login" with no
|
|
6
|
+
account to log in to, introduced in 1.50.1. Credential ownership and URHQ
|
|
7
|
+
auth applicability are separate questions: an Ollama session uses the user's
|
|
8
|
+
own local runtime, so it is not third-party, but inference never reaches
|
|
9
|
+
URHQ and no URHQ credential exists to verify. `isURHQAuthEnabled()` now keys
|
|
10
|
+
off a dedicated `usesURHQSubscriptionAuth()` predicate, so only the
|
|
11
|
+
subscription provider — where `/login` is actionable — can report a missing
|
|
12
|
+
key. `/login` and `/logout` stay registered everywhere they are useful.
|
|
13
|
+
- Skipped a keychain and settings read on every session that cannot use URHQ
|
|
14
|
+
auth, by returning before the external-credential lookup instead of folding
|
|
15
|
+
the provider test into the final condition.
|
|
16
|
+
|
|
17
|
+
## 1.50.1
|
|
18
|
+
|
|
19
|
+
- Fixed an always-true provider test that silently disabled a large part of the
|
|
20
|
+
command surface. `isUsing3PServices()` was derived from `getAPIProvider()`,
|
|
21
|
+
a request-shaping enum that never returns `'firstParty'`, so the comparison
|
|
22
|
+
held for every user. Consequences: `/login` and `/logout` were never
|
|
23
|
+
registered; every `availability`-gated command failed its check, so
|
|
24
|
+
`/install-github-app`, `/fast`, `/chrome`, `/desktop`, `/install-slack-app`,
|
|
25
|
+
`/remote-setup`, `/upgrade`, `/usage`, and `/voice` reported "Unknown skill";
|
|
26
|
+
`ur auth status` classified every user as `third_party` and always logged in;
|
|
27
|
+
`is1PApiCustomer()` always returned false, suppressing three tips. Third-party
|
|
28
|
+
status is now derived from the provider registry — vendor API keys and
|
|
29
|
+
external CLI logins are third-party, while local, self-hosted, and
|
|
30
|
+
subscription runtimes are not.
|
|
31
|
+
- Ungated `/install-github-app`. It provisions a workflow and a repository
|
|
32
|
+
secret rather than consuming inference, and the API key is entered in the
|
|
33
|
+
flow, so it is now available on every provider including local runtimes.
|
|
34
|
+
|
|
3
35
|
## 1.50.0
|
|
4
36
|
|
|
5
37
|
- Completed `/install-github-app` so `@ur <task>` works from GitHub. The
|
package/dist/cli.js
CHANGED
|
@@ -73878,6 +73878,7 @@ var require_src6 = __commonJS((exports) => {
|
|
|
73878
73878
|
var exports_auth = {};
|
|
73879
73879
|
__export(exports_auth, {
|
|
73880
73880
|
validateForceLoginOrg: () => validateForceLoginOrg,
|
|
73881
|
+
usesURHQSubscriptionAuth: () => usesURHQSubscriptionAuth,
|
|
73881
73882
|
saveOAuthTokensIfNeeded: () => saveOAuthTokensIfNeeded,
|
|
73882
73883
|
saveApiKey: () => saveApiKey,
|
|
73883
73884
|
removeApiKey: () => removeApiKey,
|
|
@@ -73944,7 +73945,8 @@ function isURHQAuthEnabled() {
|
|
|
73944
73945
|
if (process.env.URHQ_UNIX_SOCKET) {
|
|
73945
73946
|
return !!process.env.UR_CODE_OAUTH_TOKEN;
|
|
73946
73947
|
}
|
|
73947
|
-
|
|
73948
|
+
if (!usesURHQSubscriptionAuth())
|
|
73949
|
+
return false;
|
|
73948
73950
|
const settings = getSettings_DEPRECATED() || {};
|
|
73949
73951
|
const apiKeyHelper = settings.apiKeyHelper;
|
|
73950
73952
|
const hasExternalAuthToken = process.env.URHQ_AUTH_TOKEN || apiKeyHelper || process.env.UR_CODE_API_KEY_FILE_DESCRIPTOR;
|
|
@@ -73952,7 +73954,7 @@ function isURHQAuthEnabled() {
|
|
|
73952
73954
|
skipRetrievingKeyFromApiKeyHelper: true
|
|
73953
73955
|
});
|
|
73954
73956
|
const hasExternalApiKey = apiKeySource === "URHQ_API_KEY" || apiKeySource === "apiKeyHelper";
|
|
73955
|
-
const shouldDisableAuth =
|
|
73957
|
+
const shouldDisableAuth = hasExternalAuthToken && !isManagedOAuthContext() || hasExternalApiKey && !isManagedOAuthContext();
|
|
73956
73958
|
return !shouldDisableAuth;
|
|
73957
73959
|
}
|
|
73958
73960
|
function getAuthTokenSource() {
|
|
@@ -74738,7 +74740,7 @@ function hasProfileScope() {
|
|
|
74738
74740
|
return getURAIOAuthTokens()?.scopes?.includes(UR_AI_PROFILE_SCOPE) ?? false;
|
|
74739
74741
|
}
|
|
74740
74742
|
function is1PApiCustomer() {
|
|
74741
|
-
if (
|
|
74743
|
+
if (isUsing3PServices()) {
|
|
74742
74744
|
return false;
|
|
74743
74745
|
}
|
|
74744
74746
|
if (isURAISubscriber()) {
|
|
@@ -74818,7 +74820,13 @@ function getSubscriptionName() {
|
|
|
74818
74820
|
}
|
|
74819
74821
|
}
|
|
74820
74822
|
function isUsing3PServices() {
|
|
74821
|
-
|
|
74823
|
+
const provider = getProviderDefinition(getRuntimeProviderId());
|
|
74824
|
+
if (provider.accessType === "api")
|
|
74825
|
+
return true;
|
|
74826
|
+
return provider.credentialType === "cli-login";
|
|
74827
|
+
}
|
|
74828
|
+
function usesURHQSubscriptionAuth() {
|
|
74829
|
+
return getProviderDefinition(getRuntimeProviderId()).credentialType === "subscription-login";
|
|
74822
74830
|
}
|
|
74823
74831
|
function getConfiguredOtelHeadersHelper() {
|
|
74824
74832
|
const mergedSettings = getSettings_DEPRECATED() || {};
|
|
@@ -74972,6 +74980,7 @@ var init_auth = __esm(() => {
|
|
|
74972
74980
|
init_analytics();
|
|
74973
74981
|
init_modelStrings();
|
|
74974
74982
|
init_providers();
|
|
74983
|
+
init_providerRegistry();
|
|
74975
74984
|
init_state();
|
|
74976
74985
|
init_mockRateLimits();
|
|
74977
74986
|
init_client();
|
|
@@ -75079,7 +75088,7 @@ var init_auth = __esm(() => {
|
|
|
75079
75088
|
|
|
75080
75089
|
// src/utils/userAgent.ts
|
|
75081
75090
|
function getURCodeUserAgent() {
|
|
75082
|
-
return `ur/${"1.50.
|
|
75091
|
+
return `ur/${"1.50.2"}`;
|
|
75083
75092
|
}
|
|
75084
75093
|
|
|
75085
75094
|
// src/utils/workloadContext.ts
|
|
@@ -75101,7 +75110,7 @@ function getUserAgent() {
|
|
|
75101
75110
|
const clientApp = process.env.UR_AGENT_SDK_CLIENT_APP ? `, client-app/${process.env.UR_AGENT_SDK_CLIENT_APP}` : "";
|
|
75102
75111
|
const workload = getWorkload();
|
|
75103
75112
|
const workloadSuffix = workload ? `, workload/${workload}` : "";
|
|
75104
|
-
return `ur-cli/${"1.50.
|
|
75113
|
+
return `ur-cli/${"1.50.2"} (${process.env.USER_TYPE}, ${process.env.UR_CODE_ENTRYPOINT ?? "cli"}${agentSdkVersion}${clientApp}${workloadSuffix})`;
|
|
75105
75114
|
}
|
|
75106
75115
|
function getMCPUserAgent() {
|
|
75107
75116
|
const parts = [];
|
|
@@ -75115,7 +75124,7 @@ function getMCPUserAgent() {
|
|
|
75115
75124
|
parts.push(`client-app/${process.env.UR_AGENT_SDK_CLIENT_APP}`);
|
|
75116
75125
|
}
|
|
75117
75126
|
const suffix = parts.length > 0 ? ` (${parts.join(", ")})` : "";
|
|
75118
|
-
return `ur/${"1.50.
|
|
75127
|
+
return `ur/${"1.50.2"}${suffix}`;
|
|
75119
75128
|
}
|
|
75120
75129
|
function getWebFetchUserAgent() {
|
|
75121
75130
|
return `UR-User (${getURCodeUserAgent()})`;
|
|
@@ -75253,7 +75262,7 @@ var init_user = __esm(() => {
|
|
|
75253
75262
|
deviceId,
|
|
75254
75263
|
sessionId: getSessionId(),
|
|
75255
75264
|
email: getEmail(),
|
|
75256
|
-
appVersion: "1.50.
|
|
75265
|
+
appVersion: "1.50.2",
|
|
75257
75266
|
platform: getHostPlatformForAnalytics(),
|
|
75258
75267
|
organizationUuid,
|
|
75259
75268
|
accountUuid,
|
|
@@ -83453,7 +83462,7 @@ var init_metadata = __esm(() => {
|
|
|
83453
83462
|
COMPOUND_OPERATOR_REGEX = /\s*(?:&&|\|\||[;|])\s*/;
|
|
83454
83463
|
WHITESPACE_REGEX = /\s+/;
|
|
83455
83464
|
getVersionBase = memoize_default(() => {
|
|
83456
|
-
const match = "1.50.
|
|
83465
|
+
const match = "1.50.2".match(/^\d+\.\d+\.\d+(?:-[a-z]+)?/);
|
|
83457
83466
|
return match ? match[0] : undefined;
|
|
83458
83467
|
});
|
|
83459
83468
|
buildEnvContext = memoize_default(async () => {
|
|
@@ -83493,7 +83502,7 @@ var init_metadata = __esm(() => {
|
|
|
83493
83502
|
isGithubAction: isEnvTruthy(process.env.GITHUB_ACTIONS),
|
|
83494
83503
|
isURCodeAction: isEnvTruthy(process.env.UR_CODE_ACTION),
|
|
83495
83504
|
isURAiAuth: isURAISubscriber(),
|
|
83496
|
-
version: "1.50.
|
|
83505
|
+
version: "1.50.2",
|
|
83497
83506
|
versionBase: getVersionBase(),
|
|
83498
83507
|
buildTime: "",
|
|
83499
83508
|
deploymentEnvironment: env2.detectDeploymentEnvironment(),
|
|
@@ -84163,7 +84172,7 @@ function initialize1PEventLogging() {
|
|
|
84163
84172
|
const platform2 = getPlatform();
|
|
84164
84173
|
const attributes = {
|
|
84165
84174
|
[import_semantic_conventions4.ATTR_SERVICE_NAME]: "ur",
|
|
84166
|
-
[import_semantic_conventions4.ATTR_SERVICE_VERSION]: "1.50.
|
|
84175
|
+
[import_semantic_conventions4.ATTR_SERVICE_VERSION]: "1.50.2"
|
|
84167
84176
|
};
|
|
84168
84177
|
if (platform2 === "wsl") {
|
|
84169
84178
|
const wslVersion = getWslVersion();
|
|
@@ -84191,7 +84200,7 @@ function initialize1PEventLogging() {
|
|
|
84191
84200
|
})
|
|
84192
84201
|
]
|
|
84193
84202
|
});
|
|
84194
|
-
firstPartyEventLogger = firstPartyEventLoggerProvider.getLogger("com.urhq.ur.events", "1.50.
|
|
84203
|
+
firstPartyEventLogger = firstPartyEventLoggerProvider.getLogger("com.urhq.ur.events", "1.50.2");
|
|
84195
84204
|
}
|
|
84196
84205
|
async function reinitialize1PEventLoggingIfConfigChanged() {
|
|
84197
84206
|
if (!is1PEventLoggingEnabled() || !firstPartyEventLoggerProvider) {
|
|
@@ -94007,7 +94016,7 @@ function formatAgentTrendReport(report = buildAgentTrendReport()) {
|
|
|
94007
94016
|
function formatA2AAgentCard(options = {}, pretty = true) {
|
|
94008
94017
|
return JSON.stringify(buildA2AAgentCard(options), null, pretty ? 2 : 0);
|
|
94009
94018
|
}
|
|
94010
|
-
var urVersion = "1.50.
|
|
94019
|
+
var urVersion = "1.50.2", researchSnapshotDate = "2026-07-15", coverage, priorityRoadmap;
|
|
94011
94020
|
var init_trends = __esm(() => {
|
|
94012
94021
|
init_a2aCardSignature();
|
|
94013
94022
|
coverage = [
|
|
@@ -96808,7 +96817,7 @@ function getAttributionHeader(fingerprint) {
|
|
|
96808
96817
|
if (!isAttributionHeaderEnabled()) {
|
|
96809
96818
|
return "";
|
|
96810
96819
|
}
|
|
96811
|
-
const version2 = `${"1.50.
|
|
96820
|
+
const version2 = `${"1.50.2"}.${fingerprint}`;
|
|
96812
96821
|
const entrypoint = process.env.UR_CODE_ENTRYPOINT ?? "unknown";
|
|
96813
96822
|
const cch = "";
|
|
96814
96823
|
const workload = getWorkload();
|
|
@@ -154493,7 +154502,7 @@ var init_projectSafety = __esm(() => {
|
|
|
154493
154502
|
function getInstruments() {
|
|
154494
154503
|
if (instruments)
|
|
154495
154504
|
return instruments;
|
|
154496
|
-
const meter = import_api10.metrics.getMeter("ur-agent.gen_ai", "1.50.
|
|
154505
|
+
const meter = import_api10.metrics.getMeter("ur-agent.gen_ai", "1.50.2");
|
|
154497
154506
|
instruments = {
|
|
154498
154507
|
operationDuration: meter.createHistogram("gen_ai.client.operation.duration", {
|
|
154499
154508
|
description: "GenAI operation duration.",
|
|
@@ -154591,7 +154600,7 @@ function genAiAgentAttributes() {
|
|
|
154591
154600
|
"gen_ai.operation.name": GEN_AI_OPERATION_INVOKE_AGENT,
|
|
154592
154601
|
"gen_ai.provider.name": "ur",
|
|
154593
154602
|
"gen_ai.agent.name": "UR-Nexus",
|
|
154594
|
-
"gen_ai.agent.version": "1.50.
|
|
154603
|
+
"gen_ai.agent.version": "1.50.2"
|
|
154595
154604
|
};
|
|
154596
154605
|
}
|
|
154597
154606
|
function genAiWorkflowAttributes(workflowName) {
|
|
@@ -154607,7 +154616,7 @@ function genAiWorkflowAttributes(workflowName) {
|
|
|
154607
154616
|
function startGenAiWorkflowSpan(workflowName) {
|
|
154608
154617
|
const attributes = genAiWorkflowAttributes(workflowName);
|
|
154609
154618
|
const name = typeof attributes["gen_ai.workflow.name"] === "string" ? `invoke_workflow ${attributes["gen_ai.workflow.name"]}` : GEN_AI_OPERATION_INVOKE_WORKFLOW;
|
|
154610
|
-
return import_api10.trace.getTracer("ur-agent.gen_ai", "1.50.
|
|
154619
|
+
return import_api10.trace.getTracer("ur-agent.gen_ai", "1.50.2").startSpan(name, { kind: import_api10.SpanKind.INTERNAL, attributes });
|
|
154611
154620
|
}
|
|
154612
154621
|
function endGenAiWorkflowSpan(span, options2 = {}) {
|
|
154613
154622
|
try {
|
|
@@ -154645,7 +154654,7 @@ function startGenAiMemorySpan(operation, options2 = {}) {
|
|
|
154645
154654
|
if (options2.recordCount !== undefined && Number.isInteger(options2.recordCount) && options2.recordCount >= 0) {
|
|
154646
154655
|
attributes["gen_ai.memory.record.count"] = options2.recordCount;
|
|
154647
154656
|
}
|
|
154648
|
-
return import_api10.trace.getTracer("ur-agent.gen_ai", "1.50.
|
|
154657
|
+
return import_api10.trace.getTracer("ur-agent.gen_ai", "1.50.2").startSpan(operation, { kind: import_api10.SpanKind.INTERNAL, attributes });
|
|
154649
154658
|
}
|
|
154650
154659
|
function endGenAiMemorySpan(span, options2 = {}) {
|
|
154651
154660
|
try {
|
|
@@ -206164,7 +206173,7 @@ function getTelemetryAttributes() {
|
|
|
206164
206173
|
attributes["session.id"] = sessionId;
|
|
206165
206174
|
}
|
|
206166
206175
|
if (shouldIncludeAttribute("OTEL_METRICS_INCLUDE_VERSION")) {
|
|
206167
|
-
attributes["app.version"] = "1.50.
|
|
206176
|
+
attributes["app.version"] = "1.50.2";
|
|
206168
206177
|
}
|
|
206169
206178
|
const oauthAccount = getOauthAccountInfo();
|
|
206170
206179
|
if (oauthAccount) {
|
|
@@ -252415,7 +252424,7 @@ function getInstallationEnv() {
|
|
|
252415
252424
|
return;
|
|
252416
252425
|
}
|
|
252417
252426
|
function getURCodeVersion() {
|
|
252418
|
-
return "1.50.
|
|
252427
|
+
return "1.50.2";
|
|
252419
252428
|
}
|
|
252420
252429
|
async function getInstalledVSCodeExtensionVersion(command) {
|
|
252421
252430
|
const { stdout } = await execFileNoThrow(command, ["--list-extensions", "--show-versions"], {
|
|
@@ -259746,7 +259755,7 @@ async function setupSdkMcpClients(sdkMcpConfigs, sendMcpMessage) {
|
|
|
259746
259755
|
const client2 = new Client({
|
|
259747
259756
|
name: "ur",
|
|
259748
259757
|
title: "UR",
|
|
259749
|
-
version: "1.50.
|
|
259758
|
+
version: "1.50.2",
|
|
259750
259759
|
description: "UR-Nexus autonomous engineering workflow engine",
|
|
259751
259760
|
websiteUrl: PRODUCT_URL
|
|
259752
259761
|
}, {
|
|
@@ -260106,7 +260115,7 @@ var init_client5 = __esm(() => {
|
|
|
260106
260115
|
const client2 = new Client({
|
|
260107
260116
|
name: "ur",
|
|
260108
260117
|
title: "UR",
|
|
260109
|
-
version: "1.50.
|
|
260118
|
+
version: "1.50.2",
|
|
260110
260119
|
description: "UR-Nexus autonomous engineering workflow engine",
|
|
260111
260120
|
websiteUrl: PRODUCT_URL
|
|
260112
260121
|
}, {
|
|
@@ -272707,7 +272716,7 @@ async function createRuntime() {
|
|
|
272707
272716
|
bootstrapTelemetry();
|
|
272708
272717
|
const resource = defaultResource().merge(detectResources({ detectors: [envDetector] })).merge(resourceFromAttributes({
|
|
272709
272718
|
[import_semantic_conventions7.ATTR_SERVICE_NAME]: "ur-agent",
|
|
272710
|
-
[import_semantic_conventions7.ATTR_SERVICE_VERSION]: "1.50.
|
|
272719
|
+
[import_semantic_conventions7.ATTR_SERVICE_VERSION]: "1.50.2"
|
|
272711
272720
|
}));
|
|
272712
272721
|
const tracerProvider = exporters.traces.length > 0 ? new BasicTracerProvider({
|
|
272713
272722
|
resource,
|
|
@@ -272740,11 +272749,11 @@ async function createRuntime() {
|
|
|
272740
272749
|
setMeterProvider(meterProvider);
|
|
272741
272750
|
setLoggerProvider(loggerProvider);
|
|
272742
272751
|
if (meterProvider) {
|
|
272743
|
-
const meter = meterProvider.getMeter("ur-agent", "1.50.
|
|
272752
|
+
const meter = meterProvider.getMeter("ur-agent", "1.50.2");
|
|
272744
272753
|
setMeter(meter, (name, options2) => meter.createCounter(name, options2));
|
|
272745
272754
|
}
|
|
272746
272755
|
if (loggerProvider) {
|
|
272747
|
-
setEventLogger(loggerProvider.getLogger("ur-agent.events", "1.50.
|
|
272756
|
+
setEventLogger(loggerProvider.getLogger("ur-agent.events", "1.50.2"));
|
|
272748
272757
|
}
|
|
272749
272758
|
if (!cleanupRegistered2) {
|
|
272750
272759
|
cleanupRegistered2 = true;
|
|
@@ -273406,9 +273415,9 @@ async function assertMinVersion() {
|
|
|
273406
273415
|
if (false) {}
|
|
273407
273416
|
try {
|
|
273408
273417
|
const versionConfig = await getDynamicConfig_BLOCKS_ON_INIT("tengu_version_config", { minVersion: "0.0.0" });
|
|
273409
|
-
if (versionConfig.minVersion && lt("1.50.
|
|
273418
|
+
if (versionConfig.minVersion && lt("1.50.2", versionConfig.minVersion)) {
|
|
273410
273419
|
console.error(`
|
|
273411
|
-
It looks like your version of UR (${"1.50.
|
|
273420
|
+
It looks like your version of UR (${"1.50.2"}) needs an update.
|
|
273412
273421
|
A newer version (${versionConfig.minVersion} or higher) is required to continue.
|
|
273413
273422
|
|
|
273414
273423
|
To update, please run:
|
|
@@ -273624,7 +273633,7 @@ async function installGlobalPackage(specificVersion) {
|
|
|
273624
273633
|
logError2(new AutoUpdaterError("Another process is currently installing an update"));
|
|
273625
273634
|
logEvent("tengu_auto_updater_lock_contention", {
|
|
273626
273635
|
pid: process.pid,
|
|
273627
|
-
currentVersion: "1.50.
|
|
273636
|
+
currentVersion: "1.50.2"
|
|
273628
273637
|
});
|
|
273629
273638
|
return "in_progress";
|
|
273630
273639
|
}
|
|
@@ -273633,7 +273642,7 @@ async function installGlobalPackage(specificVersion) {
|
|
|
273633
273642
|
if (!env2.isRunningWithBun() && env2.isNpmFromWindowsPath()) {
|
|
273634
273643
|
logError2(new Error("Windows NPM detected in WSL environment"));
|
|
273635
273644
|
logEvent("tengu_auto_updater_windows_npm_in_wsl", {
|
|
273636
|
-
currentVersion: "1.50.
|
|
273645
|
+
currentVersion: "1.50.2"
|
|
273637
273646
|
});
|
|
273638
273647
|
console.error(`
|
|
273639
273648
|
Error: Windows NPM detected in WSL
|
|
@@ -274168,7 +274177,7 @@ function detectLinuxGlobPatternWarnings() {
|
|
|
274168
274177
|
}
|
|
274169
274178
|
async function getDoctorDiagnostic() {
|
|
274170
274179
|
const installationType = await getCurrentInstallationType();
|
|
274171
|
-
const version2 = typeof MACRO !== "undefined" ? "1.50.
|
|
274180
|
+
const version2 = typeof MACRO !== "undefined" ? "1.50.2" : "unknown";
|
|
274172
274181
|
const installationPath = await getInstallationPath();
|
|
274173
274182
|
const invokedBinary = getInvokedBinary();
|
|
274174
274183
|
const multipleInstallations = await detectMultipleInstallations();
|
|
@@ -275103,8 +275112,8 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
|
|
|
275103
275112
|
const maxVersion = await getMaxVersion();
|
|
275104
275113
|
if (maxVersion && gt(version2, maxVersion)) {
|
|
275105
275114
|
logForDebugging(`Native installer: maxVersion ${maxVersion} is set, capping update from ${version2} to ${maxVersion}`);
|
|
275106
|
-
if (gte("1.50.
|
|
275107
|
-
logForDebugging(`Native installer: current version ${"1.50.
|
|
275115
|
+
if (gte("1.50.2", maxVersion)) {
|
|
275116
|
+
logForDebugging(`Native installer: current version ${"1.50.2"} is already at or above maxVersion ${maxVersion}, skipping update`);
|
|
275108
275117
|
logEvent("tengu_native_update_skipped_max_version", {
|
|
275109
275118
|
latency_ms: Date.now() - startTime,
|
|
275110
275119
|
max_version: maxVersion,
|
|
@@ -275115,7 +275124,7 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
|
|
|
275115
275124
|
version2 = maxVersion;
|
|
275116
275125
|
}
|
|
275117
275126
|
}
|
|
275118
|
-
if (!forceReinstall && version2 === "1.50.
|
|
275127
|
+
if (!forceReinstall && version2 === "1.50.2" && await versionIsAvailable(version2) && await isPossibleURBinary(executablePath)) {
|
|
275119
275128
|
logForDebugging(`Found ${version2} at ${executablePath}, skipping install`);
|
|
275120
275129
|
logEvent("tengu_native_update_complete", {
|
|
275121
275130
|
latency_ms: Date.now() - startTime,
|
|
@@ -344908,7 +344917,7 @@ function isAnyTracingEnabled() {
|
|
|
344908
344917
|
return isTelemetryEnabled() || isEnhancedTelemetryEnabled() || isBetaTracingEnabled();
|
|
344909
344918
|
}
|
|
344910
344919
|
function getTracer() {
|
|
344911
|
-
return import_api39.trace.getTracer("ur-agent.gen_ai", "1.50.
|
|
344920
|
+
return import_api39.trace.getTracer("ur-agent.gen_ai", "1.50.2");
|
|
344912
344921
|
}
|
|
344913
344922
|
function createSpanAttributes(spanType, customAttributes = {}) {
|
|
344914
344923
|
const baseAttributes = getTelemetryAttributes();
|
|
@@ -374002,7 +374011,7 @@ function Feedback({
|
|
|
374002
374011
|
platform: env2.platform,
|
|
374003
374012
|
gitRepo: envInfo.isGit,
|
|
374004
374013
|
terminal: env2.terminal,
|
|
374005
|
-
version: "1.50.
|
|
374014
|
+
version: "1.50.2",
|
|
374006
374015
|
transcript: normalizeMessagesForAPI(messages),
|
|
374007
374016
|
errors: sanitizedErrors,
|
|
374008
374017
|
lastApiRequest: getLastAPIRequest(),
|
|
@@ -374194,7 +374203,7 @@ function Feedback({
|
|
|
374194
374203
|
", ",
|
|
374195
374204
|
env2.terminal,
|
|
374196
374205
|
", v",
|
|
374197
|
-
"1.50.
|
|
374206
|
+
"1.50.2"
|
|
374198
374207
|
]
|
|
374199
374208
|
}, undefined, true, undefined, this)
|
|
374200
374209
|
]
|
|
@@ -374300,7 +374309,7 @@ ${sanitizedDescription}
|
|
|
374300
374309
|
` + `**Environment Info**
|
|
374301
374310
|
` + `- Platform: ${env2.platform}
|
|
374302
374311
|
` + `- Terminal: ${env2.terminal}
|
|
374303
|
-
` + `- Version: ${"1.50.
|
|
374312
|
+
` + `- Version: ${"1.50.2"}
|
|
374304
374313
|
` + `- Feedback ID: ${feedbackId}
|
|
374305
374314
|
` + `
|
|
374306
374315
|
**Errors**
|
|
@@ -377411,7 +377420,7 @@ function buildPrimarySection() {
|
|
|
377411
377420
|
}, undefined, false, undefined, this);
|
|
377412
377421
|
return [{
|
|
377413
377422
|
label: "Version",
|
|
377414
|
-
value: "1.50.
|
|
377423
|
+
value: "1.50.2"
|
|
377415
377424
|
}, {
|
|
377416
377425
|
label: "Session name",
|
|
377417
377426
|
value: nameValue
|
|
@@ -380741,7 +380750,7 @@ function Config({
|
|
|
380741
380750
|
}
|
|
380742
380751
|
}, undefined, false, undefined, this)
|
|
380743
380752
|
}, undefined, false, undefined, this) : showSubmenu === "ChannelDowngrade" ? /* @__PURE__ */ jsx_dev_runtime178.jsxDEV(ChannelDowngradeDialog, {
|
|
380744
|
-
currentVersion: "1.50.
|
|
380753
|
+
currentVersion: "1.50.2",
|
|
380745
380754
|
onChoice: (choice) => {
|
|
380746
380755
|
setShowSubmenu(null);
|
|
380747
380756
|
setTabsHidden(false);
|
|
@@ -380753,7 +380762,7 @@ function Config({
|
|
|
380753
380762
|
autoUpdatesChannel: "stable"
|
|
380754
380763
|
};
|
|
380755
380764
|
if (choice === "stay") {
|
|
380756
|
-
newSettings.minimumVersion = "1.50.
|
|
380765
|
+
newSettings.minimumVersion = "1.50.2";
|
|
380757
380766
|
}
|
|
380758
380767
|
updateSettingsForSource("userSettings", newSettings);
|
|
380759
380768
|
setSettingsData((prev_27) => ({
|
|
@@ -388823,7 +388832,7 @@ function HelpV2(t0) {
|
|
|
388823
388832
|
let t6;
|
|
388824
388833
|
if ($2[31] !== tabs) {
|
|
388825
388834
|
t6 = /* @__PURE__ */ jsx_dev_runtime205.jsxDEV(Tabs, {
|
|
388826
|
-
title: `UR v${"1.50.
|
|
388835
|
+
title: `UR v${"1.50.2"}`,
|
|
388827
388836
|
color: "professionalBlue",
|
|
388828
388837
|
defaultTab: "general",
|
|
388829
388838
|
children: tabs
|
|
@@ -389740,7 +389749,7 @@ function buildToolUseContext(tools, readFileStateCache, toolPermissionContext, a
|
|
|
389740
389749
|
async function handleInitialize(options2) {
|
|
389741
389750
|
return {
|
|
389742
389751
|
name: "UR",
|
|
389743
|
-
version: "1.50.
|
|
389752
|
+
version: "1.50.2",
|
|
389744
389753
|
protocolVersion: "0.1.0",
|
|
389745
389754
|
workspaceRoot: options2.cwd,
|
|
389746
389755
|
capabilities: {
|
|
@@ -393392,7 +393401,7 @@ function compileAgenticCiWorkflow(specName = "default", options2 = {}) {
|
|
|
393392
393401
|
if (spec.name !== specName) {
|
|
393393
393402
|
throw new Error("Agentic CI workflow spec name does not match");
|
|
393394
393403
|
}
|
|
393395
|
-
const packageVersion = options2.packageVersion ?? (typeof MACRO !== "undefined" ? "1.50.
|
|
393404
|
+
const packageVersion = options2.packageVersion ?? (typeof MACRO !== "undefined" ? "1.50.2" : "1.50.2");
|
|
393396
393405
|
if (!/^\d+\.\d+\.\d+(?:-[0-9A-Za-z.-]+)?$/.test(packageVersion)) {
|
|
393397
393406
|
throw new Error("invalid ur-agent package version");
|
|
393398
393407
|
}
|
|
@@ -393818,7 +393827,7 @@ jobs:
|
|
|
393818
393827
|
var init_github_app = __esm(() => {
|
|
393819
393828
|
init_agenticCi();
|
|
393820
393829
|
import_yaml3 = __toESM(require_dist4(), 1);
|
|
393821
|
-
urVersion2 = typeof MACRO !== "undefined" ? "1.50.
|
|
393830
|
+
urVersion2 = typeof MACRO !== "undefined" ? "1.50.2" : "1.50.2";
|
|
393822
393831
|
WORKFLOW_CONTENT = compileAgenticCiWorkflow("default", {
|
|
393823
393832
|
packageVersion: urVersion2
|
|
393824
393833
|
});
|
|
@@ -396815,7 +396824,6 @@ var init_install_github_app2 = __esm(() => {
|
|
|
396815
396824
|
type: "local-jsx",
|
|
396816
396825
|
name: "install-github-app",
|
|
396817
396826
|
description: "Set up UR GitHub Actions for a repository",
|
|
396818
|
-
availability: ["ur-ai", "console"],
|
|
396819
396827
|
isEnabled: () => !isEnvTruthy(process.env.DISABLE_INSTALL_GITHUB_APP_COMMAND),
|
|
396820
396828
|
load: () => Promise.resolve().then(() => (init_install_github_app(), exports_install_github_app))
|
|
396821
396829
|
};
|
|
@@ -411817,7 +411825,7 @@ function getAllReleaseNotes(changelogContent = getStoredChangelogFromMemory()) {
|
|
|
411817
411825
|
return [];
|
|
411818
411826
|
}
|
|
411819
411827
|
}
|
|
411820
|
-
async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.50.
|
|
411828
|
+
async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.50.2") {
|
|
411821
411829
|
if (process.env.USER_TYPE === "ant") {
|
|
411822
411830
|
const changelog = "";
|
|
411823
411831
|
if (changelog) {
|
|
@@ -411844,7 +411852,7 @@ async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.50.0")
|
|
|
411844
411852
|
releaseNotes
|
|
411845
411853
|
};
|
|
411846
411854
|
}
|
|
411847
|
-
function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.50.
|
|
411855
|
+
function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.50.2") {
|
|
411848
411856
|
if (process.env.USER_TYPE === "ant") {
|
|
411849
411857
|
const changelog = "";
|
|
411850
411858
|
if (changelog) {
|
|
@@ -414701,7 +414709,7 @@ function getRecentActivitySync() {
|
|
|
414701
414709
|
return cachedActivity;
|
|
414702
414710
|
}
|
|
414703
414711
|
function getLogoDisplayData() {
|
|
414704
|
-
const version2 = process.env.DEMO_VERSION ?? "1.50.
|
|
414712
|
+
const version2 = process.env.DEMO_VERSION ?? "1.50.2";
|
|
414705
414713
|
const serverUrl = getDirectConnectServerUrl();
|
|
414706
414714
|
const displayPath = process.env.DEMO_VERSION ? "/code/ur" : getDisplayPath(getCwd());
|
|
414707
414715
|
const cwd2 = serverUrl ? `${displayPath} in ${serverUrl.replace(/^https?:\/\//, "")}` : displayPath;
|
|
@@ -415585,7 +415593,7 @@ function LogoV2() {
|
|
|
415585
415593
|
if ($2[2] === Symbol.for("react.memo_cache_sentinel")) {
|
|
415586
415594
|
t2 = () => {
|
|
415587
415595
|
const currentConfig2 = getGlobalConfig();
|
|
415588
|
-
if (currentConfig2.lastReleaseNotesSeen === "1.50.
|
|
415596
|
+
if (currentConfig2.lastReleaseNotesSeen === "1.50.2") {
|
|
415589
415597
|
return;
|
|
415590
415598
|
}
|
|
415591
415599
|
saveGlobalConfig(_temp327);
|
|
@@ -416270,12 +416278,12 @@ function LogoV2() {
|
|
|
416270
416278
|
return t41;
|
|
416271
416279
|
}
|
|
416272
416280
|
function _temp327(current) {
|
|
416273
|
-
if (current.lastReleaseNotesSeen === "1.50.
|
|
416281
|
+
if (current.lastReleaseNotesSeen === "1.50.2") {
|
|
416274
416282
|
return current;
|
|
416275
416283
|
}
|
|
416276
416284
|
return {
|
|
416277
416285
|
...current,
|
|
416278
|
-
lastReleaseNotesSeen: "1.50.
|
|
416286
|
+
lastReleaseNotesSeen: "1.50.2"
|
|
416279
416287
|
};
|
|
416280
416288
|
}
|
|
416281
416289
|
function _temp243(s_0) {
|
|
@@ -431771,7 +431779,7 @@ runner; \`ur trigger\` is the inbound parser that decides what to run.
|
|
|
431771
431779
|
path: ".github/workflows/ur.yml",
|
|
431772
431780
|
root: "project",
|
|
431773
431781
|
content: compileAgenticCiWorkflow("default", {
|
|
431774
|
-
packageVersion: typeof MACRO !== "undefined" ? "1.50.
|
|
431782
|
+
packageVersion: typeof MACRO !== "undefined" ? "1.50.2" : "1.50.2"
|
|
431775
431783
|
})
|
|
431776
431784
|
},
|
|
431777
431785
|
{
|
|
@@ -431834,7 +431842,7 @@ function value(tokens, flag) {
|
|
|
431834
431842
|
return index2 >= 0 ? tokens[index2 + 1] : undefined;
|
|
431835
431843
|
}
|
|
431836
431844
|
function cliVersion() {
|
|
431837
|
-
return typeof MACRO !== "undefined" ? "1.50.
|
|
431845
|
+
return typeof MACRO !== "undefined" ? "1.50.2" : "1.50.2";
|
|
431838
431846
|
}
|
|
431839
431847
|
function workflowPath(cwd2) {
|
|
431840
431848
|
return join155(cwd2, ".github", "workflows", "ur-agentic-ci.yml");
|
|
@@ -437690,7 +437698,7 @@ function createAcpStdioApp(deps) {
|
|
|
437690
437698
|
}
|
|
437691
437699
|
},
|
|
437692
437700
|
authMethods: [],
|
|
437693
|
-
agentInfo: { name: "UR-Nexus", version: "1.50.
|
|
437701
|
+
agentInfo: { name: "UR-Nexus", version: "1.50.2" }
|
|
437694
437702
|
})).onRequest("authenticate", () => ({})).onRequest("session/new", async (context6) => {
|
|
437695
437703
|
const result = runtime2.newSession(context6.params.cwd, context6.params.mcpServers, context6.params.additionalDirectories);
|
|
437696
437704
|
await runtime2.announce({
|
|
@@ -437787,7 +437795,7 @@ function createAcpStdioAgent(deps) {
|
|
|
437787
437795
|
}
|
|
437788
437796
|
},
|
|
437789
437797
|
authMethods: [],
|
|
437790
|
-
agentInfo: { name: "UR-Nexus", version: "1.50.
|
|
437798
|
+
agentInfo: { name: "UR-Nexus", version: "1.50.2" }
|
|
437791
437799
|
});
|
|
437792
437800
|
return;
|
|
437793
437801
|
case "authenticate":
|
|
@@ -645266,7 +645274,7 @@ async function captureMemoryDiagnostics(trigger2, dumpNumber = 0) {
|
|
|
645266
645274
|
smapsRollup,
|
|
645267
645275
|
platform: process.platform,
|
|
645268
645276
|
nodeVersion: process.version,
|
|
645269
|
-
ccVersion: "1.50.
|
|
645277
|
+
ccVersion: "1.50.2"
|
|
645270
645278
|
};
|
|
645271
645279
|
}
|
|
645272
645280
|
async function performHeapDump(trigger2 = "manual", dumpNumber = 0) {
|
|
@@ -645852,7 +645860,7 @@ var init_bridge_kick = __esm(() => {
|
|
|
645852
645860
|
var call145 = async () => {
|
|
645853
645861
|
return {
|
|
645854
645862
|
type: "text",
|
|
645855
|
-
value: "1.50.
|
|
645863
|
+
value: "1.50.2"
|
|
645856
645864
|
};
|
|
645857
645865
|
}, version2, version_default;
|
|
645858
645866
|
var init_version = __esm(() => {
|
|
@@ -656970,7 +656978,7 @@ function generateHtmlReport(data, insights) {
|
|
|
656970
656978
|
</html>`;
|
|
656971
656979
|
}
|
|
656972
656980
|
function buildExportData(data, insights, facets, remoteStats) {
|
|
656973
|
-
const version3 = typeof MACRO !== "undefined" ? "1.50.
|
|
656981
|
+
const version3 = typeof MACRO !== "undefined" ? "1.50.2" : "unknown";
|
|
656974
656982
|
const remote_hosts_collected = remoteStats?.hosts.filter((h2) => h2.sessionCount > 0).map((h2) => h2.name);
|
|
656975
656983
|
const facets_summary = {
|
|
656976
656984
|
total: facets.size,
|
|
@@ -661303,7 +661311,7 @@ var init_sessionStorage = __esm(() => {
|
|
|
661303
661311
|
init_settings2();
|
|
661304
661312
|
init_slowOperations();
|
|
661305
661313
|
init_uuid();
|
|
661306
|
-
VERSION7 = typeof MACRO !== "undefined" ? "1.50.
|
|
661314
|
+
VERSION7 = typeof MACRO !== "undefined" ? "1.50.2" : "unknown";
|
|
661307
661315
|
MAX_TOMBSTONE_REWRITE_BYTES = 50 * 1024 * 1024;
|
|
661308
661316
|
SKIP_FIRST_PROMPT_PATTERN = /^(?:\s*<[a-z][\w-]*[\s>]|\[Request interrupted by user[^\]]*\])/;
|
|
661309
661317
|
EPHEMERAL_PROGRESS_TYPES = new Set([
|
|
@@ -662518,7 +662526,7 @@ var init_filesystem = __esm(() => {
|
|
|
662518
662526
|
});
|
|
662519
662527
|
getBundledSkillsRoot = memoize_default(function getBundledSkillsRoot2() {
|
|
662520
662528
|
const nonce = randomBytes19(16).toString("hex");
|
|
662521
|
-
return join224(getURTempDir(), "bundled-skills", "1.50.
|
|
662529
|
+
return join224(getURTempDir(), "bundled-skills", "1.50.2", nonce);
|
|
662522
662530
|
});
|
|
662523
662531
|
getResolvedWorkingDirPaths = memoize_default(getPathsForPermissionCheck);
|
|
662524
662532
|
});
|
|
@@ -668813,7 +668821,7 @@ function computeFingerprint(messageText2, version3) {
|
|
|
668813
668821
|
}
|
|
668814
668822
|
function computeFingerprintFromMessages(messages) {
|
|
668815
668823
|
const firstMessageText = extractFirstMessageText(messages);
|
|
668816
|
-
return computeFingerprint(firstMessageText, "1.50.
|
|
668824
|
+
return computeFingerprint(firstMessageText, "1.50.2");
|
|
668817
668825
|
}
|
|
668818
668826
|
var FINGERPRINT_SALT = "59cf53e54c78";
|
|
668819
668827
|
var init_fingerprint = () => {};
|
|
@@ -670709,7 +670717,7 @@ async function sideQuery(opts) {
|
|
|
670709
670717
|
betas.push(STRUCTURED_OUTPUTS_BETA_HEADER);
|
|
670710
670718
|
}
|
|
670711
670719
|
const messageText2 = extractFirstUserMessageText(messages);
|
|
670712
|
-
const fingerprint2 = computeFingerprint(messageText2, "1.50.
|
|
670720
|
+
const fingerprint2 = computeFingerprint(messageText2, "1.50.2");
|
|
670713
670721
|
const attributionHeader = getAttributionHeader(fingerprint2);
|
|
670714
670722
|
const systemBlocks = [
|
|
670715
670723
|
attributionHeader ? { type: "text", text: attributionHeader } : null,
|
|
@@ -675480,7 +675488,7 @@ function buildSystemInitMessage(inputs) {
|
|
|
675480
675488
|
slash_commands: inputs.commands.filter((c4) => c4.userInvocable !== false).map((c4) => c4.name),
|
|
675481
675489
|
apiKeySource: getURHQApiKeyWithSource().source,
|
|
675482
675490
|
betas: getSdkBetas(),
|
|
675483
|
-
ur_version: "1.50.
|
|
675491
|
+
ur_version: "1.50.2",
|
|
675484
675492
|
output_style: outputStyle2,
|
|
675485
675493
|
agents: inputs.agents.map((agent2) => agent2.agentType),
|
|
675486
675494
|
skills: inputs.skills.filter((s) => s.userInvocable !== false).map((skill2) => skill2.name),
|
|
@@ -689340,7 +689348,7 @@ var init_useVoiceEnabled = __esm(() => {
|
|
|
689340
689348
|
function getSemverPart(version3) {
|
|
689341
689349
|
return `${import_semver13.major(version3, { loose: true })}.${import_semver13.minor(version3, { loose: true })}.${import_semver13.patch(version3, { loose: true })}`;
|
|
689342
689350
|
}
|
|
689343
|
-
function useUpdateNotification(updatedVersion, initialVersion = "1.50.
|
|
689351
|
+
function useUpdateNotification(updatedVersion, initialVersion = "1.50.2") {
|
|
689344
689352
|
const [lastNotifiedSemver, setLastNotifiedSemver] = import_react228.useState(() => getSemverPart(initialVersion));
|
|
689345
689353
|
if (!updatedVersion) {
|
|
689346
689354
|
return null;
|
|
@@ -689389,7 +689397,7 @@ function AutoUpdater({
|
|
|
689389
689397
|
return;
|
|
689390
689398
|
}
|
|
689391
689399
|
if (false) {}
|
|
689392
|
-
const currentVersion = "1.50.
|
|
689400
|
+
const currentVersion = "1.50.2";
|
|
689393
689401
|
const channel = getInitialSettings()?.autoUpdatesChannel ?? "latest";
|
|
689394
689402
|
let latestVersion = await getLatestVersion(channel);
|
|
689395
689403
|
const isDisabled = isAutoUpdaterDisabled();
|
|
@@ -689618,12 +689626,12 @@ function NativeAutoUpdater({
|
|
|
689618
689626
|
logEvent("tengu_native_auto_updater_start", {});
|
|
689619
689627
|
try {
|
|
689620
689628
|
const maxVersion = await getMaxVersion();
|
|
689621
|
-
if (maxVersion && gt("1.50.
|
|
689629
|
+
if (maxVersion && gt("1.50.2", maxVersion)) {
|
|
689622
689630
|
const msg = await getMaxVersionMessage();
|
|
689623
689631
|
setMaxVersionIssue(msg ?? "affects your version");
|
|
689624
689632
|
}
|
|
689625
689633
|
const result = await installLatest(channel);
|
|
689626
|
-
const currentVersion = "1.50.
|
|
689634
|
+
const currentVersion = "1.50.2";
|
|
689627
689635
|
const latencyMs = Date.now() - startTime;
|
|
689628
689636
|
if (result.lockFailed) {
|
|
689629
689637
|
logEvent("tengu_native_auto_updater_lock_contention", {
|
|
@@ -689760,17 +689768,17 @@ function PackageManagerAutoUpdater(t0) {
|
|
|
689760
689768
|
const maxVersion = await getMaxVersion();
|
|
689761
689769
|
if (maxVersion && latest && gt(latest, maxVersion)) {
|
|
689762
689770
|
logForDebugging(`PackageManagerAutoUpdater: maxVersion ${maxVersion} is set, capping update from ${latest} to ${maxVersion}`);
|
|
689763
|
-
if (gte("1.50.
|
|
689764
|
-
logForDebugging(`PackageManagerAutoUpdater: current version ${"1.50.
|
|
689771
|
+
if (gte("1.50.2", maxVersion)) {
|
|
689772
|
+
logForDebugging(`PackageManagerAutoUpdater: current version ${"1.50.2"} is already at or above maxVersion ${maxVersion}, skipping update`);
|
|
689765
689773
|
setUpdateAvailable(false);
|
|
689766
689774
|
return;
|
|
689767
689775
|
}
|
|
689768
689776
|
latest = maxVersion;
|
|
689769
689777
|
}
|
|
689770
|
-
const hasUpdate = latest && !gte("1.50.
|
|
689778
|
+
const hasUpdate = latest && !gte("1.50.2", latest) && !shouldSkipVersion(latest);
|
|
689771
689779
|
setUpdateAvailable(!!hasUpdate);
|
|
689772
689780
|
if (hasUpdate) {
|
|
689773
|
-
logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.50.
|
|
689781
|
+
logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.50.2"} -> ${latest}`);
|
|
689774
689782
|
}
|
|
689775
689783
|
};
|
|
689776
689784
|
$2[0] = t1;
|
|
@@ -689804,7 +689812,7 @@ function PackageManagerAutoUpdater(t0) {
|
|
|
689804
689812
|
wrap: "truncate",
|
|
689805
689813
|
children: [
|
|
689806
689814
|
"currentVersion: ",
|
|
689807
|
-
"1.50.
|
|
689815
|
+
"1.50.2"
|
|
689808
689816
|
]
|
|
689809
689817
|
}, undefined, true, undefined, this);
|
|
689810
689818
|
$2[3] = verbose;
|
|
@@ -700501,7 +700509,7 @@ function buildStatusLineCommandInput(permissionMode, exceeds200kTokens, settings
|
|
|
700501
700509
|
project_dir: getOriginalCwd(),
|
|
700502
700510
|
added_dirs: addedDirs
|
|
700503
700511
|
},
|
|
700504
|
-
version: "1.50.
|
|
700512
|
+
version: "1.50.2",
|
|
700505
700513
|
output_style: {
|
|
700506
700514
|
name: outputStyleName
|
|
700507
700515
|
},
|
|
@@ -700584,7 +700592,7 @@ function StatusLineInner({
|
|
|
700584
700592
|
const taskValues = Object.values(tasks2);
|
|
700585
700593
|
const taskRunningCount = taskValues.filter((task2) => task2.status === "running" || task2.status === "pending").length;
|
|
700586
700594
|
const defaultStatusLineText = buildDefaultStatusBar({
|
|
700587
|
-
version: "1.50.
|
|
700595
|
+
version: "1.50.2",
|
|
700588
700596
|
providerLabel: providerRuntime.providerLabel,
|
|
700589
700597
|
authMode: providerRuntime.authLabel,
|
|
700590
700598
|
model: providerRuntime.model ?? renderModelName(mainLoopModel),
|
|
@@ -712727,7 +712735,7 @@ async function submitTranscriptShare(messages, trigger2, appearanceId) {
|
|
|
712727
712735
|
} catch {}
|
|
712728
712736
|
const data = {
|
|
712729
712737
|
trigger: trigger2,
|
|
712730
|
-
version: "1.50.
|
|
712738
|
+
version: "1.50.2",
|
|
712731
712739
|
platform: process.platform,
|
|
712732
712740
|
transcript,
|
|
712733
712741
|
subagentTranscripts: Object.keys(subagentTranscripts).length > 0 ? subagentTranscripts : undefined,
|
|
@@ -725013,7 +725021,7 @@ function WelcomeV2() {
|
|
|
725013
725021
|
dimColor: true,
|
|
725014
725022
|
children: [
|
|
725015
725023
|
"v",
|
|
725016
|
-
"1.50.
|
|
725024
|
+
"1.50.2"
|
|
725017
725025
|
]
|
|
725018
725026
|
}, undefined, true, undefined, this)
|
|
725019
725027
|
]
|
|
@@ -726273,7 +726281,7 @@ function completeOnboarding() {
|
|
|
726273
726281
|
saveGlobalConfig((current) => ({
|
|
726274
726282
|
...current,
|
|
726275
726283
|
hasCompletedOnboarding: true,
|
|
726276
|
-
lastOnboardingVersion: "1.50.
|
|
726284
|
+
lastOnboardingVersion: "1.50.2"
|
|
726277
726285
|
}));
|
|
726278
726286
|
}
|
|
726279
726287
|
function showDialog(root2, renderer) {
|
|
@@ -731317,7 +731325,7 @@ function appendToLog(path24, message) {
|
|
|
731317
731325
|
cwd: getFsImplementation().cwd(),
|
|
731318
731326
|
userType: process.env.USER_TYPE,
|
|
731319
731327
|
sessionId: getSessionId(),
|
|
731320
|
-
version: "1.50.
|
|
731328
|
+
version: "1.50.2"
|
|
731321
731329
|
};
|
|
731322
731330
|
getLogWriter(path24).write(messageWithTimestamp);
|
|
731323
731331
|
}
|
|
@@ -735476,8 +735484,8 @@ async function getEnvLessBridgeConfig() {
|
|
|
735476
735484
|
}
|
|
735477
735485
|
async function checkEnvLessBridgeMinVersion() {
|
|
735478
735486
|
const cfg = await getEnvLessBridgeConfig();
|
|
735479
|
-
if (cfg.min_version && lt("1.50.
|
|
735480
|
-
return `Your version of UR (${"1.50.
|
|
735487
|
+
if (cfg.min_version && lt("1.50.2", cfg.min_version)) {
|
|
735488
|
+
return `Your version of UR (${"1.50.2"}) is too old for Remote Control.
|
|
735481
735489
|
Version ${cfg.min_version} or higher is required. Run \`ur update\` to update.`;
|
|
735482
735490
|
}
|
|
735483
735491
|
return null;
|
|
@@ -735951,7 +735959,7 @@ async function initBridgeCore(params) {
|
|
|
735951
735959
|
const rawApi = createBridgeApiClient({
|
|
735952
735960
|
baseUrl,
|
|
735953
735961
|
getAccessToken,
|
|
735954
|
-
runnerVersion: "1.50.
|
|
735962
|
+
runnerVersion: "1.50.2",
|
|
735955
735963
|
onDebug: logForDebugging,
|
|
735956
735964
|
onAuth401,
|
|
735957
735965
|
getTrustedDeviceToken
|
|
@@ -745420,7 +745428,7 @@ function getAgUiCapabilities() {
|
|
|
745420
745428
|
name: "UR-Nexus",
|
|
745421
745429
|
type: "ur-nexus",
|
|
745422
745430
|
description: "Provider-flexible, local-first autonomous engineering workflow agent.",
|
|
745423
|
-
version: "1.50.
|
|
745431
|
+
version: "1.50.2",
|
|
745424
745432
|
provider: "UR",
|
|
745425
745433
|
documentationUrl: "https://github.com/Maitham16/UR/blob/master/docs/AG_UI.md"
|
|
745426
745434
|
},
|
|
@@ -746560,7 +746568,7 @@ function createMCPServer(cwd4, debug2, verbose) {
|
|
|
746560
746568
|
};
|
|
746561
746569
|
const server2 = new Server({
|
|
746562
746570
|
name: "ur-nexus",
|
|
746563
|
-
version: "1.50.
|
|
746571
|
+
version: "1.50.2"
|
|
746564
746572
|
}, {
|
|
746565
746573
|
capabilities: {
|
|
746566
746574
|
tools: {}
|
|
@@ -747718,7 +747726,7 @@ function thrownResponse(error40) {
|
|
|
747718
747726
|
}
|
|
747719
747727
|
async function createUrMcp2026Runtime(options4) {
|
|
747720
747728
|
const server2 = createMCPServer(options4.cwd, options4.debug === true, options4.verbose === true);
|
|
747721
|
-
const client2 = new Client({ name: "ur-mcp-2026-adapter", version: "1.50.
|
|
747729
|
+
const client2 = new Client({ name: "ur-mcp-2026-adapter", version: "1.50.2" }, { capabilities: {} });
|
|
747722
747730
|
const [clientTransport, serverTransport] = createLinkedTransportPair();
|
|
747723
747731
|
try {
|
|
747724
747732
|
await server2.connect(serverTransport);
|
|
@@ -747729,7 +747737,7 @@ async function createUrMcp2026Runtime(options4) {
|
|
|
747729
747737
|
}
|
|
747730
747738
|
const runtime2 = new Mcp2026Runtime({
|
|
747731
747739
|
cwd: options4.cwd,
|
|
747732
|
-
version: "1.50.
|
|
747740
|
+
version: "1.50.2",
|
|
747733
747741
|
backend: {
|
|
747734
747742
|
listTools: async () => {
|
|
747735
747743
|
const listed = await client2.listTools();
|
|
@@ -749862,7 +749870,7 @@ async function update() {
|
|
|
749862
749870
|
logEvent("tengu_update_check", {});
|
|
749863
749871
|
const diagnostic2 = await getDoctorDiagnostic();
|
|
749864
749872
|
const result = await checkUpgradeStatus({
|
|
749865
|
-
currentVersion: "1.50.
|
|
749873
|
+
currentVersion: "1.50.2",
|
|
749866
749874
|
packageName: UR_AGENT_PACKAGE_NAME,
|
|
749867
749875
|
installationType: diagnostic2.installationType,
|
|
749868
749876
|
latestVersion: () => getLatestNpmPackageVersion(UR_AGENT_PACKAGE_NAME)
|
|
@@ -751178,7 +751186,7 @@ ${customInstructions}` : customInstructions;
|
|
|
751178
751186
|
}
|
|
751179
751187
|
}
|
|
751180
751188
|
logForDiagnosticsNoPII("info", "started", {
|
|
751181
|
-
version: "1.50.
|
|
751189
|
+
version: "1.50.2",
|
|
751182
751190
|
is_native_binary: isInBundledMode()
|
|
751183
751191
|
});
|
|
751184
751192
|
registerCleanup(async () => {
|
|
@@ -751964,7 +751972,7 @@ Usage: ur --remote "your task description"`, () => gracefulShutdown(1));
|
|
|
751964
751972
|
pendingHookMessages
|
|
751965
751973
|
}, renderAndRun);
|
|
751966
751974
|
}
|
|
751967
|
-
}).version("1.50.
|
|
751975
|
+
}).version("1.50.2 (UR-Nexus)", "-v, --version", "Output the version number");
|
|
751968
751976
|
program2.option("-w, --worktree [name]", "Create a new git worktree for this session (optionally specify a name)");
|
|
751969
751977
|
program2.option("--tmux", "Create a tmux session for the worktree (requires --worktree). Uses iTerm2 native panes when available; use --tmux=classic for traditional tmux.");
|
|
751970
751978
|
if (canUserConfigureAdvisor()) {
|
|
@@ -752980,7 +752988,7 @@ if (false) {}
|
|
|
752980
752988
|
async function main2() {
|
|
752981
752989
|
const args = process.argv.slice(2);
|
|
752982
752990
|
if (args.length === 1 && (args[0] === "--version" || args[0] === "-v" || args[0] === "-V")) {
|
|
752983
|
-
console.log(`${"1.50.
|
|
752991
|
+
console.log(`${"1.50.2"} (UR-Nexus)`);
|
|
752984
752992
|
return;
|
|
752985
752993
|
}
|
|
752986
752994
|
if (args[0] === "a2a" && args[1] === "serve" && !args.includes("--help") && !args.includes("-h")) {
|
package/documentation/index.html
CHANGED
|
@@ -45,7 +45,7 @@
|
|
|
45
45
|
<main id="content" class="content">
|
|
46
46
|
<header class="topbar">
|
|
47
47
|
<div>
|
|
48
|
-
<p class="eyebrow">Version 1.50.
|
|
48
|
+
<p class="eyebrow">Version 1.50.2</p>
|
|
49
49
|
<h1>UR-Nexus Documentation</h1>
|
|
50
50
|
<p class="lead">A practical, tutorial-style reference for installing, configuring, automating, extending, and operating UR-Nexus.</p>
|
|
51
51
|
</div>
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "ur-inline-diffs",
|
|
3
3
|
"displayName": "UR Inline Diffs",
|
|
4
4
|
"description": "Review, apply, and reject UR inline diff bundles from .ur/ide/diffs inside VS Code.",
|
|
5
|
-
"version": "1.50.
|
|
5
|
+
"version": "1.50.2",
|
|
6
6
|
"publisher": "ur-nexus",
|
|
7
7
|
"engines": {
|
|
8
8
|
"vscode": "^1.92.0"
|
package/package.json
CHANGED