ur-agent 1.43.3 → 1.43.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +17 -0
- package/dist/cli.js +235 -125
- package/documentation/index.html +1 -1
- package/extensions/vscode-ur-inline-diffs/package.json +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,22 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 1.43.5
|
|
4
|
+
|
|
5
|
+
- Fix model discovery for OpenAI-compatible providers (LM Studio, llama.cpp,
|
|
6
|
+
vLLM) when base_url omits the API version segment. Discovery and `ur provider
|
|
7
|
+
doctor` now also try `/v1/models` when base_url is just `host:port`, so
|
|
8
|
+
`/model` lists the server's models instead of "returned no models". The
|
|
9
|
+
doctor reports the path that actually returns models and warns when an
|
|
10
|
+
endpoint is reachable but empty, instead of a misleading bare-`/models` pass.
|
|
11
|
+
|
|
12
|
+
## 1.43.4
|
|
13
|
+
|
|
14
|
+
- Tolerate hallucinated extra parameters on tool calls: when input validation
|
|
15
|
+
fails only because of unrecognized keys (e.g. `title`/`description` on a
|
|
16
|
+
`Write` call), those keys are stripped and the call is re-validated instead
|
|
17
|
+
of failing with `An unexpected parameter X was provided`. Genuine errors
|
|
18
|
+
(missing required fields, type mismatches) still surface normally.
|
|
19
|
+
|
|
3
20
|
## 1.43.3
|
|
4
21
|
|
|
5
22
|
- Bias the assistant toward the interactive arrow-key select menu: the
|
package/dist/cli.js
CHANGED
|
@@ -51990,6 +51990,14 @@ function endpointUrl(baseUrl, kind) {
|
|
|
51990
51990
|
}
|
|
51991
51991
|
return `${trimmed}/models`;
|
|
51992
51992
|
}
|
|
51993
|
+
function openAiCompatibleModelUrls(baseUrl) {
|
|
51994
|
+
const trimmed = baseUrl.replace(/\/+$/, "");
|
|
51995
|
+
const urls = [`${trimmed}/models`];
|
|
51996
|
+
if (!/\/(v\d+|api)(\/|$)/i.test(trimmed)) {
|
|
51997
|
+
urls.push(`${trimmed}/v1/models`);
|
|
51998
|
+
}
|
|
51999
|
+
return urls;
|
|
52000
|
+
}
|
|
51993
52001
|
function isLocalBaseUrl(value) {
|
|
51994
52002
|
return LOCALHOST_RE.test(value);
|
|
51995
52003
|
}
|
|
@@ -52006,49 +52014,86 @@ async function checkEndpoint(definition, settings, adapters, result) {
|
|
|
52006
52014
|
addFailure(result, "missing base_url", "Run: ur config set base_url <url>");
|
|
52007
52015
|
return;
|
|
52008
52016
|
}
|
|
52009
|
-
const
|
|
52010
|
-
|
|
52011
|
-
|
|
52012
|
-
|
|
52013
|
-
|
|
52014
|
-
|
|
52017
|
+
const candidates = definition.endpointKind === "ollama" ? [endpointUrl(baseUrl, "ollama")] : openAiCompatibleModelUrls(baseUrl);
|
|
52018
|
+
const headers = definition.accessType === "api" && (adapters.env ?? process.env)[definition.envKey ?? ""] ? { Authorization: `Bearer ${(adapters.env ?? process.env)[definition.envKey ?? ""]}` } : undefined;
|
|
52019
|
+
const fetchImpl = adapters.fetch ?? fetch;
|
|
52020
|
+
let reachableUrl;
|
|
52021
|
+
let modelsUrl;
|
|
52022
|
+
let modelsBody = "";
|
|
52023
|
+
let lastStatus;
|
|
52024
|
+
let lastError;
|
|
52025
|
+
for (const candidate of candidates) {
|
|
52026
|
+
let response;
|
|
52027
|
+
try {
|
|
52028
|
+
response = await fetchImpl(candidate, { method: "GET", headers });
|
|
52029
|
+
} catch (error40) {
|
|
52030
|
+
lastError = error40 instanceof Error ? error40 : new Error(String(error40));
|
|
52031
|
+
continue;
|
|
52032
|
+
}
|
|
52015
52033
|
if (!response.ok) {
|
|
52034
|
+
lastStatus = response.status;
|
|
52035
|
+
continue;
|
|
52036
|
+
}
|
|
52037
|
+
reachableUrl ??= candidate;
|
|
52038
|
+
const body = await response.text().catch(() => "");
|
|
52039
|
+
let parsed = null;
|
|
52040
|
+
try {
|
|
52041
|
+
parsed = JSON.parse(body);
|
|
52042
|
+
} catch {
|
|
52043
|
+
parsed = null;
|
|
52044
|
+
}
|
|
52045
|
+
const names = definition.endpointKind === "ollama" ? parseOllamaModelNamesFromTags(parsed) : parseOpenAICompatibleModelNames(parsed);
|
|
52046
|
+
if (names.length > 0) {
|
|
52047
|
+
modelsUrl = candidate;
|
|
52048
|
+
modelsBody = body;
|
|
52049
|
+
break;
|
|
52050
|
+
}
|
|
52051
|
+
}
|
|
52052
|
+
if (!reachableUrl) {
|
|
52053
|
+
if (lastStatus !== undefined) {
|
|
52016
52054
|
result.checks.push({
|
|
52017
52055
|
name: "endpoint",
|
|
52018
52056
|
status: "fail",
|
|
52019
|
-
message: `${
|
|
52057
|
+
message: `${candidates[0]} returned HTTP ${lastStatus}.`
|
|
52020
52058
|
});
|
|
52021
|
-
addFailure(result, `endpoint returned HTTP ${
|
|
52022
|
-
|
|
52059
|
+
addFailure(result, `endpoint returned HTTP ${lastStatus}`, `Start the provider server or update base_url: ur config set base_url ${baseUrl}`);
|
|
52060
|
+
} else {
|
|
52061
|
+
result.checks.push({
|
|
52062
|
+
name: "endpoint",
|
|
52063
|
+
status: "fail",
|
|
52064
|
+
message: `${candidates[0]} is not reachable.`
|
|
52065
|
+
});
|
|
52066
|
+
addFailure(result, lastError?.message ?? "endpoint unavailable", `Start the provider server or update base_url: ur config set base_url ${baseUrl}`);
|
|
52023
52067
|
}
|
|
52068
|
+
return;
|
|
52069
|
+
}
|
|
52070
|
+
const chosenUrl = modelsUrl ?? reachableUrl;
|
|
52071
|
+
result.checks.push({
|
|
52072
|
+
name: "endpoint",
|
|
52073
|
+
status: "pass",
|
|
52074
|
+
message: `${chosenUrl} is reachable.`
|
|
52075
|
+
});
|
|
52076
|
+
if (!modelsUrl) {
|
|
52024
52077
|
result.checks.push({
|
|
52025
|
-
name: "
|
|
52026
|
-
status: "
|
|
52027
|
-
message: `${
|
|
52078
|
+
name: "models",
|
|
52079
|
+
status: "warn",
|
|
52080
|
+
message: `${reachableUrl} is reachable but returned no models. Load a model in the server, or check that base_url includes the API path (e.g. /v1).`
|
|
52028
52081
|
});
|
|
52029
|
-
|
|
52030
|
-
|
|
52031
|
-
|
|
52032
|
-
|
|
52033
|
-
|
|
52034
|
-
|
|
52035
|
-
|
|
52036
|
-
|
|
52037
|
-
|
|
52038
|
-
|
|
52039
|
-
|
|
52040
|
-
|
|
52041
|
-
|
|
52042
|
-
|
|
52043
|
-
}
|
|
52082
|
+
}
|
|
52083
|
+
if (settings.model) {
|
|
52084
|
+
if (modelsBody && !modelsBody.includes(settings.model)) {
|
|
52085
|
+
result.checks.push({
|
|
52086
|
+
name: "model",
|
|
52087
|
+
status: "warn",
|
|
52088
|
+
message: `Model "${settings.model}" was not found in the detectable model list.`
|
|
52089
|
+
});
|
|
52090
|
+
} else if (modelsBody) {
|
|
52091
|
+
result.checks.push({
|
|
52092
|
+
name: "model",
|
|
52093
|
+
status: "pass",
|
|
52094
|
+
message: `Model "${settings.model}" is detectable.`
|
|
52095
|
+
});
|
|
52044
52096
|
}
|
|
52045
|
-
} catch (error40) {
|
|
52046
|
-
result.checks.push({
|
|
52047
|
-
name: "endpoint",
|
|
52048
|
-
status: "fail",
|
|
52049
|
-
message: `${url3} is not reachable.`
|
|
52050
|
-
});
|
|
52051
|
-
addFailure(result, error40 instanceof Error ? error40.message : "endpoint unavailable", `Start the provider server or update base_url: ur config set base_url ${baseUrl}`);
|
|
52052
52097
|
}
|
|
52053
52098
|
}
|
|
52054
52099
|
async function checkSubscriptionProvider(definition, settings, adapters, result) {
|
|
@@ -52612,19 +52657,43 @@ async function discoverLiveModelsForProvider(provider, options = {}) {
|
|
|
52612
52657
|
if (!baseUrl) {
|
|
52613
52658
|
throw new Error(`No base_url configured for provider "${provider}".`);
|
|
52614
52659
|
}
|
|
52615
|
-
const url3 = endpointUrl(baseUrl, definition.endpointKind);
|
|
52616
52660
|
const env4 = options.adapters?.env ?? process.env;
|
|
52617
|
-
const
|
|
52618
|
-
|
|
52619
|
-
|
|
52620
|
-
|
|
52621
|
-
|
|
52622
|
-
|
|
52623
|
-
|
|
52661
|
+
const fetchImpl = options.adapters?.fetch ?? fetch;
|
|
52662
|
+
const headers = definition.accessType === "api" && definition.envKey && env4[definition.envKey] ? { Authorization: `Bearer ${env4[definition.envKey]}` } : undefined;
|
|
52663
|
+
if (definition.endpointKind === "ollama") {
|
|
52664
|
+
const url3 = endpointUrl(baseUrl, "ollama");
|
|
52665
|
+
const response = await fetchImpl(url3, { method: "GET", signal: options.signal, headers });
|
|
52666
|
+
if (!response.ok) {
|
|
52667
|
+
throw new Error(`${url3} returned HTTP ${response.status}.`);
|
|
52668
|
+
}
|
|
52669
|
+
const names = parseOllamaModelNamesFromTags(await response.json());
|
|
52670
|
+
return modelDefinitionsFromNames(provider, names, "live");
|
|
52624
52671
|
}
|
|
52625
|
-
|
|
52626
|
-
|
|
52627
|
-
|
|
52672
|
+
let reachedOk = false;
|
|
52673
|
+
let lastError;
|
|
52674
|
+
for (const url3 of openAiCompatibleModelUrls(baseUrl)) {
|
|
52675
|
+
let response;
|
|
52676
|
+
try {
|
|
52677
|
+
response = await fetchImpl(url3, { method: "GET", signal: options.signal, headers });
|
|
52678
|
+
} catch (error40) {
|
|
52679
|
+
lastError = error40 instanceof Error ? error40 : new Error(String(error40));
|
|
52680
|
+
continue;
|
|
52681
|
+
}
|
|
52682
|
+
if (!response.ok) {
|
|
52683
|
+
lastError = new Error(`${url3} returned HTTP ${response.status}.`);
|
|
52684
|
+
continue;
|
|
52685
|
+
}
|
|
52686
|
+
reachedOk = true;
|
|
52687
|
+
const body = await response.json().catch(() => null);
|
|
52688
|
+
const names = parseOpenAICompatibleModelNames(body);
|
|
52689
|
+
if (names.length > 0) {
|
|
52690
|
+
return modelDefinitionsFromNames(provider, names, "live");
|
|
52691
|
+
}
|
|
52692
|
+
}
|
|
52693
|
+
if (!reachedOk && lastError) {
|
|
52694
|
+
throw lastError;
|
|
52695
|
+
}
|
|
52696
|
+
return [];
|
|
52628
52697
|
}
|
|
52629
52698
|
function apiModelsRequest(provider, apiKey) {
|
|
52630
52699
|
switch (provider) {
|
|
@@ -71146,7 +71215,7 @@ var init_auth = __esm(() => {
|
|
|
71146
71215
|
|
|
71147
71216
|
// src/utils/userAgent.ts
|
|
71148
71217
|
function getURCodeUserAgent() {
|
|
71149
|
-
return `ur/${"1.43.
|
|
71218
|
+
return `ur/${"1.43.5"}`;
|
|
71150
71219
|
}
|
|
71151
71220
|
|
|
71152
71221
|
// src/utils/workloadContext.ts
|
|
@@ -71168,7 +71237,7 @@ function getUserAgent() {
|
|
|
71168
71237
|
const clientApp = process.env.UR_AGENT_SDK_CLIENT_APP ? `, client-app/${process.env.UR_AGENT_SDK_CLIENT_APP}` : "";
|
|
71169
71238
|
const workload = getWorkload();
|
|
71170
71239
|
const workloadSuffix = workload ? `, workload/${workload}` : "";
|
|
71171
|
-
return `ur-cli/${"1.43.
|
|
71240
|
+
return `ur-cli/${"1.43.5"} (${process.env.USER_TYPE}, ${process.env.UR_CODE_ENTRYPOINT ?? "cli"}${agentSdkVersion}${clientApp}${workloadSuffix})`;
|
|
71172
71241
|
}
|
|
71173
71242
|
function getMCPUserAgent() {
|
|
71174
71243
|
const parts = [];
|
|
@@ -71182,7 +71251,7 @@ function getMCPUserAgent() {
|
|
|
71182
71251
|
parts.push(`client-app/${process.env.UR_AGENT_SDK_CLIENT_APP}`);
|
|
71183
71252
|
}
|
|
71184
71253
|
const suffix = parts.length > 0 ? ` (${parts.join(", ")})` : "";
|
|
71185
|
-
return `ur/${"1.43.
|
|
71254
|
+
return `ur/${"1.43.5"}${suffix}`;
|
|
71186
71255
|
}
|
|
71187
71256
|
function getWebFetchUserAgent() {
|
|
71188
71257
|
return `UR-User (${getURCodeUserAgent()})`;
|
|
@@ -71320,7 +71389,7 @@ var init_user = __esm(() => {
|
|
|
71320
71389
|
deviceId,
|
|
71321
71390
|
sessionId: getSessionId(),
|
|
71322
71391
|
email: getEmail(),
|
|
71323
|
-
appVersion: "1.43.
|
|
71392
|
+
appVersion: "1.43.5",
|
|
71324
71393
|
platform: getHostPlatformForAnalytics(),
|
|
71325
71394
|
organizationUuid,
|
|
71326
71395
|
accountUuid,
|
|
@@ -77837,7 +77906,7 @@ var init_metadata = __esm(() => {
|
|
|
77837
77906
|
COMPOUND_OPERATOR_REGEX = /\s*(?:&&|\|\||[;|])\s*/;
|
|
77838
77907
|
WHITESPACE_REGEX = /\s+/;
|
|
77839
77908
|
getVersionBase = memoize_default(() => {
|
|
77840
|
-
const match = "1.43.
|
|
77909
|
+
const match = "1.43.5".match(/^\d+\.\d+\.\d+(?:-[a-z]+)?/);
|
|
77841
77910
|
return match ? match[0] : undefined;
|
|
77842
77911
|
});
|
|
77843
77912
|
buildEnvContext = memoize_default(async () => {
|
|
@@ -77877,7 +77946,7 @@ var init_metadata = __esm(() => {
|
|
|
77877
77946
|
isGithubAction: isEnvTruthy(process.env.GITHUB_ACTIONS),
|
|
77878
77947
|
isURCodeAction: isEnvTruthy(process.env.UR_CODE_ACTION),
|
|
77879
77948
|
isURAiAuth: isURAISubscriber(),
|
|
77880
|
-
version: "1.43.
|
|
77949
|
+
version: "1.43.5",
|
|
77881
77950
|
versionBase: getVersionBase(),
|
|
77882
77951
|
buildTime: "",
|
|
77883
77952
|
deploymentEnvironment: env2.detectDeploymentEnvironment(),
|
|
@@ -78547,7 +78616,7 @@ function initialize1PEventLogging() {
|
|
|
78547
78616
|
const platform2 = getPlatform();
|
|
78548
78617
|
const attributes = {
|
|
78549
78618
|
[import_semantic_conventions4.ATTR_SERVICE_NAME]: "ur",
|
|
78550
|
-
[import_semantic_conventions4.ATTR_SERVICE_VERSION]: "1.43.
|
|
78619
|
+
[import_semantic_conventions4.ATTR_SERVICE_VERSION]: "1.43.5"
|
|
78551
78620
|
};
|
|
78552
78621
|
if (platform2 === "wsl") {
|
|
78553
78622
|
const wslVersion = getWslVersion();
|
|
@@ -78574,7 +78643,7 @@ function initialize1PEventLogging() {
|
|
|
78574
78643
|
})
|
|
78575
78644
|
]
|
|
78576
78645
|
});
|
|
78577
|
-
firstPartyEventLogger = firstPartyEventLoggerProvider.getLogger("com.urhq.ur.events", "1.43.
|
|
78646
|
+
firstPartyEventLogger = firstPartyEventLoggerProvider.getLogger("com.urhq.ur.events", "1.43.5");
|
|
78578
78647
|
}
|
|
78579
78648
|
async function reinitialize1PEventLoggingIfConfigChanged() {
|
|
78580
78649
|
if (!is1PEventLoggingEnabled() || !firstPartyEventLoggerProvider) {
|
|
@@ -83873,7 +83942,7 @@ function formatAgentTrendReport(report = buildAgentTrendReport()) {
|
|
|
83873
83942
|
function formatA2AAgentCard(options = {}, pretty = true) {
|
|
83874
83943
|
return JSON.stringify(buildA2AAgentCard(options), null, pretty ? 2 : 0);
|
|
83875
83944
|
}
|
|
83876
|
-
var urVersion = "1.43.
|
|
83945
|
+
var urVersion = "1.43.5", coverage, priorityRoadmap;
|
|
83877
83946
|
var init_trends = __esm(() => {
|
|
83878
83947
|
coverage = [
|
|
83879
83948
|
{
|
|
@@ -85868,7 +85937,7 @@ function getAttributionHeader(fingerprint) {
|
|
|
85868
85937
|
if (!isAttributionHeaderEnabled()) {
|
|
85869
85938
|
return "";
|
|
85870
85939
|
}
|
|
85871
|
-
const version2 = `${"1.43.
|
|
85940
|
+
const version2 = `${"1.43.5"}.${fingerprint}`;
|
|
85872
85941
|
const entrypoint = process.env.UR_CODE_ENTRYPOINT ?? "unknown";
|
|
85873
85942
|
const cch = "";
|
|
85874
85943
|
const workload = getWorkload();
|
|
@@ -144545,6 +144614,45 @@ function createChildAbortController(parent, maxListeners) {
|
|
|
144545
144614
|
var DEFAULT_MAX_LISTENERS = 50;
|
|
144546
144615
|
var init_abortController = () => {};
|
|
144547
144616
|
|
|
144617
|
+
// src/utils/toolInputSanitize.ts
|
|
144618
|
+
function stripEmptyParameterNames(input) {
|
|
144619
|
+
if (typeof input !== "object" || input === null || Array.isArray(input)) {
|
|
144620
|
+
return { input, stripped: false };
|
|
144621
|
+
}
|
|
144622
|
+
if (!("" in input))
|
|
144623
|
+
return { input, stripped: false };
|
|
144624
|
+
const { "": _dropped, ...rest } = input;
|
|
144625
|
+
return { input: rest, stripped: true };
|
|
144626
|
+
}
|
|
144627
|
+
function stripUnrecognizedKeys(input, issues) {
|
|
144628
|
+
const unrecognized = issues.filter((issue2) => issue2.code === "unrecognized_keys");
|
|
144629
|
+
if (unrecognized.length === 0 || typeof input !== "object" || input === null) {
|
|
144630
|
+
return { input, stripped: [] };
|
|
144631
|
+
}
|
|
144632
|
+
const clone3 = structuredClone(input);
|
|
144633
|
+
const stripped = [];
|
|
144634
|
+
for (const issue2 of unrecognized) {
|
|
144635
|
+
let target = clone3;
|
|
144636
|
+
for (const segment of issue2.path) {
|
|
144637
|
+
if (target === null || typeof target !== "object") {
|
|
144638
|
+
target = null;
|
|
144639
|
+
break;
|
|
144640
|
+
}
|
|
144641
|
+
target = target[segment];
|
|
144642
|
+
}
|
|
144643
|
+
if (target !== null && typeof target === "object") {
|
|
144644
|
+
const record2 = target;
|
|
144645
|
+
for (const key of issue2.keys ?? []) {
|
|
144646
|
+
if (key in record2) {
|
|
144647
|
+
delete record2[key];
|
|
144648
|
+
stripped.push(key);
|
|
144649
|
+
}
|
|
144650
|
+
}
|
|
144651
|
+
}
|
|
144652
|
+
}
|
|
144653
|
+
return { input: clone3, stripped };
|
|
144654
|
+
}
|
|
144655
|
+
|
|
144548
144656
|
// node_modules/highlight.js/lib/core.js
|
|
144549
144657
|
var require_core = __commonJS((exports, module) => {
|
|
144550
144658
|
function deepFreeze(obj) {
|
|
@@ -193771,7 +193879,7 @@ function getTelemetryAttributes() {
|
|
|
193771
193879
|
attributes["session.id"] = sessionId;
|
|
193772
193880
|
}
|
|
193773
193881
|
if (shouldIncludeAttribute("OTEL_METRICS_INCLUDE_VERSION")) {
|
|
193774
|
-
attributes["app.version"] = "1.43.
|
|
193882
|
+
attributes["app.version"] = "1.43.5";
|
|
193775
193883
|
}
|
|
193776
193884
|
const oauthAccount = getOauthAccountInfo();
|
|
193777
193885
|
if (oauthAccount) {
|
|
@@ -229159,7 +229267,7 @@ function getInstallationEnv() {
|
|
|
229159
229267
|
return;
|
|
229160
229268
|
}
|
|
229161
229269
|
function getURCodeVersion() {
|
|
229162
|
-
return "1.43.
|
|
229270
|
+
return "1.43.5";
|
|
229163
229271
|
}
|
|
229164
229272
|
async function getInstalledVSCodeExtensionVersion(command) {
|
|
229165
229273
|
const { stdout } = await execFileNoThrow(command, ["--list-extensions", "--show-versions"], {
|
|
@@ -231998,7 +232106,7 @@ async function setupSdkMcpClients(sdkMcpConfigs, sendMcpMessage) {
|
|
|
231998
232106
|
const client2 = new Client({
|
|
231999
232107
|
name: "ur",
|
|
232000
232108
|
title: "UR",
|
|
232001
|
-
version: "1.43.
|
|
232109
|
+
version: "1.43.5",
|
|
232002
232110
|
description: "UR-Nexus autonomous engineering workflow engine",
|
|
232003
232111
|
websiteUrl: PRODUCT_URL
|
|
232004
232112
|
}, {
|
|
@@ -232352,7 +232460,7 @@ var init_client5 = __esm(() => {
|
|
|
232352
232460
|
const client2 = new Client({
|
|
232353
232461
|
name: "ur",
|
|
232354
232462
|
title: "UR",
|
|
232355
|
-
version: "1.43.
|
|
232463
|
+
version: "1.43.5",
|
|
232356
232464
|
description: "UR-Nexus autonomous engineering workflow engine",
|
|
232357
232465
|
websiteUrl: PRODUCT_URL
|
|
232358
232466
|
}, {
|
|
@@ -242166,9 +242274,9 @@ async function assertMinVersion() {
|
|
|
242166
242274
|
if (false) {}
|
|
242167
242275
|
try {
|
|
242168
242276
|
const versionConfig = await getDynamicConfig_BLOCKS_ON_INIT("tengu_version_config", { minVersion: "0.0.0" });
|
|
242169
|
-
if (versionConfig.minVersion && lt("1.43.
|
|
242277
|
+
if (versionConfig.minVersion && lt("1.43.5", versionConfig.minVersion)) {
|
|
242170
242278
|
console.error(`
|
|
242171
|
-
It looks like your version of UR (${"1.43.
|
|
242279
|
+
It looks like your version of UR (${"1.43.5"}) needs an update.
|
|
242172
242280
|
A newer version (${versionConfig.minVersion} or higher) is required to continue.
|
|
242173
242281
|
|
|
242174
242282
|
To update, please run:
|
|
@@ -242384,7 +242492,7 @@ async function installGlobalPackage(specificVersion) {
|
|
|
242384
242492
|
logError2(new AutoUpdaterError("Another process is currently installing an update"));
|
|
242385
242493
|
logEvent("tengu_auto_updater_lock_contention", {
|
|
242386
242494
|
pid: process.pid,
|
|
242387
|
-
currentVersion: "1.43.
|
|
242495
|
+
currentVersion: "1.43.5"
|
|
242388
242496
|
});
|
|
242389
242497
|
return "in_progress";
|
|
242390
242498
|
}
|
|
@@ -242393,7 +242501,7 @@ async function installGlobalPackage(specificVersion) {
|
|
|
242393
242501
|
if (!env2.isRunningWithBun() && env2.isNpmFromWindowsPath()) {
|
|
242394
242502
|
logError2(new Error("Windows NPM detected in WSL environment"));
|
|
242395
242503
|
logEvent("tengu_auto_updater_windows_npm_in_wsl", {
|
|
242396
|
-
currentVersion: "1.43.
|
|
242504
|
+
currentVersion: "1.43.5"
|
|
242397
242505
|
});
|
|
242398
242506
|
console.error(`
|
|
242399
242507
|
Error: Windows NPM detected in WSL
|
|
@@ -242928,7 +243036,7 @@ function detectLinuxGlobPatternWarnings() {
|
|
|
242928
243036
|
}
|
|
242929
243037
|
async function getDoctorDiagnostic() {
|
|
242930
243038
|
const installationType = await getCurrentInstallationType();
|
|
242931
|
-
const version2 = typeof MACRO !== "undefined" ? "1.43.
|
|
243039
|
+
const version2 = typeof MACRO !== "undefined" ? "1.43.5" : "unknown";
|
|
242932
243040
|
const installationPath = await getInstallationPath();
|
|
242933
243041
|
const invokedBinary = getInvokedBinary();
|
|
242934
243042
|
const multipleInstallations = await detectMultipleInstallations();
|
|
@@ -243863,8 +243971,8 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
|
|
|
243863
243971
|
const maxVersion = await getMaxVersion();
|
|
243864
243972
|
if (maxVersion && gt(version2, maxVersion)) {
|
|
243865
243973
|
logForDebugging(`Native installer: maxVersion ${maxVersion} is set, capping update from ${version2} to ${maxVersion}`);
|
|
243866
|
-
if (gte("1.43.
|
|
243867
|
-
logForDebugging(`Native installer: current version ${"1.43.
|
|
243974
|
+
if (gte("1.43.5", maxVersion)) {
|
|
243975
|
+
logForDebugging(`Native installer: current version ${"1.43.5"} is already at or above maxVersion ${maxVersion}, skipping update`);
|
|
243868
243976
|
logEvent("tengu_native_update_skipped_max_version", {
|
|
243869
243977
|
latency_ms: Date.now() - startTime,
|
|
243870
243978
|
max_version: maxVersion,
|
|
@@ -243875,7 +243983,7 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
|
|
|
243875
243983
|
version2 = maxVersion;
|
|
243876
243984
|
}
|
|
243877
243985
|
}
|
|
243878
|
-
if (!forceReinstall && version2 === "1.43.
|
|
243986
|
+
if (!forceReinstall && version2 === "1.43.5" && await versionIsAvailable(version2) && await isPossibleURBinary(executablePath)) {
|
|
243879
243987
|
logForDebugging(`Found ${version2} at ${executablePath}, skipping install`);
|
|
243880
243988
|
logEvent("tengu_native_update_complete", {
|
|
243881
243989
|
latency_ms: Date.now() - startTime,
|
|
@@ -313966,7 +314074,20 @@ function buildSchemaNotSentHint(tool, messages, tools) {
|
|
|
313966
314074
|
This tool's schema was not sent to the API \u2014 it was not in the discovered-tool set derived from message history. ` + `Without the schema in your prompt, typed parameters (arrays, numbers, booleans) get emitted as strings and the client-side parser rejects them. ` + `Load the tool first: call ${TOOL_SEARCH_TOOL_NAME} with query "select:${tool.name}", then retry this call.`;
|
|
313967
314075
|
}
|
|
313968
314076
|
async function checkPermissionsAndCallTool(tool, toolUseID, input, toolUseContext, canUseTool, assistantMessage, messageId, requestId, mcpServerType, mcpServerBaseUrl, onToolProgress) {
|
|
313969
|
-
|
|
314077
|
+
let parsedInput = tool.inputSchema.safeParse(input);
|
|
314078
|
+
if (!parsedInput.success && parsedInput.error.issues.length > 0 && parsedInput.error.issues.every((issue2) => issue2.code === "unrecognized_keys")) {
|
|
314079
|
+
const { input: cleaned, stripped } = stripUnrecognizedKeys(input, parsedInput.error.issues);
|
|
314080
|
+
if (stripped.length > 0) {
|
|
314081
|
+
const retry = tool.inputSchema.safeParse(cleaned);
|
|
314082
|
+
if (retry.success) {
|
|
314083
|
+
logEvent("tengu_tool_input_unrecognized_keys_stripped", {
|
|
314084
|
+
toolName: sanitizeToolNameForAnalytics(tool.name)
|
|
314085
|
+
});
|
|
314086
|
+
input = cleaned;
|
|
314087
|
+
parsedInput = retry;
|
|
314088
|
+
}
|
|
314089
|
+
}
|
|
314090
|
+
}
|
|
313970
314091
|
if (!parsedInput.success) {
|
|
313971
314092
|
let errorContent = formatZodValidationError(tool.name, parsedInput.error);
|
|
313972
314093
|
const schemaHint = buildSchemaNotSentHint(tool, toolUseContext.messages, toolUseContext.options.tools);
|
|
@@ -329890,17 +330011,6 @@ ${EXPLANATORY_FEATURE_PROMPT}`
|
|
|
329890
330011
|
});
|
|
329891
330012
|
});
|
|
329892
330013
|
|
|
329893
|
-
// src/utils/toolInputSanitize.ts
|
|
329894
|
-
function stripEmptyParameterNames(input) {
|
|
329895
|
-
if (typeof input !== "object" || input === null || Array.isArray(input)) {
|
|
329896
|
-
return { input, stripped: false };
|
|
329897
|
-
}
|
|
329898
|
-
if (!("" in input))
|
|
329899
|
-
return { input, stripped: false };
|
|
329900
|
-
const { "": _dropped, ...rest } = input;
|
|
329901
|
-
return { input: rest, stripped: true };
|
|
329902
|
-
}
|
|
329903
|
-
|
|
329904
330014
|
// src/utils/messages.ts
|
|
329905
330015
|
import { randomUUID as randomUUID32 } from "crypto";
|
|
329906
330016
|
function getTeammateMailbox() {
|
|
@@ -340864,7 +340974,7 @@ function Feedback({
|
|
|
340864
340974
|
platform: env2.platform,
|
|
340865
340975
|
gitRepo: envInfo.isGit,
|
|
340866
340976
|
terminal: env2.terminal,
|
|
340867
|
-
version: "1.43.
|
|
340977
|
+
version: "1.43.5",
|
|
340868
340978
|
transcript: normalizeMessagesForAPI(messages),
|
|
340869
340979
|
errors: sanitizedErrors,
|
|
340870
340980
|
lastApiRequest: getLastAPIRequest(),
|
|
@@ -341056,7 +341166,7 @@ function Feedback({
|
|
|
341056
341166
|
", ",
|
|
341057
341167
|
env2.terminal,
|
|
341058
341168
|
", v",
|
|
341059
|
-
"1.43.
|
|
341169
|
+
"1.43.5"
|
|
341060
341170
|
]
|
|
341061
341171
|
}, undefined, true, undefined, this)
|
|
341062
341172
|
]
|
|
@@ -341162,7 +341272,7 @@ ${sanitizedDescription}
|
|
|
341162
341272
|
` + `**Environment Info**
|
|
341163
341273
|
` + `- Platform: ${env2.platform}
|
|
341164
341274
|
` + `- Terminal: ${env2.terminal}
|
|
341165
|
-
` + `- Version: ${"1.43.
|
|
341275
|
+
` + `- Version: ${"1.43.5"}
|
|
341166
341276
|
` + `- Feedback ID: ${feedbackId}
|
|
341167
341277
|
` + `
|
|
341168
341278
|
**Errors**
|
|
@@ -344273,7 +344383,7 @@ function buildPrimarySection() {
|
|
|
344273
344383
|
}, undefined, false, undefined, this);
|
|
344274
344384
|
return [{
|
|
344275
344385
|
label: "Version",
|
|
344276
|
-
value: "1.43.
|
|
344386
|
+
value: "1.43.5"
|
|
344277
344387
|
}, {
|
|
344278
344388
|
label: "Session name",
|
|
344279
344389
|
value: nameValue
|
|
@@ -347574,7 +347684,7 @@ function Config({
|
|
|
347574
347684
|
}
|
|
347575
347685
|
}, undefined, false, undefined, this)
|
|
347576
347686
|
}, undefined, false, undefined, this) : showSubmenu === "ChannelDowngrade" ? /* @__PURE__ */ jsx_dev_runtime177.jsxDEV(ChannelDowngradeDialog, {
|
|
347577
|
-
currentVersion: "1.43.
|
|
347687
|
+
currentVersion: "1.43.5",
|
|
347578
347688
|
onChoice: (choice) => {
|
|
347579
347689
|
setShowSubmenu(null);
|
|
347580
347690
|
setTabsHidden(false);
|
|
@@ -347586,7 +347696,7 @@ function Config({
|
|
|
347586
347696
|
autoUpdatesChannel: "stable"
|
|
347587
347697
|
};
|
|
347588
347698
|
if (choice === "stay") {
|
|
347589
|
-
newSettings.minimumVersion = "1.43.
|
|
347699
|
+
newSettings.minimumVersion = "1.43.5";
|
|
347590
347700
|
}
|
|
347591
347701
|
updateSettingsForSource("userSettings", newSettings);
|
|
347592
347702
|
setSettingsData((prev_27) => ({
|
|
@@ -355656,7 +355766,7 @@ function HelpV2(t0) {
|
|
|
355656
355766
|
let t6;
|
|
355657
355767
|
if ($3[31] !== tabs) {
|
|
355658
355768
|
t6 = /* @__PURE__ */ jsx_dev_runtime204.jsxDEV(Tabs, {
|
|
355659
|
-
title: `UR v${"1.43.
|
|
355769
|
+
title: `UR v${"1.43.5"}`,
|
|
355660
355770
|
color: "professionalBlue",
|
|
355661
355771
|
defaultTab: "general",
|
|
355662
355772
|
children: tabs
|
|
@@ -356402,7 +356512,7 @@ function buildToolUseContext(tools, readFileStateCache) {
|
|
|
356402
356512
|
async function handleInitialize(options2) {
|
|
356403
356513
|
return {
|
|
356404
356514
|
name: "UR",
|
|
356405
|
-
version: "1.43.
|
|
356515
|
+
version: "1.43.5",
|
|
356406
356516
|
protocolVersion: "0.1.0",
|
|
356407
356517
|
workspaceRoot: options2.cwd,
|
|
356408
356518
|
capabilities: {
|
|
@@ -376544,7 +376654,7 @@ function getAllReleaseNotes(changelogContent = getStoredChangelogFromMemory()) {
|
|
|
376544
376654
|
return [];
|
|
376545
376655
|
}
|
|
376546
376656
|
}
|
|
376547
|
-
async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.43.
|
|
376657
|
+
async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.43.5") {
|
|
376548
376658
|
if (process.env.USER_TYPE === "ant") {
|
|
376549
376659
|
const changelog = "";
|
|
376550
376660
|
if (changelog) {
|
|
@@ -376571,7 +376681,7 @@ async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.43.3")
|
|
|
376571
376681
|
releaseNotes
|
|
376572
376682
|
};
|
|
376573
376683
|
}
|
|
376574
|
-
function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.43.
|
|
376684
|
+
function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.43.5") {
|
|
376575
376685
|
if (process.env.USER_TYPE === "ant") {
|
|
376576
376686
|
const changelog = "";
|
|
376577
376687
|
if (changelog) {
|
|
@@ -377750,7 +377860,7 @@ function getRecentActivitySync() {
|
|
|
377750
377860
|
return cachedActivity;
|
|
377751
377861
|
}
|
|
377752
377862
|
function getLogoDisplayData() {
|
|
377753
|
-
const version2 = process.env.DEMO_VERSION ?? "1.43.
|
|
377863
|
+
const version2 = process.env.DEMO_VERSION ?? "1.43.5";
|
|
377754
377864
|
const serverUrl = getDirectConnectServerUrl();
|
|
377755
377865
|
const displayPath = process.env.DEMO_VERSION ? "/code/ur" : getDisplayPath(getCwd());
|
|
377756
377866
|
const cwd2 = serverUrl ? `${displayPath} in ${serverUrl.replace(/^https?:\/\//, "")}` : displayPath;
|
|
@@ -378539,7 +378649,7 @@ function LogoV2() {
|
|
|
378539
378649
|
if ($3[2] === Symbol.for("react.memo_cache_sentinel")) {
|
|
378540
378650
|
t2 = () => {
|
|
378541
378651
|
const currentConfig2 = getGlobalConfig();
|
|
378542
|
-
if (currentConfig2.lastReleaseNotesSeen === "1.43.
|
|
378652
|
+
if (currentConfig2.lastReleaseNotesSeen === "1.43.5") {
|
|
378543
378653
|
return;
|
|
378544
378654
|
}
|
|
378545
378655
|
saveGlobalConfig(_temp326);
|
|
@@ -379224,12 +379334,12 @@ function LogoV2() {
|
|
|
379224
379334
|
return t41;
|
|
379225
379335
|
}
|
|
379226
379336
|
function _temp326(current) {
|
|
379227
|
-
if (current.lastReleaseNotesSeen === "1.43.
|
|
379337
|
+
if (current.lastReleaseNotesSeen === "1.43.5") {
|
|
379228
379338
|
return current;
|
|
379229
379339
|
}
|
|
379230
379340
|
return {
|
|
379231
379341
|
...current,
|
|
379232
|
-
lastReleaseNotesSeen: "1.43.
|
|
379342
|
+
lastReleaseNotesSeen: "1.43.5"
|
|
379233
379343
|
};
|
|
379234
379344
|
}
|
|
379235
379345
|
function _temp243(s_0) {
|
|
@@ -411110,7 +411220,7 @@ var init_code_index2 = __esm(() => {
|
|
|
411110
411220
|
|
|
411111
411221
|
// node_modules/typescript/lib/typescript.js
|
|
411112
411222
|
var require_typescript2 = __commonJS((exports, module) => {
|
|
411113
|
-
var __dirname = "/sessions/friendly-inspiring-goldberg/mnt/UR-1.43.
|
|
411223
|
+
var __dirname = "/sessions/friendly-inspiring-goldberg/mnt/UR-1.43.3/node_modules/typescript/lib", __filename = "/sessions/friendly-inspiring-goldberg/mnt/UR-1.43.3/node_modules/typescript/lib/typescript.js";
|
|
411114
411224
|
/*! *****************************************************************************
|
|
411115
411225
|
Copyright (c) Microsoft Corporation. All rights reserved.
|
|
411116
411226
|
Licensed under the Apache License, Version 2.0 (the "License"); you may not use
|
|
@@ -596644,7 +596754,7 @@ async function captureMemoryDiagnostics(trigger2, dumpNumber = 0) {
|
|
|
596644
596754
|
smapsRollup,
|
|
596645
596755
|
platform: process.platform,
|
|
596646
596756
|
nodeVersion: process.version,
|
|
596647
|
-
ccVersion: "1.43.
|
|
596757
|
+
ccVersion: "1.43.5"
|
|
596648
596758
|
};
|
|
596649
596759
|
}
|
|
596650
596760
|
async function performHeapDump(trigger2 = "manual", dumpNumber = 0) {
|
|
@@ -597230,7 +597340,7 @@ var init_bridge_kick = __esm(() => {
|
|
|
597230
597340
|
var call137 = async () => {
|
|
597231
597341
|
return {
|
|
597232
597342
|
type: "text",
|
|
597233
|
-
value: "1.43.
|
|
597343
|
+
value: "1.43.5"
|
|
597234
597344
|
};
|
|
597235
597345
|
}, version2, version_default;
|
|
597236
597346
|
var init_version = __esm(() => {
|
|
@@ -607323,7 +607433,7 @@ function generateHtmlReport(data, insights) {
|
|
|
607323
607433
|
</html>`;
|
|
607324
607434
|
}
|
|
607325
607435
|
function buildExportData(data, insights, facets, remoteStats) {
|
|
607326
|
-
const version3 = typeof MACRO !== "undefined" ? "1.43.
|
|
607436
|
+
const version3 = typeof MACRO !== "undefined" ? "1.43.5" : "unknown";
|
|
607327
607437
|
const remote_hosts_collected = remoteStats?.hosts.filter((h2) => h2.sessionCount > 0).map((h2) => h2.name);
|
|
607328
607438
|
const facets_summary = {
|
|
607329
607439
|
total: facets.size,
|
|
@@ -611603,7 +611713,7 @@ var init_sessionStorage = __esm(() => {
|
|
|
611603
611713
|
init_settings2();
|
|
611604
611714
|
init_slowOperations();
|
|
611605
611715
|
init_uuid();
|
|
611606
|
-
VERSION5 = typeof MACRO !== "undefined" ? "1.43.
|
|
611716
|
+
VERSION5 = typeof MACRO !== "undefined" ? "1.43.5" : "unknown";
|
|
611607
611717
|
MAX_TOMBSTONE_REWRITE_BYTES = 50 * 1024 * 1024;
|
|
611608
611718
|
SKIP_FIRST_PROMPT_PATTERN = /^(?:\s*<[a-z][\w-]*[\s>]|\[Request interrupted by user[^\]]*\])/;
|
|
611609
611719
|
EPHEMERAL_PROGRESS_TYPES = new Set([
|
|
@@ -612808,7 +612918,7 @@ var init_filesystem = __esm(() => {
|
|
|
612808
612918
|
});
|
|
612809
612919
|
getBundledSkillsRoot = memoize_default(function getBundledSkillsRoot2() {
|
|
612810
612920
|
const nonce = randomBytes18(16).toString("hex");
|
|
612811
|
-
return join202(getURTempDir(), "bundled-skills", "1.43.
|
|
612921
|
+
return join202(getURTempDir(), "bundled-skills", "1.43.5", nonce);
|
|
612812
612922
|
});
|
|
612813
612923
|
getResolvedWorkingDirPaths = memoize_default(getPathsForPermissionCheck);
|
|
612814
612924
|
});
|
|
@@ -619097,7 +619207,7 @@ function computeFingerprint(messageText2, version3) {
|
|
|
619097
619207
|
}
|
|
619098
619208
|
function computeFingerprintFromMessages(messages) {
|
|
619099
619209
|
const firstMessageText = extractFirstMessageText(messages);
|
|
619100
|
-
return computeFingerprint(firstMessageText, "1.43.
|
|
619210
|
+
return computeFingerprint(firstMessageText, "1.43.5");
|
|
619101
619211
|
}
|
|
619102
619212
|
var FINGERPRINT_SALT = "59cf53e54c78";
|
|
619103
619213
|
var init_fingerprint = () => {};
|
|
@@ -620971,7 +621081,7 @@ async function sideQuery(opts) {
|
|
|
620971
621081
|
betas.push(STRUCTURED_OUTPUTS_BETA_HEADER);
|
|
620972
621082
|
}
|
|
620973
621083
|
const messageText2 = extractFirstUserMessageText(messages);
|
|
620974
|
-
const fingerprint2 = computeFingerprint(messageText2, "1.43.
|
|
621084
|
+
const fingerprint2 = computeFingerprint(messageText2, "1.43.5");
|
|
620975
621085
|
const attributionHeader = getAttributionHeader(fingerprint2);
|
|
620976
621086
|
const systemBlocks = [
|
|
620977
621087
|
attributionHeader ? { type: "text", text: attributionHeader } : null,
|
|
@@ -625708,7 +625818,7 @@ function buildSystemInitMessage(inputs) {
|
|
|
625708
625818
|
slash_commands: inputs.commands.filter((c4) => c4.userInvocable !== false).map((c4) => c4.name),
|
|
625709
625819
|
apiKeySource: getURHQApiKeyWithSource().source,
|
|
625710
625820
|
betas: getSdkBetas(),
|
|
625711
|
-
ur_version: "1.43.
|
|
625821
|
+
ur_version: "1.43.5",
|
|
625712
625822
|
output_style: outputStyle2,
|
|
625713
625823
|
agents: inputs.agents.map((agent) => agent.agentType),
|
|
625714
625824
|
skills: inputs.skills.filter((s) => s.userInvocable !== false).map((skill2) => skill2.name),
|
|
@@ -640336,7 +640446,7 @@ var init_useVoiceEnabled = __esm(() => {
|
|
|
640336
640446
|
function getSemverPart(version3) {
|
|
640337
640447
|
return `${import_semver13.major(version3, { loose: true })}.${import_semver13.minor(version3, { loose: true })}.${import_semver13.patch(version3, { loose: true })}`;
|
|
640338
640448
|
}
|
|
640339
|
-
function useUpdateNotification(updatedVersion, initialVersion = "1.43.
|
|
640449
|
+
function useUpdateNotification(updatedVersion, initialVersion = "1.43.5") {
|
|
640340
640450
|
const [lastNotifiedSemver, setLastNotifiedSemver] = import_react226.useState(() => getSemverPart(initialVersion));
|
|
640341
640451
|
if (!updatedVersion) {
|
|
640342
640452
|
return null;
|
|
@@ -640385,7 +640495,7 @@ function AutoUpdater({
|
|
|
640385
640495
|
return;
|
|
640386
640496
|
}
|
|
640387
640497
|
if (false) {}
|
|
640388
|
-
const currentVersion = "1.43.
|
|
640498
|
+
const currentVersion = "1.43.5";
|
|
640389
640499
|
const channel = getInitialSettings()?.autoUpdatesChannel ?? "latest";
|
|
640390
640500
|
let latestVersion = await getLatestVersion(channel);
|
|
640391
640501
|
const isDisabled = isAutoUpdaterDisabled();
|
|
@@ -640614,12 +640724,12 @@ function NativeAutoUpdater({
|
|
|
640614
640724
|
logEvent("tengu_native_auto_updater_start", {});
|
|
640615
640725
|
try {
|
|
640616
640726
|
const maxVersion = await getMaxVersion();
|
|
640617
|
-
if (maxVersion && gt("1.43.
|
|
640727
|
+
if (maxVersion && gt("1.43.5", maxVersion)) {
|
|
640618
640728
|
const msg = await getMaxVersionMessage();
|
|
640619
640729
|
setMaxVersionIssue(msg ?? "affects your version");
|
|
640620
640730
|
}
|
|
640621
640731
|
const result = await installLatest(channel);
|
|
640622
|
-
const currentVersion = "1.43.
|
|
640732
|
+
const currentVersion = "1.43.5";
|
|
640623
640733
|
const latencyMs = Date.now() - startTime;
|
|
640624
640734
|
if (result.lockFailed) {
|
|
640625
640735
|
logEvent("tengu_native_auto_updater_lock_contention", {
|
|
@@ -640756,17 +640866,17 @@ function PackageManagerAutoUpdater(t0) {
|
|
|
640756
640866
|
const maxVersion = await getMaxVersion();
|
|
640757
640867
|
if (maxVersion && latest && gt(latest, maxVersion)) {
|
|
640758
640868
|
logForDebugging(`PackageManagerAutoUpdater: maxVersion ${maxVersion} is set, capping update from ${latest} to ${maxVersion}`);
|
|
640759
|
-
if (gte("1.43.
|
|
640760
|
-
logForDebugging(`PackageManagerAutoUpdater: current version ${"1.43.
|
|
640869
|
+
if (gte("1.43.5", maxVersion)) {
|
|
640870
|
+
logForDebugging(`PackageManagerAutoUpdater: current version ${"1.43.5"} is already at or above maxVersion ${maxVersion}, skipping update`);
|
|
640761
640871
|
setUpdateAvailable(false);
|
|
640762
640872
|
return;
|
|
640763
640873
|
}
|
|
640764
640874
|
latest = maxVersion;
|
|
640765
640875
|
}
|
|
640766
|
-
const hasUpdate = latest && !gte("1.43.
|
|
640876
|
+
const hasUpdate = latest && !gte("1.43.5", latest) && !shouldSkipVersion(latest);
|
|
640767
640877
|
setUpdateAvailable(!!hasUpdate);
|
|
640768
640878
|
if (hasUpdate) {
|
|
640769
|
-
logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.43.
|
|
640879
|
+
logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.43.5"} -> ${latest}`);
|
|
640770
640880
|
}
|
|
640771
640881
|
};
|
|
640772
640882
|
$3[0] = t1;
|
|
@@ -640800,7 +640910,7 @@ function PackageManagerAutoUpdater(t0) {
|
|
|
640800
640910
|
wrap: "truncate",
|
|
640801
640911
|
children: [
|
|
640802
640912
|
"currentVersion: ",
|
|
640803
|
-
"1.43.
|
|
640913
|
+
"1.43.5"
|
|
640804
640914
|
]
|
|
640805
640915
|
}, undefined, true, undefined, this);
|
|
640806
640916
|
$3[3] = verbose;
|
|
@@ -653252,7 +653362,7 @@ function buildStatusLineCommandInput(permissionMode, exceeds200kTokens, settings
|
|
|
653252
653362
|
project_dir: getOriginalCwd(),
|
|
653253
653363
|
added_dirs: addedDirs
|
|
653254
653364
|
},
|
|
653255
|
-
version: "1.43.
|
|
653365
|
+
version: "1.43.5",
|
|
653256
653366
|
output_style: {
|
|
653257
653367
|
name: outputStyleName
|
|
653258
653368
|
},
|
|
@@ -653335,7 +653445,7 @@ function StatusLineInner({
|
|
|
653335
653445
|
const taskValues = Object.values(tasks2);
|
|
653336
653446
|
const taskRunningCount = taskValues.filter((task2) => task2.status === "running" || task2.status === "pending").length;
|
|
653337
653447
|
const defaultStatusLineText = buildDefaultStatusBar({
|
|
653338
|
-
version: "1.43.
|
|
653448
|
+
version: "1.43.5",
|
|
653339
653449
|
providerLabel: providerRuntime.providerLabel,
|
|
653340
653450
|
authMode: providerRuntime.authLabel,
|
|
653341
653451
|
model: providerRuntime.model ?? renderModelName(mainLoopModel),
|
|
@@ -664823,7 +664933,7 @@ async function submitTranscriptShare(messages, trigger2, appearanceId) {
|
|
|
664823
664933
|
} catch {}
|
|
664824
664934
|
const data = {
|
|
664825
664935
|
trigger: trigger2,
|
|
664826
|
-
version: "1.43.
|
|
664936
|
+
version: "1.43.5",
|
|
664827
664937
|
platform: process.platform,
|
|
664828
664938
|
transcript,
|
|
664829
664939
|
subagentTranscripts: Object.keys(subagentTranscripts).length > 0 ? subagentTranscripts : undefined,
|
|
@@ -676708,7 +676818,7 @@ function WelcomeV2() {
|
|
|
676708
676818
|
dimColor: true,
|
|
676709
676819
|
children: [
|
|
676710
676820
|
"v",
|
|
676711
|
-
"1.43.
|
|
676821
|
+
"1.43.5"
|
|
676712
676822
|
]
|
|
676713
676823
|
}, undefined, true, undefined, this)
|
|
676714
676824
|
]
|
|
@@ -677968,7 +678078,7 @@ function completeOnboarding() {
|
|
|
677968
678078
|
saveGlobalConfig((current) => ({
|
|
677969
678079
|
...current,
|
|
677970
678080
|
hasCompletedOnboarding: true,
|
|
677971
|
-
lastOnboardingVersion: "1.43.
|
|
678081
|
+
lastOnboardingVersion: "1.43.5"
|
|
677972
678082
|
}));
|
|
677973
678083
|
}
|
|
677974
678084
|
function showDialog(root2, renderer) {
|
|
@@ -683005,7 +683115,7 @@ function appendToLog(path24, message) {
|
|
|
683005
683115
|
cwd: getFsImplementation().cwd(),
|
|
683006
683116
|
userType: process.env.USER_TYPE,
|
|
683007
683117
|
sessionId: getSessionId(),
|
|
683008
|
-
version: "1.43.
|
|
683118
|
+
version: "1.43.5"
|
|
683009
683119
|
};
|
|
683010
683120
|
getLogWriter(path24).write(messageWithTimestamp);
|
|
683011
683121
|
}
|
|
@@ -687099,8 +687209,8 @@ async function getEnvLessBridgeConfig() {
|
|
|
687099
687209
|
}
|
|
687100
687210
|
async function checkEnvLessBridgeMinVersion() {
|
|
687101
687211
|
const cfg = await getEnvLessBridgeConfig();
|
|
687102
|
-
if (cfg.min_version && lt("1.43.
|
|
687103
|
-
return `Your version of UR (${"1.43.
|
|
687212
|
+
if (cfg.min_version && lt("1.43.5", cfg.min_version)) {
|
|
687213
|
+
return `Your version of UR (${"1.43.5"}) is too old for Remote Control.
|
|
687104
687214
|
Version ${cfg.min_version} or higher is required. Run \`ur update\` to update.`;
|
|
687105
687215
|
}
|
|
687106
687216
|
return null;
|
|
@@ -687574,7 +687684,7 @@ async function initBridgeCore(params) {
|
|
|
687574
687684
|
const rawApi = createBridgeApiClient({
|
|
687575
687685
|
baseUrl,
|
|
687576
687686
|
getAccessToken,
|
|
687577
|
-
runnerVersion: "1.43.
|
|
687687
|
+
runnerVersion: "1.43.5",
|
|
687578
687688
|
onDebug: logForDebugging,
|
|
687579
687689
|
onAuth401,
|
|
687580
687690
|
getTrustedDeviceToken
|
|
@@ -693256,7 +693366,7 @@ async function startMCPServer(cwd3, debug2, verbose) {
|
|
|
693256
693366
|
setCwd(cwd3);
|
|
693257
693367
|
const server2 = new Server({
|
|
693258
693368
|
name: "ur/tengu",
|
|
693259
|
-
version: "1.43.
|
|
693369
|
+
version: "1.43.5"
|
|
693260
693370
|
}, {
|
|
693261
693371
|
capabilities: {
|
|
693262
693372
|
tools: {}
|
|
@@ -695298,7 +695408,7 @@ async function update() {
|
|
|
695298
695408
|
logEvent("tengu_update_check", {});
|
|
695299
695409
|
const diagnostic = await getDoctorDiagnostic();
|
|
695300
695410
|
const result = await checkUpgradeStatus({
|
|
695301
|
-
currentVersion: "1.43.
|
|
695411
|
+
currentVersion: "1.43.5",
|
|
695302
695412
|
packageName: UR_AGENT_PACKAGE_NAME,
|
|
695303
695413
|
installationType: diagnostic.installationType,
|
|
695304
695414
|
latestVersion: () => getLatestNpmPackageVersion(UR_AGENT_PACKAGE_NAME)
|
|
@@ -696544,7 +696654,7 @@ ${customInstructions}` : customInstructions;
|
|
|
696544
696654
|
}
|
|
696545
696655
|
}
|
|
696546
696656
|
logForDiagnosticsNoPII("info", "started", {
|
|
696547
|
-
version: "1.43.
|
|
696657
|
+
version: "1.43.5",
|
|
696548
696658
|
is_native_binary: isInBundledMode()
|
|
696549
696659
|
});
|
|
696550
696660
|
registerCleanup(async () => {
|
|
@@ -697330,7 +697440,7 @@ Usage: ur --remote "your task description"`, () => gracefulShutdown(1));
|
|
|
697330
697440
|
pendingHookMessages
|
|
697331
697441
|
}, renderAndRun);
|
|
697332
697442
|
}
|
|
697333
|
-
}).version("1.43.
|
|
697443
|
+
}).version("1.43.5 (UR-Nexus)", "-v, --version", "Output the version number");
|
|
697334
697444
|
program2.option("-w, --worktree [name]", "Create a new git worktree for this session (optionally specify a name)");
|
|
697335
697445
|
program2.option("--tmux", "Create a tmux session for the worktree (requires --worktree). Uses iTerm2 native panes when available; use --tmux=classic for traditional tmux.");
|
|
697336
697446
|
if (canUserConfigureAdvisor()) {
|
|
@@ -698245,7 +698355,7 @@ if (false) {}
|
|
|
698245
698355
|
async function main2() {
|
|
698246
698356
|
const args = process.argv.slice(2);
|
|
698247
698357
|
if (args.length === 1 && (args[0] === "--version" || args[0] === "-v" || args[0] === "-V")) {
|
|
698248
|
-
console.log(`${"1.43.
|
|
698358
|
+
console.log(`${"1.43.5"} (UR-Nexus)`);
|
|
698249
698359
|
return;
|
|
698250
698360
|
}
|
|
698251
698361
|
if (args[0] === "a2a" && args[1] === "serve" && !args.includes("--help") && !args.includes("-h")) {
|
package/documentation/index.html
CHANGED
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
<main id="content" class="content">
|
|
45
45
|
<header class="topbar">
|
|
46
46
|
<div>
|
|
47
|
-
<p class="eyebrow">Version 1.43.
|
|
47
|
+
<p class="eyebrow">Version 1.43.5</p>
|
|
48
48
|
<h1>UR-Nexus Documentation</h1>
|
|
49
49
|
<p class="lead">A practical, tutorial-style reference for installing, configuring, automating, extending, and operating UR-Nexus.</p>
|
|
50
50
|
</div>
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "ur-inline-diffs",
|
|
3
3
|
"displayName": "UR Inline Diffs",
|
|
4
4
|
"description": "Review, apply, and reject UR inline diff bundles from .ur/ide/diffs inside VS Code.",
|
|
5
|
-
"version": "1.43.
|
|
5
|
+
"version": "1.43.5",
|
|
6
6
|
"publisher": "ur-nexus",
|
|
7
7
|
"engines": {
|
|
8
8
|
"vscode": "^1.92.0"
|
package/package.json
CHANGED