ur-agent 1.30.3 → 1.30.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +19 -0
- package/README.md +49 -43
- package/dist/cli.js +241 -115
- package/docs/AGENT_FEATURES.md +2 -2
- package/docs/CONFIGURATION.md +13 -14
- package/docs/USAGE.md +23 -20
- package/docs/providers.md +59 -51
- package/documentation/app.js +5 -5
- package/documentation/index.html +6 -6
- package/extensions/vscode-ur-inline-diffs/package.json +1 -1
- package/package.json +1 -1
package/dist/cli.js
CHANGED
|
@@ -51209,12 +51209,15 @@ __export(exports_providerRegistry, {
|
|
|
51209
51209
|
listModelsForProviderWithSource: () => listModelsForProviderWithSource,
|
|
51210
51210
|
listModelsForProvider: () => listModelsForProvider,
|
|
51211
51211
|
launchProviderAuth: () => launchProviderAuth,
|
|
51212
|
+
isProviderRuntimeSelectable: () => isProviderRuntimeSelectable,
|
|
51212
51213
|
isProviderId: () => isProviderId,
|
|
51213
51214
|
isModelSupportedByProvider: () => isModelSupportedByProvider,
|
|
51214
51215
|
getValidModelIdsForProvider: () => getValidModelIdsForProvider,
|
|
51215
51216
|
getRuntimeProviderId: () => getRuntimeProviderId,
|
|
51216
51217
|
getProviderStatus: () => getProviderStatus,
|
|
51218
|
+
getProviderRuntimeKind: () => getProviderRuntimeKind,
|
|
51217
51219
|
getProviderRuntimeInfo: () => getProviderRuntimeInfo,
|
|
51220
|
+
getProviderRuntimeBlockReason: () => getProviderRuntimeBlockReason,
|
|
51218
51221
|
getProviderRuntimeBackend: () => getProviderRuntimeBackend,
|
|
51219
51222
|
getProviderFamily: () => getProviderFamily,
|
|
51220
51223
|
getProviderDefinition: () => getProviderDefinition,
|
|
@@ -51227,6 +51230,7 @@ __export(exports_providerRegistry, {
|
|
|
51227
51230
|
formatProviderList: () => formatProviderList,
|
|
51228
51231
|
formatProviderDoctor: () => formatProviderDoctor,
|
|
51229
51232
|
formatInvalidProviderModelMessage: () => formatInvalidProviderModelMessage,
|
|
51233
|
+
externalAppProviderBridgeEnabled: () => externalAppProviderBridgeEnabled,
|
|
51230
51234
|
doctorProvider: () => doctorProvider,
|
|
51231
51235
|
doctorActiveProvider: () => doctorActiveProvider,
|
|
51232
51236
|
credentialTypeLabel: () => credentialTypeLabel,
|
|
@@ -51360,8 +51364,33 @@ function credentialTypeLabel(type) {
|
|
|
51360
51364
|
return "OpenAI-compatible endpoint";
|
|
51361
51365
|
}
|
|
51362
51366
|
}
|
|
51363
|
-
function
|
|
51364
|
-
return
|
|
51367
|
+
function externalAppProviderBridgeEnabled(env4 = process.env) {
|
|
51368
|
+
return env4.UR_ENABLE_EXTERNAL_APP_PROVIDERS === "1";
|
|
51369
|
+
}
|
|
51370
|
+
function getProviderRuntimeKind(providerId) {
|
|
51371
|
+
const provider = resolveProviderId(providerId);
|
|
51372
|
+
return provider ? getProviderDefinition(provider).runtimeKind : "unknown";
|
|
51373
|
+
}
|
|
51374
|
+
function getProviderRuntimeBlockReason(providerId, env4 = process.env) {
|
|
51375
|
+
const provider = resolveProviderId(providerId);
|
|
51376
|
+
if (!provider) {
|
|
51377
|
+
return `Unknown provider "${providerId}". Run: ur provider list`;
|
|
51378
|
+
}
|
|
51379
|
+
const definition = getProviderDefinition(provider);
|
|
51380
|
+
if (definition.runtimeKind !== "external-app") {
|
|
51381
|
+
return null;
|
|
51382
|
+
}
|
|
51383
|
+
if (externalAppProviderBridgeEnabled(env4)) {
|
|
51384
|
+
return null;
|
|
51385
|
+
}
|
|
51386
|
+
return `Provider "${provider}" uses an external app bridge (${definition.displayName}), not a UR-native model endpoint. UR's independent runtime does not require Codex, Claude Code, Gemini CLI, or Antigravity to be installed. Choose an API/local/server provider such as openai-api, anthropic-api, gemini-api, openrouter, ollama, lmstudio, llama.cpp, or vllm. To intentionally delegate turns to the external app bridge, set UR_ENABLE_EXTERNAL_APP_PROVIDERS=1.`;
|
|
51387
|
+
}
|
|
51388
|
+
function isProviderRuntimeSelectable(providerId, env4 = process.env) {
|
|
51389
|
+
return getProviderRuntimeBlockReason(providerId, env4) === null;
|
|
51390
|
+
}
|
|
51391
|
+
function listProviders(options = {}) {
|
|
51392
|
+
const includeExternal = options.includeExternalAppBridges ?? externalAppProviderBridgeEnabled(options.env ?? process.env);
|
|
51393
|
+
return PROVIDER_IDS.map((id) => PROVIDERS[id]).filter((provider) => includeExternal || provider.runtimeKind !== "external-app");
|
|
51365
51394
|
}
|
|
51366
51395
|
function hasSecretLikeValue(value) {
|
|
51367
51396
|
const trimmed = value.trim();
|
|
@@ -51409,6 +51438,13 @@ function setSafeProviderConfig(key, value) {
|
|
|
51409
51438
|
message: `Unknown provider "${trimmed}". Run: ur provider list`
|
|
51410
51439
|
};
|
|
51411
51440
|
}
|
|
51441
|
+
const runtimeBlock = getProviderRuntimeBlockReason(provider);
|
|
51442
|
+
if (runtimeBlock) {
|
|
51443
|
+
return {
|
|
51444
|
+
ok: false,
|
|
51445
|
+
message: runtimeBlock
|
|
51446
|
+
};
|
|
51447
|
+
}
|
|
51412
51448
|
const currentSettings = getInitialSettings();
|
|
51413
51449
|
const currentModel = getActiveProviderSettings(currentSettings).model;
|
|
51414
51450
|
const nextProviderSettings = { active: provider };
|
|
@@ -51433,12 +51469,28 @@ function setSafeProviderConfig(key, value) {
|
|
|
51433
51469
|
message: `Unknown fallback provider "${trimmed}". Run: ur provider list`
|
|
51434
51470
|
};
|
|
51435
51471
|
}
|
|
51472
|
+
if (fallback !== "disabled") {
|
|
51473
|
+
const runtimeBlock = getProviderRuntimeBlockReason(fallback);
|
|
51474
|
+
if (runtimeBlock) {
|
|
51475
|
+
return {
|
|
51476
|
+
ok: false,
|
|
51477
|
+
message: runtimeBlock
|
|
51478
|
+
};
|
|
51479
|
+
}
|
|
51480
|
+
}
|
|
51436
51481
|
settings = { provider: { fallback } };
|
|
51437
51482
|
} else if (key === "provider.command_path") {
|
|
51438
51483
|
settings = { provider: { commandPath: trimmed } };
|
|
51439
51484
|
} else if (key === "model") {
|
|
51440
51485
|
const currentSettings = getInitialSettings();
|
|
51441
51486
|
const currentProvider = getActiveProviderSettings(currentSettings).active ?? "ollama";
|
|
51487
|
+
const runtimeBlock = getProviderRuntimeBlockReason(currentProvider);
|
|
51488
|
+
if (runtimeBlock) {
|
|
51489
|
+
return {
|
|
51490
|
+
ok: false,
|
|
51491
|
+
message: runtimeBlock
|
|
51492
|
+
};
|
|
51493
|
+
}
|
|
51442
51494
|
const validation = validateProviderModelPair(currentProvider, trimmed);
|
|
51443
51495
|
if (validation.valid === false) {
|
|
51444
51496
|
return {
|
|
@@ -51917,6 +51969,7 @@ function formatProviderList(json2 = false) {
|
|
|
51917
51969
|
accessTypeLabel: getProviderAccessTypeLabel(provider),
|
|
51918
51970
|
credentialType: provider.credentialType,
|
|
51919
51971
|
modelDiscoveryType: provider.modelDiscoveryType,
|
|
51972
|
+
runtimeKind: provider.runtimeKind,
|
|
51920
51973
|
runtimeBackend: getProviderRuntimeBackend(provider.id),
|
|
51921
51974
|
authMode: provider.authMode,
|
|
51922
51975
|
accessPath: provider.accessPathLabel,
|
|
@@ -51926,9 +51979,9 @@ function formatProviderList(json2 = false) {
|
|
|
51926
51979
|
return JSON.stringify(providers, null, 2);
|
|
51927
51980
|
}
|
|
51928
51981
|
return [
|
|
51929
|
-
"Provider | ID | Aliases | Access type | Credential | Model discovery | Runtime backend | Access path",
|
|
51930
|
-
"--- | --- | --- | --- | --- | --- | --- | ---",
|
|
51931
|
-
...providers.map((provider) => `${provider.name} | ${provider.id} | ${provider.aliases.slice(0, 3).join(", ") || "-"} | ${provider.accessTypeLabel} | ${provider.credentialType} | ${provider.modelDiscoveryType} | ${provider.runtimeBackend} | ${provider.accessPath}`)
|
|
51982
|
+
"Provider | ID | Aliases | Access type | Credential | Model discovery | Runtime kind | Runtime backend | Access path",
|
|
51983
|
+
"--- | --- | --- | --- | --- | --- | --- | --- | ---",
|
|
51984
|
+
...providers.map((provider) => `${provider.name} | ${provider.id} | ${provider.aliases.slice(0, 3).join(", ") || "-"} | ${provider.accessTypeLabel} | ${provider.credentialType} | ${provider.modelDiscoveryType} | ${provider.runtimeKind} | ${provider.runtimeBackend} | ${provider.accessPath}`)
|
|
51932
51985
|
].join(`
|
|
51933
51986
|
`);
|
|
51934
51987
|
}
|
|
@@ -51936,14 +51989,20 @@ function formatProviderDoctor(result, json2 = false) {
|
|
|
51936
51989
|
if (json2) {
|
|
51937
51990
|
return JSON.stringify(result, null, 2);
|
|
51938
51991
|
}
|
|
51992
|
+
const runtimeBlock = getProviderRuntimeBlockReason(result.provider);
|
|
51939
51993
|
const lines = [
|
|
51940
51994
|
`Provider: ${result.displayName} (${result.provider})`,
|
|
51941
51995
|
`Access: ${getProviderAccessTypeLabel(getProviderDefinition(result.provider))}`,
|
|
51942
51996
|
`Credential: ${getProviderDefinition(result.provider).credentialType}`,
|
|
51997
|
+
`Runtime kind: ${getProviderDefinition(result.provider).runtimeKind}`,
|
|
51943
51998
|
`Runtime backend: ${getProviderRuntimeBackend(result.provider)}`,
|
|
51999
|
+
`Runtime available: ${runtimeBlock ? "no" : "yes"}`,
|
|
51944
52000
|
`Auth: ${authModeLabel(result.authMode)}`,
|
|
51945
52001
|
`Status: ${result.ok ? "ready" : "not ready"}`
|
|
51946
52002
|
];
|
|
52003
|
+
if (runtimeBlock) {
|
|
52004
|
+
lines.push(`Runtime note: ${runtimeBlock}`);
|
|
52005
|
+
}
|
|
51947
52006
|
for (const check3 of result.checks) {
|
|
51948
52007
|
lines.push(`- ${check3.status.toUpperCase()} ${check3.name}: ${check3.message}`);
|
|
51949
52008
|
}
|
|
@@ -51971,10 +52030,15 @@ Suggested fix: ${result.suggestedFix}` : "";
|
|
|
51971
52030
|
const settings = getActiveProviderSettings(getInitialSettings());
|
|
51972
52031
|
const model = settings.model ? `
|
|
51973
52032
|
Active model: ${settings.model}` : "";
|
|
52033
|
+
const runtimeBlock = getProviderRuntimeBlockReason(result.provider);
|
|
52034
|
+
const runtime = `
|
|
52035
|
+
Runtime available: ${runtimeBlock ? "no" : "yes"}${runtimeBlock ? `
|
|
52036
|
+
Runtime note: ${runtimeBlock}` : ""}`;
|
|
51974
52037
|
return `Selected provider: ${result.displayName} (${result.provider})
|
|
51975
52038
|
Access type: ${getProviderAccessTypeLabel(definition)}
|
|
51976
52039
|
Credential: ${definition.credentialType}
|
|
51977
|
-
Runtime
|
|
52040
|
+
Runtime kind: ${definition.runtimeKind}
|
|
52041
|
+
Runtime backend: ${getProviderRuntimeBackend(result.provider)}${model}${runtime}
|
|
51978
52042
|
Auth mode: ${authModeLabel(result.authMode)}
|
|
51979
52043
|
Ready: ${result.ok ? "yes" : "no"}${failure}${fix}`;
|
|
51980
52044
|
}
|
|
@@ -52233,6 +52297,13 @@ function setProviderModel(providerId, modelId, options = {}) {
|
|
|
52233
52297
|
message: `Unknown provider "${providerId}". Run: ur provider list`
|
|
52234
52298
|
};
|
|
52235
52299
|
}
|
|
52300
|
+
const runtimeBlock = getProviderRuntimeBlockReason(provider);
|
|
52301
|
+
if (runtimeBlock) {
|
|
52302
|
+
return {
|
|
52303
|
+
ok: false,
|
|
52304
|
+
message: runtimeBlock
|
|
52305
|
+
};
|
|
52306
|
+
}
|
|
52236
52307
|
const validation = validateProviderModelPair(provider, modelId, {
|
|
52237
52308
|
availableModels: options.availableModels
|
|
52238
52309
|
});
|
|
@@ -52270,19 +52341,19 @@ var init_providerRegistry = __esm(() => {
|
|
|
52270
52341
|
init_settings2();
|
|
52271
52342
|
init_which();
|
|
52272
52343
|
PROVIDER_IDS = [
|
|
52273
|
-
"
|
|
52274
|
-
"
|
|
52275
|
-
"
|
|
52276
|
-
"
|
|
52344
|
+
"ollama",
|
|
52345
|
+
"lmstudio",
|
|
52346
|
+
"llama.cpp",
|
|
52347
|
+
"vllm",
|
|
52348
|
+
"openai-compatible",
|
|
52277
52349
|
"openai-api",
|
|
52278
52350
|
"anthropic-api",
|
|
52279
52351
|
"gemini-api",
|
|
52280
52352
|
"openrouter",
|
|
52281
|
-
"
|
|
52282
|
-
"
|
|
52283
|
-
"
|
|
52284
|
-
"
|
|
52285
|
-
"vllm"
|
|
52353
|
+
"codex-cli",
|
|
52354
|
+
"claude-code-cli",
|
|
52355
|
+
"gemini-cli",
|
|
52356
|
+
"antigravity-cli"
|
|
52286
52357
|
];
|
|
52287
52358
|
LOCALHOST_RE = /^(https?:\/\/)?(localhost|127\.0\.0\.1|\[::1\]|::1)(:\d+)?(\/|$)/i;
|
|
52288
52359
|
PROVIDERS = {
|
|
@@ -52296,6 +52367,7 @@ var init_providerRegistry = __esm(() => {
|
|
|
52296
52367
|
statusCheck: "cli-login",
|
|
52297
52368
|
listModels: "static",
|
|
52298
52369
|
validateModel: "static-list",
|
|
52370
|
+
runtimeKind: "external-app",
|
|
52299
52371
|
authMode: "subscription",
|
|
52300
52372
|
legalPath: "official Codex CLI login",
|
|
52301
52373
|
accessPathLabel: "subscription login via official Codex CLI",
|
|
@@ -52315,6 +52387,7 @@ var init_providerRegistry = __esm(() => {
|
|
|
52315
52387
|
statusCheck: "cli-login",
|
|
52316
52388
|
listModels: "static",
|
|
52317
52389
|
validateModel: "static-list",
|
|
52390
|
+
runtimeKind: "external-app",
|
|
52318
52391
|
authMode: "subscription",
|
|
52319
52392
|
legalPath: "official Claude Code CLI login",
|
|
52320
52393
|
accessPathLabel: "subscription login via official Claude Code CLI",
|
|
@@ -52333,6 +52406,7 @@ var init_providerRegistry = __esm(() => {
|
|
|
52333
52406
|
statusCheck: "cli-login",
|
|
52334
52407
|
listModels: "static",
|
|
52335
52408
|
validateModel: "static-list",
|
|
52409
|
+
runtimeKind: "external-app",
|
|
52336
52410
|
authMode: "enterprise-login",
|
|
52337
52411
|
legalPath: "official Gemini Code Assist login",
|
|
52338
52412
|
accessPathLabel: "subscription login via official Gemini CLI",
|
|
@@ -52351,6 +52425,7 @@ var init_providerRegistry = __esm(() => {
|
|
|
52351
52425
|
statusCheck: "cli-login",
|
|
52352
52426
|
listModels: "static",
|
|
52353
52427
|
validateModel: "static-list",
|
|
52428
|
+
runtimeKind: "external-app",
|
|
52354
52429
|
authMode: "personal-login",
|
|
52355
52430
|
legalPath: "official Antigravity CLI login, where supported",
|
|
52356
52431
|
accessPathLabel: "subscription login via official Antigravity CLI",
|
|
@@ -52368,6 +52443,7 @@ var init_providerRegistry = __esm(() => {
|
|
|
52368
52443
|
statusCheck: "api-key",
|
|
52369
52444
|
listModels: "static",
|
|
52370
52445
|
validateModel: "static-list",
|
|
52446
|
+
runtimeKind: "ur-native",
|
|
52371
52447
|
authMode: "api",
|
|
52372
52448
|
legalPath: "OPENAI_API_KEY",
|
|
52373
52449
|
accessPathLabel: "API key from OPENAI_API_KEY",
|
|
@@ -52383,6 +52459,7 @@ var init_providerRegistry = __esm(() => {
|
|
|
52383
52459
|
statusCheck: "api-key",
|
|
52384
52460
|
listModels: "static",
|
|
52385
52461
|
validateModel: "static-list",
|
|
52462
|
+
runtimeKind: "ur-native",
|
|
52386
52463
|
authMode: "api",
|
|
52387
52464
|
legalPath: "ANTHROPIC_API_KEY",
|
|
52388
52465
|
accessPathLabel: "API key from ANTHROPIC_API_KEY",
|
|
@@ -52398,6 +52475,7 @@ var init_providerRegistry = __esm(() => {
|
|
|
52398
52475
|
statusCheck: "api-key",
|
|
52399
52476
|
listModels: "static",
|
|
52400
52477
|
validateModel: "static-list",
|
|
52478
|
+
runtimeKind: "ur-native",
|
|
52401
52479
|
authMode: "api",
|
|
52402
52480
|
legalPath: "GEMINI_API_KEY",
|
|
52403
52481
|
accessPathLabel: "API key from GEMINI_API_KEY",
|
|
@@ -52413,6 +52491,7 @@ var init_providerRegistry = __esm(() => {
|
|
|
52413
52491
|
statusCheck: "api-key",
|
|
52414
52492
|
listModels: "static",
|
|
52415
52493
|
validateModel: "static-list",
|
|
52494
|
+
runtimeKind: "ur-native",
|
|
52416
52495
|
authMode: "api",
|
|
52417
52496
|
legalPath: "OPENROUTER_API_KEY",
|
|
52418
52497
|
accessPathLabel: "API key from OPENROUTER_API_KEY",
|
|
@@ -52429,6 +52508,7 @@ var init_providerRegistry = __esm(() => {
|
|
|
52429
52508
|
statusCheck: "endpoint",
|
|
52430
52509
|
listModels: "openai-compatible-models",
|
|
52431
52510
|
validateModel: "discovered-list",
|
|
52511
|
+
runtimeKind: "ur-native",
|
|
52432
52512
|
authMode: "api",
|
|
52433
52513
|
legalPath: "user-selected OpenAI-compatible base URL with API key only when required by that endpoint",
|
|
52434
52514
|
accessPathLabel: "OpenAI-compatible endpoint",
|
|
@@ -52445,6 +52525,7 @@ var init_providerRegistry = __esm(() => {
|
|
|
52445
52525
|
statusCheck: "endpoint",
|
|
52446
52526
|
listModels: "ollama-tags",
|
|
52447
52527
|
validateModel: "discovered-list",
|
|
52528
|
+
runtimeKind: "ur-native",
|
|
52448
52529
|
authMode: "local",
|
|
52449
52530
|
legalPath: "localhost Ollama runtime",
|
|
52450
52531
|
accessPathLabel: "local Ollama runtime",
|
|
@@ -52462,6 +52543,7 @@ var init_providerRegistry = __esm(() => {
|
|
|
52462
52543
|
statusCheck: "endpoint",
|
|
52463
52544
|
listModels: "openai-compatible-models",
|
|
52464
52545
|
validateModel: "discovered-list",
|
|
52546
|
+
runtimeKind: "ur-native",
|
|
52465
52547
|
authMode: "local",
|
|
52466
52548
|
legalPath: "local OpenAI-compatible server",
|
|
52467
52549
|
accessPathLabel: "local OpenAI-compatible endpoint",
|
|
@@ -52479,6 +52561,7 @@ var init_providerRegistry = __esm(() => {
|
|
|
52479
52561
|
statusCheck: "endpoint",
|
|
52480
52562
|
listModels: "openai-compatible-models",
|
|
52481
52563
|
validateModel: "discovered-list",
|
|
52564
|
+
runtimeKind: "ur-native",
|
|
52482
52565
|
authMode: "local",
|
|
52483
52566
|
legalPath: "local OpenAI-compatible server",
|
|
52484
52567
|
accessPathLabel: "local OpenAI-compatible endpoint",
|
|
@@ -52496,6 +52579,7 @@ var init_providerRegistry = __esm(() => {
|
|
|
52496
52579
|
statusCheck: "endpoint",
|
|
52497
52580
|
listModels: "openai-compatible-models",
|
|
52498
52581
|
validateModel: "discovered-list",
|
|
52582
|
+
runtimeKind: "ur-native",
|
|
52499
52583
|
authMode: "local",
|
|
52500
52584
|
legalPath: "OpenAI-compatible server",
|
|
52501
52585
|
accessPathLabel: "OpenAI-compatible endpoint runtime",
|
|
@@ -57394,6 +57478,10 @@ function resolveActiveProviderModel(options = {}) {
|
|
|
57394
57478
|
if (!provider) {
|
|
57395
57479
|
throw new Error(`Provider "${providerId}" is selected, but no runtime provider is registered. Run: ur provider list`);
|
|
57396
57480
|
}
|
|
57481
|
+
const runtimeBlock = getProviderRuntimeBlockReason(providerId);
|
|
57482
|
+
if (runtimeBlock) {
|
|
57483
|
+
throw new Error(runtimeBlock);
|
|
57484
|
+
}
|
|
57397
57485
|
const configuredModel = providerSettings.model;
|
|
57398
57486
|
const defaultModel = getDefaultModelForProvider(providerId);
|
|
57399
57487
|
const model = options.model ?? configuredModel ?? defaultModel;
|
|
@@ -57442,6 +57530,10 @@ async function createProviderClient(providerId, options = {}) {
|
|
|
57442
57530
|
throw new Error(`Unknown provider: ${providerId}`);
|
|
57443
57531
|
}
|
|
57444
57532
|
const provider = getProviderDefinition(resolved);
|
|
57533
|
+
const runtimeBlock = getProviderRuntimeBlockReason(resolved);
|
|
57534
|
+
if (runtimeBlock) {
|
|
57535
|
+
throw new Error(runtimeBlock);
|
|
57536
|
+
}
|
|
57445
57537
|
let client;
|
|
57446
57538
|
switch (provider.accessType) {
|
|
57447
57539
|
case "local":
|
|
@@ -57500,6 +57592,10 @@ async function createOpenAICompatibleProviderClient(providerId, options = {}) {
|
|
|
57500
57592
|
}
|
|
57501
57593
|
async function createSubscriptionClient(providerId, options = {}) {
|
|
57502
57594
|
const provider = getProviderDefinition(providerId);
|
|
57595
|
+
const runtimeBlock = getProviderRuntimeBlockReason(providerId);
|
|
57596
|
+
if (runtimeBlock) {
|
|
57597
|
+
throw new Error(runtimeBlock);
|
|
57598
|
+
}
|
|
57503
57599
|
const settings = getInitialSettings();
|
|
57504
57600
|
const providerSettings = getActiveProviderSettings(settings);
|
|
57505
57601
|
const { which: which2 } = await Promise.resolve().then(() => (init_which(), exports_which));
|
|
@@ -69312,7 +69408,7 @@ var init_auth = __esm(() => {
|
|
|
69312
69408
|
|
|
69313
69409
|
// src/utils/userAgent.ts
|
|
69314
69410
|
function getURCodeUserAgent() {
|
|
69315
|
-
return `ur/${"1.30.
|
|
69411
|
+
return `ur/${"1.30.5"}`;
|
|
69316
69412
|
}
|
|
69317
69413
|
|
|
69318
69414
|
// src/utils/workloadContext.ts
|
|
@@ -69334,7 +69430,7 @@ function getUserAgent() {
|
|
|
69334
69430
|
const clientApp = process.env.UR_AGENT_SDK_CLIENT_APP ? `, client-app/${process.env.UR_AGENT_SDK_CLIENT_APP}` : "";
|
|
69335
69431
|
const workload = getWorkload();
|
|
69336
69432
|
const workloadSuffix = workload ? `, workload/${workload}` : "";
|
|
69337
|
-
return `ur-cli/${"1.30.
|
|
69433
|
+
return `ur-cli/${"1.30.5"} (${process.env.USER_TYPE}, ${process.env.UR_CODE_ENTRYPOINT ?? "cli"}${agentSdkVersion}${clientApp}${workloadSuffix})`;
|
|
69338
69434
|
}
|
|
69339
69435
|
function getMCPUserAgent() {
|
|
69340
69436
|
const parts = [];
|
|
@@ -69348,7 +69444,7 @@ function getMCPUserAgent() {
|
|
|
69348
69444
|
parts.push(`client-app/${process.env.UR_AGENT_SDK_CLIENT_APP}`);
|
|
69349
69445
|
}
|
|
69350
69446
|
const suffix = parts.length > 0 ? ` (${parts.join(", ")})` : "";
|
|
69351
|
-
return `ur/${"1.30.
|
|
69447
|
+
return `ur/${"1.30.5"}${suffix}`;
|
|
69352
69448
|
}
|
|
69353
69449
|
function getWebFetchUserAgent() {
|
|
69354
69450
|
return `UR-User (${getURCodeUserAgent()})`;
|
|
@@ -69486,7 +69582,7 @@ var init_user = __esm(() => {
|
|
|
69486
69582
|
deviceId,
|
|
69487
69583
|
sessionId: getSessionId(),
|
|
69488
69584
|
email: getEmail(),
|
|
69489
|
-
appVersion: "1.30.
|
|
69585
|
+
appVersion: "1.30.5",
|
|
69490
69586
|
platform: getHostPlatformForAnalytics(),
|
|
69491
69587
|
organizationUuid,
|
|
69492
69588
|
accountUuid,
|
|
@@ -76003,7 +76099,7 @@ var init_metadata = __esm(() => {
|
|
|
76003
76099
|
COMPOUND_OPERATOR_REGEX = /\s*(?:&&|\|\||[;|])\s*/;
|
|
76004
76100
|
WHITESPACE_REGEX = /\s+/;
|
|
76005
76101
|
getVersionBase = memoize_default(() => {
|
|
76006
|
-
const match = "1.30.
|
|
76102
|
+
const match = "1.30.5".match(/^\d+\.\d+\.\d+(?:-[a-z]+)?/);
|
|
76007
76103
|
return match ? match[0] : undefined;
|
|
76008
76104
|
});
|
|
76009
76105
|
buildEnvContext = memoize_default(async () => {
|
|
@@ -76043,7 +76139,7 @@ var init_metadata = __esm(() => {
|
|
|
76043
76139
|
isGithubAction: isEnvTruthy(process.env.GITHUB_ACTIONS),
|
|
76044
76140
|
isURCodeAction: isEnvTruthy(process.env.UR_CODE_ACTION),
|
|
76045
76141
|
isURAiAuth: isURAISubscriber2(),
|
|
76046
|
-
version: "1.30.
|
|
76142
|
+
version: "1.30.5",
|
|
76047
76143
|
versionBase: getVersionBase(),
|
|
76048
76144
|
buildTime: "",
|
|
76049
76145
|
deploymentEnvironment: env2.detectDeploymentEnvironment(),
|
|
@@ -76713,7 +76809,7 @@ function initialize1PEventLogging() {
|
|
|
76713
76809
|
const platform2 = getPlatform();
|
|
76714
76810
|
const attributes = {
|
|
76715
76811
|
[import_semantic_conventions4.ATTR_SERVICE_NAME]: "ur",
|
|
76716
|
-
[import_semantic_conventions4.ATTR_SERVICE_VERSION]: "1.30.
|
|
76812
|
+
[import_semantic_conventions4.ATTR_SERVICE_VERSION]: "1.30.5"
|
|
76717
76813
|
};
|
|
76718
76814
|
if (platform2 === "wsl") {
|
|
76719
76815
|
const wslVersion = getWslVersion();
|
|
@@ -76740,7 +76836,7 @@ function initialize1PEventLogging() {
|
|
|
76740
76836
|
})
|
|
76741
76837
|
]
|
|
76742
76838
|
});
|
|
76743
|
-
firstPartyEventLogger = firstPartyEventLoggerProvider.getLogger("com.urhq.ur.events", "1.30.
|
|
76839
|
+
firstPartyEventLogger = firstPartyEventLoggerProvider.getLogger("com.urhq.ur.events", "1.30.5");
|
|
76744
76840
|
}
|
|
76745
76841
|
async function reinitialize1PEventLoggingIfConfigChanged() {
|
|
76746
76842
|
if (!is1PEventLoggingEnabled() || !firstPartyEventLoggerProvider) {
|
|
@@ -82037,7 +82133,7 @@ function formatAgentTrendReport(report = buildAgentTrendReport()) {
|
|
|
82037
82133
|
function formatA2AAgentCard(options = {}, pretty = true) {
|
|
82038
82134
|
return JSON.stringify(buildA2AAgentCard(options), null, pretty ? 2 : 0);
|
|
82039
82135
|
}
|
|
82040
|
-
var urVersion = "1.30.
|
|
82136
|
+
var urVersion = "1.30.5", coverage, priorityRoadmap;
|
|
82041
82137
|
var init_trends = __esm(() => {
|
|
82042
82138
|
coverage = [
|
|
82043
82139
|
{
|
|
@@ -84030,7 +84126,7 @@ function getAttributionHeader(fingerprint) {
|
|
|
84030
84126
|
if (!isAttributionHeaderEnabled()) {
|
|
84031
84127
|
return "";
|
|
84032
84128
|
}
|
|
84033
|
-
const version2 = `${"1.30.
|
|
84129
|
+
const version2 = `${"1.30.5"}.${fingerprint}`;
|
|
84034
84130
|
const entrypoint = process.env.UR_CODE_ENTRYPOINT ?? "unknown";
|
|
84035
84131
|
const cch = "";
|
|
84036
84132
|
const workload = getWorkload();
|
|
@@ -191703,7 +191799,7 @@ function getTelemetryAttributes() {
|
|
|
191703
191799
|
attributes["session.id"] = sessionId;
|
|
191704
191800
|
}
|
|
191705
191801
|
if (shouldIncludeAttribute("OTEL_METRICS_INCLUDE_VERSION")) {
|
|
191706
|
-
attributes["app.version"] = "1.30.
|
|
191802
|
+
attributes["app.version"] = "1.30.5";
|
|
191707
191803
|
}
|
|
191708
191804
|
const oauthAccount = getOauthAccountInfo();
|
|
191709
191805
|
if (oauthAccount) {
|
|
@@ -227108,7 +227204,7 @@ function getInstallationEnv() {
|
|
|
227108
227204
|
return;
|
|
227109
227205
|
}
|
|
227110
227206
|
function getURCodeVersion() {
|
|
227111
|
-
return "1.30.
|
|
227207
|
+
return "1.30.5";
|
|
227112
227208
|
}
|
|
227113
227209
|
async function getInstalledVSCodeExtensionVersion(command) {
|
|
227114
227210
|
const { stdout } = await execFileNoThrow(command, ["--list-extensions", "--show-versions"], {
|
|
@@ -229947,7 +230043,7 @@ async function setupSdkMcpClients(sdkMcpConfigs, sendMcpMessage) {
|
|
|
229947
230043
|
const client2 = new Client({
|
|
229948
230044
|
name: "ur",
|
|
229949
230045
|
title: "UR",
|
|
229950
|
-
version: "1.30.
|
|
230046
|
+
version: "1.30.5",
|
|
229951
230047
|
description: "UR-AGENT autonomous engineering workflow engine",
|
|
229952
230048
|
websiteUrl: PRODUCT_URL
|
|
229953
230049
|
}, {
|
|
@@ -230301,7 +230397,7 @@ var init_client5 = __esm(() => {
|
|
|
230301
230397
|
const client2 = new Client({
|
|
230302
230398
|
name: "ur",
|
|
230303
230399
|
title: "UR",
|
|
230304
|
-
version: "1.30.
|
|
230400
|
+
version: "1.30.5",
|
|
230305
230401
|
description: "UR-AGENT autonomous engineering workflow engine",
|
|
230306
230402
|
websiteUrl: PRODUCT_URL
|
|
230307
230403
|
}, {
|
|
@@ -240117,9 +240213,9 @@ async function assertMinVersion() {
|
|
|
240117
240213
|
if (false) {}
|
|
240118
240214
|
try {
|
|
240119
240215
|
const versionConfig = await getDynamicConfig_BLOCKS_ON_INIT("tengu_version_config", { minVersion: "0.0.0" });
|
|
240120
|
-
if (versionConfig.minVersion && lt("1.30.
|
|
240216
|
+
if (versionConfig.minVersion && lt("1.30.5", versionConfig.minVersion)) {
|
|
240121
240217
|
console.error(`
|
|
240122
|
-
It looks like your version of UR (${"1.30.
|
|
240218
|
+
It looks like your version of UR (${"1.30.5"}) needs an update.
|
|
240123
240219
|
A newer version (${versionConfig.minVersion} or higher) is required to continue.
|
|
240124
240220
|
|
|
240125
240221
|
To update, please run:
|
|
@@ -240335,7 +240431,7 @@ async function installGlobalPackage(specificVersion) {
|
|
|
240335
240431
|
logError2(new AutoUpdaterError("Another process is currently installing an update"));
|
|
240336
240432
|
logEvent("tengu_auto_updater_lock_contention", {
|
|
240337
240433
|
pid: process.pid,
|
|
240338
|
-
currentVersion: "1.30.
|
|
240434
|
+
currentVersion: "1.30.5"
|
|
240339
240435
|
});
|
|
240340
240436
|
return "in_progress";
|
|
240341
240437
|
}
|
|
@@ -240344,7 +240440,7 @@ async function installGlobalPackage(specificVersion) {
|
|
|
240344
240440
|
if (!env2.isRunningWithBun() && env2.isNpmFromWindowsPath()) {
|
|
240345
240441
|
logError2(new Error("Windows NPM detected in WSL environment"));
|
|
240346
240442
|
logEvent("tengu_auto_updater_windows_npm_in_wsl", {
|
|
240347
|
-
currentVersion: "1.30.
|
|
240443
|
+
currentVersion: "1.30.5"
|
|
240348
240444
|
});
|
|
240349
240445
|
console.error(`
|
|
240350
240446
|
Error: Windows NPM detected in WSL
|
|
@@ -240879,7 +240975,7 @@ function detectLinuxGlobPatternWarnings() {
|
|
|
240879
240975
|
}
|
|
240880
240976
|
async function getDoctorDiagnostic() {
|
|
240881
240977
|
const installationType = await getCurrentInstallationType();
|
|
240882
|
-
const version2 = typeof MACRO !== "undefined" ? "1.30.
|
|
240978
|
+
const version2 = typeof MACRO !== "undefined" ? "1.30.5" : "unknown";
|
|
240883
240979
|
const installationPath = await getInstallationPath();
|
|
240884
240980
|
const invokedBinary = getInvokedBinary();
|
|
240885
240981
|
const multipleInstallations = await detectMultipleInstallations();
|
|
@@ -241814,8 +241910,8 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
|
|
|
241814
241910
|
const maxVersion = await getMaxVersion();
|
|
241815
241911
|
if (maxVersion && gt(version2, maxVersion)) {
|
|
241816
241912
|
logForDebugging(`Native installer: maxVersion ${maxVersion} is set, capping update from ${version2} to ${maxVersion}`);
|
|
241817
|
-
if (gte("1.30.
|
|
241818
|
-
logForDebugging(`Native installer: current version ${"1.30.
|
|
241913
|
+
if (gte("1.30.5", maxVersion)) {
|
|
241914
|
+
logForDebugging(`Native installer: current version ${"1.30.5"} is already at or above maxVersion ${maxVersion}, skipping update`);
|
|
241819
241915
|
logEvent("tengu_native_update_skipped_max_version", {
|
|
241820
241916
|
latency_ms: Date.now() - startTime,
|
|
241821
241917
|
max_version: maxVersion,
|
|
@@ -241826,7 +241922,7 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
|
|
|
241826
241922
|
version2 = maxVersion;
|
|
241827
241923
|
}
|
|
241828
241924
|
}
|
|
241829
|
-
if (!forceReinstall && version2 === "1.30.
|
|
241925
|
+
if (!forceReinstall && version2 === "1.30.5" && await versionIsAvailable(version2) && await isPossibleURBinary(executablePath)) {
|
|
241830
241926
|
logForDebugging(`Found ${version2} at ${executablePath}, skipping install`);
|
|
241831
241927
|
logEvent("tengu_native_update_complete", {
|
|
241832
241928
|
latency_ms: Date.now() - startTime,
|
|
@@ -338753,7 +338849,7 @@ function Feedback({
|
|
|
338753
338849
|
platform: env2.platform,
|
|
338754
338850
|
gitRepo: envInfo.isGit,
|
|
338755
338851
|
terminal: env2.terminal,
|
|
338756
|
-
version: "1.30.
|
|
338852
|
+
version: "1.30.5",
|
|
338757
338853
|
transcript: normalizeMessagesForAPI(messages),
|
|
338758
338854
|
errors: sanitizedErrors,
|
|
338759
338855
|
lastApiRequest: getLastAPIRequest(),
|
|
@@ -338945,7 +339041,7 @@ function Feedback({
|
|
|
338945
339041
|
", ",
|
|
338946
339042
|
env2.terminal,
|
|
338947
339043
|
", v",
|
|
338948
|
-
"1.30.
|
|
339044
|
+
"1.30.5"
|
|
338949
339045
|
]
|
|
338950
339046
|
}, undefined, true, undefined, this)
|
|
338951
339047
|
]
|
|
@@ -339051,7 +339147,7 @@ ${sanitizedDescription}
|
|
|
339051
339147
|
` + `**Environment Info**
|
|
339052
339148
|
` + `- Platform: ${env2.platform}
|
|
339053
339149
|
` + `- Terminal: ${env2.terminal}
|
|
339054
|
-
` + `- Version: ${"1.30.
|
|
339150
|
+
` + `- Version: ${"1.30.5"}
|
|
339055
339151
|
` + `- Feedback ID: ${feedbackId}
|
|
339056
339152
|
` + `
|
|
339057
339153
|
**Errors**
|
|
@@ -342162,7 +342258,7 @@ function buildPrimarySection() {
|
|
|
342162
342258
|
}, undefined, false, undefined, this);
|
|
342163
342259
|
return [{
|
|
342164
342260
|
label: "Version",
|
|
342165
|
-
value: "1.30.
|
|
342261
|
+
value: "1.30.5"
|
|
342166
342262
|
}, {
|
|
342167
342263
|
label: "Session name",
|
|
342168
342264
|
value: nameValue
|
|
@@ -345462,7 +345558,7 @@ function Config({
|
|
|
345462
345558
|
}
|
|
345463
345559
|
}, undefined, false, undefined, this)
|
|
345464
345560
|
}, undefined, false, undefined, this) : showSubmenu === "ChannelDowngrade" ? /* @__PURE__ */ jsx_dev_runtime177.jsxDEV(ChannelDowngradeDialog, {
|
|
345465
|
-
currentVersion: "1.30.
|
|
345561
|
+
currentVersion: "1.30.5",
|
|
345466
345562
|
onChoice: (choice) => {
|
|
345467
345563
|
setShowSubmenu(null);
|
|
345468
345564
|
setTabsHidden(false);
|
|
@@ -345474,7 +345570,7 @@ function Config({
|
|
|
345474
345570
|
autoUpdatesChannel: "stable"
|
|
345475
345571
|
};
|
|
345476
345572
|
if (choice === "stay") {
|
|
345477
|
-
newSettings.minimumVersion = "1.30.
|
|
345573
|
+
newSettings.minimumVersion = "1.30.5";
|
|
345478
345574
|
}
|
|
345479
345575
|
updateSettingsForSource("userSettings", newSettings);
|
|
345480
345576
|
setSettingsData((prev_27) => ({
|
|
@@ -353544,7 +353640,7 @@ function HelpV2(t0) {
|
|
|
353544
353640
|
let t6;
|
|
353545
353641
|
if ($3[31] !== tabs) {
|
|
353546
353642
|
t6 = /* @__PURE__ */ jsx_dev_runtime204.jsxDEV(Tabs, {
|
|
353547
|
-
title: `UR v${"1.30.
|
|
353643
|
+
title: `UR v${"1.30.5"}`,
|
|
353548
353644
|
color: "professionalBlue",
|
|
353549
353645
|
defaultTab: "general",
|
|
353550
353646
|
children: tabs
|
|
@@ -354290,7 +354386,7 @@ function buildToolUseContext(tools, readFileStateCache) {
|
|
|
354290
354386
|
async function handleInitialize(options2) {
|
|
354291
354387
|
return {
|
|
354292
354388
|
name: "ur-agent",
|
|
354293
|
-
version: "1.30.
|
|
354389
|
+
version: "1.30.5",
|
|
354294
354390
|
protocolVersion: "0.1.0",
|
|
354295
354391
|
workspaceRoot: options2.cwd,
|
|
354296
354392
|
capabilities: {
|
|
@@ -374414,7 +374510,7 @@ function getAllReleaseNotes(changelogContent = getStoredChangelogFromMemory()) {
|
|
|
374414
374510
|
return [];
|
|
374415
374511
|
}
|
|
374416
374512
|
}
|
|
374417
|
-
async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.30.
|
|
374513
|
+
async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.30.5") {
|
|
374418
374514
|
if (process.env.USER_TYPE === "ant") {
|
|
374419
374515
|
const changelog = "";
|
|
374420
374516
|
if (changelog) {
|
|
@@ -374441,7 +374537,7 @@ async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.30.3")
|
|
|
374441
374537
|
releaseNotes
|
|
374442
374538
|
};
|
|
374443
374539
|
}
|
|
374444
|
-
function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.30.
|
|
374540
|
+
function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.30.5") {
|
|
374445
374541
|
if (process.env.USER_TYPE === "ant") {
|
|
374446
374542
|
const changelog = "";
|
|
374447
374543
|
if (changelog) {
|
|
@@ -375611,7 +375707,7 @@ function getRecentActivitySync() {
|
|
|
375611
375707
|
return cachedActivity;
|
|
375612
375708
|
}
|
|
375613
375709
|
function getLogoDisplayData() {
|
|
375614
|
-
const version2 = process.env.DEMO_VERSION ?? "1.30.
|
|
375710
|
+
const version2 = process.env.DEMO_VERSION ?? "1.30.5";
|
|
375615
375711
|
const serverUrl = getDirectConnectServerUrl();
|
|
375616
375712
|
const displayPath = process.env.DEMO_VERSION ? "/code/ur" : getDisplayPath(getCwd2());
|
|
375617
375713
|
const cwd2 = serverUrl ? `${displayPath} in ${serverUrl.replace(/^https?:\/\//, "")}` : displayPath;
|
|
@@ -376400,7 +376496,7 @@ function LogoV2() {
|
|
|
376400
376496
|
if ($3[2] === Symbol.for("react.memo_cache_sentinel")) {
|
|
376401
376497
|
t2 = () => {
|
|
376402
376498
|
const currentConfig = getGlobalConfig();
|
|
376403
|
-
if (currentConfig.lastReleaseNotesSeen === "1.30.
|
|
376499
|
+
if (currentConfig.lastReleaseNotesSeen === "1.30.5") {
|
|
376404
376500
|
return;
|
|
376405
376501
|
}
|
|
376406
376502
|
saveGlobalConfig(_temp326);
|
|
@@ -377085,12 +377181,12 @@ function LogoV2() {
|
|
|
377085
377181
|
return t41;
|
|
377086
377182
|
}
|
|
377087
377183
|
function _temp326(current) {
|
|
377088
|
-
if (current.lastReleaseNotesSeen === "1.30.
|
|
377184
|
+
if (current.lastReleaseNotesSeen === "1.30.5") {
|
|
377089
377185
|
return current;
|
|
377090
377186
|
}
|
|
377091
377187
|
return {
|
|
377092
377188
|
...current,
|
|
377093
|
-
lastReleaseNotesSeen: "1.30.
|
|
377189
|
+
lastReleaseNotesSeen: "1.30.5"
|
|
377094
377190
|
};
|
|
377095
377191
|
}
|
|
377096
377192
|
function _temp243(s_0) {
|
|
@@ -592805,7 +592901,7 @@ async function captureMemoryDiagnostics(trigger2, dumpNumber = 0) {
|
|
|
592805
592901
|
smapsRollup,
|
|
592806
592902
|
platform: process.platform,
|
|
592807
592903
|
nodeVersion: process.version,
|
|
592808
|
-
ccVersion: "1.30.
|
|
592904
|
+
ccVersion: "1.30.5"
|
|
592809
592905
|
};
|
|
592810
592906
|
}
|
|
592811
592907
|
async function performHeapDump(trigger2 = "manual", dumpNumber = 0) {
|
|
@@ -593391,7 +593487,7 @@ var init_bridge_kick = __esm(() => {
|
|
|
593391
593487
|
var call136 = async () => {
|
|
593392
593488
|
return {
|
|
593393
593489
|
type: "text",
|
|
593394
|
-
value: "1.30.
|
|
593490
|
+
value: "1.30.5"
|
|
593395
593491
|
};
|
|
593396
593492
|
}, version2, version_default;
|
|
593397
593493
|
var init_version = __esm(() => {
|
|
@@ -596270,6 +596366,7 @@ function ProviderFirstModelPicker({
|
|
|
596270
596366
|
const [selectedProvider, setSelectedProvider] = import_react188.useState(null);
|
|
596271
596367
|
const [modelSource, setModelSource] = import_react188.useState("static");
|
|
596272
596368
|
const [modelWarning, setModelWarning] = import_react188.useState(null);
|
|
596369
|
+
const [providerWarning, setProviderWarning] = import_react188.useState(null);
|
|
596273
596370
|
const effortValue = useAppState(selectEffortValue2);
|
|
596274
596371
|
const [effort] = import_react188.useState(effortValue !== undefined ? convertEffortValueToLevel(effortValue) : undefined);
|
|
596275
596372
|
const appThinkingEnabled = useAppState(selectThinkingEnabled2);
|
|
@@ -596288,11 +596385,12 @@ function ProviderFirstModelPicker({
|
|
|
596288
596385
|
return {
|
|
596289
596386
|
value: provider.id,
|
|
596290
596387
|
label: provider.displayName,
|
|
596291
|
-
description: `${accessType} \xB7 ${status2.label}`,
|
|
596388
|
+
description: `${accessType} \xB7 ${provider.credentialType} \xB7 ${provider.runtimeKind === "external-app" ? "external app bridge" : status2.label}`,
|
|
596292
596389
|
status: status2.status,
|
|
596293
596390
|
statusLabel: status2.label,
|
|
596294
596391
|
accessType,
|
|
596295
596392
|
credentialType: provider.credentialType,
|
|
596393
|
+
runtimeBlockedReason: getProviderRuntimeBlockReason(provider.id),
|
|
596296
596394
|
provider
|
|
596297
596395
|
};
|
|
596298
596396
|
}));
|
|
@@ -596341,6 +596439,7 @@ function ProviderFirstModelPicker({
|
|
|
596341
596439
|
const focusedModel = modelOptions.find((m) => m.value === focusedModelValue);
|
|
596342
596440
|
function handleProviderFocus(value) {
|
|
596343
596441
|
setFocusedProviderValue(value);
|
|
596442
|
+
setProviderWarning(null);
|
|
596344
596443
|
}
|
|
596345
596444
|
function handleModelFocus(value) {
|
|
596346
596445
|
setFocusedModelValue(value);
|
|
@@ -596348,6 +596447,14 @@ function ProviderFirstModelPicker({
|
|
|
596348
596447
|
function handleProviderSelect(value) {
|
|
596349
596448
|
const provider = providerOptions.find((p2) => p2.value === value);
|
|
596350
596449
|
if (provider) {
|
|
596450
|
+
if (provider.runtimeBlockedReason) {
|
|
596451
|
+
setProviderWarning(provider.runtimeBlockedReason);
|
|
596452
|
+
return;
|
|
596453
|
+
}
|
|
596454
|
+
if (provider.status !== "connected") {
|
|
596455
|
+
setProviderWarning(`Provider "${provider.value}" is ${provider.status}: ${provider.statusLabel}. Run \`ur provider doctor ${provider.value}\`, or choose a connected API/local/server provider.`);
|
|
596456
|
+
return;
|
|
596457
|
+
}
|
|
596351
596458
|
setSelectedProvider(provider);
|
|
596352
596459
|
setStep("model");
|
|
596353
596460
|
setFocusedModelValue(null);
|
|
@@ -596510,6 +596617,14 @@ function ProviderFirstModelPicker({
|
|
|
596510
596617
|
dimColor: true,
|
|
596511
596618
|
children: focusedProvider.provider.accessPathLabel
|
|
596512
596619
|
}, undefined, false, undefined, this),
|
|
596620
|
+
/* @__PURE__ */ jsx_dev_runtime346.jsxDEV(ThemedText, {
|
|
596621
|
+
dimColor: true,
|
|
596622
|
+
color: focusedProvider.runtimeBlockedReason ? "error" : "subtle",
|
|
596623
|
+
children: [
|
|
596624
|
+
"Runtime: ",
|
|
596625
|
+
focusedProvider.provider.runtimeKind === "external-app" ? "external app bridge (disabled for independent UR runtime)" : "UR-native"
|
|
596626
|
+
]
|
|
596627
|
+
}, undefined, true, undefined, this),
|
|
596513
596628
|
focusedProvider.status !== "connected" && /* @__PURE__ */ jsx_dev_runtime346.jsxDEV(ThemedText, {
|
|
596514
596629
|
dimColor: true,
|
|
596515
596630
|
color: "subtle",
|
|
@@ -596518,7 +596633,12 @@ function ProviderFirstModelPicker({
|
|
|
596518
596633
|
focusedProvider.value,
|
|
596519
596634
|
"` for troubleshooting"
|
|
596520
596635
|
]
|
|
596521
|
-
}, undefined, true, undefined, this)
|
|
596636
|
+
}, undefined, true, undefined, this),
|
|
596637
|
+
providerWarning && focusedProvider.value === focusedProviderValue && /* @__PURE__ */ jsx_dev_runtime346.jsxDEV(ThemedText, {
|
|
596638
|
+
dimColor: true,
|
|
596639
|
+
color: "error",
|
|
596640
|
+
children: providerWarning
|
|
596641
|
+
}, undefined, false, undefined, this)
|
|
596522
596642
|
]
|
|
596523
596643
|
}, undefined, true, undefined, this)
|
|
596524
596644
|
]
|
|
@@ -597079,11 +597199,12 @@ function ProviderPicker({
|
|
|
597079
597199
|
const selectOptions = providers.map((provider) => ({
|
|
597080
597200
|
value: provider.id,
|
|
597081
597201
|
label: provider.displayName,
|
|
597082
|
-
description: `${getProviderAccessTypeLabel(provider)} \xB7 ${provider.credentialType}`
|
|
597202
|
+
description: `${getProviderAccessTypeLabel(provider)} \xB7 ${provider.credentialType} \xB7 ${provider.runtimeKind === "external-app" ? "external app bridge" : "UR-native"}`
|
|
597083
597203
|
}));
|
|
597084
597204
|
const visibleCount = Math.min(10, selectOptions.length);
|
|
597085
597205
|
const hiddenCount = Math.max(0, selectOptions.length - visibleCount);
|
|
597086
597206
|
const focusedProvider = providers.find((p2) => p2.id === focusedValue);
|
|
597207
|
+
const focusedBlockReason = focusedProvider ? getProviderRuntimeBlockReason(focusedProvider.id) : null;
|
|
597087
597208
|
function handleFocus(value) {
|
|
597088
597209
|
setFocusedValue(value);
|
|
597089
597210
|
}
|
|
@@ -597093,6 +597214,10 @@ function ProviderPicker({
|
|
|
597093
597214
|
from_provider: currentProvider,
|
|
597094
597215
|
to_provider: value
|
|
597095
597216
|
});
|
|
597217
|
+
const runtimeBlock = getProviderRuntimeBlockReason(value);
|
|
597218
|
+
if (runtimeBlock) {
|
|
597219
|
+
return;
|
|
597220
|
+
}
|
|
597096
597221
|
const result = setSafeProviderConfig("provider", value);
|
|
597097
597222
|
if (!result.ok) {
|
|
597098
597223
|
return;
|
|
@@ -597161,21 +597286,28 @@ function ProviderPicker({
|
|
|
597161
597286
|
/* @__PURE__ */ jsx_dev_runtime348.jsxDEV(ThemedBox_default, {
|
|
597162
597287
|
marginBottom: 1,
|
|
597163
597288
|
flexDirection: "column",
|
|
597164
|
-
children:
|
|
597165
|
-
|
|
597166
|
-
|
|
597167
|
-
|
|
597168
|
-
|
|
597169
|
-
|
|
597170
|
-
|
|
597171
|
-
|
|
597172
|
-
|
|
597173
|
-
|
|
597174
|
-
|
|
597175
|
-
|
|
597176
|
-
|
|
597177
|
-
|
|
597178
|
-
|
|
597289
|
+
children: [
|
|
597290
|
+
focusedProvider && /* @__PURE__ */ jsx_dev_runtime348.jsxDEV(ThemedText, {
|
|
597291
|
+
dimColor: true,
|
|
597292
|
+
children: [
|
|
597293
|
+
focusedProvider.displayName,
|
|
597294
|
+
" (",
|
|
597295
|
+
focusedProvider.id,
|
|
597296
|
+
") \xB7",
|
|
597297
|
+
" ",
|
|
597298
|
+
getProviderAccessTypeLabel(focusedProvider),
|
|
597299
|
+
" \xB7",
|
|
597300
|
+
" ",
|
|
597301
|
+
focusedProvider.accessPathLabel
|
|
597302
|
+
]
|
|
597303
|
+
}, undefined, true, undefined, this),
|
|
597304
|
+
focusedBlockReason && /* @__PURE__ */ jsx_dev_runtime348.jsxDEV(ThemedText, {
|
|
597305
|
+
dimColor: true,
|
|
597306
|
+
color: "error",
|
|
597307
|
+
children: focusedBlockReason
|
|
597308
|
+
}, undefined, false, undefined, this)
|
|
597309
|
+
]
|
|
597310
|
+
}, undefined, true, undefined, this)
|
|
597179
597311
|
]
|
|
597180
597312
|
}, undefined, true, undefined, this),
|
|
597181
597313
|
isStandaloneCommand && /* @__PURE__ */ jsx_dev_runtime348.jsxDEV(ThemedText, {
|
|
@@ -603308,7 +603440,7 @@ function generateHtmlReport(data, insights) {
|
|
|
603308
603440
|
</html>`;
|
|
603309
603441
|
}
|
|
603310
603442
|
function buildExportData(data, insights, facets, remoteStats) {
|
|
603311
|
-
const version3 = typeof MACRO !== "undefined" ? "1.30.
|
|
603443
|
+
const version3 = typeof MACRO !== "undefined" ? "1.30.5" : "unknown";
|
|
603312
603444
|
const remote_hosts_collected = remoteStats?.hosts.filter((h2) => h2.sessionCount > 0).map((h2) => h2.name);
|
|
603313
603445
|
const facets_summary = {
|
|
603314
603446
|
total: facets.size,
|
|
@@ -607586,7 +607718,7 @@ var init_sessionStorage = __esm(() => {
|
|
|
607586
607718
|
init_settings2();
|
|
607587
607719
|
init_slowOperations();
|
|
607588
607720
|
init_uuid();
|
|
607589
|
-
VERSION5 = typeof MACRO !== "undefined" ? "1.30.
|
|
607721
|
+
VERSION5 = typeof MACRO !== "undefined" ? "1.30.5" : "unknown";
|
|
607590
607722
|
MAX_TOMBSTONE_REWRITE_BYTES = 50 * 1024 * 1024;
|
|
607591
607723
|
SKIP_FIRST_PROMPT_PATTERN = /^(?:\s*<[a-z][\w-]*[\s>]|\[Request interrupted by user[^\]]*\])/;
|
|
607592
607724
|
EPHEMERAL_PROGRESS_TYPES = new Set([
|
|
@@ -608791,7 +608923,7 @@ var init_filesystem = __esm(() => {
|
|
|
608791
608923
|
});
|
|
608792
608924
|
getBundledSkillsRoot = memoize_default(function getBundledSkillsRoot2() {
|
|
608793
608925
|
const nonce = randomBytes18(16).toString("hex");
|
|
608794
|
-
return join200(getURTempDir(), "bundled-skills", "1.30.
|
|
608926
|
+
return join200(getURTempDir(), "bundled-skills", "1.30.5", nonce);
|
|
608795
608927
|
});
|
|
608796
608928
|
getResolvedWorkingDirPaths = memoize_default(getPathsForPermissionCheck);
|
|
608797
608929
|
});
|
|
@@ -615088,7 +615220,7 @@ function computeFingerprint(messageText2, version3) {
|
|
|
615088
615220
|
}
|
|
615089
615221
|
function computeFingerprintFromMessages(messages) {
|
|
615090
615222
|
const firstMessageText = extractFirstMessageText(messages);
|
|
615091
|
-
return computeFingerprint(firstMessageText, "1.30.
|
|
615223
|
+
return computeFingerprint(firstMessageText, "1.30.5");
|
|
615092
615224
|
}
|
|
615093
615225
|
var FINGERPRINT_SALT = "59cf53e54c78";
|
|
615094
615226
|
var init_fingerprint = () => {};
|
|
@@ -616955,7 +617087,7 @@ async function sideQuery(opts) {
|
|
|
616955
617087
|
betas.push(STRUCTURED_OUTPUTS_BETA_HEADER);
|
|
616956
617088
|
}
|
|
616957
617089
|
const messageText2 = extractFirstUserMessageText(messages);
|
|
616958
|
-
const fingerprint = computeFingerprint(messageText2, "1.30.
|
|
617090
|
+
const fingerprint = computeFingerprint(messageText2, "1.30.5");
|
|
616959
617091
|
const attributionHeader = getAttributionHeader(fingerprint);
|
|
616960
617092
|
const systemBlocks = [
|
|
616961
617093
|
attributionHeader ? { type: "text", text: attributionHeader } : null,
|
|
@@ -621692,7 +621824,7 @@ function buildSystemInitMessage(inputs) {
|
|
|
621692
621824
|
slash_commands: inputs.commands.filter((c4) => c4.userInvocable !== false).map((c4) => c4.name),
|
|
621693
621825
|
apiKeySource: getURHQApiKeyWithSource().source,
|
|
621694
621826
|
betas: getSdkBetas(),
|
|
621695
|
-
ur_version: "1.30.
|
|
621827
|
+
ur_version: "1.30.5",
|
|
621696
621828
|
output_style: outputStyle2,
|
|
621697
621829
|
agents: inputs.agents.map((agent) => agent.agentType),
|
|
621698
621830
|
skills: inputs.skills.filter((s) => s.userInvocable !== false).map((skill2) => skill2.name),
|
|
@@ -636320,7 +636452,7 @@ var init_useVoiceEnabled = __esm(() => {
|
|
|
636320
636452
|
function getSemverPart(version3) {
|
|
636321
636453
|
return `${import_semver13.major(version3, { loose: true })}.${import_semver13.minor(version3, { loose: true })}.${import_semver13.patch(version3, { loose: true })}`;
|
|
636322
636454
|
}
|
|
636323
|
-
function useUpdateNotification(updatedVersion, initialVersion = "1.30.
|
|
636455
|
+
function useUpdateNotification(updatedVersion, initialVersion = "1.30.5") {
|
|
636324
636456
|
const [lastNotifiedSemver, setLastNotifiedSemver] = import_react226.useState(() => getSemverPart(initialVersion));
|
|
636325
636457
|
if (!updatedVersion) {
|
|
636326
636458
|
return null;
|
|
@@ -636369,7 +636501,7 @@ function AutoUpdater({
|
|
|
636369
636501
|
return;
|
|
636370
636502
|
}
|
|
636371
636503
|
if (false) {}
|
|
636372
|
-
const currentVersion = "1.30.
|
|
636504
|
+
const currentVersion = "1.30.5";
|
|
636373
636505
|
const channel = getInitialSettings()?.autoUpdatesChannel ?? "latest";
|
|
636374
636506
|
let latestVersion = await getLatestVersion(channel);
|
|
636375
636507
|
const isDisabled = isAutoUpdaterDisabled();
|
|
@@ -636598,12 +636730,12 @@ function NativeAutoUpdater({
|
|
|
636598
636730
|
logEvent("tengu_native_auto_updater_start", {});
|
|
636599
636731
|
try {
|
|
636600
636732
|
const maxVersion = await getMaxVersion();
|
|
636601
|
-
if (maxVersion && gt("1.30.
|
|
636733
|
+
if (maxVersion && gt("1.30.5", maxVersion)) {
|
|
636602
636734
|
const msg = await getMaxVersionMessage();
|
|
636603
636735
|
setMaxVersionIssue(msg ?? "affects your version");
|
|
636604
636736
|
}
|
|
636605
636737
|
const result = await installLatest(channel);
|
|
636606
|
-
const currentVersion = "1.30.
|
|
636738
|
+
const currentVersion = "1.30.5";
|
|
636607
636739
|
const latencyMs = Date.now() - startTime;
|
|
636608
636740
|
if (result.lockFailed) {
|
|
636609
636741
|
logEvent("tengu_native_auto_updater_lock_contention", {
|
|
@@ -636740,17 +636872,17 @@ function PackageManagerAutoUpdater(t0) {
|
|
|
636740
636872
|
const maxVersion = await getMaxVersion();
|
|
636741
636873
|
if (maxVersion && latest && gt(latest, maxVersion)) {
|
|
636742
636874
|
logForDebugging(`PackageManagerAutoUpdater: maxVersion ${maxVersion} is set, capping update from ${latest} to ${maxVersion}`);
|
|
636743
|
-
if (gte("1.30.
|
|
636744
|
-
logForDebugging(`PackageManagerAutoUpdater: current version ${"1.30.
|
|
636875
|
+
if (gte("1.30.5", maxVersion)) {
|
|
636876
|
+
logForDebugging(`PackageManagerAutoUpdater: current version ${"1.30.5"} is already at or above maxVersion ${maxVersion}, skipping update`);
|
|
636745
636877
|
setUpdateAvailable(false);
|
|
636746
636878
|
return;
|
|
636747
636879
|
}
|
|
636748
636880
|
latest = maxVersion;
|
|
636749
636881
|
}
|
|
636750
|
-
const hasUpdate = latest && !gte("1.30.
|
|
636882
|
+
const hasUpdate = latest && !gte("1.30.5", latest) && !shouldSkipVersion(latest);
|
|
636751
636883
|
setUpdateAvailable(!!hasUpdate);
|
|
636752
636884
|
if (hasUpdate) {
|
|
636753
|
-
logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.30.
|
|
636885
|
+
logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.30.5"} -> ${latest}`);
|
|
636754
636886
|
}
|
|
636755
636887
|
};
|
|
636756
636888
|
$3[0] = t1;
|
|
@@ -636784,7 +636916,7 @@ function PackageManagerAutoUpdater(t0) {
|
|
|
636784
636916
|
wrap: "truncate",
|
|
636785
636917
|
children: [
|
|
636786
636918
|
"currentVersion: ",
|
|
636787
|
-
"1.30.
|
|
636919
|
+
"1.30.5"
|
|
636788
636920
|
]
|
|
636789
636921
|
}, undefined, true, undefined, this);
|
|
636790
636922
|
$3[3] = verbose;
|
|
@@ -649120,7 +649252,6 @@ function statusBarShouldDisplay({
|
|
|
649120
649252
|
function buildDefaultStatusBar({
|
|
649121
649253
|
version: version3,
|
|
649122
649254
|
providerLabel,
|
|
649123
|
-
authMode,
|
|
649124
649255
|
model,
|
|
649125
649256
|
mode: mode2,
|
|
649126
649257
|
branch: branch2,
|
|
@@ -649130,36 +649261,31 @@ function buildDefaultStatusBar({
|
|
|
649130
649261
|
latestVersion,
|
|
649131
649262
|
isCheckingUpdate
|
|
649132
649263
|
}) {
|
|
649133
|
-
const parts = [
|
|
649264
|
+
const parts = [];
|
|
649134
649265
|
if (providerLabel) {
|
|
649135
|
-
parts.push(
|
|
649136
|
-
}
|
|
649137
|
-
if (authMode) {
|
|
649138
|
-
parts.push(`Auth: ${authMode}`);
|
|
649266
|
+
parts.push(providerLabel);
|
|
649139
649267
|
}
|
|
649140
649268
|
if (model) {
|
|
649141
|
-
parts.push(
|
|
649269
|
+
parts.push(model);
|
|
649142
649270
|
}
|
|
649143
649271
|
if (mode2) {
|
|
649144
|
-
parts.push(
|
|
649272
|
+
parts.push(mode2);
|
|
649145
649273
|
}
|
|
649146
649274
|
if (branch2 && branch2 !== "HEAD") {
|
|
649147
|
-
parts.push(
|
|
649275
|
+
parts.push(branch2);
|
|
649148
649276
|
}
|
|
649149
649277
|
if (taskTotalCount > 0) {
|
|
649150
649278
|
parts.push(`tasks: ${taskRunningCount}/${taskTotalCount} running`);
|
|
649151
|
-
} else {
|
|
649152
|
-
parts.push("tasks: idle");
|
|
649153
649279
|
}
|
|
649154
649280
|
if (checksStatus) {
|
|
649155
|
-
parts.push(
|
|
649281
|
+
parts.push(checksStatus);
|
|
649156
649282
|
}
|
|
649157
649283
|
if (isCheckingUpdate) {
|
|
649158
|
-
parts.push("
|
|
649284
|
+
parts.push("update checking");
|
|
649159
649285
|
} else if (isUpdateAvailable(version3, latestVersion)) {
|
|
649160
|
-
parts.push(`
|
|
649286
|
+
parts.push(`update ${latestVersion} available`);
|
|
649161
649287
|
}
|
|
649162
|
-
return parts.join(" | ");
|
|
649288
|
+
return parts.length > 0 ? parts.join(" | ") : "ready";
|
|
649163
649289
|
}
|
|
649164
649290
|
var init_statusBar = __esm(() => {
|
|
649165
649291
|
init_updateNotice();
|
|
@@ -649241,7 +649367,7 @@ function buildStatusLineCommandInput(permissionMode, exceeds200kTokens, settings
|
|
|
649241
649367
|
project_dir: getOriginalCwd(),
|
|
649242
649368
|
added_dirs: addedDirs
|
|
649243
649369
|
},
|
|
649244
|
-
version: "1.30.
|
|
649370
|
+
version: "1.30.5",
|
|
649245
649371
|
output_style: {
|
|
649246
649372
|
name: outputStyleName
|
|
649247
649373
|
},
|
|
@@ -649324,7 +649450,7 @@ function StatusLineInner({
|
|
|
649324
649450
|
const taskValues = Object.values(tasks2);
|
|
649325
649451
|
const taskRunningCount = taskValues.filter((task2) => task2.status === "running" || task2.status === "pending").length;
|
|
649326
649452
|
const defaultStatusLineText = buildDefaultStatusBar({
|
|
649327
|
-
version: "1.30.
|
|
649453
|
+
version: "1.30.5",
|
|
649328
649454
|
providerLabel: providerRuntime.providerLabel,
|
|
649329
649455
|
authMode: providerRuntime.authLabel,
|
|
649330
649456
|
model: providerRuntime.model ?? renderModelName(mainLoopModel),
|
|
@@ -660812,7 +660938,7 @@ async function submitTranscriptShare(messages, trigger2, appearanceId) {
|
|
|
660812
660938
|
} catch {}
|
|
660813
660939
|
const data = {
|
|
660814
660940
|
trigger: trigger2,
|
|
660815
|
-
version: "1.30.
|
|
660941
|
+
version: "1.30.5",
|
|
660816
660942
|
platform: process.platform,
|
|
660817
660943
|
transcript,
|
|
660818
660944
|
subagentTranscripts: Object.keys(subagentTranscripts).length > 0 ? subagentTranscripts : undefined,
|
|
@@ -672696,7 +672822,7 @@ function WelcomeV2() {
|
|
|
672696
672822
|
dimColor: true,
|
|
672697
672823
|
children: [
|
|
672698
672824
|
"v",
|
|
672699
|
-
"1.30.
|
|
672825
|
+
"1.30.5"
|
|
672700
672826
|
]
|
|
672701
672827
|
}, undefined, true, undefined, this)
|
|
672702
672828
|
]
|
|
@@ -673956,7 +674082,7 @@ function completeOnboarding() {
|
|
|
673956
674082
|
saveGlobalConfig((current) => ({
|
|
673957
674083
|
...current,
|
|
673958
674084
|
hasCompletedOnboarding: true,
|
|
673959
|
-
lastOnboardingVersion: "1.30.
|
|
674085
|
+
lastOnboardingVersion: "1.30.5"
|
|
673960
674086
|
}));
|
|
673961
674087
|
}
|
|
673962
674088
|
function showDialog(root2, renderer) {
|
|
@@ -679060,7 +679186,7 @@ function appendToLog(path24, message) {
|
|
|
679060
679186
|
cwd: getFsImplementation().cwd(),
|
|
679061
679187
|
userType: process.env.USER_TYPE,
|
|
679062
679188
|
sessionId: getSessionId(),
|
|
679063
|
-
version: "1.30.
|
|
679189
|
+
version: "1.30.5"
|
|
679064
679190
|
};
|
|
679065
679191
|
getLogWriter(path24).write(messageWithTimestamp);
|
|
679066
679192
|
}
|
|
@@ -683154,8 +683280,8 @@ async function getEnvLessBridgeConfig() {
|
|
|
683154
683280
|
}
|
|
683155
683281
|
async function checkEnvLessBridgeMinVersion() {
|
|
683156
683282
|
const cfg = await getEnvLessBridgeConfig();
|
|
683157
|
-
if (cfg.min_version && lt("1.30.
|
|
683158
|
-
return `Your version of UR (${"1.30.
|
|
683283
|
+
if (cfg.min_version && lt("1.30.5", cfg.min_version)) {
|
|
683284
|
+
return `Your version of UR (${"1.30.5"}) is too old for Remote Control.
|
|
683159
683285
|
Version ${cfg.min_version} or higher is required. Run \`ur update\` to update.`;
|
|
683160
683286
|
}
|
|
683161
683287
|
return null;
|
|
@@ -683629,7 +683755,7 @@ async function initBridgeCore(params) {
|
|
|
683629
683755
|
const rawApi = createBridgeApiClient({
|
|
683630
683756
|
baseUrl,
|
|
683631
683757
|
getAccessToken,
|
|
683632
|
-
runnerVersion: "1.30.
|
|
683758
|
+
runnerVersion: "1.30.5",
|
|
683633
683759
|
onDebug: logForDebugging,
|
|
683634
683760
|
onAuth401,
|
|
683635
683761
|
getTrustedDeviceToken
|
|
@@ -689311,7 +689437,7 @@ async function startMCPServer(cwd3, debug2, verbose) {
|
|
|
689311
689437
|
setCwd(cwd3);
|
|
689312
689438
|
const server2 = new Server({
|
|
689313
689439
|
name: "ur/tengu",
|
|
689314
|
-
version: "1.30.
|
|
689440
|
+
version: "1.30.5"
|
|
689315
689441
|
}, {
|
|
689316
689442
|
capabilities: {
|
|
689317
689443
|
tools: {}
|
|
@@ -691288,7 +691414,7 @@ async function update() {
|
|
|
691288
691414
|
logEvent("tengu_update_check", {});
|
|
691289
691415
|
const diagnostic = await getDoctorDiagnostic();
|
|
691290
691416
|
const result = await checkUpgradeStatus({
|
|
691291
|
-
currentVersion: "1.30.
|
|
691417
|
+
currentVersion: "1.30.5",
|
|
691292
691418
|
packageName: UR_AGENT_PACKAGE_NAME,
|
|
691293
691419
|
installationType: diagnostic.installationType,
|
|
691294
691420
|
latestVersion: () => getLatestNpmPackageVersion(UR_AGENT_PACKAGE_NAME)
|
|
@@ -692534,7 +692660,7 @@ ${customInstructions}` : customInstructions;
|
|
|
692534
692660
|
}
|
|
692535
692661
|
}
|
|
692536
692662
|
logForDiagnosticsNoPII("info", "started", {
|
|
692537
|
-
version: "1.30.
|
|
692663
|
+
version: "1.30.5",
|
|
692538
692664
|
is_native_binary: isInBundledMode()
|
|
692539
692665
|
});
|
|
692540
692666
|
registerCleanup(async () => {
|
|
@@ -693320,7 +693446,7 @@ Usage: ur --remote "your task description"`, () => gracefulShutdown(1));
|
|
|
693320
693446
|
pendingHookMessages
|
|
693321
693447
|
}, renderAndRun);
|
|
693322
693448
|
}
|
|
693323
|
-
}).version("1.30.
|
|
693449
|
+
}).version("1.30.5 (UR-AGENT)", "-v, --version", "Output the version number");
|
|
693324
693450
|
program2.option("-w, --worktree [name]", "Create a new git worktree for this session (optionally specify a name)");
|
|
693325
693451
|
program2.option("--tmux", "Create a tmux session for the worktree (requires --worktree). Uses iTerm2 native panes when available; use --tmux=classic for traditional tmux.");
|
|
693326
693452
|
if (canUserConfigureAdvisor()) {
|
|
@@ -694205,7 +694331,7 @@ if (false) {}
|
|
|
694205
694331
|
async function main2() {
|
|
694206
694332
|
const args = process.argv.slice(2);
|
|
694207
694333
|
if (args.length === 1 && (args[0] === "--version" || args[0] === "-v" || args[0] === "-V")) {
|
|
694208
|
-
console.log(`${"1.30.
|
|
694334
|
+
console.log(`${"1.30.5"} (UR-AGENT)`);
|
|
694209
694335
|
return;
|
|
694210
694336
|
}
|
|
694211
694337
|
if (args[0] === "a2a" && args[1] === "serve" && !args.includes("--help") && !args.includes("-h")) {
|