ur-agent 1.80.9 → 1.80.10
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 +13 -0
- package/dist/cli.js +88 -84
- package/docs/AGENT_FEATURES.md +6 -0
- package/docs/CONFIGURATION.md +2 -1
- package/docs/TROUBLESHOOTING.md +4 -0
- package/docs/VALIDATION.md +7 -2
- package/documentation/index.html +1 -1
- package/extensions/jetbrains-ur/build.gradle.kts +1 -1
- package/extensions/vscode-ur-inline-diffs/package.json +1 -1
- package/package.json +1 -1
- package/plugins/bunBundleDev.ts +3 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 1.80.10
|
|
4
|
+
|
|
5
|
+
- Fixed the underlying cause of task-free research still returning
|
|
6
|
+
`TaskListRequired` in the published CLI: the public bundle compiled the
|
|
7
|
+
shipped `Explore` and `Plan` definitions out of the active agent registry.
|
|
8
|
+
Research classification was correct, but there was no protected worker to
|
|
9
|
+
receive the capability-reduced call.
|
|
10
|
+
- Made `Explore` and `Plan` deterministic core agents for public, local, API,
|
|
11
|
+
and subscription-CLI use, aligned the development and release feature sets,
|
|
12
|
+
and added tests against the real built-in registry plus the bundle script.
|
|
13
|
+
Anthropic-internal experimentation remains isolated to internal builds.
|
|
14
|
+
Write-capable delegation, task enforcement, and Approve All are unchanged.
|
|
15
|
+
|
|
3
16
|
## 1.80.9
|
|
4
17
|
|
|
5
18
|
- Fixed the remaining provider-independent `TaskListRequired` failure for
|
package/dist/cli.js
CHANGED
|
@@ -107788,7 +107788,7 @@ var init_auth = __esm(() => {
|
|
|
107788
107788
|
|
|
107789
107789
|
// src/utils/userAgent.ts
|
|
107790
107790
|
function getURCodeUserAgent() {
|
|
107791
|
-
return `ur/${"1.80.
|
|
107791
|
+
return `ur/${"1.80.10"}`;
|
|
107792
107792
|
}
|
|
107793
107793
|
|
|
107794
107794
|
// src/utils/workloadContext.ts
|
|
@@ -107810,7 +107810,7 @@ function getUserAgent() {
|
|
|
107810
107810
|
const clientApp = process.env.UR_AGENT_SDK_CLIENT_APP ? `, client-app/${process.env.UR_AGENT_SDK_CLIENT_APP}` : "";
|
|
107811
107811
|
const workload = getWorkload();
|
|
107812
107812
|
const workloadSuffix = workload ? `, workload/${workload}` : "";
|
|
107813
|
-
return `ur-cli/${"1.80.
|
|
107813
|
+
return `ur-cli/${"1.80.10"} (${process.env.USER_TYPE}, ${process.env.UR_CODE_ENTRYPOINT ?? "cli"}${agentSdkVersion}${clientApp}${workloadSuffix})`;
|
|
107814
107814
|
}
|
|
107815
107815
|
function getMCPUserAgent() {
|
|
107816
107816
|
const parts = [];
|
|
@@ -107824,7 +107824,7 @@ function getMCPUserAgent() {
|
|
|
107824
107824
|
parts.push(`client-app/${process.env.UR_AGENT_SDK_CLIENT_APP}`);
|
|
107825
107825
|
}
|
|
107826
107826
|
const suffix = parts.length > 0 ? ` (${parts.join(", ")})` : "";
|
|
107827
|
-
return `ur/${"1.80.
|
|
107827
|
+
return `ur/${"1.80.10"}${suffix}`;
|
|
107828
107828
|
}
|
|
107829
107829
|
function getWebFetchUserAgent() {
|
|
107830
107830
|
return `UR-User (${getURCodeUserAgent()})`;
|
|
@@ -107962,7 +107962,7 @@ var init_user = __esm(() => {
|
|
|
107962
107962
|
deviceId,
|
|
107963
107963
|
sessionId: getSessionId(),
|
|
107964
107964
|
email: getEmail(),
|
|
107965
|
-
appVersion: "1.80.
|
|
107965
|
+
appVersion: "1.80.10",
|
|
107966
107966
|
platform: getHostPlatformForAnalytics(),
|
|
107967
107967
|
organizationUuid,
|
|
107968
107968
|
accountUuid,
|
|
@@ -115849,7 +115849,7 @@ var init_metadata = __esm(() => {
|
|
|
115849
115849
|
COMPOUND_OPERATOR_REGEX = /\s*(?:&&|\|\||[;|])\s*/;
|
|
115850
115850
|
WHITESPACE_REGEX = /\s+/;
|
|
115851
115851
|
getVersionBase = memoize_default(() => {
|
|
115852
|
-
const match = "1.80.
|
|
115852
|
+
const match = "1.80.10".match(/^\d+\.\d+\.\d+(?:-[a-z]+)?/);
|
|
115853
115853
|
return match ? match[0] : undefined;
|
|
115854
115854
|
});
|
|
115855
115855
|
buildEnvContext = memoize_default(async () => {
|
|
@@ -115889,7 +115889,7 @@ var init_metadata = __esm(() => {
|
|
|
115889
115889
|
isGithubAction: isEnvTruthy(process.env.GITHUB_ACTIONS),
|
|
115890
115890
|
isURCodeAction: isEnvTruthy(process.env.UR_CODE_ACTION),
|
|
115891
115891
|
isURAiAuth: isURAISubscriber(),
|
|
115892
|
-
version: "1.80.
|
|
115892
|
+
version: "1.80.10",
|
|
115893
115893
|
versionBase: getVersionBase(),
|
|
115894
115894
|
buildTime: "",
|
|
115895
115895
|
deploymentEnvironment: env2.detectDeploymentEnvironment(),
|
|
@@ -116559,7 +116559,7 @@ function initialize1PEventLogging() {
|
|
|
116559
116559
|
const platform2 = getPlatform();
|
|
116560
116560
|
const attributes = {
|
|
116561
116561
|
[import_semantic_conventions4.ATTR_SERVICE_NAME]: "ur",
|
|
116562
|
-
[import_semantic_conventions4.ATTR_SERVICE_VERSION]: "1.80.
|
|
116562
|
+
[import_semantic_conventions4.ATTR_SERVICE_VERSION]: "1.80.10"
|
|
116563
116563
|
};
|
|
116564
116564
|
if (platform2 === "wsl") {
|
|
116565
116565
|
const wslVersion = getWslVersion();
|
|
@@ -116587,7 +116587,7 @@ function initialize1PEventLogging() {
|
|
|
116587
116587
|
})
|
|
116588
116588
|
]
|
|
116589
116589
|
});
|
|
116590
|
-
firstPartyEventLogger = firstPartyEventLoggerProvider.getLogger("com.urhq.ur.events", "1.80.
|
|
116590
|
+
firstPartyEventLogger = firstPartyEventLoggerProvider.getLogger("com.urhq.ur.events", "1.80.10");
|
|
116591
116591
|
}
|
|
116592
116592
|
async function reinitialize1PEventLoggingIfConfigChanged() {
|
|
116593
116593
|
if (!is1PEventLoggingEnabled() || !firstPartyEventLoggerProvider) {
|
|
@@ -126550,7 +126550,7 @@ function formatA2AAgentCard(options = {}, pretty = true) {
|
|
|
126550
126550
|
function formatA2AV1AgentCard(options = {}, pretty = true) {
|
|
126551
126551
|
return JSON.stringify(buildA2AV1AgentCard(options), null, pretty ? 2 : 0);
|
|
126552
126552
|
}
|
|
126553
|
-
var urVersion = "1.80.
|
|
126553
|
+
var urVersion = "1.80.10", researchSnapshotDate = "2026-08-10", coverage, priorityRoadmap;
|
|
126554
126554
|
var init_trends = __esm(() => {
|
|
126555
126555
|
init_a2aCardSignature();
|
|
126556
126556
|
coverage = [
|
|
@@ -129440,7 +129440,7 @@ function getAttributionHeader(fingerprint) {
|
|
|
129440
129440
|
if (!isAttributionHeaderEnabled()) {
|
|
129441
129441
|
return "";
|
|
129442
129442
|
}
|
|
129443
|
-
const version2 = `${"1.80.
|
|
129443
|
+
const version2 = `${"1.80.10"}.${fingerprint}`;
|
|
129444
129444
|
const entrypoint = process.env.UR_CODE_ENTRYPOINT ?? "unknown";
|
|
129445
129445
|
const cch = "";
|
|
129446
129446
|
const workload = getWorkload();
|
|
@@ -174699,7 +174699,11 @@ Use the literal string \`VERDICT: \` followed by exactly one of \`PASS\`, \`FAIL
|
|
|
174699
174699
|
|
|
174700
174700
|
// src/tools/AgentTool/builtInAgents.ts
|
|
174701
174701
|
function areExplorePlanAgentsEnabled() {
|
|
174702
|
-
if (
|
|
174702
|
+
if (process.env.USER_TYPE !== "ant")
|
|
174703
|
+
return true;
|
|
174704
|
+
if (true) {
|
|
174705
|
+
return getFeatureValue_CACHED_MAY_BE_STALE("tengu_amber_stoat", true);
|
|
174706
|
+
}
|
|
174703
174707
|
return false;
|
|
174704
174708
|
}
|
|
174705
174709
|
function getBuiltInAgents() {
|
|
@@ -184636,7 +184640,7 @@ var init_projectSafety = __esm(() => {
|
|
|
184636
184640
|
function getInstruments() {
|
|
184637
184641
|
if (instruments)
|
|
184638
184642
|
return instruments;
|
|
184639
|
-
const meter = import_api10.metrics.getMeter("ur-agent.gen_ai", "1.80.
|
|
184643
|
+
const meter = import_api10.metrics.getMeter("ur-agent.gen_ai", "1.80.10");
|
|
184640
184644
|
instruments = {
|
|
184641
184645
|
operationDuration: meter.createHistogram("gen_ai.client.operation.duration", {
|
|
184642
184646
|
description: "GenAI operation duration.",
|
|
@@ -184734,7 +184738,7 @@ function genAiAgentAttributes() {
|
|
|
184734
184738
|
"gen_ai.operation.name": GEN_AI_OPERATION_INVOKE_AGENT,
|
|
184735
184739
|
"gen_ai.provider.name": "ur",
|
|
184736
184740
|
"gen_ai.agent.name": "UR-Nexus",
|
|
184737
|
-
"gen_ai.agent.version": "1.80.
|
|
184741
|
+
"gen_ai.agent.version": "1.80.10"
|
|
184738
184742
|
};
|
|
184739
184743
|
}
|
|
184740
184744
|
function genAiWorkflowAttributes(workflowName, workflowRunId) {
|
|
@@ -184755,7 +184759,7 @@ function genAiWorkflowAttributes(workflowName, workflowRunId) {
|
|
|
184755
184759
|
function startGenAiWorkflowSpan(workflowName, workflowRunId) {
|
|
184756
184760
|
const attributes = genAiWorkflowAttributes(workflowName, workflowRunId);
|
|
184757
184761
|
const name = typeof attributes["gen_ai.workflow.name"] === "string" ? `invoke_workflow ${attributes["gen_ai.workflow.name"]}` : GEN_AI_OPERATION_INVOKE_WORKFLOW;
|
|
184758
|
-
return import_api10.trace.getTracer("ur-agent.gen_ai", "1.80.
|
|
184762
|
+
return import_api10.trace.getTracer("ur-agent.gen_ai", "1.80.10").startSpan(name, { kind: import_api10.SpanKind.INTERNAL, attributes });
|
|
184759
184763
|
}
|
|
184760
184764
|
function endGenAiWorkflowSpan(span, options2 = {}) {
|
|
184761
184765
|
try {
|
|
@@ -184793,7 +184797,7 @@ function startGenAiMemorySpan(operation, options2 = {}) {
|
|
|
184793
184797
|
if (options2.recordCount !== undefined && Number.isInteger(options2.recordCount) && options2.recordCount >= 0) {
|
|
184794
184798
|
attributes["gen_ai.memory.record.count"] = options2.recordCount;
|
|
184795
184799
|
}
|
|
184796
|
-
return import_api10.trace.getTracer("ur-agent.gen_ai", "1.80.
|
|
184800
|
+
return import_api10.trace.getTracer("ur-agent.gen_ai", "1.80.10").startSpan(operation, { kind: import_api10.SpanKind.INTERNAL, attributes });
|
|
184797
184801
|
}
|
|
184798
184802
|
function endGenAiMemorySpan(span, options2 = {}) {
|
|
184799
184803
|
try {
|
|
@@ -278508,7 +278512,7 @@ function getTelemetryAttributes() {
|
|
|
278508
278512
|
attributes["session.id"] = sessionId;
|
|
278509
278513
|
}
|
|
278510
278514
|
if (shouldIncludeAttribute("OTEL_METRICS_INCLUDE_VERSION")) {
|
|
278511
|
-
attributes["app.version"] = "1.80.
|
|
278515
|
+
attributes["app.version"] = "1.80.10";
|
|
278512
278516
|
}
|
|
278513
278517
|
const oauthAccount = getOauthAccountInfo();
|
|
278514
278518
|
if (oauthAccount) {
|
|
@@ -319499,7 +319503,7 @@ function getInstallationEnv() {
|
|
|
319499
319503
|
return;
|
|
319500
319504
|
}
|
|
319501
319505
|
function getURCodeVersion() {
|
|
319502
|
-
return "1.80.
|
|
319506
|
+
return "1.80.10";
|
|
319503
319507
|
}
|
|
319504
319508
|
async function getInstalledVSCodeExtensionVersion(command) {
|
|
319505
319509
|
const { stdout } = await execFileNoThrow(command, ["--list-extensions", "--show-versions"], {
|
|
@@ -326869,7 +326873,7 @@ async function setupSdkMcpClients(sdkMcpConfigs, sendMcpMessage) {
|
|
|
326869
326873
|
const client2 = new Client({
|
|
326870
326874
|
name: "ur",
|
|
326871
326875
|
title: "UR",
|
|
326872
|
-
version: "1.80.
|
|
326876
|
+
version: "1.80.10",
|
|
326873
326877
|
description: "UR-Nexus autonomous engineering workflow engine",
|
|
326874
326878
|
websiteUrl: PRODUCT_URL
|
|
326875
326879
|
}, {
|
|
@@ -327230,7 +327234,7 @@ var init_client5 = __esm(() => {
|
|
|
327230
327234
|
const client2 = new Client({
|
|
327231
327235
|
name: "ur",
|
|
327232
327236
|
title: "UR",
|
|
327233
|
-
version: "1.80.
|
|
327237
|
+
version: "1.80.10",
|
|
327234
327238
|
description: "UR-Nexus autonomous engineering workflow engine",
|
|
327235
327239
|
websiteUrl: PRODUCT_URL
|
|
327236
327240
|
}, {
|
|
@@ -340003,7 +340007,7 @@ async function createRuntime() {
|
|
|
340003
340007
|
bootstrapTelemetry();
|
|
340004
340008
|
const resource = defaultResource().merge(detectResources({ detectors: [envDetector] })).merge(resourceFromAttributes({
|
|
340005
340009
|
[import_semantic_conventions7.ATTR_SERVICE_NAME]: "ur-agent",
|
|
340006
|
-
[import_semantic_conventions7.ATTR_SERVICE_VERSION]: "1.80.
|
|
340010
|
+
[import_semantic_conventions7.ATTR_SERVICE_VERSION]: "1.80.10"
|
|
340007
340011
|
}));
|
|
340008
340012
|
const tracerProvider = exporters.traces.length > 0 ? new BasicTracerProvider({
|
|
340009
340013
|
resource,
|
|
@@ -340036,11 +340040,11 @@ async function createRuntime() {
|
|
|
340036
340040
|
setMeterProvider(meterProvider);
|
|
340037
340041
|
setLoggerProvider(loggerProvider);
|
|
340038
340042
|
if (meterProvider) {
|
|
340039
|
-
const meter = meterProvider.getMeter("ur-agent", "1.80.
|
|
340043
|
+
const meter = meterProvider.getMeter("ur-agent", "1.80.10");
|
|
340040
340044
|
setMeter(meter, (name, options2) => meter.createCounter(name, options2));
|
|
340041
340045
|
}
|
|
340042
340046
|
if (loggerProvider) {
|
|
340043
|
-
setEventLogger(loggerProvider.getLogger("ur-agent.events", "1.80.
|
|
340047
|
+
setEventLogger(loggerProvider.getLogger("ur-agent.events", "1.80.10"));
|
|
340044
340048
|
}
|
|
340045
340049
|
if (!cleanupRegistered3) {
|
|
340046
340050
|
cleanupRegistered3 = true;
|
|
@@ -340702,9 +340706,9 @@ async function assertMinVersion() {
|
|
|
340702
340706
|
if (false) {}
|
|
340703
340707
|
try {
|
|
340704
340708
|
const versionConfig = await getDynamicConfig_BLOCKS_ON_INIT("tengu_version_config", { minVersion: "0.0.0" });
|
|
340705
|
-
if (versionConfig.minVersion && lt("1.80.
|
|
340709
|
+
if (versionConfig.minVersion && lt("1.80.10", versionConfig.minVersion)) {
|
|
340706
340710
|
console.error(`
|
|
340707
|
-
It looks like your version of UR (${"1.80.
|
|
340711
|
+
It looks like your version of UR (${"1.80.10"}) needs an update.
|
|
340708
340712
|
A newer version (${versionConfig.minVersion} or higher) is required to continue.
|
|
340709
340713
|
|
|
340710
340714
|
To update, please run:
|
|
@@ -340920,7 +340924,7 @@ async function installGlobalPackage(specificVersion) {
|
|
|
340920
340924
|
logError2(new AutoUpdaterError("Another process is currently installing an update"));
|
|
340921
340925
|
logEvent("tengu_auto_updater_lock_contention", {
|
|
340922
340926
|
pid: process.pid,
|
|
340923
|
-
currentVersion: "1.80.
|
|
340927
|
+
currentVersion: "1.80.10"
|
|
340924
340928
|
});
|
|
340925
340929
|
return "in_progress";
|
|
340926
340930
|
}
|
|
@@ -340929,7 +340933,7 @@ async function installGlobalPackage(specificVersion) {
|
|
|
340929
340933
|
if (!env2.isRunningWithBun() && env2.isNpmFromWindowsPath()) {
|
|
340930
340934
|
logError2(new Error("Windows NPM detected in WSL environment"));
|
|
340931
340935
|
logEvent("tengu_auto_updater_windows_npm_in_wsl", {
|
|
340932
|
-
currentVersion: "1.80.
|
|
340936
|
+
currentVersion: "1.80.10"
|
|
340933
340937
|
});
|
|
340934
340938
|
console.error(`
|
|
340935
340939
|
Error: Windows NPM detected in WSL
|
|
@@ -341464,7 +341468,7 @@ function detectLinuxGlobPatternWarnings() {
|
|
|
341464
341468
|
}
|
|
341465
341469
|
async function getDoctorDiagnostic() {
|
|
341466
341470
|
const installationType = await getCurrentInstallationType();
|
|
341467
|
-
const version2 = typeof MACRO !== "undefined" ? "1.80.
|
|
341471
|
+
const version2 = typeof MACRO !== "undefined" ? "1.80.10" : "unknown";
|
|
341468
341472
|
const installationPath = await getInstallationPath();
|
|
341469
341473
|
const invokedBinary = getInvokedBinary();
|
|
341470
341474
|
const multipleInstallations = await detectMultipleInstallations();
|
|
@@ -342399,8 +342403,8 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
|
|
|
342399
342403
|
const maxVersion = await getMaxVersion();
|
|
342400
342404
|
if (maxVersion && gt(version2, maxVersion)) {
|
|
342401
342405
|
logForDebugging(`Native installer: maxVersion ${maxVersion} is set, capping update from ${version2} to ${maxVersion}`);
|
|
342402
|
-
if (gte("1.80.
|
|
342403
|
-
logForDebugging(`Native installer: current version ${"1.80.
|
|
342406
|
+
if (gte("1.80.10", maxVersion)) {
|
|
342407
|
+
logForDebugging(`Native installer: current version ${"1.80.10"} is already at or above maxVersion ${maxVersion}, skipping update`);
|
|
342404
342408
|
logEvent("tengu_native_update_skipped_max_version", {
|
|
342405
342409
|
latency_ms: Date.now() - startTime,
|
|
342406
342410
|
max_version: maxVersion,
|
|
@@ -342411,7 +342415,7 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
|
|
|
342411
342415
|
version2 = maxVersion;
|
|
342412
342416
|
}
|
|
342413
342417
|
}
|
|
342414
|
-
if (!forceReinstall && version2 === "1.80.
|
|
342418
|
+
if (!forceReinstall && version2 === "1.80.10" && await versionIsAvailable(version2) && await isPossibleURBinary(executablePath)) {
|
|
342415
342419
|
logForDebugging(`Found ${version2} at ${executablePath}, skipping install`);
|
|
342416
342420
|
logEvent("tengu_native_update_complete", {
|
|
342417
342421
|
latency_ms: Date.now() - startTime,
|
|
@@ -413067,7 +413071,7 @@ function isAnyTracingEnabled() {
|
|
|
413067
413071
|
return isTelemetryEnabled() || isEnhancedTelemetryEnabled() || isBetaTracingEnabled();
|
|
413068
413072
|
}
|
|
413069
413073
|
function getTracer() {
|
|
413070
|
-
return import_api39.trace.getTracer("ur-agent.gen_ai", "1.80.
|
|
413074
|
+
return import_api39.trace.getTracer("ur-agent.gen_ai", "1.80.10");
|
|
413071
413075
|
}
|
|
413072
413076
|
function createSpanAttributes(spanType, customAttributes = {}) {
|
|
413073
413077
|
const baseAttributes = getTelemetryAttributes();
|
|
@@ -443196,7 +443200,7 @@ function Feedback({
|
|
|
443196
443200
|
platform: env2.platform,
|
|
443197
443201
|
gitRepo: envInfo.isGit,
|
|
443198
443202
|
terminal: env2.terminal,
|
|
443199
|
-
version: "1.80.
|
|
443203
|
+
version: "1.80.10",
|
|
443200
443204
|
transcript: normalizeMessagesForAPI(messages),
|
|
443201
443205
|
errors: sanitizedErrors,
|
|
443202
443206
|
lastApiRequest: getLastAPIRequest(),
|
|
@@ -443388,7 +443392,7 @@ function Feedback({
|
|
|
443388
443392
|
", ",
|
|
443389
443393
|
env2.terminal,
|
|
443390
443394
|
", v",
|
|
443391
|
-
"1.80.
|
|
443395
|
+
"1.80.10"
|
|
443392
443396
|
]
|
|
443393
443397
|
}, undefined, true, undefined, this)
|
|
443394
443398
|
]
|
|
@@ -443494,7 +443498,7 @@ ${sanitizedDescription}
|
|
|
443494
443498
|
` + `**Environment Info**
|
|
443495
443499
|
` + `- Platform: ${env2.platform}
|
|
443496
443500
|
` + `- Terminal: ${env2.terminal}
|
|
443497
|
-
` + `- Version: ${"1.80.
|
|
443501
|
+
` + `- Version: ${"1.80.10"}
|
|
443498
443502
|
` + `- Feedback ID: ${feedbackId}
|
|
443499
443503
|
` + `
|
|
443500
443504
|
**Errors**
|
|
@@ -446604,7 +446608,7 @@ function buildPrimarySection() {
|
|
|
446604
446608
|
}, undefined, false, undefined, this);
|
|
446605
446609
|
return [{
|
|
446606
446610
|
label: "Version",
|
|
446607
|
-
value: "1.80.
|
|
446611
|
+
value: "1.80.10"
|
|
446608
446612
|
}, {
|
|
446609
446613
|
label: "Session name",
|
|
446610
446614
|
value: nameValue
|
|
@@ -449986,7 +449990,7 @@ function Config({
|
|
|
449986
449990
|
}
|
|
449987
449991
|
}, undefined, false, undefined, this)
|
|
449988
449992
|
}, undefined, false, undefined, this) : showSubmenu === "ChannelDowngrade" ? /* @__PURE__ */ jsx_dev_runtime179.jsxDEV(ChannelDowngradeDialog, {
|
|
449989
|
-
currentVersion: "1.80.
|
|
449993
|
+
currentVersion: "1.80.10",
|
|
449990
449994
|
onChoice: (choice) => {
|
|
449991
449995
|
setShowSubmenu(null);
|
|
449992
449996
|
setTabsHidden(false);
|
|
@@ -449998,7 +450002,7 @@ function Config({
|
|
|
449998
450002
|
autoUpdatesChannel: "stable"
|
|
449999
450003
|
};
|
|
450000
450004
|
if (choice === "stay") {
|
|
450001
|
-
newSettings.minimumVersion = "1.80.
|
|
450005
|
+
newSettings.minimumVersion = "1.80.10";
|
|
450002
450006
|
}
|
|
450003
450007
|
updateSettingsForSource("userSettings", newSettings);
|
|
450004
450008
|
setSettingsData((prev_27) => ({
|
|
@@ -458307,7 +458311,7 @@ function HelpV2(t0) {
|
|
|
458307
458311
|
let t6;
|
|
458308
458312
|
if ($2[31] !== tabs) {
|
|
458309
458313
|
t6 = /* @__PURE__ */ jsx_dev_runtime206.jsxDEV(Tabs, {
|
|
458310
|
-
title: `UR v${"1.80.
|
|
458314
|
+
title: `UR v${"1.80.10"}`,
|
|
458311
458315
|
color: "professionalBlue",
|
|
458312
458316
|
defaultTab: "general",
|
|
458313
458317
|
children: tabs
|
|
@@ -459240,7 +459244,7 @@ function buildToolUseContext(tools, readFileStateCache, toolPermissionContext, a
|
|
|
459240
459244
|
async function handleInitialize(options2) {
|
|
459241
459245
|
return {
|
|
459242
459246
|
name: "UR",
|
|
459243
|
-
version: "1.80.
|
|
459247
|
+
version: "1.80.10",
|
|
459244
459248
|
protocolVersion: "0.1.0",
|
|
459245
459249
|
workspaceRoot: options2.cwd,
|
|
459246
459250
|
capabilities: {
|
|
@@ -476348,7 +476352,7 @@ function getAllReleaseNotes(changelogContent = getStoredChangelogFromMemory()) {
|
|
|
476348
476352
|
return [];
|
|
476349
476353
|
}
|
|
476350
476354
|
}
|
|
476351
|
-
async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.80.
|
|
476355
|
+
async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.80.10") {
|
|
476352
476356
|
if (process.env.USER_TYPE === "ant") {
|
|
476353
476357
|
const changelog = "";
|
|
476354
476358
|
if (changelog) {
|
|
@@ -476375,7 +476379,7 @@ async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.80.9")
|
|
|
476375
476379
|
releaseNotes
|
|
476376
476380
|
};
|
|
476377
476381
|
}
|
|
476378
|
-
function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.80.
|
|
476382
|
+
function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.80.10") {
|
|
476379
476383
|
if (process.env.USER_TYPE === "ant") {
|
|
476380
476384
|
const changelog = "";
|
|
476381
476385
|
if (changelog) {
|
|
@@ -479280,7 +479284,7 @@ function getRecentActivitySync() {
|
|
|
479280
479284
|
return cachedActivity;
|
|
479281
479285
|
}
|
|
479282
479286
|
function getLogoDisplayData() {
|
|
479283
|
-
const version2 = process.env.DEMO_VERSION ?? "1.80.
|
|
479287
|
+
const version2 = process.env.DEMO_VERSION ?? "1.80.10";
|
|
479284
479288
|
const serverUrl = getDirectConnectServerUrl();
|
|
479285
479289
|
const displayPath = process.env.DEMO_VERSION ? "/code/ur" : getDisplayPath(getCwd());
|
|
479286
479290
|
const cwd2 = serverUrl ? `${displayPath} in ${serverUrl.replace(/^https?:\/\//, "")}` : displayPath;
|
|
@@ -480148,7 +480152,7 @@ function LogoV2() {
|
|
|
480148
480152
|
if ($2[2] === Symbol.for("react.memo_cache_sentinel")) {
|
|
480149
480153
|
t2 = () => {
|
|
480150
480154
|
const currentConfig = getGlobalConfig();
|
|
480151
|
-
if (currentConfig.lastReleaseNotesSeen === "1.80.
|
|
480155
|
+
if (currentConfig.lastReleaseNotesSeen === "1.80.10") {
|
|
480152
480156
|
return;
|
|
480153
480157
|
}
|
|
480154
480158
|
saveGlobalConfig(_temp325);
|
|
@@ -480833,12 +480837,12 @@ function LogoV2() {
|
|
|
480833
480837
|
return t41;
|
|
480834
480838
|
}
|
|
480835
480839
|
function _temp325(current) {
|
|
480836
|
-
if (current.lastReleaseNotesSeen === "1.80.
|
|
480840
|
+
if (current.lastReleaseNotesSeen === "1.80.10") {
|
|
480837
480841
|
return current;
|
|
480838
480842
|
}
|
|
480839
480843
|
return {
|
|
480840
480844
|
...current,
|
|
480841
|
-
lastReleaseNotesSeen: "1.80.
|
|
480845
|
+
lastReleaseNotesSeen: "1.80.10"
|
|
480842
480846
|
};
|
|
480843
480847
|
}
|
|
480844
480848
|
function _temp241(s_0) {
|
|
@@ -496930,7 +496934,7 @@ function compileAgenticCiWorkflow(specName = "default", options2 = {}) {
|
|
|
496930
496934
|
if (spec.name !== specName) {
|
|
496931
496935
|
throw new Error("Agentic CI workflow spec name does not match");
|
|
496932
496936
|
}
|
|
496933
|
-
const packageVersion = options2.packageVersion ?? (typeof MACRO !== "undefined" ? "1.80.
|
|
496937
|
+
const packageVersion = options2.packageVersion ?? (typeof MACRO !== "undefined" ? "1.80.10" : "1.80.10");
|
|
496934
496938
|
if (!/^\d+\.\d+\.\d+(?:-[0-9A-Za-z.-]+)?$/.test(packageVersion)) {
|
|
496935
496939
|
throw new Error("invalid ur-agent package version");
|
|
496936
496940
|
}
|
|
@@ -497923,7 +497927,7 @@ runner; \`ur trigger\` is the inbound parser that decides what to run.
|
|
|
497923
497927
|
path: ".github/workflows/ur.yml",
|
|
497924
497928
|
root: "project",
|
|
497925
497929
|
content: compileAgenticCiWorkflow("default", {
|
|
497926
|
-
packageVersion: typeof MACRO !== "undefined" ? "1.80.
|
|
497930
|
+
packageVersion: typeof MACRO !== "undefined" ? "1.80.10" : "1.80.10"
|
|
497927
497931
|
})
|
|
497928
497932
|
},
|
|
497929
497933
|
{
|
|
@@ -497986,7 +497990,7 @@ function value(tokens, flag) {
|
|
|
497986
497990
|
return index2 >= 0 ? tokens[index2 + 1] : undefined;
|
|
497987
497991
|
}
|
|
497988
497992
|
function cliVersion() {
|
|
497989
|
-
return typeof MACRO !== "undefined" ? "1.80.
|
|
497993
|
+
return typeof MACRO !== "undefined" ? "1.80.10" : "1.80.10";
|
|
497990
497994
|
}
|
|
497991
497995
|
function workflowPath(cwd2) {
|
|
497992
497996
|
return join168(cwd2, ".github", "workflows", "ur-agentic-ci.yml");
|
|
@@ -503842,7 +503846,7 @@ function createAcpStdioApp(deps) {
|
|
|
503842
503846
|
}
|
|
503843
503847
|
},
|
|
503844
503848
|
authMethods: [],
|
|
503845
|
-
agentInfo: { name: "UR-Nexus", version: "1.80.
|
|
503849
|
+
agentInfo: { name: "UR-Nexus", version: "1.80.10" }
|
|
503846
503850
|
})).onRequest("authenticate", () => ({})).onRequest("session/new", async (context6) => {
|
|
503847
503851
|
const result = runtime2.newSession(context6.params.cwd, context6.params.mcpServers, context6.params.additionalDirectories);
|
|
503848
503852
|
await runtime2.announce({
|
|
@@ -503939,7 +503943,7 @@ function createAcpStdioAgent(deps) {
|
|
|
503939
503943
|
}
|
|
503940
503944
|
},
|
|
503941
503945
|
authMethods: [],
|
|
503942
|
-
agentInfo: { name: "UR-Nexus", version: "1.80.
|
|
503946
|
+
agentInfo: { name: "UR-Nexus", version: "1.80.10" }
|
|
503943
503947
|
});
|
|
503944
503948
|
return;
|
|
503945
503949
|
case "authenticate":
|
|
@@ -715165,7 +715169,7 @@ async function captureMemoryDiagnostics(trigger2, dumpNumber = 0) {
|
|
|
715165
715169
|
smapsRollup,
|
|
715166
715170
|
platform: process.platform,
|
|
715167
715171
|
nodeVersion: process.version,
|
|
715168
|
-
ccVersion: "1.80.
|
|
715172
|
+
ccVersion: "1.80.10"
|
|
715169
715173
|
};
|
|
715170
715174
|
}
|
|
715171
715175
|
async function performHeapDump(trigger2 = "manual", dumpNumber = 0) {
|
|
@@ -715754,7 +715758,7 @@ var init_bridge_kick = __esm(() => {
|
|
|
715754
715758
|
var call154 = async () => {
|
|
715755
715759
|
return {
|
|
715756
715760
|
type: "text",
|
|
715757
|
-
value: "1.80.
|
|
715761
|
+
value: "1.80.10"
|
|
715758
715762
|
};
|
|
715759
715763
|
}, version2, version_default;
|
|
715760
715764
|
var init_version = __esm(() => {
|
|
@@ -726997,7 +727001,7 @@ function generateHtmlReport(data, insights) {
|
|
|
726997
727001
|
</html>`;
|
|
726998
727002
|
}
|
|
726999
727003
|
function buildExportData(data, insights, facets, remoteStats) {
|
|
727000
|
-
const version3 = typeof MACRO !== "undefined" ? "1.80.
|
|
727004
|
+
const version3 = typeof MACRO !== "undefined" ? "1.80.10" : "unknown";
|
|
727001
727005
|
const remote_hosts_collected = remoteStats?.hosts.filter((h2) => h2.sessionCount > 0).map((h2) => h2.name);
|
|
727002
727006
|
const facets_summary = {
|
|
727003
727007
|
total: facets.size,
|
|
@@ -731310,7 +731314,7 @@ var init_sessionStorage = __esm(() => {
|
|
|
731310
731314
|
init_settings2();
|
|
731311
731315
|
init_slowOperations();
|
|
731312
731316
|
init_uuid();
|
|
731313
|
-
VERSION7 = typeof MACRO !== "undefined" ? "1.80.
|
|
731317
|
+
VERSION7 = typeof MACRO !== "undefined" ? "1.80.10" : "unknown";
|
|
731314
731318
|
MAX_TOMBSTONE_REWRITE_BYTES = 50 * 1024 * 1024;
|
|
731315
731319
|
SKIP_FIRST_PROMPT_PATTERN = /^(?:\s*<[a-z][\w-]*[\s>]|\[Request interrupted by user[^\]]*\])/;
|
|
731316
731320
|
EPHEMERAL_PROGRESS_TYPES = new Set([
|
|
@@ -732525,7 +732529,7 @@ var init_filesystem = __esm(() => {
|
|
|
732525
732529
|
});
|
|
732526
732530
|
getBundledSkillsRoot = memoize_default(function getBundledSkillsRoot2() {
|
|
732527
732531
|
const nonce = randomBytes24(16).toString("hex");
|
|
732528
|
-
return join243(getURTempDir(), "bundled-skills", "1.80.
|
|
732532
|
+
return join243(getURTempDir(), "bundled-skills", "1.80.10", nonce);
|
|
732529
732533
|
});
|
|
732530
732534
|
getResolvedWorkingDirPaths = memoize_default(getPathsForPermissionCheck);
|
|
732531
732535
|
});
|
|
@@ -738915,7 +738919,7 @@ function computeFingerprint(messageText2, version3) {
|
|
|
738915
738919
|
}
|
|
738916
738920
|
function computeFingerprintFromMessages(messages) {
|
|
738917
738921
|
const firstMessageText = extractFirstMessageText(messages);
|
|
738918
|
-
return computeFingerprint(firstMessageText, "1.80.
|
|
738922
|
+
return computeFingerprint(firstMessageText, "1.80.10");
|
|
738919
738923
|
}
|
|
738920
738924
|
var FINGERPRINT_SALT = "59cf53e54c78";
|
|
738921
738925
|
var init_fingerprint = () => {};
|
|
@@ -740840,7 +740844,7 @@ async function sideQuery(opts) {
|
|
|
740840
740844
|
betas.push(STRUCTURED_OUTPUTS_BETA_HEADER);
|
|
740841
740845
|
}
|
|
740842
740846
|
const messageText2 = extractFirstUserMessageText(messages);
|
|
740843
|
-
const fingerprint2 = computeFingerprint(messageText2, "1.80.
|
|
740847
|
+
const fingerprint2 = computeFingerprint(messageText2, "1.80.10");
|
|
740844
740848
|
const attributionHeader = getAttributionHeader(fingerprint2);
|
|
740845
740849
|
const systemBlocks = [
|
|
740846
740850
|
attributionHeader ? { type: "text", text: attributionHeader } : null,
|
|
@@ -745674,7 +745678,7 @@ function buildSystemInitMessage(inputs) {
|
|
|
745674
745678
|
slash_commands: inputs.commands.filter((c4) => c4.userInvocable !== false).map((c4) => c4.name),
|
|
745675
745679
|
apiKeySource: getURHQApiKeyWithSource().source,
|
|
745676
745680
|
betas: getSdkBetas(),
|
|
745677
|
-
ur_version: "1.80.
|
|
745681
|
+
ur_version: "1.80.10",
|
|
745678
745682
|
output_style: outputStyle,
|
|
745679
745683
|
agents: inputs.agents.map((agent2) => agent2.agentType),
|
|
745680
745684
|
skills: inputs.skills.filter((s) => s.userInvocable !== false).map((skill2) => skill2.name),
|
|
@@ -759510,7 +759514,7 @@ var init_useVoiceEnabled = __esm(() => {
|
|
|
759510
759514
|
function getSemverPart(version3) {
|
|
759511
759515
|
return `${import_semver13.major(version3, { loose: true })}.${import_semver13.minor(version3, { loose: true })}.${import_semver13.patch(version3, { loose: true })}`;
|
|
759512
759516
|
}
|
|
759513
|
-
function useUpdateNotification(updatedVersion, initialVersion = "1.80.
|
|
759517
|
+
function useUpdateNotification(updatedVersion, initialVersion = "1.80.10") {
|
|
759514
759518
|
const [lastNotifiedSemver, setLastNotifiedSemver] = import_react225.useState(() => getSemverPart(initialVersion));
|
|
759515
759519
|
if (!updatedVersion) {
|
|
759516
759520
|
return null;
|
|
@@ -759559,7 +759563,7 @@ function AutoUpdater({
|
|
|
759559
759563
|
return;
|
|
759560
759564
|
}
|
|
759561
759565
|
if (false) {}
|
|
759562
|
-
const currentVersion = "1.80.
|
|
759566
|
+
const currentVersion = "1.80.10";
|
|
759563
759567
|
const channel = getInitialSettings()?.autoUpdatesChannel ?? "latest";
|
|
759564
759568
|
let latestVersion = await getLatestVersion(channel);
|
|
759565
759569
|
const isDisabled = isAutoUpdaterDisabled();
|
|
@@ -759788,12 +759792,12 @@ function NativeAutoUpdater({
|
|
|
759788
759792
|
logEvent("tengu_native_auto_updater_start", {});
|
|
759789
759793
|
try {
|
|
759790
759794
|
const maxVersion = await getMaxVersion();
|
|
759791
|
-
if (maxVersion && gt("1.80.
|
|
759795
|
+
if (maxVersion && gt("1.80.10", maxVersion)) {
|
|
759792
759796
|
const msg = await getMaxVersionMessage();
|
|
759793
759797
|
setMaxVersionIssue(msg ?? "affects your version");
|
|
759794
759798
|
}
|
|
759795
759799
|
const result = await installLatest(channel);
|
|
759796
|
-
const currentVersion = "1.80.
|
|
759800
|
+
const currentVersion = "1.80.10";
|
|
759797
759801
|
const latencyMs = Date.now() - startTime;
|
|
759798
759802
|
if (result.lockFailed) {
|
|
759799
759803
|
logEvent("tengu_native_auto_updater_lock_contention", {
|
|
@@ -759930,17 +759934,17 @@ function PackageManagerAutoUpdater(t0) {
|
|
|
759930
759934
|
const maxVersion = await getMaxVersion();
|
|
759931
759935
|
if (maxVersion && latest && gt(latest, maxVersion)) {
|
|
759932
759936
|
logForDebugging(`PackageManagerAutoUpdater: maxVersion ${maxVersion} is set, capping update from ${latest} to ${maxVersion}`);
|
|
759933
|
-
if (gte("1.80.
|
|
759934
|
-
logForDebugging(`PackageManagerAutoUpdater: current version ${"1.80.
|
|
759937
|
+
if (gte("1.80.10", maxVersion)) {
|
|
759938
|
+
logForDebugging(`PackageManagerAutoUpdater: current version ${"1.80.10"} is already at or above maxVersion ${maxVersion}, skipping update`);
|
|
759935
759939
|
setUpdateAvailable(false);
|
|
759936
759940
|
return;
|
|
759937
759941
|
}
|
|
759938
759942
|
latest = maxVersion;
|
|
759939
759943
|
}
|
|
759940
|
-
const hasUpdate = latest && !gte("1.80.
|
|
759944
|
+
const hasUpdate = latest && !gte("1.80.10", latest) && !shouldSkipVersion(latest);
|
|
759941
759945
|
setUpdateAvailable(!!hasUpdate);
|
|
759942
759946
|
if (hasUpdate) {
|
|
759943
|
-
logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.80.
|
|
759947
|
+
logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.80.10"} -> ${latest}`);
|
|
759944
759948
|
}
|
|
759945
759949
|
};
|
|
759946
759950
|
$2[0] = t1;
|
|
@@ -759974,7 +759978,7 @@ function PackageManagerAutoUpdater(t0) {
|
|
|
759974
759978
|
wrap: "truncate",
|
|
759975
759979
|
children: [
|
|
759976
759980
|
"currentVersion: ",
|
|
759977
|
-
"1.80.
|
|
759981
|
+
"1.80.10"
|
|
759978
759982
|
]
|
|
759979
759983
|
}, undefined, true, undefined, this);
|
|
759980
759984
|
$2[3] = verbose;
|
|
@@ -770827,7 +770831,7 @@ function buildStatusLineCommandInput(permissionMode, exceeds200kTokens, settings
|
|
|
770827
770831
|
project_dir: getOriginalCwd(),
|
|
770828
770832
|
added_dirs: addedDirs
|
|
770829
770833
|
},
|
|
770830
|
-
version: "1.80.
|
|
770834
|
+
version: "1.80.10",
|
|
770831
770835
|
output_style: {
|
|
770832
770836
|
name: outputStyleName
|
|
770833
770837
|
},
|
|
@@ -770962,7 +770966,7 @@ function StatusLineInner({
|
|
|
770962
770966
|
const attention = customStatusError ?? taskAttention;
|
|
770963
770967
|
const terminalSize = React133.useContext(TerminalSizeContext);
|
|
770964
770968
|
const defaultStatusLineText = buildDefaultStatusBar({
|
|
770965
|
-
version: "1.80.
|
|
770969
|
+
version: "1.80.10",
|
|
770966
770970
|
providerLabel: providerRuntime.providerLabel,
|
|
770967
770971
|
authMode: providerRuntime.authLabel,
|
|
770968
770972
|
model: renderModelName(mainLoopModel) || providerRuntime.model || "",
|
|
@@ -783217,7 +783221,7 @@ async function submitTranscriptShare(messages, trigger2, appearanceId) {
|
|
|
783217
783221
|
} catch {}
|
|
783218
783222
|
const data = {
|
|
783219
783223
|
trigger: trigger2,
|
|
783220
|
-
version: "1.80.
|
|
783224
|
+
version: "1.80.10",
|
|
783221
783225
|
platform: process.platform,
|
|
783222
783226
|
transcript,
|
|
783223
783227
|
subagentTranscripts: Object.keys(subagentTranscripts).length > 0 ? subagentTranscripts : undefined,
|
|
@@ -795586,7 +795590,7 @@ function WelcomeV2() {
|
|
|
795586
795590
|
dimColor: true,
|
|
795587
795591
|
children: [
|
|
795588
795592
|
"v",
|
|
795589
|
-
"1.80.
|
|
795593
|
+
"1.80.10"
|
|
795590
795594
|
]
|
|
795591
795595
|
}, undefined, true, undefined, this)
|
|
795592
795596
|
]
|
|
@@ -796846,7 +796850,7 @@ function completeOnboarding() {
|
|
|
796846
796850
|
saveGlobalConfig((current) => ({
|
|
796847
796851
|
...current,
|
|
796848
796852
|
hasCompletedOnboarding: true,
|
|
796849
|
-
lastOnboardingVersion: "1.80.
|
|
796853
|
+
lastOnboardingVersion: "1.80.10"
|
|
796850
796854
|
}));
|
|
796851
796855
|
}
|
|
796852
796856
|
function showDialog(root2, renderer) {
|
|
@@ -801992,7 +801996,7 @@ function appendToLog(path28, message) {
|
|
|
801992
801996
|
cwd: getFsImplementation().cwd(),
|
|
801993
801997
|
userType: process.env.USER_TYPE,
|
|
801994
801998
|
sessionId: getSessionId(),
|
|
801995
|
-
version: "1.80.
|
|
801999
|
+
version: "1.80.10"
|
|
801996
802000
|
};
|
|
801997
802001
|
getLogWriter(path28).write(messageWithTimestamp);
|
|
801998
802002
|
}
|
|
@@ -806156,8 +806160,8 @@ async function getEnvLessBridgeConfig() {
|
|
|
806156
806160
|
}
|
|
806157
806161
|
async function checkEnvLessBridgeMinVersion() {
|
|
806158
806162
|
const cfg = await getEnvLessBridgeConfig();
|
|
806159
|
-
if (cfg.min_version && lt("1.80.
|
|
806160
|
-
return `Your version of UR (${"1.80.
|
|
806163
|
+
if (cfg.min_version && lt("1.80.10", cfg.min_version)) {
|
|
806164
|
+
return `Your version of UR (${"1.80.10"}) is too old for Remote Control.
|
|
806161
806165
|
Version ${cfg.min_version} or higher is required. Run \`ur update\` to update.`;
|
|
806162
806166
|
}
|
|
806163
806167
|
return null;
|
|
@@ -806631,7 +806635,7 @@ async function initBridgeCore(params) {
|
|
|
806631
806635
|
const rawApi = createBridgeApiClient({
|
|
806632
806636
|
baseUrl,
|
|
806633
806637
|
getAccessToken,
|
|
806634
|
-
runnerVersion: "1.80.
|
|
806638
|
+
runnerVersion: "1.80.10",
|
|
806635
806639
|
onDebug: logForDebugging,
|
|
806636
806640
|
onAuth401,
|
|
806637
806641
|
getTrustedDeviceToken
|
|
@@ -816104,7 +816108,7 @@ function getAgUiCapabilities() {
|
|
|
816104
816108
|
name: "UR-Nexus",
|
|
816105
816109
|
type: "ur-nexus",
|
|
816106
816110
|
description: "Provider-flexible, local-first autonomous engineering workflow agent.",
|
|
816107
|
-
version: "1.80.
|
|
816111
|
+
version: "1.80.10",
|
|
816108
816112
|
provider: "UR",
|
|
816109
816113
|
documentationUrl: "https://github.com/Maitham16/UR/blob/master/docs/AG_UI.md"
|
|
816110
816114
|
},
|
|
@@ -817331,7 +817335,7 @@ function createMCPServer(cwd4, debug2, verbose) {
|
|
|
817331
817335
|
};
|
|
817332
817336
|
const server2 = new Server({
|
|
817333
817337
|
name: "ur-nexus",
|
|
817334
|
-
version: "1.80.
|
|
817338
|
+
version: "1.80.10"
|
|
817335
817339
|
}, {
|
|
817336
817340
|
capabilities: {
|
|
817337
817341
|
tools: {}
|
|
@@ -818535,7 +818539,7 @@ function thrownResponse(error40) {
|
|
|
818535
818539
|
}
|
|
818536
818540
|
async function createUrMcp2026Runtime(options5) {
|
|
818537
818541
|
const server2 = createMCPServer(options5.cwd, options5.debug === true, options5.verbose === true);
|
|
818538
|
-
const client2 = new Client({ name: "ur-mcp-2026-adapter", version: "1.80.
|
|
818542
|
+
const client2 = new Client({ name: "ur-mcp-2026-adapter", version: "1.80.10" }, { capabilities: {} });
|
|
818539
818543
|
const [clientTransport, serverTransport] = createLinkedTransportPair();
|
|
818540
818544
|
try {
|
|
818541
818545
|
await server2.connect(serverTransport);
|
|
@@ -818546,7 +818550,7 @@ async function createUrMcp2026Runtime(options5) {
|
|
|
818546
818550
|
}
|
|
818547
818551
|
const runtime2 = new Mcp2026Runtime({
|
|
818548
818552
|
cwd: options5.cwd,
|
|
818549
|
-
version: "1.80.
|
|
818553
|
+
version: "1.80.10",
|
|
818550
818554
|
backend: {
|
|
818551
818555
|
listTools: async () => {
|
|
818552
818556
|
const listed = await client2.listTools();
|
|
@@ -821281,7 +821285,7 @@ async function update() {
|
|
|
821281
821285
|
logEvent("tengu_update_check", {});
|
|
821282
821286
|
const diagnostic2 = await getDoctorDiagnostic();
|
|
821283
821287
|
const result = await checkUpgradeStatus({
|
|
821284
|
-
currentVersion: "1.80.
|
|
821288
|
+
currentVersion: "1.80.10",
|
|
821285
821289
|
packageName: UR_AGENT_PACKAGE_NAME,
|
|
821286
821290
|
installationType: diagnostic2.installationType,
|
|
821287
821291
|
latestVersion: () => getLatestNpmPackageVersion(UR_AGENT_PACKAGE_NAME)
|
|
@@ -822609,7 +822613,7 @@ ${customInstructions}` : customInstructions;
|
|
|
822609
822613
|
}
|
|
822610
822614
|
}
|
|
822611
822615
|
logForDiagnosticsNoPII("info", "started", {
|
|
822612
|
-
version: "1.80.
|
|
822616
|
+
version: "1.80.10",
|
|
822613
822617
|
is_native_binary: isInBundledMode()
|
|
822614
822618
|
});
|
|
822615
822619
|
registerCleanup(async () => {
|
|
@@ -823396,7 +823400,7 @@ Usage: ur --remote "your task description"`, () => gracefulShutdown(1));
|
|
|
823396
823400
|
pendingHookMessages
|
|
823397
823401
|
}, renderAndRun);
|
|
823398
823402
|
}
|
|
823399
|
-
}).version("1.80.
|
|
823403
|
+
}).version("1.80.10 (UR-Nexus)", "-v, --version", "Output the version number");
|
|
823400
823404
|
program2.option("-w, --worktree [name]", "Create a new git worktree for this session (optionally specify a name)");
|
|
823401
823405
|
program2.option("--tmux", "Create a tmux session for the worktree (requires --worktree). Uses iTerm2 native panes when available; use --tmux=classic for traditional tmux.");
|
|
823402
823406
|
if (canUserConfigureAdvisor()) {
|
|
@@ -824523,7 +824527,7 @@ if (false) {}
|
|
|
824523
824527
|
async function main2() {
|
|
824524
824528
|
const args = process.argv.slice(2);
|
|
824525
824529
|
if (args.length === 1 && (args[0] === "--version" || args[0] === "-v" || args[0] === "-V")) {
|
|
824526
|
-
console.log(`${"1.80.
|
|
824530
|
+
console.log(`${"1.80.10"} (UR-Nexus)`);
|
|
824527
824531
|
return;
|
|
824528
824532
|
}
|
|
824529
824533
|
if (args[0] === "a2a" && args[1] === "serve" && !args.includes("--help") && !args.includes("-h")) {
|
package/docs/AGENT_FEATURES.md
CHANGED
|
@@ -9,6 +9,12 @@ reproducible autonomous software engineering agent: every substantial task can
|
|
|
9
9
|
be driven as `spec -> plan -> patch -> test -> report -> rollback`, with the
|
|
10
10
|
spec as the durable source of truth and command evidence as the success gate.
|
|
11
11
|
|
|
12
|
+
## v1.80.10 Addition
|
|
13
|
+
|
|
14
|
+
| Addition | Surface | What it adds |
|
|
15
|
+
| --- | --- | --- |
|
|
16
|
+
| Deterministic read-only agent registry | Public bundle, development runtime, `Agent` gate | Ships the protected `Explore` and `Plan` definitions in every public runtime so task-free research always has a real read-only destination. Tests now exercise the real registry and verify the release feature flag. |
|
|
17
|
+
|
|
12
18
|
## v1.80.9 Addition
|
|
13
19
|
|
|
14
20
|
| Addition | Surface | What it adds |
|
package/docs/CONFIGURATION.md
CHANGED
|
@@ -58,7 +58,8 @@ it to `0` to require a task before every mutation. Set `enabled` to `false` to
|
|
|
58
58
|
return to advisory task tracking. Profiles that omit `TaskCreate` are not
|
|
59
59
|
gated, because they could not satisfy the requirement. The main session may
|
|
60
60
|
launch UR's shipped `Explore` and `Plan` agents before a task exists in any
|
|
61
|
-
permission mode. These
|
|
61
|
+
permission mode. These core definitions are always registered in public builds
|
|
62
|
+
and are forced read-only; custom,
|
|
62
63
|
write-capable, nested, named/team, and worktree delegation still requires an
|
|
63
64
|
actionable parent task. As provider-independent compatibility, an unnamed
|
|
64
65
|
main-session `general-purpose` call is reduced to the shipped Explore definition
|
package/docs/TROUBLESHOOTING.md
CHANGED
|
@@ -113,6 +113,10 @@ ur provider status
|
|
|
113
113
|
shape without relying on a specific model name. Prompts that also direct
|
|
114
114
|
implementation, testing, command execution, or file changes remain blocked
|
|
115
115
|
until an actionable task exists.
|
|
116
|
+
- If the same failure persists on 1.80.9, upgrade to 1.80.10. The 1.80.9 public
|
|
117
|
+
bundle could still compile the protected `Explore` and `Plan` registry entries
|
|
118
|
+
out, leaving the correct routing decision with no read-only destination.
|
|
119
|
+
Version 1.80.10 makes both core agents deterministic in public builds.
|
|
116
120
|
|
|
117
121
|
### Ollama stops with `unavailable tool "WebSearch"`
|
|
118
122
|
|
package/docs/VALIDATION.md
CHANGED
|
@@ -19,10 +19,10 @@ You need:
|
|
|
19
19
|
|
|
20
20
|
```sh
|
|
21
21
|
ur --version
|
|
22
|
-
# expected for this release: "1.80.
|
|
22
|
+
# expected for this release: "1.80.10 (UR-Nexus)"
|
|
23
23
|
```
|
|
24
24
|
|
|
25
|
-
### 0.0 Read-only research delegation starts cleanly (1.80.
|
|
25
|
+
### 0.0 Read-only research delegation starts cleanly (1.80.10)
|
|
26
26
|
|
|
27
27
|
Start an interactive session with task enforcement enabled and ask UR to
|
|
28
28
|
research a change, both normally and from Plan Mode. Before any task exists,
|
|
@@ -31,6 +31,11 @@ built-in `Explore` and `Plan` agent calls should initialize without
|
|
|
31
31
|
Accept Edits or Approve All. Custom agents and ordinary general-purpose agents
|
|
32
32
|
should remain blocked until they have an actionable parent task.
|
|
33
33
|
|
|
34
|
+
The installed public bundle must list both core definitions in its active
|
|
35
|
+
built-in registry; a correct research classifier without those definitions is
|
|
36
|
+
not a passing state. Development and release builds must both enable
|
|
37
|
+
`BUILTIN_EXPLORE_PLAN_AGENTS`.
|
|
38
|
+
|
|
34
39
|
Repeat with multiple available model families. A model may correctly emit
|
|
35
40
|
`subagent_type: "Explore"`; if it instead emits `general-purpose` with an
|
|
36
41
|
explicit read-only brief or a pure research/report-only brief, UR must safely
|
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.80.
|
|
48
|
+
<p class="eyebrow">Version 1.80.10</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.80.
|
|
5
|
+
"version": "1.80.10",
|
|
6
6
|
"publisher": "ur-nexus",
|
|
7
7
|
"engines": {
|
|
8
8
|
"vscode": "^1.92.0"
|
package/package.json
CHANGED
package/plugins/bunBundleDev.ts
CHANGED
|
@@ -15,6 +15,9 @@ import { plugin } from 'bun'
|
|
|
15
15
|
|
|
16
16
|
const enabledFlags = new Set([
|
|
17
17
|
'TREE_SITTER_BASH',
|
|
18
|
+
// Explore/Plan are a supported public capability and the safe target for
|
|
19
|
+
// task-free read-only delegation. Keep development aligned with bundles.
|
|
20
|
+
'BUILTIN_EXPLORE_PLAN_AGENTS',
|
|
18
21
|
...(process.env.FEATURE_FLAGS ?? '').split(',').filter(Boolean),
|
|
19
22
|
])
|
|
20
23
|
|