@rayu-dev/rayu-cli 1.4.469 → 1.4.471
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/README.md +3 -3
- package/dist/rayu.js +206 -163
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -5,9 +5,9 @@ to any provider — Anthropic, OpenAI, NVIDIA, DeepSeek, Kimi/Moonshot, OpenRout
|
|
|
5
5
|
Google Gemini, AWS Bedrock, local servers, or any OpenAI-compatible endpoint —
|
|
6
6
|
with free model switching, full MCP support, and a complete built-in tool suite.
|
|
7
7
|
|
|
8
|
-
**Website:** https://
|
|
9
|
-
**Docs:** https://
|
|
10
|
-
**Changelog:** https://
|
|
8
|
+
**Website:** https://rayucode.com
|
|
9
|
+
**Docs:** https://rayucode.com/docs
|
|
10
|
+
**Changelog:** https://rayucode.com/changelog
|
|
11
11
|
|
|
12
12
|
---
|
|
13
13
|
|
package/dist/rayu.js
CHANGED
|
@@ -79606,7 +79606,7 @@ function getValidationTip(context) {
|
|
|
79606
79606
|
}
|
|
79607
79607
|
return tip;
|
|
79608
79608
|
}
|
|
79609
|
-
var DOCUMENTATION_BASE = "https://
|
|
79609
|
+
var DOCUMENTATION_BASE = "https://rayucode.com/docs", TIP_MATCHERS, PATH_DOC_LINKS;
|
|
79610
79610
|
var init_validationTips = __esm(() => {
|
|
79611
79611
|
TIP_MATCHERS = [
|
|
79612
79612
|
{
|
|
@@ -82334,7 +82334,7 @@ function createDefaultGlobalConfig() {
|
|
|
82334
82334
|
showExpandedTodos: false,
|
|
82335
82335
|
messageIdleNotifThresholdMs: 60000,
|
|
82336
82336
|
autoConnectIde: false,
|
|
82337
|
-
autoInstallIdeExtension:
|
|
82337
|
+
autoInstallIdeExtension: false,
|
|
82338
82338
|
fileCheckpointingEnabled: true,
|
|
82339
82339
|
terminalProgressBarEnabled: true,
|
|
82340
82340
|
cachedStatsigGates: {},
|
|
@@ -82930,7 +82930,7 @@ function getAutoUpdaterDisabledReason() {
|
|
|
82930
82930
|
return { type: "env", envVar: essentialTrafficEnvVar };
|
|
82931
82931
|
}
|
|
82932
82932
|
const config2 = getGlobalConfig();
|
|
82933
|
-
if (config2.autoUpdates
|
|
82933
|
+
if (config2.autoUpdates !== true && (config2.installMethod !== "native" || config2.autoUpdatesProtectedForNative !== true)) {
|
|
82934
82934
|
return { type: "config" };
|
|
82935
82935
|
}
|
|
82936
82936
|
return null;
|
|
@@ -148979,7 +148979,7 @@ var init_isEqual = __esm(() => {
|
|
|
148979
148979
|
|
|
148980
148980
|
// src/utils/userAgent.ts
|
|
148981
148981
|
function getRayuUserAgent() {
|
|
148982
|
-
return `rayu/${"1.4.
|
|
148982
|
+
return `rayu/${"1.4.471"}`;
|
|
148983
148983
|
}
|
|
148984
148984
|
var getClaudeCodeUserAgent;
|
|
148985
148985
|
var init_userAgent = __esm(() => {
|
|
@@ -149005,7 +149005,7 @@ function getUserAgent() {
|
|
|
149005
149005
|
const clientApp = process.env.RAYU_AGENT_SDK_CLIENT_APP ? `, client-app/${process.env.RAYU_AGENT_SDK_CLIENT_APP}` : "";
|
|
149006
149006
|
const workload = getWorkload();
|
|
149007
149007
|
const workloadSuffix = workload ? `, workload/${workload}` : "";
|
|
149008
|
-
return `rayu/${"1.4.
|
|
149008
|
+
return `rayu/${"1.4.471"} (${"external"}, ${process.env.RAYU_ENTRYPOINT ?? "cli"}${agentSdkVersion}${clientApp}${workloadSuffix})`;
|
|
149009
149009
|
}
|
|
149010
149010
|
function getMCPUserAgent() {
|
|
149011
149011
|
const parts = [];
|
|
@@ -149019,7 +149019,7 @@ function getMCPUserAgent() {
|
|
|
149019
149019
|
parts.push(`client-app/${process.env.RAYU_AGENT_SDK_CLIENT_APP}`);
|
|
149020
149020
|
}
|
|
149021
149021
|
const suffix = parts.length > 0 ? ` (${parts.join(", ")})` : "";
|
|
149022
|
-
return `rayu/${"1.4.
|
|
149022
|
+
return `rayu/${"1.4.471"}${suffix}`;
|
|
149023
149023
|
}
|
|
149024
149024
|
function getWebFetchUserAgent() {
|
|
149025
149025
|
return `Rayu-User (${getRayuUserAgent()})`;
|
|
@@ -157998,22 +157998,13 @@ function makeRayuHostedFetch() {
|
|
|
157998
157998
|
const inner = globalThis.fetch;
|
|
157999
157999
|
const wrapped = async (input, init = {}) => {
|
|
158000
158000
|
const url3 = typeof input === "string" ? input : input instanceof URL ? input.toString() : input.url;
|
|
158001
|
-
if ((init?.method ?? "GET").toUpperCase() === "POST" && (url3.includes("/chat/completions") || url3.includes("/v1/messages"))
|
|
158002
|
-
const
|
|
158003
|
-
|
|
158004
|
-
|
|
158005
|
-
|
|
158006
|
-
|
|
158007
|
-
}
|
|
158008
|
-
})();
|
|
158009
|
-
if (model) {
|
|
158010
|
-
const { isHostedModelEntitled, hostedModelUpgradeMessage } = await Promise.resolve().then(() => (init_rayuEntitlements(), exports_rayuEntitlements));
|
|
158011
|
-
if (!isHostedModelEntitled(model)) {
|
|
158012
|
-
const message = hostedModelUpgradeMessage();
|
|
158013
|
-
return new Response(JSON.stringify({
|
|
158014
|
-
error: { message, type: "upgrade_required", code: "plan_upgrade_required" }
|
|
158015
|
-
}), { status: 403, headers: { "content-type": "application/json" } });
|
|
158016
|
-
}
|
|
158001
|
+
if ((init?.method ?? "GET").toUpperCase() === "POST" && (url3.includes("/chat/completions") || url3.includes("/v1/messages"))) {
|
|
158002
|
+
const { hasHostedModelAccess, hostedModelUpgradeMessage } = await Promise.resolve().then(() => (init_rayuEntitlements(), exports_rayuEntitlements));
|
|
158003
|
+
if (!hasHostedModelAccess()) {
|
|
158004
|
+
const message = hostedModelUpgradeMessage();
|
|
158005
|
+
return new Response(JSON.stringify({
|
|
158006
|
+
error: { message, type: "upgrade_required", code: "plan_upgrade_required" }
|
|
158007
|
+
}), { status: 403, headers: { "content-type": "application/json" } });
|
|
158017
158008
|
}
|
|
158018
158009
|
}
|
|
158019
158010
|
const token = await getValidRayuAccessToken();
|
|
@@ -158083,6 +158074,7 @@ __export(exports_rayuEntitlements, {
|
|
|
158083
158074
|
rayuFeatureAllowed: () => rayuFeatureAllowed,
|
|
158084
158075
|
isHostedModelEntitled: () => isHostedModelEntitled,
|
|
158085
158076
|
hostedModelUpgradeMessage: () => hostedModelUpgradeMessage,
|
|
158077
|
+
hasHostedModelAccess: () => hasHostedModelAccess,
|
|
158086
158078
|
getCachedEntitlements: () => getCachedEntitlements,
|
|
158087
158079
|
clearRayuEntitlements: () => clearRayuEntitlements,
|
|
158088
158080
|
_setRayuEntitlementsForTesting: () => _setRayuEntitlementsForTesting,
|
|
@@ -158189,6 +158181,14 @@ function isHostedModelEntitled(modelCode) {
|
|
|
158189
158181
|
const allowed = ent.allowedModels ?? [];
|
|
158190
158182
|
return allowed.some((m2) => m2.code === modelCode);
|
|
158191
158183
|
}
|
|
158184
|
+
function hasHostedModelAccess() {
|
|
158185
|
+
if (!isUseRayuOAuthEnabled())
|
|
158186
|
+
return true;
|
|
158187
|
+
const ent = getCachedEntitlements();
|
|
158188
|
+
if (!ent)
|
|
158189
|
+
return true;
|
|
158190
|
+
return (ent.allowedModels ?? []).length > 0;
|
|
158191
|
+
}
|
|
158192
158192
|
function hostedModelUpgradeMessage() {
|
|
158193
158193
|
const url3 = `${getRayuWebBaseUrl()}/plans`;
|
|
158194
158194
|
return `\uD83D\uDD12 Rayu-hosted models are a paid feature. Please upgrade your plan to use them: ${url3}`;
|
|
@@ -205334,7 +205334,7 @@ function getAttributionHeader(fingerprint) {
|
|
|
205334
205334
|
if (!isAttributionHeaderEnabled()) {
|
|
205335
205335
|
return "";
|
|
205336
205336
|
}
|
|
205337
|
-
const version2 = `${"1.4.
|
|
205337
|
+
const version2 = `${"1.4.471"}.${fingerprint}`;
|
|
205338
205338
|
const entrypoint = process.env.CLAUDE_CODE_ENTRYPOINT ?? "unknown";
|
|
205339
205339
|
const cch = "";
|
|
205340
205340
|
const workload = getWorkload();
|
|
@@ -259303,7 +259303,7 @@ var init_metadata = __esm(() => {
|
|
|
259303
259303
|
COMPOUND_OPERATOR_REGEX = /\s*(?:&&|\|\||[;|])\s*/;
|
|
259304
259304
|
WHITESPACE_REGEX = /\s+/;
|
|
259305
259305
|
getVersionBase = memoize_default(() => {
|
|
259306
|
-
const match = "1.4.
|
|
259306
|
+
const match = "1.4.471".match(/^\d+\.\d+\.\d+(?:-[a-z]+)?/);
|
|
259307
259307
|
return match ? match[0] : undefined;
|
|
259308
259308
|
});
|
|
259309
259309
|
buildEnvContext = memoize_default(async () => {
|
|
@@ -259342,7 +259342,7 @@ var init_metadata = __esm(() => {
|
|
|
259342
259342
|
},
|
|
259343
259343
|
isGithubAction: isEnvTruthy(process.env.GITHUB_ACTIONS),
|
|
259344
259344
|
isRayuAction: isEnvTruthy(process.env.RAYU_ACTION),
|
|
259345
|
-
version: "1.4.
|
|
259345
|
+
version: "1.4.471",
|
|
259346
259346
|
versionBase: getVersionBase(),
|
|
259347
259347
|
buildTime: "",
|
|
259348
259348
|
deploymentEnvironment: env3.detectDeploymentEnvironment(),
|
|
@@ -269235,7 +269235,8 @@ var LITERAL_BACKSLASH = "\\", SNAPSHOT_CREATION_TIMEOUT = 1e4, VCS_DIRECTORIES_T
|
|
|
269235
269235
|
...process.env.CLAUDE_CODE_DONT_INHERIT_ENV ? {} : subprocessEnv(),
|
|
269236
269236
|
SHELL: binShell,
|
|
269237
269237
|
GIT_EDITOR: "true",
|
|
269238
|
-
CLAUDECODE: "1"
|
|
269238
|
+
CLAUDECODE: "1",
|
|
269239
|
+
AI_AGENT: "rayu"
|
|
269239
269240
|
},
|
|
269240
269241
|
timeout: SNAPSHOT_CREATION_TIMEOUT,
|
|
269241
269242
|
maxBuffer: 1024 * 1024,
|
|
@@ -269790,6 +269791,7 @@ async function exec3(command, abortSignal, shellType, options) {
|
|
|
269790
269791
|
SHELL: shellType === "bash" ? binShell : undefined,
|
|
269791
269792
|
GIT_EDITOR: "true",
|
|
269792
269793
|
CLAUDECODE: "1",
|
|
269794
|
+
AI_AGENT: "rayu",
|
|
269793
269795
|
...envOverrides,
|
|
269794
269796
|
...{}
|
|
269795
269797
|
},
|
|
@@ -291356,7 +291358,7 @@ function getTelemetryAttributes() {
|
|
|
291356
291358
|
attributes["session.id"] = sessionId;
|
|
291357
291359
|
}
|
|
291358
291360
|
if (shouldIncludeAttribute("OTEL_METRICS_INCLUDE_VERSION")) {
|
|
291359
|
-
attributes["app.version"] = "1.4.
|
|
291361
|
+
attributes["app.version"] = "1.4.471";
|
|
291360
291362
|
}
|
|
291361
291363
|
const oauthAccount = getOauthAccountInfo();
|
|
291362
291364
|
if (oauthAccount) {
|
|
@@ -401713,7 +401715,7 @@ function getInstallationEnv() {
|
|
|
401713
401715
|
return;
|
|
401714
401716
|
}
|
|
401715
401717
|
function getClaudeCodeVersion() {
|
|
401716
|
-
return "1.4.
|
|
401718
|
+
return "1.4.471";
|
|
401717
401719
|
}
|
|
401718
401720
|
async function getInstalledVSCodeExtensionVersion(command) {
|
|
401719
401721
|
const { stdout } = await execFileNoThrow(command, ["--list-extensions", "--show-versions"], {
|
|
@@ -401906,7 +401908,7 @@ async function closeOpenDiffs(ideClient) {
|
|
|
401906
401908
|
}
|
|
401907
401909
|
async function initializeIdeIntegration(onIdeDetected, ideToInstallExtension, onShowIdeOnboarding, onInstallationComplete) {
|
|
401908
401910
|
findAvailableIDE().then(onIdeDetected);
|
|
401909
|
-
const shouldAutoInstall = getGlobalConfig().autoInstallIdeExtension ??
|
|
401911
|
+
const shouldAutoInstall = getGlobalConfig().autoInstallIdeExtension ?? false;
|
|
401910
401912
|
if (!isEnvTruthy(process.env.CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL) && shouldAutoInstall) {
|
|
401911
401913
|
const ideType = ideToInstallExtension ?? getTerminalIdeType();
|
|
401912
401914
|
if (ideType) {
|
|
@@ -406951,7 +406953,7 @@ async function setupSdkMcpClients(sdkMcpConfigs, sendMcpMessage) {
|
|
|
406951
406953
|
const client3 = new Client({
|
|
406952
406954
|
name: "claude-code",
|
|
406953
406955
|
title: "RAYU",
|
|
406954
|
-
version: "1.4.
|
|
406956
|
+
version: "1.4.471",
|
|
406955
406957
|
description: "Anthropic's agentic coding tool",
|
|
406956
406958
|
websiteUrl: PRODUCT_URL
|
|
406957
406959
|
}, {
|
|
@@ -407268,7 +407270,7 @@ var init_client7 = __esm(() => {
|
|
|
407268
407270
|
const client3 = new Client({
|
|
407269
407271
|
name: "claude-code",
|
|
407270
407272
|
title: "RAYU",
|
|
407271
|
-
version: "1.4.
|
|
407273
|
+
version: "1.4.471",
|
|
407272
407274
|
description: "Anthropic's agentic coding tool",
|
|
407273
407275
|
websiteUrl: PRODUCT_URL
|
|
407274
407276
|
}, {
|
|
@@ -422087,7 +422089,7 @@ function computeFingerprint(messageText, version2) {
|
|
|
422087
422089
|
}
|
|
422088
422090
|
function computeFingerprintFromMessages(messages) {
|
|
422089
422091
|
const firstMessageText = extractFirstMessageText(messages);
|
|
422090
|
-
return computeFingerprint(firstMessageText, "1.4.
|
|
422092
|
+
return computeFingerprint(firstMessageText, "1.4.471");
|
|
422091
422093
|
}
|
|
422092
422094
|
var FINGERPRINT_SALT = "59cf53e54c78";
|
|
422093
422095
|
var init_fingerprint = () => {};
|
|
@@ -422129,7 +422131,7 @@ async function sideQuery(opts) {
|
|
|
422129
422131
|
betas.push(STRUCTURED_OUTPUTS_BETA_HEADER);
|
|
422130
422132
|
}
|
|
422131
422133
|
const messageText = extractFirstUserMessageText(messages);
|
|
422132
|
-
const fingerprint = computeFingerprint(messageText, "1.4.
|
|
422134
|
+
const fingerprint = computeFingerprint(messageText, "1.4.471");
|
|
422133
422135
|
const attributionHeader = getAttributionHeader(fingerprint);
|
|
422134
422136
|
const systemBlocks = [
|
|
422135
422137
|
attributionHeader ? { type: "text", text: attributionHeader } : null,
|
|
@@ -445513,7 +445515,11 @@ function buildInheritedCliFlags(options) {
|
|
|
445513
445515
|
return flags.join(" ");
|
|
445514
445516
|
}
|
|
445515
445517
|
function buildInheritedEnvVars() {
|
|
445516
|
-
const envVars = [
|
|
445518
|
+
const envVars = [
|
|
445519
|
+
"CLAUDECODE=1",
|
|
445520
|
+
"AI_AGENT=rayu",
|
|
445521
|
+
"CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1"
|
|
445522
|
+
];
|
|
445517
445523
|
for (const key2 of TEAMMATE_ENV_VARS) {
|
|
445518
445524
|
const value = process.env[key2];
|
|
445519
445525
|
if (value !== undefined && value !== "") {
|
|
@@ -521465,9 +521471,9 @@ async function assertMinVersion() {
|
|
|
521465
521471
|
if (false) {}
|
|
521466
521472
|
try {
|
|
521467
521473
|
const versionConfig = await getDynamicConfig_BLOCKS_ON_INIT("tengu_version_config", { minVersion: "0.0.0" });
|
|
521468
|
-
if (versionConfig.minVersion && lt("1.4.
|
|
521474
|
+
if (versionConfig.minVersion && lt("1.4.471", versionConfig.minVersion)) {
|
|
521469
521475
|
console.error(`
|
|
521470
|
-
It looks like your version of RAYU (${"1.4.
|
|
521476
|
+
It looks like your version of RAYU (${"1.4.471"}) needs an update.
|
|
521471
521477
|
A newer version (${versionConfig.minVersion} or higher) is required to continue.
|
|
521472
521478
|
|
|
521473
521479
|
To update, please run:
|
|
@@ -521693,7 +521699,7 @@ async function installGlobalPackage(specificVersion) {
|
|
|
521693
521699
|
logError2(new AutoUpdaterError("Another process is currently installing an update"));
|
|
521694
521700
|
logEvent("tengu_auto_updater_lock_contention", {
|
|
521695
521701
|
pid: process.pid,
|
|
521696
|
-
currentVersion: "1.4.
|
|
521702
|
+
currentVersion: "1.4.471"
|
|
521697
521703
|
});
|
|
521698
521704
|
return "in_progress";
|
|
521699
521705
|
}
|
|
@@ -521702,7 +521708,7 @@ async function installGlobalPackage(specificVersion) {
|
|
|
521702
521708
|
if (!env3.isRunningWithBun() && env3.isNpmFromWindowsPath()) {
|
|
521703
521709
|
logError2(new Error("Windows NPM detected in WSL environment"));
|
|
521704
521710
|
logEvent("tengu_auto_updater_windows_npm_in_wsl", {
|
|
521705
|
-
currentVersion: "1.4.
|
|
521711
|
+
currentVersion: "1.4.471"
|
|
521706
521712
|
});
|
|
521707
521713
|
console.error(`
|
|
521708
521714
|
Error: Windows NPM detected in WSL
|
|
@@ -522014,14 +522020,14 @@ async function getInstallationPath() {
|
|
|
522014
522020
|
return await realpath11(process.execPath);
|
|
522015
522021
|
} catch {}
|
|
522016
522022
|
try {
|
|
522017
|
-
const path24 = await which("
|
|
522023
|
+
const path24 = await which("rayu");
|
|
522018
522024
|
if (path24) {
|
|
522019
522025
|
return path24;
|
|
522020
522026
|
}
|
|
522021
522027
|
} catch {}
|
|
522022
522028
|
try {
|
|
522023
|
-
await getFsImplementation().stat(join123(homedir29(), ".local/bin/
|
|
522024
|
-
return join123(homedir29(), ".local/bin/
|
|
522029
|
+
await getFsImplementation().stat(join123(homedir29(), ".local/bin/rayu"));
|
|
522030
|
+
return join123(homedir29(), ".local/bin/rayu");
|
|
522025
522031
|
} catch {}
|
|
522026
522032
|
return "native";
|
|
522027
522033
|
}
|
|
@@ -522048,10 +522054,7 @@ async function detectMultipleInstallations() {
|
|
|
522048
522054
|
if (await localInstallationExists()) {
|
|
522049
522055
|
installations.push({ type: "npm-local", path: localPath });
|
|
522050
522056
|
}
|
|
522051
|
-
const packagesToCheck = ["@
|
|
522052
|
-
if (true) {
|
|
522053
|
-
packagesToCheck.push("@rayu-dev/rayu-cli");
|
|
522054
|
-
}
|
|
522057
|
+
const packagesToCheck = ["@rayu-dev/rayu-cli"];
|
|
522055
522058
|
const npmResult = await execFileNoThrow("npm", [
|
|
522056
522059
|
"-g",
|
|
522057
522060
|
"config",
|
|
@@ -522061,7 +522064,7 @@ async function detectMultipleInstallations() {
|
|
|
522061
522064
|
if (npmResult.code === 0 && npmResult.stdout) {
|
|
522062
522065
|
const npmPrefix = npmResult.stdout.trim();
|
|
522063
522066
|
const isWindows2 = getPlatform() === "windows";
|
|
522064
|
-
const globalBinPath = isWindows2 ? join123(npmPrefix, "
|
|
522067
|
+
const globalBinPath = isWindows2 ? join123(npmPrefix, "rayu") : join123(npmPrefix, "bin", "rayu");
|
|
522065
522068
|
let globalBinExists = false;
|
|
522066
522069
|
try {
|
|
522067
522070
|
await fs14.stat(globalBinPath);
|
|
@@ -522091,14 +522094,14 @@ async function detectMultipleInstallations() {
|
|
|
522091
522094
|
}
|
|
522092
522095
|
}
|
|
522093
522096
|
}
|
|
522094
|
-
const nativeBinPath = join123(homedir29(), ".local", "bin", "
|
|
522097
|
+
const nativeBinPath = join123(homedir29(), ".local", "bin", "rayu");
|
|
522095
522098
|
try {
|
|
522096
522099
|
await fs14.stat(nativeBinPath);
|
|
522097
522100
|
installations.push({ type: "native", path: nativeBinPath });
|
|
522098
522101
|
} catch {}
|
|
522099
522102
|
const config4 = getGlobalConfig();
|
|
522100
522103
|
if (config4.installMethod === "native") {
|
|
522101
|
-
const nativeDataPath = join123(homedir29(), ".local", "share", "
|
|
522104
|
+
const nativeDataPath = join123(homedir29(), ".local", "share", "rayu");
|
|
522102
522105
|
try {
|
|
522103
522106
|
await fs14.stat(nativeDataPath);
|
|
522104
522107
|
if (!installations.some((i4) => i4.type === "native")) {
|
|
@@ -522177,37 +522180,37 @@ async function detectConfigurationIssues(type) {
|
|
|
522177
522180
|
if (type === "npm-local" && config4.installMethod !== "local") {
|
|
522178
522181
|
warnings.push({
|
|
522179
522182
|
issue: `Running from local installation but config install method is '${config4.installMethod}'`,
|
|
522180
|
-
fix: "Consider using native installation:
|
|
522183
|
+
fix: "Consider using native installation: rayu install"
|
|
522181
522184
|
});
|
|
522182
522185
|
}
|
|
522183
522186
|
if (type === "native" && config4.installMethod !== "native") {
|
|
522184
522187
|
warnings.push({
|
|
522185
522188
|
issue: `Running native installation but config install method is '${config4.installMethod}'`,
|
|
522186
|
-
fix: "Run
|
|
522189
|
+
fix: "Run rayu install to update configuration"
|
|
522187
522190
|
});
|
|
522188
522191
|
}
|
|
522189
522192
|
}
|
|
522190
522193
|
if (type === "npm-global" && await localInstallationExists()) {
|
|
522191
522194
|
warnings.push({
|
|
522192
522195
|
issue: "Local installation exists but not being used",
|
|
522193
|
-
fix: "Consider using native installation:
|
|
522196
|
+
fix: "Consider using native installation: rayu install"
|
|
522194
522197
|
});
|
|
522195
522198
|
}
|
|
522196
522199
|
const existingAlias = await findClaudeAlias();
|
|
522197
522200
|
const validAlias = await findValidClaudeAlias();
|
|
522198
522201
|
if (type === "npm-local") {
|
|
522199
|
-
const whichResult = await which("
|
|
522202
|
+
const whichResult = await which("rayu");
|
|
522200
522203
|
const claudeInPath = !!whichResult;
|
|
522201
522204
|
if (!claudeInPath && !validAlias) {
|
|
522202
522205
|
if (existingAlias) {
|
|
522203
522206
|
warnings.push({
|
|
522204
522207
|
issue: "Local installation not accessible",
|
|
522205
|
-
fix: `Alias exists but points to invalid target: ${existingAlias}. Update alias: alias
|
|
522208
|
+
fix: `Alias exists but points to invalid target: ${existingAlias}. Update alias: alias rayu="~/.rayu/local/rayu"`
|
|
522206
522209
|
});
|
|
522207
522210
|
} else {
|
|
522208
522211
|
warnings.push({
|
|
522209
522212
|
issue: "Local installation not accessible",
|
|
522210
|
-
fix: 'Create alias: alias
|
|
522213
|
+
fix: 'Create alias: alias rayu="~/.rayu/local/rayu"'
|
|
522211
522214
|
});
|
|
522212
522215
|
}
|
|
522213
522216
|
}
|
|
@@ -522233,7 +522236,7 @@ function detectLinuxGlobPatternWarnings() {
|
|
|
522233
522236
|
}
|
|
522234
522237
|
async function getDoctorDiagnostic() {
|
|
522235
522238
|
const installationType = await getCurrentInstallationType();
|
|
522236
|
-
const version2 = typeof MACRO !== "undefined" ? "1.4.
|
|
522239
|
+
const version2 = typeof MACRO !== "undefined" ? "1.4.471" : "unknown";
|
|
522237
522240
|
const installationPath = await getInstallationPath();
|
|
522238
522241
|
const invokedBinary = getInvokedBinary();
|
|
522239
522242
|
const multipleInstallations = await detectMultipleInstallations();
|
|
@@ -522244,10 +522247,7 @@ async function getDoctorDiagnostic() {
|
|
|
522244
522247
|
const isWindows2 = getPlatform() === "windows";
|
|
522245
522248
|
for (const install of npmInstalls) {
|
|
522246
522249
|
if (install.type === "npm-global") {
|
|
522247
|
-
|
|
522248
|
-
if (true) {
|
|
522249
|
-
uninstallCmd += ` && npm -g uninstall ${"@rayu-dev/rayu-cli"}`;
|
|
522250
|
-
}
|
|
522250
|
+
const uninstallCmd = `npm -g uninstall ${"@rayu-dev/rayu-cli"}`;
|
|
522251
522251
|
warnings.push({
|
|
522252
522252
|
issue: `Leftover npm global installation at ${install.path}`,
|
|
522253
522253
|
fix: `Run: ${uninstallCmd}`
|
|
@@ -522274,7 +522274,7 @@ async function getDoctorDiagnostic() {
|
|
|
522274
522274
|
if (!hasUpdatePermissions && !getAutoUpdaterDisabledReason()) {
|
|
522275
522275
|
warnings.push({
|
|
522276
522276
|
issue: "Insufficient permissions for auto-updates",
|
|
522277
|
-
fix: "Do one of: (1) Re-install node without sudo, or (2) Use `
|
|
522277
|
+
fix: "Do one of: (1) Re-install node without sudo, or (2) Use `rayu install` for native installation"
|
|
522278
522278
|
});
|
|
522279
522279
|
}
|
|
522280
522280
|
}
|
|
@@ -522779,15 +522779,15 @@ function getPlatform3() {
|
|
|
522779
522779
|
return `${os7}-${arch}`;
|
|
522780
522780
|
}
|
|
522781
522781
|
function getBinaryName(platform4) {
|
|
522782
|
-
return platform4.startsWith("win32") ? "
|
|
522782
|
+
return platform4.startsWith("win32") ? "rayu.exe" : "rayu";
|
|
522783
522783
|
}
|
|
522784
522784
|
function getBaseDirectories() {
|
|
522785
522785
|
const platform4 = getPlatform3();
|
|
522786
522786
|
const executableName = getBinaryName(platform4);
|
|
522787
522787
|
return {
|
|
522788
|
-
versions: join127(getXDGDataHome(), "
|
|
522789
|
-
staging: join127(getXDGCacheHome(), "
|
|
522790
|
-
locks: join127(getXDGStateHome(), "
|
|
522788
|
+
versions: join127(getXDGDataHome(), "rayu", "versions"),
|
|
522789
|
+
staging: join127(getXDGCacheHome(), "rayu", "staging"),
|
|
522790
|
+
locks: join127(getXDGStateHome(), "rayu", "locks"),
|
|
522791
522791
|
executable: join127(getUserBinDir(), executableName)
|
|
522792
522792
|
};
|
|
522793
522793
|
}
|
|
@@ -523027,8 +523027,8 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
|
|
|
523027
523027
|
const maxVersion = await getMaxVersion();
|
|
523028
523028
|
if (maxVersion && gt(version2, maxVersion)) {
|
|
523029
523029
|
logForDebugging(`Native installer: maxVersion ${maxVersion} is set, capping update from ${version2} to ${maxVersion}`);
|
|
523030
|
-
if (gte("1.4.
|
|
523031
|
-
logForDebugging(`Native installer: current version ${"1.4.
|
|
523030
|
+
if (gte("1.4.471", maxVersion)) {
|
|
523031
|
+
logForDebugging(`Native installer: current version ${"1.4.471"} is already at or above maxVersion ${maxVersion}, skipping update`);
|
|
523032
523032
|
logEvent("tengu_native_update_skipped_max_version", {
|
|
523033
523033
|
latency_ms: Date.now() - startTime2,
|
|
523034
523034
|
max_version: maxVersion,
|
|
@@ -523039,7 +523039,7 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
|
|
|
523039
523039
|
version2 = maxVersion;
|
|
523040
523040
|
}
|
|
523041
523041
|
}
|
|
523042
|
-
if (!forceReinstall && version2 === "1.4.
|
|
523042
|
+
if (!forceReinstall && version2 === "1.4.471" && await versionIsAvailable(version2) && await isPossibleClaudeBinary(executablePath)) {
|
|
523043
523043
|
logForDebugging(`Found ${version2} at ${executablePath}, skipping install`);
|
|
523044
523044
|
logEvent("tengu_native_update_complete", {
|
|
523045
523045
|
latency_ms: Date.now() - startTime2,
|
|
@@ -524080,8 +524080,19 @@ function buildAccountProperties() {
|
|
|
524080
524080
|
return properties;
|
|
524081
524081
|
}
|
|
524082
524082
|
function buildAPIProviderProperties() {
|
|
524083
|
-
const apiProvider = getAPIProvider();
|
|
524084
524083
|
const properties = [];
|
|
524084
|
+
if (isOpenAICompatibleActive()) {
|
|
524085
|
+
const active = getActiveProvider();
|
|
524086
|
+
const baseURL = process.env.RAYU_OPENAI_BASE_URL ?? active?.baseURL;
|
|
524087
|
+
if (active?.id) {
|
|
524088
|
+
properties.push({ label: "API provider", value: active.id });
|
|
524089
|
+
}
|
|
524090
|
+
if (baseURL) {
|
|
524091
|
+
properties.push({ label: "API base URL", value: baseURL });
|
|
524092
|
+
}
|
|
524093
|
+
return properties;
|
|
524094
|
+
}
|
|
524095
|
+
const apiProvider = getAPIProvider();
|
|
524085
524096
|
if (apiProvider !== "anthropic") {
|
|
524086
524097
|
const providerLabel = {
|
|
524087
524098
|
bedrock: "AWS Bedrock",
|
|
@@ -524215,6 +524226,7 @@ var init_status = __esm(() => {
|
|
|
524215
524226
|
init_ide();
|
|
524216
524227
|
init_model();
|
|
524217
524228
|
init_providers();
|
|
524229
|
+
init_rayuConfig();
|
|
524218
524230
|
init_mtls();
|
|
524219
524231
|
init_nativeInstaller();
|
|
524220
524232
|
init_proxy();
|
|
@@ -524235,7 +524247,7 @@ function buildPrimarySection() {
|
|
|
524235
524247
|
});
|
|
524236
524248
|
return [{
|
|
524237
524249
|
label: "Version",
|
|
524238
|
-
value: "1.4.
|
|
524250
|
+
value: "1.4.471"
|
|
524239
524251
|
}, {
|
|
524240
524252
|
label: "Session name",
|
|
524241
524253
|
value: nameValue
|
|
@@ -527215,7 +527227,7 @@ function Config({
|
|
|
527215
527227
|
...isSupportedTerminal() ? [{
|
|
527216
527228
|
id: "autoInstallIdeExtension",
|
|
527217
527229
|
label: "Auto-install IDE extension",
|
|
527218
|
-
value: globalConfig2.autoInstallIdeExtension ??
|
|
527230
|
+
value: globalConfig2.autoInstallIdeExtension ?? false,
|
|
527219
527231
|
type: "boolean",
|
|
527220
527232
|
onChange(autoInstallIdeExtension) {
|
|
527221
527233
|
saveGlobalConfig((current_17) => ({
|
|
@@ -527906,7 +527918,7 @@ function Config({
|
|
|
527906
527918
|
}
|
|
527907
527919
|
})
|
|
527908
527920
|
}) : showSubmenu === "ChannelDowngrade" ? /* @__PURE__ */ jsx_runtime168.jsx(ChannelDowngradeDialog, {
|
|
527909
|
-
currentVersion: "1.4.
|
|
527921
|
+
currentVersion: "1.4.471",
|
|
527910
527922
|
onChoice: (choice) => {
|
|
527911
527923
|
setShowSubmenu(null);
|
|
527912
527924
|
setTabsHidden(false);
|
|
@@ -527918,7 +527930,7 @@ function Config({
|
|
|
527918
527930
|
autoUpdatesChannel: "stable"
|
|
527919
527931
|
};
|
|
527920
527932
|
if (choice === "stay") {
|
|
527921
|
-
newSettings.minimumVersion = "1.4.
|
|
527933
|
+
newSettings.minimumVersion = "1.4.471";
|
|
527922
527934
|
}
|
|
527923
527935
|
updateSettingsForSource("userSettings", newSettings);
|
|
527924
527936
|
setSettingsData((prev_27) => ({
|
|
@@ -528397,6 +528409,7 @@ function isEligibleForOverageCreditGrant() {
|
|
|
528397
528409
|
return formatGrantAmount(info) !== null;
|
|
528398
528410
|
}
|
|
528399
528411
|
function shouldShowOverageCreditUpsell() {
|
|
528412
|
+
return false;
|
|
528400
528413
|
if (!isEligibleForOverageCreditGrant())
|
|
528401
528414
|
return false;
|
|
528402
528415
|
const config4 = getGlobalConfig();
|
|
@@ -535102,7 +535115,7 @@ ${editorHint}`, {
|
|
|
535102
535115
|
children: [
|
|
535103
535116
|
"Learn more: ",
|
|
535104
535117
|
/* @__PURE__ */ jsx_runtime191.jsx(Link, {
|
|
535105
|
-
url: "https://
|
|
535118
|
+
url: "https://rayucode.com/docs"
|
|
535106
535119
|
})
|
|
535107
535120
|
]
|
|
535108
535121
|
})
|
|
@@ -535978,7 +535991,7 @@ function HelpV2(t0) {
|
|
|
535978
535991
|
let t6;
|
|
535979
535992
|
if ($3[31] !== tabs) {
|
|
535980
535993
|
t6 = /* @__PURE__ */ jsx_runtime195.jsx(Tabs, {
|
|
535981
|
-
title: `Rayu-CLI v${"1.4.
|
|
535994
|
+
title: `Rayu-CLI v${"1.4.471"}`,
|
|
535982
535995
|
color: "professionalBlue",
|
|
535983
535996
|
defaultTab: "general",
|
|
535984
535997
|
children: tabs
|
|
@@ -556061,7 +556074,7 @@ function getRecentReleaseNotes(currentVersion, previousVersion, changelogContent
|
|
|
556061
556074
|
}
|
|
556062
556075
|
return [];
|
|
556063
556076
|
}
|
|
556064
|
-
async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.4.
|
|
556077
|
+
async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.4.471") {
|
|
556065
556078
|
if (false) {}
|
|
556066
556079
|
const cachedChangelog = await getStoredChangelog();
|
|
556067
556080
|
if (lastSeenVersion !== currentVersion || !cachedChangelog) {
|
|
@@ -556074,7 +556087,7 @@ async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.4.469")
|
|
|
556074
556087
|
releaseNotes
|
|
556075
556088
|
};
|
|
556076
556089
|
}
|
|
556077
|
-
function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.4.
|
|
556090
|
+
function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.4.471") {
|
|
556078
556091
|
if (false) {}
|
|
556079
556092
|
const releaseNotes = getRecentReleaseNotes(currentVersion, lastSeenVersion);
|
|
556080
556093
|
return {
|
|
@@ -556118,8 +556131,8 @@ function calculateLayoutDimensions(columns, layoutMode, optimalLeftWidth) {
|
|
|
556118
556131
|
totalWidth
|
|
556119
556132
|
};
|
|
556120
556133
|
}
|
|
556121
|
-
function calculateOptimalLeftWidth(welcomeMessage, truncatedCwd, modelLine) {
|
|
556122
|
-
const contentWidth = Math.max(stringWidth(welcomeMessage), stringWidth(truncatedCwd), stringWidth(modelLine),
|
|
556134
|
+
function calculateOptimalLeftWidth(welcomeMessage, truncatedCwd, modelLine, bannerWidth) {
|
|
556135
|
+
const contentWidth = Math.max(stringWidth(welcomeMessage), stringWidth(truncatedCwd), stringWidth(modelLine), bannerWidth);
|
|
556123
556136
|
return Math.min(contentWidth + 4, MAX_LEFT_WIDTH);
|
|
556124
556137
|
}
|
|
556125
556138
|
function formatWelcomeMessage(username) {
|
|
@@ -556202,7 +556215,7 @@ function getRecentActivitySync() {
|
|
|
556202
556215
|
return cachedActivity;
|
|
556203
556216
|
}
|
|
556204
556217
|
function getLogoDisplayData() {
|
|
556205
|
-
const version2 = process.env.DEMO_VERSION ?? "1.4.
|
|
556218
|
+
const version2 = process.env.DEMO_VERSION ?? "1.4.471";
|
|
556206
556219
|
const serverUrl = getDirectConnectServerUrl();
|
|
556207
556220
|
const displayPath = process.env.DEMO_VERSION ? "/code/claude" : getDisplayPath(getCwd());
|
|
556208
556221
|
const cwd2 = serverUrl ? `${displayPath} in ${serverUrl.replace(/^https?:\/\//, "")}` : displayPath;
|
|
@@ -556867,6 +556880,7 @@ function resetIfPassesRefreshed() {
|
|
|
556867
556880
|
}
|
|
556868
556881
|
}
|
|
556869
556882
|
function shouldShowGuestPassesUpsell() {
|
|
556883
|
+
return false;
|
|
556870
556884
|
const {
|
|
556871
556885
|
eligible: eligible2,
|
|
556872
556886
|
hasCache
|
|
@@ -557366,7 +557380,7 @@ function LogoV2() {
|
|
|
557366
557380
|
if ($3[2] === Symbol.for("react.memo_cache_sentinel")) {
|
|
557367
557381
|
t2 = () => {
|
|
557368
557382
|
const currentConfig = getGlobalConfig();
|
|
557369
|
-
if (currentConfig.lastReleaseNotesSeen === "1.4.
|
|
557383
|
+
if (currentConfig.lastReleaseNotesSeen === "1.4.471") {
|
|
557370
557384
|
return;
|
|
557371
557385
|
}
|
|
557372
557386
|
saveGlobalConfig(_temp327);
|
|
@@ -557682,7 +557696,7 @@ function LogoV2() {
|
|
|
557682
557696
|
children: /* @__PURE__ */ jsx_runtime236.jsxs(ThemedBox_default, {
|
|
557683
557697
|
flexDirection: "column",
|
|
557684
557698
|
borderStyle: "round",
|
|
557685
|
-
borderColor: "
|
|
557699
|
+
borderColor: "#5bf58d",
|
|
557686
557700
|
borderText: t112,
|
|
557687
557701
|
paddingX: 1,
|
|
557688
557702
|
paddingY: 1,
|
|
@@ -557716,11 +557730,12 @@ function LogoV2() {
|
|
|
557716
557730
|
});
|
|
557717
557731
|
}
|
|
557718
557732
|
const welcomeMessage_0 = formatWelcomeMessage(username);
|
|
557733
|
+
const bannerWidth = Math.max(...getActiveClawdBanner().lines.map(([line]) => stringWidth(line)));
|
|
557719
557734
|
const modelLine = !process.env.IS_DEMO && config5.oauthAccount?.organizationName ? `${modelDisplayName} · ${billingType} · ${config5.oauthAccount.organizationName}` : `${modelDisplayName} · ${billingType}`;
|
|
557720
557735
|
const cwdAvailableWidth_0 = agentName ? LEFT_PANEL_MAX_WIDTH - 1 - stringWidth(agentName) - 3 : LEFT_PANEL_MAX_WIDTH;
|
|
557721
557736
|
const truncatedCwd_0 = truncatePath(cwd2, Math.max(cwdAvailableWidth_0, 10));
|
|
557722
557737
|
const cwdLine = agentName ? `@${agentName} · ${truncatedCwd_0}` : truncatedCwd_0;
|
|
557723
|
-
const optimalLeftWidth = calculateOptimalLeftWidth(welcomeMessage_0, cwdLine, modelLine);
|
|
557738
|
+
const optimalLeftWidth = calculateOptimalLeftWidth(welcomeMessage_0, cwdLine, modelLine, bannerWidth);
|
|
557724
557739
|
const {
|
|
557725
557740
|
leftWidth,
|
|
557726
557741
|
rightWidth
|
|
@@ -557729,7 +557744,7 @@ function LogoV2() {
|
|
|
557729
557744
|
const T1 = ThemedBox_default;
|
|
557730
557745
|
const t11 = "column";
|
|
557731
557746
|
const t12 = "round";
|
|
557732
|
-
const t13 = "
|
|
557747
|
+
const t13 = "#5bf58d";
|
|
557733
557748
|
let t14;
|
|
557734
557749
|
if ($3[44] !== borderTitle) {
|
|
557735
557750
|
t14 = {
|
|
@@ -557832,7 +557847,7 @@ function LogoV2() {
|
|
|
557832
557847
|
t24 = layoutMode === "horizontal" && /* @__PURE__ */ jsx_runtime236.jsx(ThemedBox_default, {
|
|
557833
557848
|
height: "100%",
|
|
557834
557849
|
borderStyle: "single",
|
|
557835
|
-
borderColor: "
|
|
557850
|
+
borderColor: "#5bf58d",
|
|
557836
557851
|
borderDimColor: true,
|
|
557837
557852
|
borderTop: false,
|
|
557838
557853
|
borderBottom: false,
|
|
@@ -557844,7 +557859,7 @@ function LogoV2() {
|
|
|
557844
557859
|
t24 = $3[61];
|
|
557845
557860
|
}
|
|
557846
557861
|
const _latestNpm = getCachedLatestNpmVersionSync();
|
|
557847
|
-
const _updateFeeds = _latestNpm && gt(_latestNpm, "1.4.
|
|
557862
|
+
const _updateFeeds = _latestNpm && gt(_latestNpm, "1.4.471") ? [createUpdateAvailableFeed("1.4.471", _latestNpm)] : [];
|
|
557848
557863
|
const t25 = layoutMode === "horizontal" && /* @__PURE__ */ jsx_runtime236.jsx(FeedColumn, {
|
|
557849
557864
|
feeds: showOnboarding ? [createProjectOnboardingFeed(getSteps()), createRecentActivityFeed(activities)] : showGuestPassesUpsell ? [createRecentActivityFeed(activities), createGuestPassesFeed()] : showOverageCreditUpsell ? [createRecentActivityFeed(activities), createOverageCreditFeed()] : [createRecentActivityFeed(activities), ..._updateFeeds, createWhatsNewFeed(changelog)],
|
|
557850
557865
|
maxWidth: rightWidth
|
|
@@ -558044,12 +558059,12 @@ function LogoV2() {
|
|
|
558044
558059
|
return t41;
|
|
558045
558060
|
}
|
|
558046
558061
|
function _temp327(current) {
|
|
558047
|
-
if (current.lastReleaseNotesSeen === "1.4.
|
|
558062
|
+
if (current.lastReleaseNotesSeen === "1.4.471") {
|
|
558048
558063
|
return current;
|
|
558049
558064
|
}
|
|
558050
558065
|
return {
|
|
558051
558066
|
...current,
|
|
558052
|
-
lastReleaseNotesSeen: "1.4.
|
|
558067
|
+
lastReleaseNotesSeen: "1.4.471"
|
|
558053
558068
|
};
|
|
558054
558069
|
}
|
|
558055
558070
|
function _temp241(s_0) {
|
|
@@ -558067,6 +558082,7 @@ var init_LogoV2 = __esm(() => {
|
|
|
558067
558082
|
init_format();
|
|
558068
558083
|
init_file2();
|
|
558069
558084
|
init_Clawd();
|
|
558085
|
+
init_bannerConfig();
|
|
558070
558086
|
init_FeedColumn();
|
|
558071
558087
|
init_feedConfigs();
|
|
558072
558088
|
init_autoUpdater();
|
|
@@ -558713,7 +558729,7 @@ var init_statusNoticeDefinitions = __esm(() => {
|
|
|
558713
558729
|
if (!isSupportedJetBrainsTerminal()) {
|
|
558714
558730
|
return false;
|
|
558715
558731
|
}
|
|
558716
|
-
const shouldAutoInstall = context2.config.autoInstallIdeExtension ??
|
|
558732
|
+
const shouldAutoInstall = context2.config.autoInstallIdeExtension ?? false;
|
|
558717
558733
|
if (!shouldAutoInstall) {
|
|
558718
558734
|
return false;
|
|
558719
558735
|
}
|
|
@@ -564515,7 +564531,7 @@ var init_ultrareviewCommand = __esm(() => {
|
|
|
564515
564531
|
});
|
|
564516
564532
|
|
|
564517
564533
|
// src/commands/review.ts
|
|
564518
|
-
var CCR_TERMS_URL = "https://
|
|
564534
|
+
var CCR_TERMS_URL = "https://rayucode.com/docs", LOCAL_REVIEW_PROMPT = (args) => `
|
|
564519
564535
|
You are an expert code reviewer. Follow these steps:
|
|
564520
564536
|
|
|
564521
564537
|
1. If no PR number is provided in the args, run \`gh pr list\` to show open PRs
|
|
@@ -565947,7 +565963,7 @@ ${reasons}`,
|
|
|
565947
565963
|
} : prev);
|
|
565948
565964
|
}
|
|
565949
565965
|
}
|
|
565950
|
-
var ULTRAPLAN_TIMEOUT_MS, CCR_TERMS_URL2 = "https://
|
|
565966
|
+
var ULTRAPLAN_TIMEOUT_MS, CCR_TERMS_URL2 = "https://rayucode.com/docs", _rawPrompt, DEFAULT_INSTRUCTIONS, ULTRAPLAN_INSTRUCTIONS, call29 = async (onDone, context2, args) => {
|
|
565951
565967
|
const blurb = args.trim();
|
|
565952
565968
|
if (!blurb) {
|
|
565953
565969
|
const msg = await launchUltraplan2({
|
|
@@ -574858,14 +574874,14 @@ Other exit codes - show stderr to user only`,
|
|
|
574858
574874
|
UserPromptSubmit: {
|
|
574859
574875
|
summary: "When the user submits a prompt",
|
|
574860
574876
|
description: `Input to command is JSON with original user prompt text.
|
|
574861
|
-
Exit code 0 - stdout shown to
|
|
574877
|
+
Exit code 0 - stdout shown to Rayu
|
|
574862
574878
|
Exit code 2 - block processing, erase original prompt, and show stderr to user only
|
|
574863
574879
|
Other exit codes - show stderr to user only`
|
|
574864
574880
|
},
|
|
574865
574881
|
SessionStart: {
|
|
574866
574882
|
summary: "When a new session is started",
|
|
574867
574883
|
description: `Input to command is JSON with session start source.
|
|
574868
|
-
Exit code 0 - stdout shown to
|
|
574884
|
+
Exit code 0 - stdout shown to Rayu
|
|
574869
574885
|
Blocking errors are ignored
|
|
574870
574886
|
Other exit codes - show stderr to user only`,
|
|
574871
574887
|
matcherMetadata: {
|
|
@@ -574874,7 +574890,7 @@ Other exit codes - show stderr to user only`,
|
|
|
574874
574890
|
}
|
|
574875
574891
|
},
|
|
574876
574892
|
Stop: {
|
|
574877
|
-
summary: "Right before
|
|
574893
|
+
summary: "Right before Rayu concludes its response",
|
|
574878
574894
|
description: `Exit code 0 - stdout/stderr not shown
|
|
574879
574895
|
Exit code 2 - show stderr to model and continue conversation
|
|
574880
574896
|
Other exit codes - show stderr to user only`
|
|
@@ -574962,7 +574978,7 @@ Other exit codes - show stderr to user only`,
|
|
|
574962
574978
|
Setup: {
|
|
574963
574979
|
summary: "Repo setup hooks for init and maintenance",
|
|
574964
574980
|
description: `Input to command is JSON with trigger (init or maintenance).
|
|
574965
|
-
Exit code 0 - stdout shown to
|
|
574981
|
+
Exit code 0 - stdout shown to Rayu
|
|
574966
574982
|
Blocking errors are ignored
|
|
574967
574983
|
Other exit codes - show stderr to user only`,
|
|
574968
574984
|
matcherMetadata: {
|
|
@@ -575034,7 +575050,7 @@ Other exit codes - show stderr to user only`,
|
|
|
575034
575050
|
},
|
|
575035
575051
|
InstructionsLoaded: {
|
|
575036
575052
|
summary: "When an instruction file (RAYU.md or rule) is loaded",
|
|
575037
|
-
description: `Input to command is JSON with file_path, memory_type (User, Project, Local, Managed), load_reason (session_start, nested_traversal, path_glob_match, include, compact), globs (optional — the paths: frontmatter patterns that matched), trigger_file_path (optional — the file
|
|
575053
|
+
description: `Input to command is JSON with file_path, memory_type (User, Project, Local, Managed), load_reason (session_start, nested_traversal, path_glob_match, include, compact), globs (optional — the paths: frontmatter patterns that matched), trigger_file_path (optional — the file Rayu touched that caused the load), and parent_file_path (optional — the file that @-included this one).
|
|
575038
575054
|
Exit code 0 - command completes successfully
|
|
575039
575055
|
Other exit codes - show stderr to user only
|
|
575040
575056
|
This hook is observability-only and does not support blocking.`,
|
|
@@ -575137,7 +575153,7 @@ function SelectEventMode(t0) {
|
|
|
575137
575153
|
" This menu is read-only. To add or modify hooks, edit settings.json directly or ask Rayu.",
|
|
575138
575154
|
" ",
|
|
575139
575155
|
/* @__PURE__ */ jsx_runtime280.jsx(Link, {
|
|
575140
|
-
url: "https://
|
|
575156
|
+
url: "https://rayucode.com/docs",
|
|
575141
575157
|
children: "Learn more"
|
|
575142
575158
|
})
|
|
575143
575159
|
]
|
|
@@ -576677,7 +576693,7 @@ async function call43(onDone, context2, args) {
|
|
|
576677
576693
|
};
|
|
576678
576694
|
const titleInfo = title ? ` "${title}"` : "";
|
|
576679
576695
|
const resumeHint = `
|
|
576680
|
-
To resume the original:
|
|
576696
|
+
To resume the original: rayu -r ${originalSessionId}`;
|
|
576681
576697
|
const successMessage = `Branched conversation${titleInfo}. You are now in the branch.${resumeHint}`;
|
|
576682
576698
|
if (context2.resume) {
|
|
576683
576699
|
await context2.resume(sessionId, forkLog, "fork");
|
|
@@ -583047,7 +583063,7 @@ async function captureMemoryDiagnostics(trigger, dumpNumber = 0) {
|
|
|
583047
583063
|
smapsRollup,
|
|
583048
583064
|
platform: process.platform,
|
|
583049
583065
|
nodeVersion: process.version,
|
|
583050
|
-
ccVersion: "1.4.
|
|
583066
|
+
ccVersion: "1.4.471"
|
|
583051
583067
|
};
|
|
583052
583068
|
}
|
|
583053
583069
|
async function performHeapDump(trigger = "manual", dumpNumber = 0) {
|
|
@@ -583569,7 +583585,7 @@ var init_bridge_kick = __esm(() => {
|
|
|
583569
583585
|
var call50 = async () => {
|
|
583570
583586
|
return {
|
|
583571
583587
|
type: "text",
|
|
583572
|
-
value: "1.4.
|
|
583588
|
+
value: "1.4.471"
|
|
583573
583589
|
};
|
|
583574
583590
|
}, version2, version_default;
|
|
583575
583591
|
var init_version = __esm(() => {
|
|
@@ -584292,8 +584308,8 @@ function OverridesSelect(t0) {
|
|
|
584292
584308
|
"Learn more:",
|
|
584293
584309
|
" ",
|
|
584294
584310
|
/* @__PURE__ */ jsx_runtime314.jsx(Link, {
|
|
584295
|
-
url: "https://
|
|
584296
|
-
children: "
|
|
584311
|
+
url: "https://rayucode.com/docs",
|
|
584312
|
+
children: "rayucode.com/docs"
|
|
584297
584313
|
})
|
|
584298
584314
|
]
|
|
584299
584315
|
})
|
|
@@ -584663,8 +584679,8 @@ function SandboxModeTab(t0) {
|
|
|
584663
584679
|
"Learn more:",
|
|
584664
584680
|
" ",
|
|
584665
584681
|
/* @__PURE__ */ jsx_runtime315.jsx(Link, {
|
|
584666
|
-
url: "https://
|
|
584667
|
-
children: "
|
|
584682
|
+
url: "https://rayucode.com/docs",
|
|
584683
|
+
children: "rayucode.com/docs"
|
|
584668
584684
|
})
|
|
584669
584685
|
]
|
|
584670
584686
|
})
|
|
@@ -585079,29 +585095,52 @@ function fmtReset(seconds) {
|
|
|
585079
585095
|
function usd2(cents) {
|
|
585080
585096
|
return `$${(cents / 100).toFixed(cents % 100 === 0 ? 0 : 2)}`;
|
|
585081
585097
|
}
|
|
585098
|
+
function usageBar(used, total, width = 22) {
|
|
585099
|
+
if (!total || total <= 0)
|
|
585100
|
+
return "";
|
|
585101
|
+
const ratio = Math.max(0, Math.min(1, used / total));
|
|
585102
|
+
const filled = Math.round(ratio * width);
|
|
585103
|
+
return `[${"█".repeat(filled)}${"░".repeat(Math.max(0, width - filled))}]`;
|
|
585104
|
+
}
|
|
585105
|
+
function usagePct(used, total) {
|
|
585106
|
+
if (!total || total <= 0)
|
|
585107
|
+
return "";
|
|
585108
|
+
return `${Math.round(used / total * 100)}%`;
|
|
585109
|
+
}
|
|
585082
585110
|
function formatRayuUsageSummary(c4) {
|
|
585083
585111
|
const lines2 = [];
|
|
585084
585112
|
const price = c4.priceCents > 0 ? ` (${usd2(c4.priceCents)}/mo)` : "";
|
|
585085
|
-
lines2.push(
|
|
585113
|
+
lines2.push("Rayu Plan Usage");
|
|
585114
|
+
lines2.push("");
|
|
585115
|
+
lines2.push(` Plan ${c4.planName || c4.plan}${price}`);
|
|
585086
585116
|
if (c4.periodEnd) {
|
|
585087
|
-
lines2.push(`Renews
|
|
585117
|
+
lines2.push(` Renews ${new Date(c4.periodEnd).toLocaleDateString()}`);
|
|
585088
585118
|
}
|
|
585089
585119
|
if (c4.creditsPerPeriod == null) {
|
|
585090
|
-
lines2.push("
|
|
585120
|
+
lines2.push("");
|
|
585121
|
+
lines2.push(" No hosted credit allowance on this plan — upgrade at /billing.");
|
|
585091
585122
|
} else {
|
|
585092
585123
|
const remC = c4.remainingCredits ?? 0;
|
|
585093
|
-
lines2.push(
|
|
585124
|
+
lines2.push("");
|
|
585125
|
+
lines2.push(` Credits ${usageBar(c4.usedCredits, c4.creditsPerPeriod)} ${usagePct(c4.usedCredits, c4.creditsPerPeriod)}`);
|
|
585126
|
+
lines2.push(` ${c4.usedCredits.toLocaleString()} / ${c4.creditsPerPeriod.toLocaleString()} used · ${remC.toLocaleString()} left · resets in ${fmtReset(c4.resetSeconds)}`);
|
|
585094
585127
|
if (c4.allowanceTokens != null) {
|
|
585095
|
-
|
|
585128
|
+
const usedT = c4.usedTokens ?? 0;
|
|
585129
|
+
lines2.push("");
|
|
585130
|
+
lines2.push(` Tokens ${usageBar(usedT, c4.allowanceTokens)} ${usagePct(usedT, c4.allowanceTokens)}`);
|
|
585131
|
+
lines2.push(` ${usedT.toLocaleString()} / ${c4.allowanceTokens.toLocaleString()}`);
|
|
585096
585132
|
}
|
|
585097
585133
|
}
|
|
585098
|
-
if (c4.topUpEnabled) {
|
|
585099
|
-
lines2.push(`Top-up balance: ${c4.topupBalance.toLocaleString()} credits`);
|
|
585100
|
-
}
|
|
585101
585134
|
if (c4.maxDailyTurns != null && c4.maxDailyTurns > 0) {
|
|
585102
585135
|
const used = c4.turnsUsedToday ?? 0;
|
|
585103
585136
|
const left = c4.turnsRemaining ?? Math.max(0, c4.maxDailyTurns - used);
|
|
585104
|
-
lines2.push(
|
|
585137
|
+
lines2.push("");
|
|
585138
|
+
lines2.push(` Daily ${usageBar(used, c4.maxDailyTurns)} ${usagePct(used, c4.maxDailyTurns)}`);
|
|
585139
|
+
lines2.push(` ${used.toLocaleString()} / ${c4.maxDailyTurns.toLocaleString()} turns used · ${left.toLocaleString()} left · resets in ${fmtReset(c4.turnsResetSeconds ?? 0)}`);
|
|
585140
|
+
}
|
|
585141
|
+
if (c4.topUpEnabled) {
|
|
585142
|
+
lines2.push("");
|
|
585143
|
+
lines2.push(` Top-up ${c4.topupBalance.toLocaleString()} credits`);
|
|
585105
585144
|
}
|
|
585106
585145
|
return lines2.join(`
|
|
585107
585146
|
`);
|
|
@@ -588422,13 +588461,13 @@ function SetModelAndClose({
|
|
|
588422
588461
|
return;
|
|
588423
588462
|
}
|
|
588424
588463
|
if (model && isOpus1mUnavailable(model)) {
|
|
588425
|
-
onDone(`Opus 4.6 with 1M context is not available for your account. Learn more: https://
|
|
588464
|
+
onDone(`Opus 4.6 with 1M context is not available for your account. Learn more: https://rayucode.com/docs`, {
|
|
588426
588465
|
display: "system"
|
|
588427
588466
|
});
|
|
588428
588467
|
return;
|
|
588429
588468
|
}
|
|
588430
588469
|
if (model && isSonnet1mUnavailable(model)) {
|
|
588431
|
-
onDone(`Sonnet 4.6 with 1M context is not available for your account. Learn more: https://
|
|
588470
|
+
onDone(`Sonnet 4.6 with 1M context is not available for your account. Learn more: https://rayucode.com/docs`, {
|
|
588432
588471
|
display: "system"
|
|
588433
588472
|
});
|
|
588434
588473
|
return;
|
|
@@ -593827,7 +593866,7 @@ function generateHtmlReport(data, insights) {
|
|
|
593827
593866
|
</html>`;
|
|
593828
593867
|
}
|
|
593829
593868
|
function buildExportData(data, insights, facets, remoteStats) {
|
|
593830
|
-
const version3 = typeof MACRO !== "undefined" ? "1.4.
|
|
593869
|
+
const version3 = typeof MACRO !== "undefined" ? "1.4.471" : "unknown";
|
|
593831
593870
|
const remote_hosts_collected = remoteStats?.hosts.filter((h3) => h3.sessionCount > 0).map((h3) => h3.name);
|
|
593832
593871
|
const facets_summary = {
|
|
593833
593872
|
total: facets.size,
|
|
@@ -597737,7 +597776,7 @@ var init_sessionStorage = __esm(() => {
|
|
|
597737
597776
|
init_settings2();
|
|
597738
597777
|
init_slowOperations();
|
|
597739
597778
|
init_uuid();
|
|
597740
|
-
VERSION6 = typeof MACRO !== "undefined" ? "1.4.
|
|
597779
|
+
VERSION6 = typeof MACRO !== "undefined" ? "1.4.471" : "unknown";
|
|
597741
597780
|
MAX_TOMBSTONE_REWRITE_BYTES = 50 * 1024 * 1024;
|
|
597742
597781
|
SKIP_FIRST_PROMPT_PATTERN = /^(?:\s*<[a-z][\w-]*[\s>]|\[Request interrupted by user[^\]]*\])/;
|
|
597743
597782
|
EPHEMERAL_PROGRESS_TYPES = new Set([
|
|
@@ -598955,7 +598994,7 @@ var init_filesystem = __esm(() => {
|
|
|
598955
598994
|
});
|
|
598956
598995
|
getBundledSkillsRoot = memoize_default(function getBundledSkillsRoot2() {
|
|
598957
598996
|
const nonce = randomBytes19(16).toString("hex");
|
|
598958
|
-
return join153(getClaudeTempDir(), "bundled-skills", "1.4.
|
|
598997
|
+
return join153(getClaudeTempDir(), "bundled-skills", "1.4.471", nonce);
|
|
598959
598998
|
});
|
|
598960
598999
|
getResolvedWorkingDirPaths = memoize_default(getPathsForPermissionCheck);
|
|
598961
599000
|
});
|
|
@@ -604125,7 +604164,7 @@ __export(exports_update, {
|
|
|
604125
604164
|
update: () => update
|
|
604126
604165
|
});
|
|
604127
604166
|
async function update() {
|
|
604128
|
-
writeToStdout(`Current version: ${"1.4.
|
|
604167
|
+
writeToStdout(`Current version: ${"1.4.471"}
|
|
604129
604168
|
`);
|
|
604130
604169
|
const isBundled = isInBundledMode();
|
|
604131
604170
|
if (isBundled) {
|
|
@@ -604156,13 +604195,13 @@ Manual check: npm view ${"@rayu-dev/rayu-cli"} version
|
|
|
604156
604195
|
process.exit(1);
|
|
604157
604196
|
return;
|
|
604158
604197
|
}
|
|
604159
|
-
if (latestVersion === "1.4.
|
|
604198
|
+
if (latestVersion === "1.4.471") {
|
|
604160
604199
|
writeToStdout(source_default.green(`
|
|
604161
|
-
Rayu CLI is up to date (${"1.4.
|
|
604200
|
+
Rayu CLI is up to date (${"1.4.471"})
|
|
604162
604201
|
`));
|
|
604163
604202
|
process.exit(0);
|
|
604164
604203
|
}
|
|
604165
|
-
writeToStdout(`New version available: ${latestVersion} (current: ${"1.4.
|
|
604204
|
+
writeToStdout(`New version available: ${latestVersion} (current: ${"1.4.471"})
|
|
604166
604205
|
`);
|
|
604167
604206
|
writeToStdout(`Installing update...
|
|
604168
604207
|
|
|
@@ -604229,14 +604268,14 @@ async function updateNativeBinary() {
|
|
|
604229
604268
|
} catch {
|
|
604230
604269
|
latestVersion = "";
|
|
604231
604270
|
}
|
|
604232
|
-
if (latestVersion && latestVersion === "1.4.
|
|
604271
|
+
if (latestVersion && latestVersion === "1.4.471") {
|
|
604233
604272
|
writeToStdout(source_default.green(`
|
|
604234
|
-
Rayu CLI is up to date (1.4.
|
|
604273
|
+
Rayu CLI is up to date (1.4.471)
|
|
604235
604274
|
`));
|
|
604236
604275
|
process.exit(0);
|
|
604237
604276
|
}
|
|
604238
604277
|
if (latestVersion) {
|
|
604239
|
-
writeToStdout(`New version available: ${latestVersion} (current: 1.4.
|
|
604278
|
+
writeToStdout(`New version available: ${latestVersion} (current: 1.4.471)
|
|
604240
604279
|
`);
|
|
604241
604280
|
}
|
|
604242
604281
|
writeToStdout(`Downloading and installing update...
|
|
@@ -604251,13 +604290,13 @@ Rayu CLI is up to date (1.4.469)
|
|
|
604251
604290
|
return;
|
|
604252
604291
|
}
|
|
604253
604292
|
writeToStdout(source_default.green(`
|
|
604254
|
-
Rayu CLI is up to date (1.4.
|
|
604293
|
+
Rayu CLI is up to date (1.4.471)
|
|
604255
604294
|
`));
|
|
604256
604295
|
process.exit(0);
|
|
604257
604296
|
}
|
|
604258
604297
|
const updatedTo = result.latestVersion ?? latestVersion ?? "latest";
|
|
604259
604298
|
writeToStdout(source_default.green(`
|
|
604260
|
-
Successfully updated from 1.4.
|
|
604299
|
+
Successfully updated from 1.4.471 to ${updatedTo}
|
|
604261
604300
|
`));
|
|
604262
604301
|
writeToStdout(`Restart your terminal to use the new version.
|
|
604263
604302
|
`);
|
|
@@ -604322,7 +604361,7 @@ async function removeDataDir(dir) {
|
|
|
604322
604361
|
async function uninstall(args = []) {
|
|
604323
604362
|
const yes = args.includes("--yes") || args.includes("-y");
|
|
604324
604363
|
const keepData = args.includes("--keep-data");
|
|
604325
|
-
writeToStdout(`Uninstalling Rayu CLI (${"1.4.
|
|
604364
|
+
writeToStdout(`Uninstalling Rayu CLI (${"1.4.471"})...
|
|
604326
604365
|
`);
|
|
604327
604366
|
writeToStdout(`Running: npm uninstall -g ${"@rayu-dev/rayu-cli"}
|
|
604328
604367
|
|
|
@@ -604356,7 +604395,7 @@ This looks like a permissions error on npm's global install
|
|
|
604356
604395
|
return;
|
|
604357
604396
|
}
|
|
604358
604397
|
writeToStdout(source_default.green(`
|
|
604359
|
-
Successfully uninstalled ${"@rayu-dev/rayu-cli"} ${"1.4.
|
|
604398
|
+
Successfully uninstalled ${"@rayu-dev/rayu-cli"} ${"1.4.471"}
|
|
604360
604399
|
`));
|
|
604361
604400
|
const configDir = getRayuConfigHomeDir();
|
|
604362
604401
|
const dataExists = existsSync28(configDir);
|
|
@@ -604439,7 +604478,7 @@ function showFirstRunWelcome() {
|
|
|
604439
604478
|
`);
|
|
604440
604479
|
try {
|
|
604441
604480
|
mkdirSync16(getRayuConfigHomeDir(), { recursive: true });
|
|
604442
|
-
writeFileSync18(markerPath(), "1.4.
|
|
604481
|
+
writeFileSync18(markerPath(), "1.4.471", "utf8");
|
|
604443
604482
|
} catch {}
|
|
604444
604483
|
}
|
|
604445
604484
|
var init_firstRun = __esm(() => {
|
|
@@ -620625,7 +620664,7 @@ async function initializeBetaTracing(resource) {
|
|
|
620625
620664
|
});
|
|
620626
620665
|
import_api_logs.logs.setGlobalLoggerProvider(loggerProvider);
|
|
620627
620666
|
setLoggerProvider(loggerProvider);
|
|
620628
|
-
const eventLogger = import_api_logs.logs.getLogger("com.anthropic.claude_code.events", "1.4.
|
|
620667
|
+
const eventLogger = import_api_logs.logs.getLogger("com.anthropic.claude_code.events", "1.4.471");
|
|
620629
620668
|
setEventLogger(eventLogger);
|
|
620630
620669
|
process.on("beforeExit", async () => {
|
|
620631
620670
|
await loggerProvider?.forceFlush();
|
|
@@ -620665,7 +620704,7 @@ async function initializeTelemetry() {
|
|
|
620665
620704
|
const platform4 = getPlatform();
|
|
620666
620705
|
const baseAttributes = {
|
|
620667
620706
|
[import_semantic_conventions.ATTR_SERVICE_NAME]: "claude-code",
|
|
620668
|
-
[import_semantic_conventions.ATTR_SERVICE_VERSION]: "1.4.
|
|
620707
|
+
[import_semantic_conventions.ATTR_SERVICE_VERSION]: "1.4.471"
|
|
620669
620708
|
};
|
|
620670
620709
|
if (platform4 === "wsl") {
|
|
620671
620710
|
const wslVersion = getWslVersion();
|
|
@@ -620710,7 +620749,7 @@ async function initializeTelemetry() {
|
|
|
620710
620749
|
} catch {}
|
|
620711
620750
|
};
|
|
620712
620751
|
registerCleanup(shutdownTelemetry2);
|
|
620713
|
-
return meterProvider2.getMeter("com.anthropic.claude_code", "1.4.
|
|
620752
|
+
return meterProvider2.getMeter("com.anthropic.claude_code", "1.4.471");
|
|
620714
620753
|
}
|
|
620715
620754
|
const meterProvider = new import_sdk_metrics2.MeterProvider({
|
|
620716
620755
|
resource,
|
|
@@ -620730,7 +620769,7 @@ async function initializeTelemetry() {
|
|
|
620730
620769
|
});
|
|
620731
620770
|
import_api_logs.logs.setGlobalLoggerProvider(loggerProvider);
|
|
620732
620771
|
setLoggerProvider(loggerProvider);
|
|
620733
|
-
const eventLogger = import_api_logs.logs.getLogger("com.anthropic.claude_code.events", "1.4.
|
|
620772
|
+
const eventLogger = import_api_logs.logs.getLogger("com.anthropic.claude_code.events", "1.4.471");
|
|
620734
620773
|
setEventLogger(eventLogger);
|
|
620735
620774
|
logForDebugging("[3P telemetry] Event logger set successfully");
|
|
620736
620775
|
process.on("beforeExit", async () => {
|
|
@@ -620792,7 +620831,7 @@ Current timeout: ${timeoutMs}ms
|
|
|
620792
620831
|
}
|
|
620793
620832
|
};
|
|
620794
620833
|
registerCleanup(shutdownTelemetry);
|
|
620795
|
-
return meterProvider.getMeter("com.anthropic.claude_code", "1.4.
|
|
620834
|
+
return meterProvider.getMeter("com.anthropic.claude_code", "1.4.471");
|
|
620796
620835
|
}
|
|
620797
620836
|
async function flushTelemetry() {
|
|
620798
620837
|
const meterProvider = getMeterProvider();
|
|
@@ -621500,7 +621539,7 @@ function CostThresholdDialog(t0) {
|
|
|
621500
621539
|
children: "Learn more about how to monitor your spending:"
|
|
621501
621540
|
}),
|
|
621502
621541
|
/* @__PURE__ */ jsx_runtime345.jsx(Link, {
|
|
621503
|
-
url: "https://
|
|
621542
|
+
url: "https://rayucode.com/docs"
|
|
621504
621543
|
})
|
|
621505
621544
|
]
|
|
621506
621545
|
});
|
|
@@ -622294,7 +622333,7 @@ function buildSystemInitMessage(inputs) {
|
|
|
622294
622333
|
slash_commands: inputs.commands.filter((c4) => c4.userInvocable !== false).map((c4) => c4.name),
|
|
622295
622334
|
apiKeySource: getAnthropicApiKeyWithSource().source,
|
|
622296
622335
|
betas: getSdkBetas(),
|
|
622297
|
-
claude_code_version: "1.4.
|
|
622336
|
+
claude_code_version: "1.4.471",
|
|
622298
622337
|
output_style: outputStyle2,
|
|
622299
622338
|
agents: inputs.agents.map((agent) => agent.agentType),
|
|
622300
622339
|
skills: inputs.skills.filter((s2) => s2.userInvocable !== false).map((skill) => skill.name),
|
|
@@ -638527,8 +638566,8 @@ function FastModePicker(t0) {
|
|
|
638527
638566
|
"Learn more:",
|
|
638528
638567
|
" ",
|
|
638529
638568
|
/* @__PURE__ */ jsx_runtime386.jsx(Link, {
|
|
638530
|
-
url: "https://
|
|
638531
|
-
children: "https://
|
|
638569
|
+
url: "https://rayucode.com/docs",
|
|
638570
|
+
children: "https://rayucode.com/docs"
|
|
638532
638571
|
})
|
|
638533
638572
|
]
|
|
638534
638573
|
});
|
|
@@ -638625,7 +638664,7 @@ var init_useVoiceEnabled = __esm(() => {
|
|
|
638625
638664
|
function getSemverPart(version3) {
|
|
638626
638665
|
return `${import_semver12.major(version3, { loose: true })}.${import_semver12.minor(version3, { loose: true })}.${import_semver12.patch(version3, { loose: true })}`;
|
|
638627
638666
|
}
|
|
638628
|
-
function useUpdateNotification(updatedVersion, initialVersion = "1.4.
|
|
638667
|
+
function useUpdateNotification(updatedVersion, initialVersion = "1.4.471") {
|
|
638629
638668
|
const [lastNotifiedSemver, setLastNotifiedSemver] = import_react216.useState(() => getSemverPart(initialVersion));
|
|
638630
638669
|
if (!updatedVersion) {
|
|
638631
638670
|
return null;
|
|
@@ -638665,7 +638704,7 @@ function AutoUpdater({
|
|
|
638665
638704
|
return;
|
|
638666
638705
|
}
|
|
638667
638706
|
if (false) {}
|
|
638668
|
-
const currentVersion = "1.4.
|
|
638707
|
+
const currentVersion = "1.4.471";
|
|
638669
638708
|
const channel2 = getInitialSettings()?.autoUpdatesChannel ?? "latest";
|
|
638670
638709
|
let latestVersion = await getLatestVersion(channel2);
|
|
638671
638710
|
const isDisabled = isAutoUpdaterDisabled();
|
|
@@ -638878,12 +638917,12 @@ function NativeAutoUpdater({
|
|
|
638878
638917
|
logEvent("tengu_native_auto_updater_start", {});
|
|
638879
638918
|
try {
|
|
638880
638919
|
const maxVersion = await getMaxVersion();
|
|
638881
|
-
if (maxVersion && gt("1.4.
|
|
638920
|
+
if (maxVersion && gt("1.4.471", maxVersion)) {
|
|
638882
638921
|
const msg = await getMaxVersionMessage();
|
|
638883
638922
|
setMaxVersionIssue(msg ?? "affects your version");
|
|
638884
638923
|
}
|
|
638885
638924
|
const result = await installLatest(channel2);
|
|
638886
|
-
const currentVersion = "1.4.
|
|
638925
|
+
const currentVersion = "1.4.471";
|
|
638887
638926
|
const latencyMs = Date.now() - startTime2;
|
|
638888
638927
|
if (result.lockFailed) {
|
|
638889
638928
|
logEvent("tengu_native_auto_updater_lock_contention", {
|
|
@@ -639020,17 +639059,17 @@ function PackageManagerAutoUpdater(t0) {
|
|
|
639020
639059
|
const maxVersion = await getMaxVersion();
|
|
639021
639060
|
if (maxVersion && latest && gt(latest, maxVersion)) {
|
|
639022
639061
|
logForDebugging(`PackageManagerAutoUpdater: maxVersion ${maxVersion} is set, capping update from ${latest} to ${maxVersion}`);
|
|
639023
|
-
if (gte("1.4.
|
|
639024
|
-
logForDebugging(`PackageManagerAutoUpdater: current version ${"1.4.
|
|
639062
|
+
if (gte("1.4.471", maxVersion)) {
|
|
639063
|
+
logForDebugging(`PackageManagerAutoUpdater: current version ${"1.4.471"} is already at or above maxVersion ${maxVersion}, skipping update`);
|
|
639025
639064
|
setUpdateAvailable(false);
|
|
639026
639065
|
return;
|
|
639027
639066
|
}
|
|
639028
639067
|
latest = maxVersion;
|
|
639029
639068
|
}
|
|
639030
|
-
const hasUpdate = latest && !gte("1.4.
|
|
639069
|
+
const hasUpdate = latest && !gte("1.4.471", latest) && !shouldSkipVersion(latest);
|
|
639031
639070
|
setUpdateAvailable(!!hasUpdate);
|
|
639032
639071
|
if (hasUpdate) {
|
|
639033
|
-
logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.4.
|
|
639072
|
+
logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.4.471"} -> ${latest}`);
|
|
639034
639073
|
}
|
|
639035
639074
|
};
|
|
639036
639075
|
$3[0] = t1;
|
|
@@ -639064,7 +639103,7 @@ function PackageManagerAutoUpdater(t0) {
|
|
|
639064
639103
|
wrap: "truncate",
|
|
639065
639104
|
children: [
|
|
639066
639105
|
"currentVersion: ",
|
|
639067
|
-
"1.4.
|
|
639106
|
+
"1.4.471"
|
|
639068
639107
|
]
|
|
639069
639108
|
});
|
|
639070
639109
|
$3[3] = verbose;
|
|
@@ -647228,7 +647267,7 @@ function buildStatusLineCommandInput(permissionMode, exceeds200kTokens, settings
|
|
|
647228
647267
|
project_dir: getOriginalCwd(),
|
|
647229
647268
|
added_dirs: addedDirs
|
|
647230
647269
|
},
|
|
647231
|
-
version: "1.4.
|
|
647270
|
+
version: "1.4.471",
|
|
647232
647271
|
output_style: {
|
|
647233
647272
|
name: outputStyleName
|
|
647234
647273
|
},
|
|
@@ -649407,7 +649446,7 @@ var init_user = __esm(() => {
|
|
|
649407
649446
|
deviceId,
|
|
649408
649447
|
sessionId: getSessionId(),
|
|
649409
649448
|
email: getEmail(),
|
|
649410
|
-
appVersion: "1.4.
|
|
649449
|
+
appVersion: "1.4.471",
|
|
649411
649450
|
platform: getHostPlatformForAnalytics(),
|
|
649412
649451
|
organizationUuid,
|
|
649413
649452
|
accountUuid,
|
|
@@ -658846,7 +658885,7 @@ async function submitTranscriptShare(messages, trigger, appearanceId) {
|
|
|
658846
658885
|
} catch {}
|
|
658847
658886
|
const data = {
|
|
658848
658887
|
trigger,
|
|
658849
|
-
version: "1.4.
|
|
658888
|
+
version: "1.4.471",
|
|
658850
658889
|
platform: process.platform,
|
|
658851
658890
|
transcript,
|
|
658852
658891
|
subagentTranscripts: Object.keys(subagentTranscripts).length > 0 ? subagentTranscripts : undefined,
|
|
@@ -659674,7 +659713,7 @@ function TranscriptSharePrompt(t0) {
|
|
|
659674
659713
|
marginLeft: 2,
|
|
659675
659714
|
children: /* @__PURE__ */ jsx_runtime429.jsx(ThemedText, {
|
|
659676
659715
|
dimColor: true,
|
|
659677
|
-
children: "Learn more: https://
|
|
659716
|
+
children: "Learn more: https://rayucode.com/docs"
|
|
659678
659717
|
})
|
|
659679
659718
|
});
|
|
659680
659719
|
$3[7] = t4;
|
|
@@ -660788,6 +660827,7 @@ function isSupportedPlatform3() {
|
|
|
660788
660827
|
return process.platform === "darwin" || process.platform === "win32" && process.arch === "x64";
|
|
660789
660828
|
}
|
|
660790
660829
|
function shouldShowDesktopUpsellStartup() {
|
|
660830
|
+
return false;
|
|
660791
660831
|
if (!isSupportedPlatform3())
|
|
660792
660832
|
return false;
|
|
660793
660833
|
if (!getDesktopUpsellConfig().enable_startup_dialog)
|
|
@@ -670161,7 +670201,7 @@ function MCPServerDialogCopy() {
|
|
|
670161
670201
|
"MCP servers may execute code or access system resources. All tool calls require approval. Learn more in the",
|
|
670162
670202
|
" ",
|
|
670163
670203
|
/* @__PURE__ */ jsx_runtime451.jsx(Link, {
|
|
670164
|
-
url: "https://
|
|
670204
|
+
url: "https://rayucode.com/docs",
|
|
670165
670205
|
children: "MCP documentation"
|
|
670166
670206
|
}),
|
|
670167
670207
|
"."
|
|
@@ -670813,7 +670853,7 @@ function WelcomeV2() {
|
|
|
670813
670853
|
dimColor: true,
|
|
670814
670854
|
children: [
|
|
670815
670855
|
"v",
|
|
670816
|
-
"1.4.
|
|
670856
|
+
"1.4.471"
|
|
670817
670857
|
]
|
|
670818
670858
|
})
|
|
670819
670859
|
]
|
|
@@ -671820,7 +671860,7 @@ function completeOnboarding() {
|
|
|
671820
671860
|
saveGlobalConfig((current) => ({
|
|
671821
671861
|
...current,
|
|
671822
671862
|
hasCompletedOnboarding: true,
|
|
671823
|
-
lastOnboardingVersion: "1.4.
|
|
671863
|
+
lastOnboardingVersion: "1.4.471"
|
|
671824
671864
|
}));
|
|
671825
671865
|
}
|
|
671826
671866
|
function showDialog(root2, renderer) {
|
|
@@ -674057,7 +674097,7 @@ var init_keybindings3 = __esm(() => {
|
|
|
674057
674097
|
init_bundledSkills();
|
|
674058
674098
|
FILE_FORMAT_EXAMPLE = {
|
|
674059
674099
|
$schema: "https://www.schemastore.org/claude-code-keybindings.json",
|
|
674060
|
-
$docs: "https://
|
|
674100
|
+
$docs: "https://rayucode.com/docs",
|
|
674061
674101
|
bindings: [
|
|
674062
674102
|
{
|
|
674063
674103
|
context: "Chat",
|
|
@@ -676753,7 +676793,7 @@ function appendToLog(path29, message) {
|
|
|
676753
676793
|
cwd: getFsImplementation().cwd(),
|
|
676754
676794
|
userType: "external",
|
|
676755
676795
|
sessionId: getSessionId(),
|
|
676756
|
-
version: "1.4.
|
|
676796
|
+
version: "1.4.471"
|
|
676757
676797
|
};
|
|
676758
676798
|
getLogWriter(path29).write(messageWithTimestamp);
|
|
676759
676799
|
}
|
|
@@ -680858,8 +680898,8 @@ async function getEnvLessBridgeConfig() {
|
|
|
680858
680898
|
}
|
|
680859
680899
|
async function checkEnvLessBridgeMinVersion() {
|
|
680860
680900
|
const cfg = await getEnvLessBridgeConfig();
|
|
680861
|
-
if (cfg.min_version && lt("1.4.
|
|
680862
|
-
return `Your version of RAYU (${"1.4.
|
|
680901
|
+
if (cfg.min_version && lt("1.4.471", cfg.min_version)) {
|
|
680902
|
+
return `Your version of RAYU (${"1.4.471"}) is too old for Remote Control.
|
|
680863
680903
|
Version ${cfg.min_version} or higher is required. Run \`claude update\` to update.`;
|
|
680864
680904
|
}
|
|
680865
680905
|
return null;
|
|
@@ -681332,7 +681372,7 @@ async function initBridgeCore(params) {
|
|
|
681332
681372
|
const rawApi = createBridgeApiClient({
|
|
681333
681373
|
baseUrl,
|
|
681334
681374
|
getAccessToken,
|
|
681335
|
-
runnerVersion: "1.4.
|
|
681375
|
+
runnerVersion: "1.4.471",
|
|
681336
681376
|
onDebug: logForDebugging,
|
|
681337
681377
|
onAuth401,
|
|
681338
681378
|
getTrustedDeviceToken
|
|
@@ -686687,7 +686727,7 @@ async function startMCPServer(cwd3, debug4, verbose) {
|
|
|
686687
686727
|
setCwd(cwd3);
|
|
686688
686728
|
const server = new Server({
|
|
686689
686729
|
name: "claude/tengu",
|
|
686690
|
-
version: "1.4.
|
|
686730
|
+
version: "1.4.471"
|
|
686691
686731
|
}, {
|
|
686692
686732
|
capabilities: {
|
|
686693
686733
|
tools: {}
|
|
@@ -688329,6 +688369,9 @@ function initializeEntrypoint(isNonInteractive) {
|
|
|
688329
688369
|
return;
|
|
688330
688370
|
}
|
|
688331
688371
|
process.env.CLAUDE_CODE_ENTRYPOINT = isNonInteractive ? "sdk-cli" : "cli";
|
|
688372
|
+
if (!process.env.AI_AGENT) {
|
|
688373
|
+
process.env.AI_AGENT = "rayu";
|
|
688374
|
+
}
|
|
688332
688375
|
}
|
|
688333
688376
|
async function main() {
|
|
688334
688377
|
profileCheckpoint("main_function_start");
|
|
@@ -689213,7 +689256,7 @@ ${customInstructions}` : customInstructions;
|
|
|
689213
689256
|
}
|
|
689214
689257
|
}
|
|
689215
689258
|
logForDiagnosticsNoPII("info", "started", {
|
|
689216
|
-
version: "1.4.
|
|
689259
|
+
version: "1.4.471",
|
|
689217
689260
|
is_native_binary: isInBundledMode()
|
|
689218
689261
|
});
|
|
689219
689262
|
registerCleanup(async () => {
|
|
@@ -689932,7 +689975,7 @@ Usage: rayu --remote "your task description"`, () => gracefulShutdown(1));
|
|
|
689932
689975
|
pendingHookMessages
|
|
689933
689976
|
}, renderAndRun);
|
|
689934
689977
|
}
|
|
689935
|
-
}).version(`1.4.
|
|
689978
|
+
}).version(`1.4.471 (${PRODUCT_NAME})`, "-v, --version", "Output the version number");
|
|
689936
689979
|
program.option("-w, --worktree [name]", "Create a new git worktree for this session (optionally specify a name)");
|
|
689937
689980
|
program.option("--tmux", "Create a tmux session for the worktree (requires --worktree). Uses iTerm2 native panes when available; use --tmux=classic for traditional tmux.");
|
|
689938
689981
|
if (canUserConfigureAdvisor()) {
|
|
@@ -690392,7 +690435,7 @@ if (false) {}
|
|
|
690392
690435
|
async function main2() {
|
|
690393
690436
|
const args = process.argv.slice(2);
|
|
690394
690437
|
if (args.length === 1 && (args[0] === "--version" || args[0] === "-v" || args[0] === "-V")) {
|
|
690395
|
-
console.log(`${"1.4.
|
|
690438
|
+
console.log(`${"1.4.471"} (Rayu-CLI)`);
|
|
690396
690439
|
return;
|
|
690397
690440
|
}
|
|
690398
690441
|
if (!isEnvTruthy(process.env.CLAUDE_CODE_DISABLE_TERMINAL_TITLE)) {
|