ur-agent 1.76.6 → 1.76.7
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,30 +1,8 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
-
## 1.76.
|
|
4
|
-
|
|
5
|
-
-
|
|
6
|
-
as plain text during normalization and surfaces clear validation when repair is
|
|
7
|
-
impossible.
|
|
8
|
-
- Hardened `AskUserQuestion` transport and execution normalization to reject malformed
|
|
9
|
-
question/option payloads before schema enforcement, reducing repeated
|
|
10
|
-
`InputValidationError` loops for missing `question`/`options`.
|
|
11
|
-
- Restored `Grep` schema compatibility checks and ensured provider schema generation
|
|
12
|
-
keeps unsupported type regressions from reaching the provider.
|
|
13
|
-
- Fixed task dependency validation for missing task IDs and cyclic/self-edge
|
|
14
|
-
requests so callers receive actionable diagnostics instead of opaque task graph
|
|
15
|
-
errors.
|
|
16
|
-
|
|
17
|
-
## 1.76.5
|
|
18
|
-
|
|
19
|
-
- Hardened Kimi tool-call parsing for `Write` and `AskUserQuestion` so malformed
|
|
20
|
-
payloads fail normalisation and remain plain text instead of throwing input
|
|
21
|
-
validation at render time; valid payloads still parse correctly.
|
|
22
|
-
- Fixed `AskUserQuestion` question-schema validation to reject one-question/open-ended
|
|
23
|
-
malformed shapes with distinct-label enforcement before tool execution, preventing
|
|
24
|
-
`InputValidationError` loops for missing `question`/`options`.
|
|
25
|
-
- Fixed Grep tool-schema regression coverage and restored the task dependency
|
|
26
|
-
validation path to ignore self-edges before reporting missing-task errors.
|
|
27
|
-
- Version bump and release metadata were synchronized after parser fixes.
|
|
3
|
+
## 1.76.7
|
|
4
|
+
|
|
5
|
+
- Reverted to the 1.76.4 behavior and removed the intermediate version surface transitions.
|
|
28
6
|
|
|
29
7
|
## 1.76.4
|
|
30
8
|
|
package/dist/cli.js
CHANGED
|
@@ -87761,15 +87761,6 @@ function normalizeQuestionInput(value, index2) {
|
|
|
87761
87761
|
};
|
|
87762
87762
|
}
|
|
87763
87763
|
function normalizeAskUserQuestionInput(value) {
|
|
87764
|
-
if (Array.isArray(value)) {
|
|
87765
|
-
const normalized = value.map((entry, index2) => normalizeQuestionInput(entry, index2)).filter((entry) => entry !== null && typeof entry === "object");
|
|
87766
|
-
if (normalized.length > 0) {
|
|
87767
|
-
return {
|
|
87768
|
-
questions: dedupeQuestions(normalized)
|
|
87769
|
-
};
|
|
87770
|
-
}
|
|
87771
|
-
return null;
|
|
87772
|
-
}
|
|
87773
87764
|
const input = objectValue(value);
|
|
87774
87765
|
if (!input)
|
|
87775
87766
|
return value;
|
|
@@ -88200,9 +88191,6 @@ function normalizeKimiAskUserQuestionInput(input) {
|
|
|
88200
88191
|
if (!Array.isArray(questions) || questions.length === 0) {
|
|
88201
88192
|
return null;
|
|
88202
88193
|
}
|
|
88203
|
-
if (describeQuestionPayloadProblems(normalized).length > 0) {
|
|
88204
|
-
return null;
|
|
88205
|
-
}
|
|
88206
88194
|
return {
|
|
88207
88195
|
...normalized,
|
|
88208
88196
|
questions: questions.slice(0, 4)
|
|
@@ -88210,10 +88198,10 @@ function normalizeKimiAskUserQuestionInput(input) {
|
|
|
88210
88198
|
}
|
|
88211
88199
|
function normalizeInlineToolInput(name, input) {
|
|
88212
88200
|
if (name === "Write") {
|
|
88213
|
-
return normalizeKimiWriteInput(input);
|
|
88201
|
+
return normalizeKimiWriteInput(input) ?? input;
|
|
88214
88202
|
}
|
|
88215
88203
|
if (name === "AskUserQuestion") {
|
|
88216
|
-
return normalizeKimiAskUserQuestionInput(input);
|
|
88204
|
+
return normalizeKimiAskUserQuestionInput(input) ?? input;
|
|
88217
88205
|
}
|
|
88218
88206
|
return input;
|
|
88219
88207
|
}
|
|
@@ -88231,25 +88219,19 @@ function parseKimiToolCalls(text) {
|
|
|
88231
88219
|
throw new KimiToolCallParseError("Kimi tool call markup is incomplete or malformed");
|
|
88232
88220
|
}
|
|
88233
88221
|
CALL_RE.lastIndex = 0;
|
|
88234
|
-
let matchedCalls = 0;
|
|
88235
88222
|
let cleaned = text.replace(CALL_RE, (_full, rawName, rawArgs) => {
|
|
88236
88223
|
const name = (rawName ?? "").trim().replace(/^functions\./, "").replace(/[:.]\d+\s*$/, "").trim();
|
|
88237
88224
|
if (!name) {
|
|
88238
88225
|
throw new KimiToolCallParseError("Kimi tool call is missing a function name");
|
|
88239
88226
|
}
|
|
88240
|
-
matchedCalls += 1;
|
|
88241
|
-
const normalizedInput = normalizeInlineToolInput(name, parseArgs(rawArgs ?? ""));
|
|
88242
|
-
if (normalizedInput === null) {
|
|
88243
|
-
return rawArgs ?? "";
|
|
88244
|
-
}
|
|
88245
88227
|
toolCalls.push({
|
|
88246
88228
|
id: parsedToolCallId("kimi", i2++),
|
|
88247
88229
|
name,
|
|
88248
|
-
input:
|
|
88230
|
+
input: normalizeInlineToolInput(name, parseArgs(rawArgs ?? ""))
|
|
88249
88231
|
});
|
|
88250
88232
|
return "";
|
|
88251
88233
|
});
|
|
88252
|
-
if (
|
|
88234
|
+
if (toolCalls.length !== callBegins) {
|
|
88253
88235
|
throw new KimiToolCallParseError("Kimi tool call markup is incomplete or malformed");
|
|
88254
88236
|
}
|
|
88255
88237
|
cleaned = cleaned.replace(SECTION_RE, "").replace(STRAY_RE, "").replace(/\n{3,}/g, `
|
|
@@ -88517,8 +88499,6 @@ function maybeBareJsonToolCall(text, availableToolNames, index2) {
|
|
|
88517
88499
|
return null;
|
|
88518
88500
|
}
|
|
88519
88501
|
const normalizedInput = name === "Write" || name === "AskUserQuestion" ? normalizeInlineToolInput(name, input.input) : input.input;
|
|
88520
|
-
if (normalizedInput === null)
|
|
88521
|
-
return null;
|
|
88522
88502
|
return {
|
|
88523
88503
|
id: parsedToolCallId("bare", index2),
|
|
88524
88504
|
name,
|
|
@@ -88534,13 +88514,11 @@ function maybeBareJsonToolCall(text, availableToolNames, index2) {
|
|
|
88534
88514
|
}
|
|
88535
88515
|
if (hasTool(availableToolNames, "Write") && normalizeKimiWriteInput(input) !== null) {
|
|
88536
88516
|
const normalized = normalizeKimiWriteInput(input);
|
|
88537
|
-
|
|
88538
|
-
|
|
88539
|
-
|
|
88540
|
-
|
|
88541
|
-
|
|
88542
|
-
};
|
|
88543
|
-
}
|
|
88517
|
+
return {
|
|
88518
|
+
id: parsedToolCallId("bare", index2),
|
|
88519
|
+
name: "Write",
|
|
88520
|
+
input: normalized ?? input
|
|
88521
|
+
};
|
|
88544
88522
|
}
|
|
88545
88523
|
if (hasTool(availableToolNames, "Edit") && hasRequiredKeys(input, ["file_path", "old_string", "new_string"], ["replace_all"]) && typeof input.file_path === "string" && typeof input.old_string === "string" && typeof input.new_string === "string" && (input.replace_all === undefined || typeof input.replace_all === "boolean")) {
|
|
88546
88524
|
return {
|
|
@@ -107487,7 +107465,7 @@ var init_auth = __esm(() => {
|
|
|
107487
107465
|
|
|
107488
107466
|
// src/utils/userAgent.ts
|
|
107489
107467
|
function getURCodeUserAgent() {
|
|
107490
|
-
return `ur/${"1.76.
|
|
107468
|
+
return `ur/${"1.76.7"}`;
|
|
107491
107469
|
}
|
|
107492
107470
|
|
|
107493
107471
|
// src/utils/workloadContext.ts
|
|
@@ -107509,7 +107487,7 @@ function getUserAgent() {
|
|
|
107509
107487
|
const clientApp = process.env.UR_AGENT_SDK_CLIENT_APP ? `, client-app/${process.env.UR_AGENT_SDK_CLIENT_APP}` : "";
|
|
107510
107488
|
const workload = getWorkload();
|
|
107511
107489
|
const workloadSuffix = workload ? `, workload/${workload}` : "";
|
|
107512
|
-
return `ur-cli/${"1.76.
|
|
107490
|
+
return `ur-cli/${"1.76.7"} (${process.env.USER_TYPE}, ${process.env.UR_CODE_ENTRYPOINT ?? "cli"}${agentSdkVersion}${clientApp}${workloadSuffix})`;
|
|
107513
107491
|
}
|
|
107514
107492
|
function getMCPUserAgent() {
|
|
107515
107493
|
const parts = [];
|
|
@@ -107523,7 +107501,7 @@ function getMCPUserAgent() {
|
|
|
107523
107501
|
parts.push(`client-app/${process.env.UR_AGENT_SDK_CLIENT_APP}`);
|
|
107524
107502
|
}
|
|
107525
107503
|
const suffix = parts.length > 0 ? ` (${parts.join(", ")})` : "";
|
|
107526
|
-
return `ur/${"1.76.
|
|
107504
|
+
return `ur/${"1.76.7"}${suffix}`;
|
|
107527
107505
|
}
|
|
107528
107506
|
function getWebFetchUserAgent() {
|
|
107529
107507
|
return `UR-User (${getURCodeUserAgent()})`;
|
|
@@ -107661,7 +107639,7 @@ var init_user = __esm(() => {
|
|
|
107661
107639
|
deviceId,
|
|
107662
107640
|
sessionId: getSessionId(),
|
|
107663
107641
|
email: getEmail(),
|
|
107664
|
-
appVersion: "1.76.
|
|
107642
|
+
appVersion: "1.76.7",
|
|
107665
107643
|
platform: getHostPlatformForAnalytics(),
|
|
107666
107644
|
organizationUuid,
|
|
107667
107645
|
accountUuid,
|
|
@@ -115548,7 +115526,7 @@ var init_metadata = __esm(() => {
|
|
|
115548
115526
|
COMPOUND_OPERATOR_REGEX = /\s*(?:&&|\|\||[;|])\s*/;
|
|
115549
115527
|
WHITESPACE_REGEX = /\s+/;
|
|
115550
115528
|
getVersionBase = memoize_default(() => {
|
|
115551
|
-
const match = "1.76.
|
|
115529
|
+
const match = "1.76.7".match(/^\d+\.\d+\.\d+(?:-[a-z]+)?/);
|
|
115552
115530
|
return match ? match[0] : undefined;
|
|
115553
115531
|
});
|
|
115554
115532
|
buildEnvContext = memoize_default(async () => {
|
|
@@ -115588,7 +115566,7 @@ var init_metadata = __esm(() => {
|
|
|
115588
115566
|
isGithubAction: isEnvTruthy(process.env.GITHUB_ACTIONS),
|
|
115589
115567
|
isURCodeAction: isEnvTruthy(process.env.UR_CODE_ACTION),
|
|
115590
115568
|
isURAiAuth: isURAISubscriber(),
|
|
115591
|
-
version: "1.76.
|
|
115569
|
+
version: "1.76.7",
|
|
115592
115570
|
versionBase: getVersionBase(),
|
|
115593
115571
|
buildTime: "",
|
|
115594
115572
|
deploymentEnvironment: env2.detectDeploymentEnvironment(),
|
|
@@ -116258,7 +116236,7 @@ function initialize1PEventLogging() {
|
|
|
116258
116236
|
const platform2 = getPlatform();
|
|
116259
116237
|
const attributes = {
|
|
116260
116238
|
[import_semantic_conventions4.ATTR_SERVICE_NAME]: "ur",
|
|
116261
|
-
[import_semantic_conventions4.ATTR_SERVICE_VERSION]: "1.76.
|
|
116239
|
+
[import_semantic_conventions4.ATTR_SERVICE_VERSION]: "1.76.7"
|
|
116262
116240
|
};
|
|
116263
116241
|
if (platform2 === "wsl") {
|
|
116264
116242
|
const wslVersion = getWslVersion();
|
|
@@ -116286,7 +116264,7 @@ function initialize1PEventLogging() {
|
|
|
116286
116264
|
})
|
|
116287
116265
|
]
|
|
116288
116266
|
});
|
|
116289
|
-
firstPartyEventLogger = firstPartyEventLoggerProvider.getLogger("com.urhq.ur.events", "1.76.
|
|
116267
|
+
firstPartyEventLogger = firstPartyEventLoggerProvider.getLogger("com.urhq.ur.events", "1.76.7");
|
|
116290
116268
|
}
|
|
116291
116269
|
async function reinitialize1PEventLoggingIfConfigChanged() {
|
|
116292
116270
|
if (!is1PEventLoggingEnabled() || !firstPartyEventLoggerProvider) {
|
|
@@ -126067,7 +126045,7 @@ function formatAgentTrendReport(report = buildAgentTrendReport()) {
|
|
|
126067
126045
|
function formatA2AAgentCard(options = {}, pretty = true) {
|
|
126068
126046
|
return JSON.stringify(buildA2AAgentCard(options), null, pretty ? 2 : 0);
|
|
126069
126047
|
}
|
|
126070
|
-
var urVersion = "1.76.
|
|
126048
|
+
var urVersion = "1.76.7", researchSnapshotDate = "2026-07-15", coverage, priorityRoadmap;
|
|
126071
126049
|
var init_trends = __esm(() => {
|
|
126072
126050
|
init_a2aCardSignature();
|
|
126073
126051
|
coverage = [
|
|
@@ -128870,7 +128848,7 @@ function getAttributionHeader(fingerprint) {
|
|
|
128870
128848
|
if (!isAttributionHeaderEnabled()) {
|
|
128871
128849
|
return "";
|
|
128872
128850
|
}
|
|
128873
|
-
const version2 = `${"1.76.
|
|
128851
|
+
const version2 = `${"1.76.7"}.${fingerprint}`;
|
|
128874
128852
|
const entrypoint = process.env.UR_CODE_ENTRYPOINT ?? "unknown";
|
|
128875
128853
|
const cch = "";
|
|
128876
128854
|
const workload = getWorkload();
|
|
@@ -156869,7 +156847,7 @@ var init_projectSafety = __esm(() => {
|
|
|
156869
156847
|
function getInstruments() {
|
|
156870
156848
|
if (instruments)
|
|
156871
156849
|
return instruments;
|
|
156872
|
-
const meter = import_api10.metrics.getMeter("ur-agent.gen_ai", "1.76.
|
|
156850
|
+
const meter = import_api10.metrics.getMeter("ur-agent.gen_ai", "1.76.7");
|
|
156873
156851
|
instruments = {
|
|
156874
156852
|
operationDuration: meter.createHistogram("gen_ai.client.operation.duration", {
|
|
156875
156853
|
description: "GenAI operation duration.",
|
|
@@ -156967,7 +156945,7 @@ function genAiAgentAttributes() {
|
|
|
156967
156945
|
"gen_ai.operation.name": GEN_AI_OPERATION_INVOKE_AGENT,
|
|
156968
156946
|
"gen_ai.provider.name": "ur",
|
|
156969
156947
|
"gen_ai.agent.name": "UR-Nexus",
|
|
156970
|
-
"gen_ai.agent.version": "1.76.
|
|
156948
|
+
"gen_ai.agent.version": "1.76.7"
|
|
156971
156949
|
};
|
|
156972
156950
|
}
|
|
156973
156951
|
function genAiWorkflowAttributes(workflowName) {
|
|
@@ -156983,7 +156961,7 @@ function genAiWorkflowAttributes(workflowName) {
|
|
|
156983
156961
|
function startGenAiWorkflowSpan(workflowName) {
|
|
156984
156962
|
const attributes = genAiWorkflowAttributes(workflowName);
|
|
156985
156963
|
const name = typeof attributes["gen_ai.workflow.name"] === "string" ? `invoke_workflow ${attributes["gen_ai.workflow.name"]}` : GEN_AI_OPERATION_INVOKE_WORKFLOW;
|
|
156986
|
-
return import_api10.trace.getTracer("ur-agent.gen_ai", "1.76.
|
|
156964
|
+
return import_api10.trace.getTracer("ur-agent.gen_ai", "1.76.7").startSpan(name, { kind: import_api10.SpanKind.INTERNAL, attributes });
|
|
156987
156965
|
}
|
|
156988
156966
|
function endGenAiWorkflowSpan(span, options2 = {}) {
|
|
156989
156967
|
try {
|
|
@@ -157021,7 +156999,7 @@ function startGenAiMemorySpan(operation, options2 = {}) {
|
|
|
157021
156999
|
if (options2.recordCount !== undefined && Number.isInteger(options2.recordCount) && options2.recordCount >= 0) {
|
|
157022
157000
|
attributes["gen_ai.memory.record.count"] = options2.recordCount;
|
|
157023
157001
|
}
|
|
157024
|
-
return import_api10.trace.getTracer("ur-agent.gen_ai", "1.76.
|
|
157002
|
+
return import_api10.trace.getTracer("ur-agent.gen_ai", "1.76.7").startSpan(operation, { kind: import_api10.SpanKind.INTERNAL, attributes });
|
|
157025
157003
|
}
|
|
157026
157004
|
function endGenAiMemorySpan(span, options2 = {}) {
|
|
157027
157005
|
try {
|
|
@@ -250669,7 +250647,7 @@ function getTelemetryAttributes() {
|
|
|
250669
250647
|
attributes["session.id"] = sessionId;
|
|
250670
250648
|
}
|
|
250671
250649
|
if (shouldIncludeAttribute("OTEL_METRICS_INCLUDE_VERSION")) {
|
|
250672
|
-
attributes["app.version"] = "1.76.
|
|
250650
|
+
attributes["app.version"] = "1.76.7";
|
|
250673
250651
|
}
|
|
250674
250652
|
const oauthAccount = getOauthAccountInfo();
|
|
250675
250653
|
if (oauthAccount) {
|
|
@@ -297153,7 +297131,7 @@ function getInstallationEnv() {
|
|
|
297153
297131
|
return;
|
|
297154
297132
|
}
|
|
297155
297133
|
function getURCodeVersion() {
|
|
297156
|
-
return "1.76.
|
|
297134
|
+
return "1.76.7";
|
|
297157
297135
|
}
|
|
297158
297136
|
async function getInstalledVSCodeExtensionVersion(command) {
|
|
297159
297137
|
const { stdout } = await execFileNoThrow(command, ["--list-extensions", "--show-versions"], {
|
|
@@ -304484,7 +304462,7 @@ async function setupSdkMcpClients(sdkMcpConfigs, sendMcpMessage) {
|
|
|
304484
304462
|
const client2 = new Client({
|
|
304485
304463
|
name: "ur",
|
|
304486
304464
|
title: "UR",
|
|
304487
|
-
version: "1.76.
|
|
304465
|
+
version: "1.76.7",
|
|
304488
304466
|
description: "UR-Nexus autonomous engineering workflow engine",
|
|
304489
304467
|
websiteUrl: PRODUCT_URL
|
|
304490
304468
|
}, {
|
|
@@ -304844,7 +304822,7 @@ var init_client5 = __esm(() => {
|
|
|
304844
304822
|
const client2 = new Client({
|
|
304845
304823
|
name: "ur",
|
|
304846
304824
|
title: "UR",
|
|
304847
|
-
version: "1.76.
|
|
304825
|
+
version: "1.76.7",
|
|
304848
304826
|
description: "UR-Nexus autonomous engineering workflow engine",
|
|
304849
304827
|
websiteUrl: PRODUCT_URL
|
|
304850
304828
|
}, {
|
|
@@ -317397,7 +317375,7 @@ async function createRuntime() {
|
|
|
317397
317375
|
bootstrapTelemetry();
|
|
317398
317376
|
const resource = defaultResource().merge(detectResources({ detectors: [envDetector] })).merge(resourceFromAttributes({
|
|
317399
317377
|
[import_semantic_conventions7.ATTR_SERVICE_NAME]: "ur-agent",
|
|
317400
|
-
[import_semantic_conventions7.ATTR_SERVICE_VERSION]: "1.76.
|
|
317378
|
+
[import_semantic_conventions7.ATTR_SERVICE_VERSION]: "1.76.7"
|
|
317401
317379
|
}));
|
|
317402
317380
|
const tracerProvider = exporters.traces.length > 0 ? new BasicTracerProvider({
|
|
317403
317381
|
resource,
|
|
@@ -317430,11 +317408,11 @@ async function createRuntime() {
|
|
|
317430
317408
|
setMeterProvider(meterProvider);
|
|
317431
317409
|
setLoggerProvider(loggerProvider);
|
|
317432
317410
|
if (meterProvider) {
|
|
317433
|
-
const meter = meterProvider.getMeter("ur-agent", "1.76.
|
|
317411
|
+
const meter = meterProvider.getMeter("ur-agent", "1.76.7");
|
|
317434
317412
|
setMeter(meter, (name, options2) => meter.createCounter(name, options2));
|
|
317435
317413
|
}
|
|
317436
317414
|
if (loggerProvider) {
|
|
317437
|
-
setEventLogger(loggerProvider.getLogger("ur-agent.events", "1.76.
|
|
317415
|
+
setEventLogger(loggerProvider.getLogger("ur-agent.events", "1.76.7"));
|
|
317438
317416
|
}
|
|
317439
317417
|
if (!cleanupRegistered2) {
|
|
317440
317418
|
cleanupRegistered2 = true;
|
|
@@ -318096,9 +318074,9 @@ async function assertMinVersion() {
|
|
|
318096
318074
|
if (false) {}
|
|
318097
318075
|
try {
|
|
318098
318076
|
const versionConfig = await getDynamicConfig_BLOCKS_ON_INIT("tengu_version_config", { minVersion: "0.0.0" });
|
|
318099
|
-
if (versionConfig.minVersion && lt("1.76.
|
|
318077
|
+
if (versionConfig.minVersion && lt("1.76.7", versionConfig.minVersion)) {
|
|
318100
318078
|
console.error(`
|
|
318101
|
-
It looks like your version of UR (${"1.76.
|
|
318079
|
+
It looks like your version of UR (${"1.76.7"}) needs an update.
|
|
318102
318080
|
A newer version (${versionConfig.minVersion} or higher) is required to continue.
|
|
318103
318081
|
|
|
318104
318082
|
To update, please run:
|
|
@@ -318314,7 +318292,7 @@ async function installGlobalPackage(specificVersion) {
|
|
|
318314
318292
|
logError2(new AutoUpdaterError("Another process is currently installing an update"));
|
|
318315
318293
|
logEvent("tengu_auto_updater_lock_contention", {
|
|
318316
318294
|
pid: process.pid,
|
|
318317
|
-
currentVersion: "1.76.
|
|
318295
|
+
currentVersion: "1.76.7"
|
|
318318
318296
|
});
|
|
318319
318297
|
return "in_progress";
|
|
318320
318298
|
}
|
|
@@ -318323,7 +318301,7 @@ async function installGlobalPackage(specificVersion) {
|
|
|
318323
318301
|
if (!env2.isRunningWithBun() && env2.isNpmFromWindowsPath()) {
|
|
318324
318302
|
logError2(new Error("Windows NPM detected in WSL environment"));
|
|
318325
318303
|
logEvent("tengu_auto_updater_windows_npm_in_wsl", {
|
|
318326
|
-
currentVersion: "1.76.
|
|
318304
|
+
currentVersion: "1.76.7"
|
|
318327
318305
|
});
|
|
318328
318306
|
console.error(`
|
|
318329
318307
|
Error: Windows NPM detected in WSL
|
|
@@ -318858,7 +318836,7 @@ function detectLinuxGlobPatternWarnings() {
|
|
|
318858
318836
|
}
|
|
318859
318837
|
async function getDoctorDiagnostic() {
|
|
318860
318838
|
const installationType = await getCurrentInstallationType();
|
|
318861
|
-
const version2 = typeof MACRO !== "undefined" ? "1.76.
|
|
318839
|
+
const version2 = typeof MACRO !== "undefined" ? "1.76.7" : "unknown";
|
|
318862
318840
|
const installationPath = await getInstallationPath();
|
|
318863
318841
|
const invokedBinary = getInvokedBinary();
|
|
318864
318842
|
const multipleInstallations = await detectMultipleInstallations();
|
|
@@ -319793,8 +319771,8 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
|
|
|
319793
319771
|
const maxVersion = await getMaxVersion();
|
|
319794
319772
|
if (maxVersion && gt(version2, maxVersion)) {
|
|
319795
319773
|
logForDebugging(`Native installer: maxVersion ${maxVersion} is set, capping update from ${version2} to ${maxVersion}`);
|
|
319796
|
-
if (gte("1.76.
|
|
319797
|
-
logForDebugging(`Native installer: current version ${"1.76.
|
|
319774
|
+
if (gte("1.76.7", maxVersion)) {
|
|
319775
|
+
logForDebugging(`Native installer: current version ${"1.76.7"} is already at or above maxVersion ${maxVersion}, skipping update`);
|
|
319798
319776
|
logEvent("tengu_native_update_skipped_max_version", {
|
|
319799
319777
|
latency_ms: Date.now() - startTime,
|
|
319800
319778
|
max_version: maxVersion,
|
|
@@ -319805,7 +319783,7 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
|
|
|
319805
319783
|
version2 = maxVersion;
|
|
319806
319784
|
}
|
|
319807
319785
|
}
|
|
319808
|
-
if (!forceReinstall && version2 === "1.76.
|
|
319786
|
+
if (!forceReinstall && version2 === "1.76.7" && await versionIsAvailable(version2) && await isPossibleURBinary(executablePath)) {
|
|
319809
319787
|
logForDebugging(`Found ${version2} at ${executablePath}, skipping install`);
|
|
319810
319788
|
logEvent("tengu_native_update_complete", {
|
|
319811
319789
|
latency_ms: Date.now() - startTime,
|
|
@@ -379219,9 +379197,6 @@ var init_prompt19 = __esm(() => {
|
|
|
379219
379197
|
});
|
|
379220
379198
|
|
|
379221
379199
|
// src/tools/TaskCreateTool/TaskCreateTool.ts
|
|
379222
|
-
function normalizeTaskId(candidate) {
|
|
379223
|
-
return candidate.trim().replace(/^#/gu, "");
|
|
379224
|
-
}
|
|
379225
379200
|
var inputSchema38, outputSchema33, TaskCreateTool;
|
|
379226
379201
|
var init_TaskCreateTool = __esm(() => {
|
|
379227
379202
|
init_v4();
|
|
@@ -379291,11 +379266,10 @@ var init_TaskCreateTool = __esm(() => {
|
|
|
379291
379266
|
addBlockedBy,
|
|
379292
379267
|
addToCurrentList
|
|
379293
379268
|
}, context5) {
|
|
379294
|
-
const
|
|
379295
|
-
const
|
|
379296
|
-
const initialBlockedBy = normalize13([
|
|
379269
|
+
const initialBlocks = [...new Set([...blocks ?? [], ...addBlocks ?? []])];
|
|
379270
|
+
const initialBlockedBy = [
|
|
379297
379271
|
...new Set([...blockedBy ?? [], ...addBlockedBy ?? []])
|
|
379298
|
-
]
|
|
379272
|
+
];
|
|
379299
379273
|
const taskListId = getTaskListId();
|
|
379300
379274
|
const run2 = getTaskListRunContext() ?? (context5.agentId ? undefined : getTaskListRunFromMessages(context5.messages ?? []));
|
|
379301
379275
|
const taskData = {
|
|
@@ -379311,36 +379285,27 @@ var init_TaskCreateTool = __esm(() => {
|
|
|
379311
379285
|
const taskId = run2 ? await createTaskForRun(taskListId, run2.generationId, taskData, {
|
|
379312
379286
|
appendToCurrent: run2.appendToCurrent || addToCurrentList === true
|
|
379313
379287
|
}) : await createTask(taskListId, taskData);
|
|
379314
|
-
const
|
|
379315
|
-
|
|
379316
|
-
|
|
379317
|
-
|
|
379318
|
-
|
|
379319
|
-
|
|
379320
|
-
|
|
379321
|
-
|
|
379322
|
-
|
|
379323
|
-
|
|
379324
|
-
|
|
379325
|
-
|
|
379326
|
-
};
|
|
379327
|
-
|
|
379328
|
-
|
|
379329
|
-
|
|
379330
|
-
|
|
379331
|
-
|
|
379332
|
-
|
|
379333
|
-
if (candidateDependencies.length > 0) {
|
|
379334
|
-
const dependencyResult = await updateTaskWithDependencies(taskListId, taskId, {}, candidateDependencies);
|
|
379335
|
-
if (dependencyResult.success === false) {
|
|
379336
|
-
const dependency = dependencyResult.dependency;
|
|
379337
|
-
await deleteTask(taskListId, taskId);
|
|
379338
|
-
if (dependency) {
|
|
379339
|
-
const field = candidateDependencies.find((candidate) => candidate.fromTaskId === dependency.fromTaskId && candidate.toTaskId === dependency.toTaskId)?.field ?? "dependency";
|
|
379340
|
-
throw new Error(`Invalid ${field} dependency ` + `#${dependency.fromTaskId} -> #${dependency.toTaskId}: ` + dependencyResult.reason);
|
|
379341
|
-
}
|
|
379342
|
-
throw new Error(`Failed to create task dependencies: ${dependencyResult.reason}`);
|
|
379288
|
+
const dependencies = [
|
|
379289
|
+
...initialBlocks.map((targetId) => ({
|
|
379290
|
+
fromTaskId: taskId,
|
|
379291
|
+
toTaskId: targetId,
|
|
379292
|
+
field: "blocks"
|
|
379293
|
+
})),
|
|
379294
|
+
...initialBlockedBy.map((blockerId) => ({
|
|
379295
|
+
fromTaskId: blockerId,
|
|
379296
|
+
toTaskId: taskId,
|
|
379297
|
+
field: "blockedBy"
|
|
379298
|
+
}))
|
|
379299
|
+
];
|
|
379300
|
+
const dependencyResult = await updateTaskWithDependencies(taskListId, taskId, {}, dependencies);
|
|
379301
|
+
if (dependencyResult.success === false) {
|
|
379302
|
+
const dependency = dependencyResult.dependency;
|
|
379303
|
+
await deleteTask(taskListId, taskId);
|
|
379304
|
+
if (dependency) {
|
|
379305
|
+
const field = dependencies.find((candidate) => candidate.fromTaskId === dependency.fromTaskId && candidate.toTaskId === dependency.toTaskId)?.field ?? "dependency";
|
|
379306
|
+
throw new Error(`Invalid ${field} dependency ` + `#${dependency.fromTaskId} -> #${dependency.toTaskId}: ` + dependencyResult.reason);
|
|
379343
379307
|
}
|
|
379308
|
+
throw new Error(`Failed to create task dependencies: ${dependencyResult.reason}`);
|
|
379344
379309
|
}
|
|
379345
379310
|
const blockingErrors = [];
|
|
379346
379311
|
const generator = executeTaskCreatedHooks(taskId, subject, description, getAgentName(), getTeamName(), undefined, context5?.abortController?.signal, undefined, context5);
|
|
@@ -379590,9 +379555,6 @@ Set up task dependencies:
|
|
|
379590
379555
|
`;
|
|
379591
379556
|
|
|
379592
379557
|
// src/tools/TaskUpdateTool/TaskUpdateTool.ts
|
|
379593
|
-
function normalizeTaskId2(candidate) {
|
|
379594
|
-
return candidate.trim().replace(/^#/gu, "");
|
|
379595
|
-
}
|
|
379596
379558
|
var inputSchema40, outputSchema35, TaskUpdateTool;
|
|
379597
379559
|
var init_TaskUpdateTool = __esm(() => {
|
|
379598
379560
|
init_v4();
|
|
@@ -379694,16 +379656,13 @@ var init_TaskUpdateTool = __esm(() => {
|
|
|
379694
379656
|
}
|
|
379695
379657
|
};
|
|
379696
379658
|
}
|
|
379697
|
-
const normalize13 = (raw) => [...new Set(raw.map(normalizeTaskId2).filter(Boolean))];
|
|
379698
|
-
const addBlockIds = normalize13(addBlocks ?? []);
|
|
379699
|
-
const addBlockedByIds = normalize13(addBlockedBy ?? []);
|
|
379700
379659
|
const requestedDependencies = [
|
|
379701
|
-
...
|
|
379660
|
+
...(addBlocks ?? []).map((targetId) => ({
|
|
379702
379661
|
fromTaskId: taskId,
|
|
379703
379662
|
toTaskId: targetId,
|
|
379704
379663
|
field: "addBlocks"
|
|
379705
379664
|
})),
|
|
379706
|
-
...
|
|
379665
|
+
...(addBlockedBy ?? []).map((blockerId) => ({
|
|
379707
379666
|
fromTaskId: blockerId,
|
|
379708
379667
|
toTaskId: taskId,
|
|
379709
379668
|
field: "addBlockedBy"
|
|
@@ -389399,7 +389358,7 @@ function isAnyTracingEnabled() {
|
|
|
389399
389358
|
return isTelemetryEnabled() || isEnhancedTelemetryEnabled() || isBetaTracingEnabled();
|
|
389400
389359
|
}
|
|
389401
389360
|
function getTracer() {
|
|
389402
|
-
return import_api39.trace.getTracer("ur-agent.gen_ai", "1.76.
|
|
389361
|
+
return import_api39.trace.getTracer("ur-agent.gen_ai", "1.76.7");
|
|
389403
389362
|
}
|
|
389404
389363
|
function createSpanAttributes(spanType, customAttributes = {}) {
|
|
389405
389364
|
const baseAttributes = getTelemetryAttributes();
|
|
@@ -391513,56 +391472,7 @@ function buildSchemaNotSentHint(tool, messages, tools) {
|
|
|
391513
391472
|
|
|
391514
391473
|
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.`;
|
|
391515
391474
|
}
|
|
391516
|
-
function isObjectValue(value) {
|
|
391517
|
-
return Boolean(value) && typeof value === "object" && !Array.isArray(value);
|
|
391518
|
-
}
|
|
391519
|
-
function normalizeExecutionToolInput(tool, input) {
|
|
391520
|
-
if (tool.name === ASK_USER_QUESTION_TOOL_NAME) {
|
|
391521
|
-
const normalized = normalizeAskUserQuestionInput(input);
|
|
391522
|
-
if (!isObjectValue(normalized)) {
|
|
391523
|
-
const problemsInput = Array.isArray(normalized) ? { questions: normalized } : isObjectValue(normalized) ? normalized : isObjectValue(input) ? input : undefined;
|
|
391524
|
-
const problems2 = problemsInput ? describeQuestionPayloadProblems(problemsInput) : ["Input must be an object with a `questions` array."];
|
|
391525
|
-
return {
|
|
391526
|
-
input,
|
|
391527
|
-
validationHint: `AskUserQuestion input cannot be rendered: ${problems2.join(" ")}`
|
|
391528
|
-
};
|
|
391529
|
-
}
|
|
391530
|
-
const problems = describeQuestionPayloadProblems(normalized);
|
|
391531
|
-
if (problems.length > 0) {
|
|
391532
|
-
return {
|
|
391533
|
-
input: normalized,
|
|
391534
|
-
validationHint: `AskUserQuestion input cannot be rendered: ${problems.join(" ")}`
|
|
391535
|
-
};
|
|
391536
|
-
}
|
|
391537
|
-
return { input: normalized };
|
|
391538
|
-
}
|
|
391539
|
-
if (tool.name === FILE_WRITE_TOOL_NAME && tool === FileWriteTool) {
|
|
391540
|
-
const parsed = FileWriteTool.inputSchema.safeParse(input);
|
|
391541
|
-
if (parsed.success) {
|
|
391542
|
-
return { input: parsed.data };
|
|
391543
|
-
}
|
|
391544
|
-
return {
|
|
391545
|
-
input,
|
|
391546
|
-
validationHint: parsed.error.issues.map((issue2) => issue2.message).join(". ")
|
|
391547
|
-
};
|
|
391548
|
-
}
|
|
391549
|
-
return { input };
|
|
391550
|
-
}
|
|
391551
|
-
function formatToolInputError(toolName, reason) {
|
|
391552
|
-
if (toolName === ASK_USER_QUESTION_TOOL_NAME || toolName === FILE_WRITE_TOOL_NAME) {
|
|
391553
|
-
return {
|
|
391554
|
-
toolUseError: reason,
|
|
391555
|
-
toolUseResult: reason
|
|
391556
|
-
};
|
|
391557
|
-
}
|
|
391558
|
-
return {
|
|
391559
|
-
toolUseError: `InputValidationError: ${reason}`,
|
|
391560
|
-
toolUseResult: `InputValidationError: ${reason}`
|
|
391561
|
-
};
|
|
391562
|
-
}
|
|
391563
391475
|
async function checkPermissionsAndCallTool(tool, toolUseID, input, toolUseContext, canUseTool, assistantMessage, messageId, requestId, mcpServerType, mcpServerBaseUrl, onToolProgress) {
|
|
391564
|
-
const normalized = normalizeExecutionToolInput(tool, input);
|
|
391565
|
-
input = normalized.input;
|
|
391566
391476
|
let parsedInput = tool.inputSchema.safeParse(input);
|
|
391567
391477
|
if (!parsedInput.success && parsedInput.error.issues.length > 0 && parsedInput.error.issues.every((issue2) => issue2.code === "unrecognized_keys")) {
|
|
391568
391478
|
const { input: cleaned, stripped } = stripUnrecognizedKeys(input, parsedInput.error.issues);
|
|
@@ -391604,17 +391514,9 @@ async function checkPermissionsAndCallTool(tool, toolUseID, input, toolUseContex
|
|
|
391604
391514
|
];
|
|
391605
391515
|
}
|
|
391606
391516
|
if (!parsedInput.success) {
|
|
391607
|
-
const normalizedHint = normalized.validationHint;
|
|
391608
391517
|
recordCallFailure(callSig);
|
|
391609
|
-
|
|
391610
|
-
|
|
391611
|
-
const questionProblems = tool.name === ASK_USER_QUESTION_TOOL_NAME ? describeQuestionPayloadProblems(normalizeAskUserQuestionInput(input)) : [];
|
|
391612
|
-
if (questionProblems.length > 0) {
|
|
391613
|
-
errorContent = `${tool.name} input cannot be rendered: ${questionProblems.join(" ")}`;
|
|
391614
|
-
} else {
|
|
391615
|
-
errorContent = formatZodValidationError(tool.name, parsedInput.error);
|
|
391616
|
-
}
|
|
391617
|
-
}
|
|
391518
|
+
const questionProblems = tool.name === ASK_USER_QUESTION_TOOL_NAME ? describeQuestionPayloadProblems(normalizeAskUserQuestionInput(input)) : [];
|
|
391519
|
+
let errorContent = questionProblems.length > 0 ? `${tool.name} input cannot be rendered: ${questionProblems.join(" ")}` : formatZodValidationError(tool.name, parsedInput.error);
|
|
391618
391520
|
const schemaHint = buildSchemaNotSentHint(tool, toolUseContext.messages, toolUseContext.options.tools);
|
|
391619
391521
|
if (schemaHint) {
|
|
391620
391522
|
logEvent("tengu_deferred_tool_schema_not_sent", {
|
|
@@ -391643,19 +391545,18 @@ async function checkPermissionsAndCallTool(tool, toolUseID, input, toolUseContex
|
|
|
391643
391545
|
},
|
|
391644
391546
|
...mcpToolDetailsForAnalytics(tool.name, mcpServerType, mcpServerBaseUrl)
|
|
391645
391547
|
});
|
|
391646
|
-
const { toolUseError, toolUseResult } = formatToolInputError(tool.name, errorContent);
|
|
391647
391548
|
return [
|
|
391648
391549
|
{
|
|
391649
391550
|
message: createUserMessage({
|
|
391650
391551
|
content: [
|
|
391651
391552
|
{
|
|
391652
391553
|
type: "tool_result",
|
|
391653
|
-
content: `<tool_use_error
|
|
391554
|
+
content: `<tool_use_error>InputValidationError: ${errorContent}</tool_use_error>`,
|
|
391654
391555
|
is_error: true,
|
|
391655
391556
|
tool_use_id: toolUseID
|
|
391656
391557
|
}
|
|
391657
391558
|
],
|
|
391658
|
-
toolUseResult
|
|
391559
|
+
toolUseResult: `InputValidationError: ${parsedInput.error.message}`,
|
|
391659
391560
|
sourceToolAssistantUUID: assistantMessage.uuid
|
|
391660
391561
|
})
|
|
391661
391562
|
}
|
|
@@ -391966,8 +391867,6 @@ async function checkPermissionsAndCallTool(tool, toolUseID, input, toolUseContex
|
|
|
391966
391867
|
endToolSpan();
|
|
391967
391868
|
toolUseContext.toolDecisions?.delete(toolUseID);
|
|
391968
391869
|
};
|
|
391969
|
-
const finalNormalized = normalizeExecutionToolInput(tool, callInput);
|
|
391970
|
-
callInput = finalNormalized.input;
|
|
391971
391870
|
const finalParsedInput = tool.inputSchema.safeParse(callInput);
|
|
391972
391871
|
if (!finalParsedInput.success) {
|
|
391973
391872
|
callSig = callSignature(tool.name, callInput, repeatedFailureScope(toolUseContext, messageId));
|
|
@@ -391996,21 +391895,18 @@ async function checkPermissionsAndCallTool(tool, toolUseID, input, toolUseContex
|
|
|
391996
391895
|
}
|
|
391997
391896
|
recordCallFailure(callSig);
|
|
391998
391897
|
const finalInputError = formatZodValidationError(tool.name, finalParsedInput.error);
|
|
391999
|
-
const finalInputContent = finalNormalized.validationHint ?? finalInputError;
|
|
392000
391898
|
finishPreExecutionRejection();
|
|
392001
|
-
const finalInputContentWithContext = tool.name === ASK_USER_QUESTION_TOOL_NAME || tool.name === FILE_WRITE_TOOL_NAME ? finalInputContent : `InputValidationError after input update: ${finalInputContent}`;
|
|
392002
|
-
const { toolUseError, toolUseResult } = formatToolInputError(tool.name, finalInputContentWithContext);
|
|
392003
391899
|
resultingMessages.push({
|
|
392004
391900
|
message: createUserMessage({
|
|
392005
391901
|
content: [
|
|
392006
391902
|
{
|
|
392007
391903
|
type: "tool_result",
|
|
392008
|
-
content: `<tool_use_error
|
|
391904
|
+
content: `<tool_use_error>InputValidationError after input update: ${finalInputError}</tool_use_error>`,
|
|
392009
391905
|
is_error: true,
|
|
392010
391906
|
tool_use_id: toolUseID
|
|
392011
391907
|
}
|
|
392012
391908
|
],
|
|
392013
|
-
toolUseResult
|
|
391909
|
+
toolUseResult: `InputValidationError: ${finalParsedInput.error.message}`,
|
|
392014
391910
|
sourceToolAssistantUUID: assistantMessage.uuid
|
|
392015
391911
|
})
|
|
392016
391912
|
});
|
|
@@ -392478,7 +392374,6 @@ var init_toolExecution = __esm(() => {
|
|
|
392478
392374
|
init_bashPermissions();
|
|
392479
392375
|
init_prompt3();
|
|
392480
392376
|
init_prompt4();
|
|
392481
|
-
init_FileWriteTool();
|
|
392482
392377
|
init_gitOperationTracking();
|
|
392483
392378
|
init_prompt8();
|
|
392484
392379
|
init_tools2();
|
|
@@ -409562,40 +409457,6 @@ function joinTextAtSeam(a2, b) {
|
|
|
409562
409457
|
}
|
|
409563
409458
|
return [...a2, ...b];
|
|
409564
409459
|
}
|
|
409565
|
-
function safeJsonDebugValue(value) {
|
|
409566
|
-
try {
|
|
409567
|
-
return JSON.stringify(value, null, 2);
|
|
409568
|
-
} catch {
|
|
409569
|
-
return String(value);
|
|
409570
|
-
}
|
|
409571
|
-
}
|
|
409572
|
-
function normalizeIncomingWriteInputForAPI(input) {
|
|
409573
|
-
if (!isObject_default(input)) {
|
|
409574
|
-
return null;
|
|
409575
|
-
}
|
|
409576
|
-
const parsed = FileWriteTool.inputSchema.safeParse(input);
|
|
409577
|
-
if (!parsed.success) {
|
|
409578
|
-
return null;
|
|
409579
|
-
}
|
|
409580
|
-
return parsed.data;
|
|
409581
|
-
}
|
|
409582
|
-
function normalizeIncomingAskUserQuestionInputForAPI(input) {
|
|
409583
|
-
const normalized = normalizeAskUserQuestionInput(input);
|
|
409584
|
-
if (!isObject_default(normalized)) {
|
|
409585
|
-
return null;
|
|
409586
|
-
}
|
|
409587
|
-
if (describeQuestionPayloadProblems(normalized).length > 0) {
|
|
409588
|
-
return null;
|
|
409589
|
-
}
|
|
409590
|
-
return normalized;
|
|
409591
|
-
}
|
|
409592
|
-
function toolUseFallbackText(toolName, reason, input) {
|
|
409593
|
-
const safeInput = safeJsonDebugValue(input).slice(0, MAX_TOOL_USE_REPAIR_TEXT_CHARS);
|
|
409594
|
-
return {
|
|
409595
|
-
type: "text",
|
|
409596
|
-
text: `Tool ${toolName} call was not renderable (${reason}). Raw input: ${safeInput}`
|
|
409597
|
-
};
|
|
409598
|
-
}
|
|
409599
409460
|
function smooshIntoToolResult(tr, blocks) {
|
|
409600
409461
|
if (blocks.length === 0)
|
|
409601
409462
|
return tr;
|
|
@@ -409703,20 +409564,6 @@ function normalizeContentFromAPI(contentBlocks, tools, agentId) {
|
|
|
409703
409564
|
if (typeof normalizedInput !== "object" || normalizedInput === null || Array.isArray(normalizedInput)) {
|
|
409704
409565
|
throw new Error(`Tool use input for ${String(contentBlock.name)} must be a JSON object`);
|
|
409705
409566
|
}
|
|
409706
|
-
if (contentBlock.name === FILE_WRITE_TOOL_NAME) {
|
|
409707
|
-
const repaired = normalizeIncomingWriteInputForAPI(normalizedInput);
|
|
409708
|
-
if (repaired === null) {
|
|
409709
|
-
return toolUseFallbackText(String(contentBlock.name ?? FILE_WRITE_TOOL_NAME), "invalid Write arguments", contentBlock.input);
|
|
409710
|
-
}
|
|
409711
|
-
normalizedInput = repaired;
|
|
409712
|
-
}
|
|
409713
|
-
if (contentBlock.name === ASK_USER_QUESTION_TOOL_NAME) {
|
|
409714
|
-
const repaired = normalizeIncomingAskUserQuestionInputForAPI(normalizedInput);
|
|
409715
|
-
if (repaired === null) {
|
|
409716
|
-
return toolUseFallbackText(String(contentBlock.name ?? ASK_USER_QUESTION_TOOL_NAME), "invalid AskUserQuestion arguments", contentBlock.input);
|
|
409717
|
-
}
|
|
409718
|
-
normalizedInput = repaired;
|
|
409719
|
-
}
|
|
409720
409567
|
const sanitized = stripEmptyParameterNames(normalizedInput);
|
|
409721
409568
|
if (sanitized.stripped) {
|
|
409722
409569
|
normalizedInput = sanitized.input;
|
|
@@ -411569,7 +411416,7 @@ Note: The user's next message may contain a correction or preference. Pay close
|
|
|
411569
411416
|
`, PLAN_REJECTION_PREFIX = `The agent proposed a plan that was rejected by the user. The user chose to stay in plan mode rather than proceed with implementation.
|
|
411570
411417
|
|
|
411571
411418
|
Rejected plan:
|
|
411572
|
-
`, DENIAL_WORKAROUND_GUIDANCE, NO_RESPONSE_REQUESTED = "No response requested.", SYNTHETIC_TOOL_RESULT_PLACEHOLDER = "[Tool result missing due to internal error]", SYNTHETIC_MODEL = "<synthetic>", SYNTHETIC_MESSAGES, EMPTY_LOOKUPS, EMPTY_STRING_SET,
|
|
411419
|
+
`, DENIAL_WORKAROUND_GUIDANCE, NO_RESPONSE_REQUESTED = "No response requested.", SYNTHETIC_TOOL_RESULT_PLACEHOLDER = "[Tool result missing due to internal error]", SYNTHETIC_MODEL = "<synthetic>", SYNTHETIC_MESSAGES, EMPTY_LOOKUPS, EMPTY_STRING_SET, STRIPPED_TAGS_RE, PLAN_PHASE4_CONTROL = `### Phase 4: Final Plan
|
|
411573
411420
|
Goal: Write your final plan to the plan file (the only file you can edit).
|
|
411574
411421
|
- Begin with a **Context** section: explain why this change is being made \u2014 the problem or need it addresses, what prompted it, and the intended outcome
|
|
411575
411422
|
- Include only your recommended approach, not all alternatives
|
|
@@ -411622,7 +411469,6 @@ var init_messages = __esm(() => {
|
|
|
411622
411469
|
init_ExitPlanModeV2Tool();
|
|
411623
411470
|
init_FileEditTool();
|
|
411624
411471
|
init_prompt3();
|
|
411625
|
-
init_prompt4();
|
|
411626
411472
|
init_FileWriteTool();
|
|
411627
411473
|
init_prompt2();
|
|
411628
411474
|
init_state();
|
|
@@ -411635,7 +411481,6 @@ var init_messages = __esm(() => {
|
|
|
411635
411481
|
init_debug();
|
|
411636
411482
|
init_displayTags();
|
|
411637
411483
|
init_embeddedTools();
|
|
411638
|
-
init_AskUserQuestionTool();
|
|
411639
411484
|
init_format2();
|
|
411640
411485
|
init_imageValidation();
|
|
411641
411486
|
init_json();
|
|
@@ -419682,7 +419527,7 @@ function Feedback({
|
|
|
419682
419527
|
platform: env2.platform,
|
|
419683
419528
|
gitRepo: envInfo.isGit,
|
|
419684
419529
|
terminal: env2.terminal,
|
|
419685
|
-
version: "1.76.
|
|
419530
|
+
version: "1.76.7",
|
|
419686
419531
|
transcript: normalizeMessagesForAPI(messages),
|
|
419687
419532
|
errors: sanitizedErrors,
|
|
419688
419533
|
lastApiRequest: getLastAPIRequest(),
|
|
@@ -419874,7 +419719,7 @@ function Feedback({
|
|
|
419874
419719
|
", ",
|
|
419875
419720
|
env2.terminal,
|
|
419876
419721
|
", v",
|
|
419877
|
-
"1.76.
|
|
419722
|
+
"1.76.7"
|
|
419878
419723
|
]
|
|
419879
419724
|
}, undefined, true, undefined, this)
|
|
419880
419725
|
]
|
|
@@ -419980,7 +419825,7 @@ ${sanitizedDescription}
|
|
|
419980
419825
|
` + `**Environment Info**
|
|
419981
419826
|
` + `- Platform: ${env2.platform}
|
|
419982
419827
|
` + `- Terminal: ${env2.terminal}
|
|
419983
|
-
` + `- Version: ${"1.76.
|
|
419828
|
+
` + `- Version: ${"1.76.7"}
|
|
419984
419829
|
` + `- Feedback ID: ${feedbackId}
|
|
419985
419830
|
` + `
|
|
419986
419831
|
**Errors**
|
|
@@ -423090,7 +422935,7 @@ function buildPrimarySection() {
|
|
|
423090
422935
|
}, undefined, false, undefined, this);
|
|
423091
422936
|
return [{
|
|
423092
422937
|
label: "Version",
|
|
423093
|
-
value: "1.76.
|
|
422938
|
+
value: "1.76.7"
|
|
423094
422939
|
}, {
|
|
423095
422940
|
label: "Session name",
|
|
423096
422941
|
value: nameValue
|
|
@@ -426472,7 +426317,7 @@ function Config({
|
|
|
426472
426317
|
}
|
|
426473
426318
|
}, undefined, false, undefined, this)
|
|
426474
426319
|
}, undefined, false, undefined, this) : showSubmenu === "ChannelDowngrade" ? /* @__PURE__ */ jsx_dev_runtime179.jsxDEV(ChannelDowngradeDialog, {
|
|
426475
|
-
currentVersion: "1.76.
|
|
426320
|
+
currentVersion: "1.76.7",
|
|
426476
426321
|
onChoice: (choice) => {
|
|
426477
426322
|
setShowSubmenu(null);
|
|
426478
426323
|
setTabsHidden(false);
|
|
@@ -426484,7 +426329,7 @@ function Config({
|
|
|
426484
426329
|
autoUpdatesChannel: "stable"
|
|
426485
426330
|
};
|
|
426486
426331
|
if (choice === "stay") {
|
|
426487
|
-
newSettings.minimumVersion = "1.76.
|
|
426332
|
+
newSettings.minimumVersion = "1.76.7";
|
|
426488
426333
|
}
|
|
426489
426334
|
updateSettingsForSource("userSettings", newSettings);
|
|
426490
426335
|
setSettingsData((prev_27) => ({
|
|
@@ -434548,7 +434393,7 @@ function HelpV2(t0) {
|
|
|
434548
434393
|
let t6;
|
|
434549
434394
|
if ($2[31] !== tabs) {
|
|
434550
434395
|
t6 = /* @__PURE__ */ jsx_dev_runtime206.jsxDEV(Tabs, {
|
|
434551
|
-
title: `UR v${"1.76.
|
|
434396
|
+
title: `UR v${"1.76.7"}`,
|
|
434552
434397
|
color: "professionalBlue",
|
|
434553
434398
|
defaultTab: "general",
|
|
434554
434399
|
children: tabs
|
|
@@ -435481,7 +435326,7 @@ function buildToolUseContext(tools, readFileStateCache, toolPermissionContext, a
|
|
|
435481
435326
|
async function handleInitialize(options2) {
|
|
435482
435327
|
return {
|
|
435483
435328
|
name: "UR",
|
|
435484
|
-
version: "1.76.
|
|
435329
|
+
version: "1.76.7",
|
|
435485
435330
|
protocolVersion: "0.1.0",
|
|
435486
435331
|
workspaceRoot: options2.cwd,
|
|
435487
435332
|
capabilities: {
|
|
@@ -452589,7 +452434,7 @@ function getAllReleaseNotes(changelogContent = getStoredChangelogFromMemory()) {
|
|
|
452589
452434
|
return [];
|
|
452590
452435
|
}
|
|
452591
452436
|
}
|
|
452592
|
-
async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.76.
|
|
452437
|
+
async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.76.7") {
|
|
452593
452438
|
if (process.env.USER_TYPE === "ant") {
|
|
452594
452439
|
const changelog = "";
|
|
452595
452440
|
if (changelog) {
|
|
@@ -452616,7 +452461,7 @@ async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.76.6")
|
|
|
452616
452461
|
releaseNotes
|
|
452617
452462
|
};
|
|
452618
452463
|
}
|
|
452619
|
-
function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.76.
|
|
452464
|
+
function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.76.7") {
|
|
452620
452465
|
if (process.env.USER_TYPE === "ant") {
|
|
452621
452466
|
const changelog = "";
|
|
452622
452467
|
if (changelog) {
|
|
@@ -455482,7 +455327,7 @@ function getRecentActivitySync() {
|
|
|
455482
455327
|
return cachedActivity;
|
|
455483
455328
|
}
|
|
455484
455329
|
function getLogoDisplayData() {
|
|
455485
|
-
const version2 = process.env.DEMO_VERSION ?? "1.76.
|
|
455330
|
+
const version2 = process.env.DEMO_VERSION ?? "1.76.7";
|
|
455486
455331
|
const serverUrl = getDirectConnectServerUrl();
|
|
455487
455332
|
const displayPath = process.env.DEMO_VERSION ? "/code/ur" : getDisplayPath(getCwd());
|
|
455488
455333
|
const cwd2 = serverUrl ? `${displayPath} in ${serverUrl.replace(/^https?:\/\//, "")}` : displayPath;
|
|
@@ -456349,7 +456194,7 @@ function LogoV2() {
|
|
|
456349
456194
|
if ($2[2] === Symbol.for("react.memo_cache_sentinel")) {
|
|
456350
456195
|
t2 = () => {
|
|
456351
456196
|
const currentConfig2 = getGlobalConfig();
|
|
456352
|
-
if (currentConfig2.lastReleaseNotesSeen === "1.76.
|
|
456197
|
+
if (currentConfig2.lastReleaseNotesSeen === "1.76.7") {
|
|
456353
456198
|
return;
|
|
456354
456199
|
}
|
|
456355
456200
|
saveGlobalConfig(_temp325);
|
|
@@ -457034,12 +456879,12 @@ function LogoV2() {
|
|
|
457034
456879
|
return t41;
|
|
457035
456880
|
}
|
|
457036
456881
|
function _temp325(current) {
|
|
457037
|
-
if (current.lastReleaseNotesSeen === "1.76.
|
|
456882
|
+
if (current.lastReleaseNotesSeen === "1.76.7") {
|
|
457038
456883
|
return current;
|
|
457039
456884
|
}
|
|
457040
456885
|
return {
|
|
457041
456886
|
...current,
|
|
457042
|
-
lastReleaseNotesSeen: "1.76.
|
|
456887
|
+
lastReleaseNotesSeen: "1.76.7"
|
|
457043
456888
|
};
|
|
457044
456889
|
}
|
|
457045
456890
|
function _temp241(s_0) {
|
|
@@ -473853,7 +473698,7 @@ function compileAgenticCiWorkflow(specName = "default", options2 = {}) {
|
|
|
473853
473698
|
if (spec.name !== specName) {
|
|
473854
473699
|
throw new Error("Agentic CI workflow spec name does not match");
|
|
473855
473700
|
}
|
|
473856
|
-
const packageVersion = options2.packageVersion ?? (typeof MACRO !== "undefined" ? "1.76.
|
|
473701
|
+
const packageVersion = options2.packageVersion ?? (typeof MACRO !== "undefined" ? "1.76.7" : "1.76.7");
|
|
473857
473702
|
if (!/^\d+\.\d+\.\d+(?:-[0-9A-Za-z.-]+)?$/.test(packageVersion)) {
|
|
473858
473703
|
throw new Error("invalid ur-agent package version");
|
|
473859
473704
|
}
|
|
@@ -474846,7 +474691,7 @@ runner; \`ur trigger\` is the inbound parser that decides what to run.
|
|
|
474846
474691
|
path: ".github/workflows/ur.yml",
|
|
474847
474692
|
root: "project",
|
|
474848
474693
|
content: compileAgenticCiWorkflow("default", {
|
|
474849
|
-
packageVersion: typeof MACRO !== "undefined" ? "1.76.
|
|
474694
|
+
packageVersion: typeof MACRO !== "undefined" ? "1.76.7" : "1.76.7"
|
|
474850
474695
|
})
|
|
474851
474696
|
},
|
|
474852
474697
|
{
|
|
@@ -474909,7 +474754,7 @@ function value(tokens, flag) {
|
|
|
474909
474754
|
return index2 >= 0 ? tokens[index2 + 1] : undefined;
|
|
474910
474755
|
}
|
|
474911
474756
|
function cliVersion() {
|
|
474912
|
-
return typeof MACRO !== "undefined" ? "1.76.
|
|
474757
|
+
return typeof MACRO !== "undefined" ? "1.76.7" : "1.76.7";
|
|
474913
474758
|
}
|
|
474914
474759
|
function workflowPath(cwd2) {
|
|
474915
474760
|
return join159(cwd2, ".github", "workflows", "ur-agentic-ci.yml");
|
|
@@ -480765,7 +480610,7 @@ function createAcpStdioApp(deps) {
|
|
|
480765
480610
|
}
|
|
480766
480611
|
},
|
|
480767
480612
|
authMethods: [],
|
|
480768
|
-
agentInfo: { name: "UR-Nexus", version: "1.76.
|
|
480613
|
+
agentInfo: { name: "UR-Nexus", version: "1.76.7" }
|
|
480769
480614
|
})).onRequest("authenticate", () => ({})).onRequest("session/new", async (context6) => {
|
|
480770
480615
|
const result = runtime2.newSession(context6.params.cwd, context6.params.mcpServers, context6.params.additionalDirectories);
|
|
480771
480616
|
await runtime2.announce({
|
|
@@ -480862,7 +480707,7 @@ function createAcpStdioAgent(deps) {
|
|
|
480862
480707
|
}
|
|
480863
480708
|
},
|
|
480864
480709
|
authMethods: [],
|
|
480865
|
-
agentInfo: { name: "UR-Nexus", version: "1.76.
|
|
480710
|
+
agentInfo: { name: "UR-Nexus", version: "1.76.7" }
|
|
480866
480711
|
});
|
|
480867
480712
|
return;
|
|
480868
480713
|
case "authenticate":
|
|
@@ -690314,7 +690159,7 @@ async function captureMemoryDiagnostics(trigger2, dumpNumber = 0) {
|
|
|
690314
690159
|
smapsRollup,
|
|
690315
690160
|
platform: process.platform,
|
|
690316
690161
|
nodeVersion: process.version,
|
|
690317
|
-
ccVersion: "1.76.
|
|
690162
|
+
ccVersion: "1.76.7"
|
|
690318
690163
|
};
|
|
690319
690164
|
}
|
|
690320
690165
|
async function performHeapDump(trigger2 = "manual", dumpNumber = 0) {
|
|
@@ -690894,7 +690739,7 @@ var init_bridge_kick = __esm(() => {
|
|
|
690894
690739
|
var call154 = async () => {
|
|
690895
690740
|
return {
|
|
690896
690741
|
type: "text",
|
|
690897
|
-
value: "1.76.
|
|
690742
|
+
value: "1.76.7"
|
|
690898
690743
|
};
|
|
690899
690744
|
}, version2, version_default;
|
|
690900
690745
|
var init_version = __esm(() => {
|
|
@@ -702161,7 +702006,7 @@ function generateHtmlReport(data, insights) {
|
|
|
702161
702006
|
</html>`;
|
|
702162
702007
|
}
|
|
702163
702008
|
function buildExportData(data, insights, facets, remoteStats) {
|
|
702164
|
-
const version3 = typeof MACRO !== "undefined" ? "1.76.
|
|
702009
|
+
const version3 = typeof MACRO !== "undefined" ? "1.76.7" : "unknown";
|
|
702165
702010
|
const remote_hosts_collected = remoteStats?.hosts.filter((h2) => h2.sessionCount > 0).map((h2) => h2.name);
|
|
702166
702011
|
const facets_summary = {
|
|
702167
702012
|
total: facets.size,
|
|
@@ -706475,7 +706320,7 @@ var init_sessionStorage = __esm(() => {
|
|
|
706475
706320
|
init_settings2();
|
|
706476
706321
|
init_slowOperations();
|
|
706477
706322
|
init_uuid();
|
|
706478
|
-
VERSION7 = typeof MACRO !== "undefined" ? "1.76.
|
|
706323
|
+
VERSION7 = typeof MACRO !== "undefined" ? "1.76.7" : "unknown";
|
|
706479
706324
|
MAX_TOMBSTONE_REWRITE_BYTES = 50 * 1024 * 1024;
|
|
706480
706325
|
SKIP_FIRST_PROMPT_PATTERN = /^(?:\s*<[a-z][\w-]*[\s>]|\[Request interrupted by user[^\]]*\])/;
|
|
706481
706326
|
EPHEMERAL_PROGRESS_TYPES = new Set([
|
|
@@ -707690,7 +707535,7 @@ var init_filesystem = __esm(() => {
|
|
|
707690
707535
|
});
|
|
707691
707536
|
getBundledSkillsRoot = memoize_default(function getBundledSkillsRoot2() {
|
|
707692
707537
|
const nonce = randomBytes20(16).toString("hex");
|
|
707693
|
-
return join232(getURTempDir(), "bundled-skills", "1.76.
|
|
707538
|
+
return join232(getURTempDir(), "bundled-skills", "1.76.7", nonce);
|
|
707694
707539
|
});
|
|
707695
707540
|
getResolvedWorkingDirPaths = memoize_default(getPathsForPermissionCheck);
|
|
707696
707541
|
});
|
|
@@ -714039,7 +713884,7 @@ function computeFingerprint(messageText2, version3) {
|
|
|
714039
713884
|
}
|
|
714040
713885
|
function computeFingerprintFromMessages(messages) {
|
|
714041
713886
|
const firstMessageText = extractFirstMessageText(messages);
|
|
714042
|
-
return computeFingerprint(firstMessageText, "1.76.
|
|
713887
|
+
return computeFingerprint(firstMessageText, "1.76.7");
|
|
714043
713888
|
}
|
|
714044
713889
|
var FINGERPRINT_SALT = "59cf53e54c78";
|
|
714045
713890
|
var init_fingerprint = () => {};
|
|
@@ -715958,7 +715803,7 @@ async function sideQuery(opts) {
|
|
|
715958
715803
|
betas.push(STRUCTURED_OUTPUTS_BETA_HEADER);
|
|
715959
715804
|
}
|
|
715960
715805
|
const messageText2 = extractFirstUserMessageText(messages);
|
|
715961
|
-
const fingerprint2 = computeFingerprint(messageText2, "1.76.
|
|
715806
|
+
const fingerprint2 = computeFingerprint(messageText2, "1.76.7");
|
|
715962
715807
|
const attributionHeader = getAttributionHeader(fingerprint2);
|
|
715963
715808
|
const systemBlocks = [
|
|
715964
715809
|
attributionHeader ? { type: "text", text: attributionHeader } : null,
|
|
@@ -720795,7 +720640,7 @@ function buildSystemInitMessage(inputs) {
|
|
|
720795
720640
|
slash_commands: inputs.commands.filter((c4) => c4.userInvocable !== false).map((c4) => c4.name),
|
|
720796
720641
|
apiKeySource: getURHQApiKeyWithSource().source,
|
|
720797
720642
|
betas: getSdkBetas(),
|
|
720798
|
-
ur_version: "1.76.
|
|
720643
|
+
ur_version: "1.76.7",
|
|
720799
720644
|
output_style: outputStyle2,
|
|
720800
720645
|
agents: inputs.agents.map((agent2) => agent2.agentType),
|
|
720801
720646
|
skills: inputs.skills.filter((s) => s.userInvocable !== false).map((skill2) => skill2.name),
|
|
@@ -734667,7 +734512,7 @@ var init_useVoiceEnabled = __esm(() => {
|
|
|
734667
734512
|
function getSemverPart(version3) {
|
|
734668
734513
|
return `${import_semver13.major(version3, { loose: true })}.${import_semver13.minor(version3, { loose: true })}.${import_semver13.patch(version3, { loose: true })}`;
|
|
734669
734514
|
}
|
|
734670
|
-
function useUpdateNotification(updatedVersion, initialVersion = "1.76.
|
|
734515
|
+
function useUpdateNotification(updatedVersion, initialVersion = "1.76.7") {
|
|
734671
734516
|
const [lastNotifiedSemver, setLastNotifiedSemver] = import_react223.useState(() => getSemverPart(initialVersion));
|
|
734672
734517
|
if (!updatedVersion) {
|
|
734673
734518
|
return null;
|
|
@@ -734716,7 +734561,7 @@ function AutoUpdater({
|
|
|
734716
734561
|
return;
|
|
734717
734562
|
}
|
|
734718
734563
|
if (false) {}
|
|
734719
|
-
const currentVersion = "1.76.
|
|
734564
|
+
const currentVersion = "1.76.7";
|
|
734720
734565
|
const channel = getInitialSettings()?.autoUpdatesChannel ?? "latest";
|
|
734721
734566
|
let latestVersion = await getLatestVersion(channel);
|
|
734722
734567
|
const isDisabled = isAutoUpdaterDisabled();
|
|
@@ -734945,12 +734790,12 @@ function NativeAutoUpdater({
|
|
|
734945
734790
|
logEvent("tengu_native_auto_updater_start", {});
|
|
734946
734791
|
try {
|
|
734947
734792
|
const maxVersion = await getMaxVersion();
|
|
734948
|
-
if (maxVersion && gt("1.76.
|
|
734793
|
+
if (maxVersion && gt("1.76.7", maxVersion)) {
|
|
734949
734794
|
const msg = await getMaxVersionMessage();
|
|
734950
734795
|
setMaxVersionIssue(msg ?? "affects your version");
|
|
734951
734796
|
}
|
|
734952
734797
|
const result = await installLatest(channel);
|
|
734953
|
-
const currentVersion = "1.76.
|
|
734798
|
+
const currentVersion = "1.76.7";
|
|
734954
734799
|
const latencyMs = Date.now() - startTime;
|
|
734955
734800
|
if (result.lockFailed) {
|
|
734956
734801
|
logEvent("tengu_native_auto_updater_lock_contention", {
|
|
@@ -735087,17 +734932,17 @@ function PackageManagerAutoUpdater(t0) {
|
|
|
735087
734932
|
const maxVersion = await getMaxVersion();
|
|
735088
734933
|
if (maxVersion && latest && gt(latest, maxVersion)) {
|
|
735089
734934
|
logForDebugging(`PackageManagerAutoUpdater: maxVersion ${maxVersion} is set, capping update from ${latest} to ${maxVersion}`);
|
|
735090
|
-
if (gte("1.76.
|
|
735091
|
-
logForDebugging(`PackageManagerAutoUpdater: current version ${"1.76.
|
|
734935
|
+
if (gte("1.76.7", maxVersion)) {
|
|
734936
|
+
logForDebugging(`PackageManagerAutoUpdater: current version ${"1.76.7"} is already at or above maxVersion ${maxVersion}, skipping update`);
|
|
735092
734937
|
setUpdateAvailable(false);
|
|
735093
734938
|
return;
|
|
735094
734939
|
}
|
|
735095
734940
|
latest = maxVersion;
|
|
735096
734941
|
}
|
|
735097
|
-
const hasUpdate = latest && !gte("1.76.
|
|
734942
|
+
const hasUpdate = latest && !gte("1.76.7", latest) && !shouldSkipVersion(latest);
|
|
735098
734943
|
setUpdateAvailable(!!hasUpdate);
|
|
735099
734944
|
if (hasUpdate) {
|
|
735100
|
-
logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.76.
|
|
734945
|
+
logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.76.7"} -> ${latest}`);
|
|
735101
734946
|
}
|
|
735102
734947
|
};
|
|
735103
734948
|
$2[0] = t1;
|
|
@@ -735131,7 +734976,7 @@ function PackageManagerAutoUpdater(t0) {
|
|
|
735131
734976
|
wrap: "truncate",
|
|
735132
734977
|
children: [
|
|
735133
734978
|
"currentVersion: ",
|
|
735134
|
-
"1.76.
|
|
734979
|
+
"1.76.7"
|
|
735135
734980
|
]
|
|
735136
734981
|
}, undefined, true, undefined, this);
|
|
735137
734982
|
$2[3] = verbose;
|
|
@@ -745931,7 +745776,7 @@ function buildStatusLineCommandInput(permissionMode, exceeds200kTokens, settings
|
|
|
745931
745776
|
project_dir: getOriginalCwd(),
|
|
745932
745777
|
added_dirs: addedDirs
|
|
745933
745778
|
},
|
|
745934
|
-
version: "1.76.
|
|
745779
|
+
version: "1.76.7",
|
|
745935
745780
|
output_style: {
|
|
745936
745781
|
name: outputStyleName
|
|
745937
745782
|
},
|
|
@@ -746066,7 +745911,7 @@ function StatusLineInner({
|
|
|
746066
745911
|
const attention = customStatusError ?? taskAttention;
|
|
746067
745912
|
const terminalSize = React132.useContext(TerminalSizeContext);
|
|
746068
745913
|
const defaultStatusLineText = buildDefaultStatusBar({
|
|
746069
|
-
version: "1.76.
|
|
745914
|
+
version: "1.76.7",
|
|
746070
745915
|
providerLabel: providerRuntime.providerLabel,
|
|
746071
745916
|
authMode: providerRuntime.authLabel,
|
|
746072
745917
|
model: renderModelName(mainLoopModel) || providerRuntime.model || "",
|
|
@@ -758351,7 +758196,7 @@ async function submitTranscriptShare(messages, trigger2, appearanceId) {
|
|
|
758351
758196
|
} catch {}
|
|
758352
758197
|
const data = {
|
|
758353
758198
|
trigger: trigger2,
|
|
758354
|
-
version: "1.76.
|
|
758199
|
+
version: "1.76.7",
|
|
758355
758200
|
platform: process.platform,
|
|
758356
758201
|
transcript,
|
|
758357
758202
|
subagentTranscripts: Object.keys(subagentTranscripts).length > 0 ? subagentTranscripts : undefined,
|
|
@@ -770725,7 +770570,7 @@ function WelcomeV2() {
|
|
|
770725
770570
|
dimColor: true,
|
|
770726
770571
|
children: [
|
|
770727
770572
|
"v",
|
|
770728
|
-
"1.76.
|
|
770573
|
+
"1.76.7"
|
|
770729
770574
|
]
|
|
770730
770575
|
}, undefined, true, undefined, this)
|
|
770731
770576
|
]
|
|
@@ -771985,7 +771830,7 @@ function completeOnboarding() {
|
|
|
771985
771830
|
saveGlobalConfig((current) => ({
|
|
771986
771831
|
...current,
|
|
771987
771832
|
hasCompletedOnboarding: true,
|
|
771988
|
-
lastOnboardingVersion: "1.76.
|
|
771833
|
+
lastOnboardingVersion: "1.76.7"
|
|
771989
771834
|
}));
|
|
771990
771835
|
}
|
|
771991
771836
|
function showDialog(root2, renderer) {
|
|
@@ -777029,7 +776874,7 @@ function appendToLog(path24, message) {
|
|
|
777029
776874
|
cwd: getFsImplementation().cwd(),
|
|
777030
776875
|
userType: process.env.USER_TYPE,
|
|
777031
776876
|
sessionId: getSessionId(),
|
|
777032
|
-
version: "1.76.
|
|
776877
|
+
version: "1.76.7"
|
|
777033
776878
|
};
|
|
777034
776879
|
getLogWriter(path24).write(messageWithTimestamp);
|
|
777035
776880
|
}
|
|
@@ -781188,8 +781033,8 @@ async function getEnvLessBridgeConfig() {
|
|
|
781188
781033
|
}
|
|
781189
781034
|
async function checkEnvLessBridgeMinVersion() {
|
|
781190
781035
|
const cfg = await getEnvLessBridgeConfig();
|
|
781191
|
-
if (cfg.min_version && lt("1.76.
|
|
781192
|
-
return `Your version of UR (${"1.76.
|
|
781036
|
+
if (cfg.min_version && lt("1.76.7", cfg.min_version)) {
|
|
781037
|
+
return `Your version of UR (${"1.76.7"}) is too old for Remote Control.
|
|
781193
781038
|
Version ${cfg.min_version} or higher is required. Run \`ur update\` to update.`;
|
|
781194
781039
|
}
|
|
781195
781040
|
return null;
|
|
@@ -781663,7 +781508,7 @@ async function initBridgeCore(params) {
|
|
|
781663
781508
|
const rawApi = createBridgeApiClient({
|
|
781664
781509
|
baseUrl,
|
|
781665
781510
|
getAccessToken,
|
|
781666
|
-
runnerVersion: "1.76.
|
|
781511
|
+
runnerVersion: "1.76.7",
|
|
781667
781512
|
onDebug: logForDebugging,
|
|
781668
781513
|
onAuth401,
|
|
781669
781514
|
getTrustedDeviceToken
|
|
@@ -791136,7 +790981,7 @@ function getAgUiCapabilities() {
|
|
|
791136
790981
|
name: "UR-Nexus",
|
|
791137
790982
|
type: "ur-nexus",
|
|
791138
790983
|
description: "Provider-flexible, local-first autonomous engineering workflow agent.",
|
|
791139
|
-
version: "1.76.
|
|
790984
|
+
version: "1.76.7",
|
|
791140
790985
|
provider: "UR",
|
|
791141
790986
|
documentationUrl: "https://github.com/Maitham16/UR/blob/master/docs/AG_UI.md"
|
|
791142
790987
|
},
|
|
@@ -792276,7 +792121,7 @@ function createMCPServer(cwd4, debug2, verbose) {
|
|
|
792276
792121
|
};
|
|
792277
792122
|
const server2 = new Server({
|
|
792278
792123
|
name: "ur-nexus",
|
|
792279
|
-
version: "1.76.
|
|
792124
|
+
version: "1.76.7"
|
|
792280
792125
|
}, {
|
|
792281
792126
|
capabilities: {
|
|
792282
792127
|
tools: {}
|
|
@@ -793434,7 +793279,7 @@ function thrownResponse(error40) {
|
|
|
793434
793279
|
}
|
|
793435
793280
|
async function createUrMcp2026Runtime(options4) {
|
|
793436
793281
|
const server2 = createMCPServer(options4.cwd, options4.debug === true, options4.verbose === true);
|
|
793437
|
-
const client2 = new Client({ name: "ur-mcp-2026-adapter", version: "1.76.
|
|
793282
|
+
const client2 = new Client({ name: "ur-mcp-2026-adapter", version: "1.76.7" }, { capabilities: {} });
|
|
793438
793283
|
const [clientTransport, serverTransport] = createLinkedTransportPair();
|
|
793439
793284
|
try {
|
|
793440
793285
|
await server2.connect(serverTransport);
|
|
@@ -793445,7 +793290,7 @@ async function createUrMcp2026Runtime(options4) {
|
|
|
793445
793290
|
}
|
|
793446
793291
|
const runtime2 = new Mcp2026Runtime({
|
|
793447
793292
|
cwd: options4.cwd,
|
|
793448
|
-
version: "1.76.
|
|
793293
|
+
version: "1.76.7",
|
|
793449
793294
|
backend: {
|
|
793450
793295
|
listTools: async () => {
|
|
793451
793296
|
const listed = await client2.listTools();
|
|
@@ -795586,7 +795431,7 @@ async function update() {
|
|
|
795586
795431
|
logEvent("tengu_update_check", {});
|
|
795587
795432
|
const diagnostic2 = await getDoctorDiagnostic();
|
|
795588
795433
|
const result = await checkUpgradeStatus({
|
|
795589
|
-
currentVersion: "1.76.
|
|
795434
|
+
currentVersion: "1.76.7",
|
|
795590
795435
|
packageName: UR_AGENT_PACKAGE_NAME,
|
|
795591
795436
|
installationType: diagnostic2.installationType,
|
|
795592
795437
|
latestVersion: () => getLatestNpmPackageVersion(UR_AGENT_PACKAGE_NAME)
|
|
@@ -796902,7 +796747,7 @@ ${customInstructions}` : customInstructions;
|
|
|
796902
796747
|
}
|
|
796903
796748
|
}
|
|
796904
796749
|
logForDiagnosticsNoPII("info", "started", {
|
|
796905
|
-
version: "1.76.
|
|
796750
|
+
version: "1.76.7",
|
|
796906
796751
|
is_native_binary: isInBundledMode()
|
|
796907
796752
|
});
|
|
796908
796753
|
registerCleanup(async () => {
|
|
@@ -797688,7 +797533,7 @@ Usage: ur --remote "your task description"`, () => gracefulShutdown(1));
|
|
|
797688
797533
|
pendingHookMessages
|
|
797689
797534
|
}, renderAndRun);
|
|
797690
797535
|
}
|
|
797691
|
-
}).version("1.76.
|
|
797536
|
+
}).version("1.76.7 (UR-Nexus)", "-v, --version", "Output the version number");
|
|
797692
797537
|
program2.option("-w, --worktree [name]", "Create a new git worktree for this session (optionally specify a name)");
|
|
797693
797538
|
program2.option("--tmux", "Create a tmux session for the worktree (requires --worktree). Uses iTerm2 native panes when available; use --tmux=classic for traditional tmux.");
|
|
797694
797539
|
if (canUserConfigureAdvisor()) {
|
|
@@ -798740,7 +798585,7 @@ if (false) {}
|
|
|
798740
798585
|
async function main2() {
|
|
798741
798586
|
const args = process.argv.slice(2);
|
|
798742
798587
|
if (args.length === 1 && (args[0] === "--version" || args[0] === "-v" || args[0] === "-V")) {
|
|
798743
|
-
console.log(`${"1.76.
|
|
798588
|
+
console.log(`${"1.76.7"} (UR-Nexus)`);
|
|
798744
798589
|
return;
|
|
798745
798590
|
}
|
|
798746
798591
|
if (args[0] === "a2a" && args[1] === "serve" && !args.includes("--help") && !args.includes("-h")) {
|
package/docs/VALIDATION.md
CHANGED
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.76.
|
|
48
|
+
<p class="eyebrow">Version 1.76.7</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.76.
|
|
5
|
+
"version": "1.76.7",
|
|
6
6
|
"publisher": "ur-nexus",
|
|
7
7
|
"engines": {
|
|
8
8
|
"vscode": "^1.92.0"
|
package/package.json
CHANGED