localclawd 1.8.7 → 1.8.9
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/dist/cli.mjs +117 -92
- package/package.json +1 -1
package/dist/cli.mjs
CHANGED
|
@@ -87608,7 +87608,7 @@ var init_isEqual = __esm(() => {
|
|
|
87608
87608
|
|
|
87609
87609
|
// src/utils/userAgent.ts
|
|
87610
87610
|
function getClaudeCodeUserAgent() {
|
|
87611
|
-
return `claude-code/${"1.8.
|
|
87611
|
+
return `claude-code/${"1.8.9"}`;
|
|
87612
87612
|
}
|
|
87613
87613
|
|
|
87614
87614
|
// src/utils/workloadContext.ts
|
|
@@ -87630,7 +87630,7 @@ function getUserAgent() {
|
|
|
87630
87630
|
const clientApp = process.env.CLAUDE_AGENT_SDK_CLIENT_APP ? `, client-app/${process.env.CLAUDE_AGENT_SDK_CLIENT_APP}` : "";
|
|
87631
87631
|
const workload = getWorkload();
|
|
87632
87632
|
const workloadSuffix = workload ? `, workload/${workload}` : "";
|
|
87633
|
-
return `claude-cli/${"1.8.
|
|
87633
|
+
return `claude-cli/${"1.8.9"} (${process.env.USER_TYPE}, ${process.env.CLAUDE_CODE_ENTRYPOINT ?? "cli"}${agentSdkVersion}${clientApp}${workloadSuffix})`;
|
|
87634
87634
|
}
|
|
87635
87635
|
function getMCPUserAgent() {
|
|
87636
87636
|
const parts = [];
|
|
@@ -87644,7 +87644,7 @@ function getMCPUserAgent() {
|
|
|
87644
87644
|
parts.push(`client-app/${process.env.CLAUDE_AGENT_SDK_CLIENT_APP}`);
|
|
87645
87645
|
}
|
|
87646
87646
|
const suffix = parts.length > 0 ? ` (${parts.join(", ")})` : "";
|
|
87647
|
-
return `claude-code/${"1.8.
|
|
87647
|
+
return `claude-code/${"1.8.9"}${suffix}`;
|
|
87648
87648
|
}
|
|
87649
87649
|
function getWebFetchUserAgent() {
|
|
87650
87650
|
return `Claude-User (${getClaudeCodeUserAgent()}; +https://support.anthropic.com/)`;
|
|
@@ -130840,7 +130840,7 @@ function getAttributionHeader(fingerprint) {
|
|
|
130840
130840
|
if (!isAttributionHeaderEnabled()) {
|
|
130841
130841
|
return "";
|
|
130842
130842
|
}
|
|
130843
|
-
const version = `${"1.8.
|
|
130843
|
+
const version = `${"1.8.9"}.${fingerprint}`;
|
|
130844
130844
|
const entrypoint = process.env.CLAUDE_CODE_ENTRYPOINT ?? "unknown";
|
|
130845
130845
|
const cch = "";
|
|
130846
130846
|
const workload = getWorkload();
|
|
@@ -147029,7 +147029,7 @@ var init_metadata = __esm(() => {
|
|
|
147029
147029
|
COMPOUND_OPERATOR_REGEX = /\s*(?:&&|\|\||[;|])\s*/;
|
|
147030
147030
|
WHITESPACE_REGEX = /\s+/;
|
|
147031
147031
|
getVersionBase = memoize_default(() => {
|
|
147032
|
-
const match = "1.8.
|
|
147032
|
+
const match = "1.8.9".match(/^\d+\.\d+\.\d+(?:-[a-z]+)?/);
|
|
147033
147033
|
return match ? match[0] : undefined;
|
|
147034
147034
|
});
|
|
147035
147035
|
buildEnvContext = memoize_default(async () => {
|
|
@@ -147069,9 +147069,9 @@ var init_metadata = __esm(() => {
|
|
|
147069
147069
|
isGithubAction: isEnvTruthy(process.env.GITHUB_ACTIONS),
|
|
147070
147070
|
isClaudeCodeAction: isEnvTruthy(process.env.CLAUDE_CODE_ACTION),
|
|
147071
147071
|
isClaudeAiAuth: isClaudeAISubscriber(),
|
|
147072
|
-
version: "1.8.
|
|
147072
|
+
version: "1.8.9",
|
|
147073
147073
|
versionBase: getVersionBase(),
|
|
147074
|
-
buildTime: "2026-05-07T17:
|
|
147074
|
+
buildTime: "2026-05-07T17:33:40.617Z",
|
|
147075
147075
|
deploymentEnvironment: env3.detectDeploymentEnvironment(),
|
|
147076
147076
|
...isEnvTruthy(process.env.GITHUB_ACTIONS) && {
|
|
147077
147077
|
githubEventName: process.env.GITHUB_EVENT_NAME,
|
|
@@ -179647,7 +179647,7 @@ function getTelemetryAttributes() {
|
|
|
179647
179647
|
attributes["session.id"] = sessionId;
|
|
179648
179648
|
}
|
|
179649
179649
|
if (shouldIncludeAttribute("OTEL_METRICS_INCLUDE_VERSION")) {
|
|
179650
|
-
attributes["app.version"] = "1.8.
|
|
179650
|
+
attributes["app.version"] = "1.8.9";
|
|
179651
179651
|
}
|
|
179652
179652
|
const oauthAccount = getOauthAccountInfo();
|
|
179653
179653
|
if (oauthAccount) {
|
|
@@ -242448,7 +242448,7 @@ function getInstallationEnv() {
|
|
|
242448
242448
|
return;
|
|
242449
242449
|
}
|
|
242450
242450
|
function getClaudeCodeVersion() {
|
|
242451
|
-
return "1.8.
|
|
242451
|
+
return "1.8.9";
|
|
242452
242452
|
}
|
|
242453
242453
|
async function getInstalledVSCodeExtensionVersion(command) {
|
|
242454
242454
|
const { stdout } = await execFileNoThrow(command, ["--list-extensions", "--show-versions"], {
|
|
@@ -247722,7 +247722,7 @@ async function setupSdkMcpClients(sdkMcpConfigs, sendMcpMessage) {
|
|
|
247722
247722
|
const client4 = new Client({
|
|
247723
247723
|
name: "localclawd",
|
|
247724
247724
|
title: "localclawd",
|
|
247725
|
-
version: "1.8.
|
|
247725
|
+
version: "1.8.9",
|
|
247726
247726
|
description: "local-first AI coding tool",
|
|
247727
247727
|
websiteUrl: PRODUCT_URL
|
|
247728
247728
|
}, {
|
|
@@ -248064,7 +248064,7 @@ var init_client9 = __esm(() => {
|
|
|
248064
248064
|
const client4 = new Client({
|
|
248065
248065
|
name: "localclawd",
|
|
248066
248066
|
title: "localclawd",
|
|
248067
|
-
version: "1.8.
|
|
248067
|
+
version: "1.8.9",
|
|
248068
248068
|
description: "local-first AI coding tool",
|
|
248069
248069
|
websiteUrl: PRODUCT_URL
|
|
248070
248070
|
}, {
|
|
@@ -262466,7 +262466,7 @@ function computeFingerprint(messageText, version) {
|
|
|
262466
262466
|
}
|
|
262467
262467
|
function computeFingerprintFromMessages(messages) {
|
|
262468
262468
|
const firstMessageText = extractFirstMessageText(messages);
|
|
262469
|
-
return computeFingerprint(firstMessageText, "1.8.
|
|
262469
|
+
return computeFingerprint(firstMessageText, "1.8.9");
|
|
262470
262470
|
}
|
|
262471
262471
|
var FINGERPRINT_SALT = "59cf53e54c78";
|
|
262472
262472
|
var init_fingerprint = () => {};
|
|
@@ -262508,7 +262508,7 @@ async function sideQuery(opts) {
|
|
|
262508
262508
|
betas.push(STRUCTURED_OUTPUTS_BETA_HEADER);
|
|
262509
262509
|
}
|
|
262510
262510
|
const messageText = extractFirstUserMessageText(messages);
|
|
262511
|
-
const fingerprint = computeFingerprint(messageText, "1.8.
|
|
262511
|
+
const fingerprint = computeFingerprint(messageText, "1.8.9");
|
|
262512
262512
|
const attributionHeader = getAttributionHeader(fingerprint);
|
|
262513
262513
|
const systemBlocks = [
|
|
262514
262514
|
attributionHeader ? { type: "text", text: attributionHeader } : null,
|
|
@@ -283256,7 +283256,7 @@ var init_user = __esm(() => {
|
|
|
283256
283256
|
deviceId,
|
|
283257
283257
|
sessionId: getSessionId(),
|
|
283258
283258
|
email: getEmail(),
|
|
283259
|
-
appVersion: "1.8.
|
|
283259
|
+
appVersion: "1.8.9",
|
|
283260
283260
|
platform: getHostPlatformForAnalytics(),
|
|
283261
283261
|
organizationUuid,
|
|
283262
283262
|
accountUuid,
|
|
@@ -284321,7 +284321,7 @@ async function initializeBetaTracing(resource) {
|
|
|
284321
284321
|
});
|
|
284322
284322
|
logs.setGlobalLoggerProvider(loggerProvider);
|
|
284323
284323
|
setLoggerProvider(loggerProvider);
|
|
284324
|
-
const eventLogger = logs.getLogger("com.anthropic.claude_code.events", "1.8.
|
|
284324
|
+
const eventLogger = logs.getLogger("com.anthropic.claude_code.events", "1.8.9");
|
|
284325
284325
|
setEventLogger(eventLogger);
|
|
284326
284326
|
process.on("beforeExit", async () => {
|
|
284327
284327
|
await loggerProvider?.forceFlush();
|
|
@@ -284361,7 +284361,7 @@ async function initializeTelemetry() {
|
|
|
284361
284361
|
const platform2 = getPlatform();
|
|
284362
284362
|
const baseAttributes = {
|
|
284363
284363
|
[ATTR_SERVICE_NAME4]: "claude-code",
|
|
284364
|
-
[ATTR_SERVICE_VERSION4]: "1.8.
|
|
284364
|
+
[ATTR_SERVICE_VERSION4]: "1.8.9"
|
|
284365
284365
|
};
|
|
284366
284366
|
if (platform2 === "wsl") {
|
|
284367
284367
|
const wslVersion = getWslVersion();
|
|
@@ -284406,7 +284406,7 @@ async function initializeTelemetry() {
|
|
|
284406
284406
|
} catch {}
|
|
284407
284407
|
};
|
|
284408
284408
|
registerCleanup(shutdownTelemetry2);
|
|
284409
|
-
return meterProvider2.getMeter("com.anthropic.claude_code", "1.8.
|
|
284409
|
+
return meterProvider2.getMeter("com.anthropic.claude_code", "1.8.9");
|
|
284410
284410
|
}
|
|
284411
284411
|
const meterProvider = new MeterProvider4({
|
|
284412
284412
|
resource,
|
|
@@ -284426,7 +284426,7 @@ async function initializeTelemetry() {
|
|
|
284426
284426
|
});
|
|
284427
284427
|
logs.setGlobalLoggerProvider(loggerProvider);
|
|
284428
284428
|
setLoggerProvider(loggerProvider);
|
|
284429
|
-
const eventLogger = logs.getLogger("com.anthropic.claude_code.events", "1.8.
|
|
284429
|
+
const eventLogger = logs.getLogger("com.anthropic.claude_code.events", "1.8.9");
|
|
284430
284430
|
setEventLogger(eventLogger);
|
|
284431
284431
|
logForDebugging("[3P telemetry] Event logger set successfully");
|
|
284432
284432
|
process.on("beforeExit", async () => {
|
|
@@ -284488,7 +284488,7 @@ Current timeout: ${timeoutMs}ms
|
|
|
284488
284488
|
}
|
|
284489
284489
|
};
|
|
284490
284490
|
registerCleanup(shutdownTelemetry);
|
|
284491
|
-
return meterProvider.getMeter("com.anthropic.claude_code", "1.8.
|
|
284491
|
+
return meterProvider.getMeter("com.anthropic.claude_code", "1.8.9");
|
|
284492
284492
|
}
|
|
284493
284493
|
async function flushTelemetry() {
|
|
284494
284494
|
const meterProvider = getMeterProvider();
|
|
@@ -285678,7 +285678,7 @@ function detectLinuxGlobPatternWarnings() {
|
|
|
285678
285678
|
}
|
|
285679
285679
|
async function getDoctorDiagnostic() {
|
|
285680
285680
|
const installationType = await getCurrentInstallationType();
|
|
285681
|
-
const version = typeof MACRO !== "undefined" ? "1.8.
|
|
285681
|
+
const version = typeof MACRO !== "undefined" ? "1.8.9" : "unknown";
|
|
285682
285682
|
const installationPath = await getInstallationPath();
|
|
285683
285683
|
const invokedBinary = getInvokedBinary();
|
|
285684
285684
|
const multipleInstallations = await detectMultipleInstallations();
|
|
@@ -286619,8 +286619,8 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
|
|
|
286619
286619
|
const maxVersion = await getMaxVersion();
|
|
286620
286620
|
if (maxVersion && gt(version, maxVersion)) {
|
|
286621
286621
|
logForDebugging(`Native installer: maxVersion ${maxVersion} is set, capping update from ${version} to ${maxVersion}`);
|
|
286622
|
-
if (gte("1.8.
|
|
286623
|
-
logForDebugging(`Native installer: current version ${"1.8.
|
|
286622
|
+
if (gte("1.8.9", maxVersion)) {
|
|
286623
|
+
logForDebugging(`Native installer: current version ${"1.8.9"} is already at or above maxVersion ${maxVersion}, skipping update`);
|
|
286624
286624
|
logEvent("tengu_native_update_skipped_max_version", {
|
|
286625
286625
|
latency_ms: Date.now() - startTime,
|
|
286626
286626
|
max_version: maxVersion,
|
|
@@ -286631,7 +286631,7 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
|
|
|
286631
286631
|
version = maxVersion;
|
|
286632
286632
|
}
|
|
286633
286633
|
}
|
|
286634
|
-
if (!forceReinstall && version === "1.8.
|
|
286634
|
+
if (!forceReinstall && version === "1.8.9" && await versionIsAvailable(version) && await isPossibleLocalClawdBinary(executablePath)) {
|
|
286635
286635
|
logForDebugging(`Found ${version} at ${executablePath}, skipping install`);
|
|
286636
286636
|
logEvent("tengu_native_update_complete", {
|
|
286637
286637
|
latency_ms: Date.now() - startTime,
|
|
@@ -322837,15 +322837,29 @@ async function fetchServerWorkflowList(url3) {
|
|
|
322837
322837
|
}
|
|
322838
322838
|
}
|
|
322839
322839
|
async function fetchServerWorkflow(url3, name) {
|
|
322840
|
-
|
|
322841
|
-
|
|
322842
|
-
|
|
322843
|
-
|
|
322844
|
-
|
|
322845
|
-
|
|
322846
|
-
|
|
322847
|
-
|
|
322840
|
+
const filename = name.endsWith(".json") ? name : `${name}.json`;
|
|
322841
|
+
const candidates = [
|
|
322842
|
+
`${url3}/userdata/workflows/${encodeURIComponent(filename)}`,
|
|
322843
|
+
`${url3}/userdata/${encodeURIComponent(filename)}`,
|
|
322844
|
+
`${url3}/userdata?file=${encodeURIComponent(`workflows/${filename}`)}`
|
|
322845
|
+
];
|
|
322846
|
+
for (const candidate of candidates) {
|
|
322847
|
+
try {
|
|
322848
|
+
const res = await fetch(candidate);
|
|
322849
|
+
if (res.ok) {
|
|
322850
|
+
try {
|
|
322851
|
+
const data = await res.json();
|
|
322852
|
+
if (data && typeof data === "object" && !Array.isArray(data) && Object.keys(data).length === 0)
|
|
322853
|
+
continue;
|
|
322854
|
+
return { data };
|
|
322855
|
+
} catch {}
|
|
322856
|
+
}
|
|
322857
|
+
} catch {}
|
|
322848
322858
|
}
|
|
322859
|
+
return {
|
|
322860
|
+
error: `ComfyUI did not return workflow content (tried ${candidates.length} URL patterns).`,
|
|
322861
|
+
manualExport: true
|
|
322862
|
+
};
|
|
322849
322863
|
}
|
|
322850
322864
|
function extractOutputImages(item) {
|
|
322851
322865
|
const images = [];
|
|
@@ -331870,7 +331884,7 @@ function getAnthropicEnvMetadata() {
|
|
|
331870
331884
|
function getBuildAgeMinutes() {
|
|
331871
331885
|
if (false)
|
|
331872
331886
|
;
|
|
331873
|
-
const buildTime = new Date("2026-05-07T17:
|
|
331887
|
+
const buildTime = new Date("2026-05-07T17:33:40.617Z").getTime();
|
|
331874
331888
|
if (isNaN(buildTime))
|
|
331875
331889
|
return;
|
|
331876
331890
|
return Math.floor((Date.now() - buildTime) / 60000);
|
|
@@ -360700,7 +360714,7 @@ function Feedback({
|
|
|
360700
360714
|
platform: env3.platform,
|
|
360701
360715
|
gitRepo: envInfo.isGit,
|
|
360702
360716
|
terminal: env3.terminal,
|
|
360703
|
-
version: "1.8.
|
|
360717
|
+
version: "1.8.9",
|
|
360704
360718
|
transcript: normalizeMessagesForAPI(messages),
|
|
360705
360719
|
errors: sanitizedErrors,
|
|
360706
360720
|
lastApiRequest: getLastAPIRequest(),
|
|
@@ -360892,7 +360906,7 @@ function Feedback({
|
|
|
360892
360906
|
", ",
|
|
360893
360907
|
env3.terminal,
|
|
360894
360908
|
", v",
|
|
360895
|
-
"1.8.
|
|
360909
|
+
"1.8.9"
|
|
360896
360910
|
]
|
|
360897
360911
|
}, undefined, true, undefined, this)
|
|
360898
360912
|
]
|
|
@@ -360998,7 +361012,7 @@ ${sanitizedDescription}
|
|
|
360998
361012
|
` + `**Environment Info**
|
|
360999
361013
|
` + `- Platform: ${env3.platform}
|
|
361000
361014
|
` + `- Terminal: ${env3.terminal}
|
|
361001
|
-
` + `- Version: ${"1.8.
|
|
361015
|
+
` + `- Version: ${"1.8.9"}
|
|
361002
361016
|
` + `- Feedback ID: ${feedbackId}
|
|
361003
361017
|
` + `
|
|
361004
361018
|
**Errors**
|
|
@@ -363626,7 +363640,7 @@ function buildPrimarySection() {
|
|
|
363626
363640
|
}, undefined, false, undefined, this);
|
|
363627
363641
|
return [{
|
|
363628
363642
|
label: "Version",
|
|
363629
|
-
value: "1.8.
|
|
363643
|
+
value: "1.8.9"
|
|
363630
363644
|
}, {
|
|
363631
363645
|
label: "Session name",
|
|
363632
363646
|
value: nameValue
|
|
@@ -368307,7 +368321,7 @@ function Config({
|
|
|
368307
368321
|
}
|
|
368308
368322
|
}, undefined, false, undefined, this)
|
|
368309
368323
|
}, undefined, false, undefined, this) : showSubmenu === "ChannelDowngrade" ? /* @__PURE__ */ jsx_dev_runtime176.jsxDEV(ChannelDowngradeDialog, {
|
|
368310
|
-
currentVersion: "1.8.
|
|
368324
|
+
currentVersion: "1.8.9",
|
|
368311
368325
|
onChoice: (choice) => {
|
|
368312
368326
|
setShowSubmenu(null);
|
|
368313
368327
|
setTabsHidden(false);
|
|
@@ -368319,7 +368333,7 @@ function Config({
|
|
|
368319
368333
|
autoUpdatesChannel: "stable"
|
|
368320
368334
|
};
|
|
368321
368335
|
if (choice === "stay") {
|
|
368322
|
-
newSettings.minimumVersion = "1.8.
|
|
368336
|
+
newSettings.minimumVersion = "1.8.9";
|
|
368323
368337
|
}
|
|
368324
368338
|
updateSettingsForSource("userSettings", newSettings);
|
|
368325
368339
|
setSettingsData((prev_27) => ({
|
|
@@ -375078,14 +375092,25 @@ var call20 = async (onDone, _context, args) => {
|
|
|
375078
375092
|
`), { display: "system" });
|
|
375079
375093
|
return null;
|
|
375080
375094
|
}
|
|
375081
|
-
const
|
|
375082
|
-
if (
|
|
375095
|
+
const fetchResult = await fetchServerWorkflow(backendUrl, name);
|
|
375096
|
+
if ("error" in fetchResult) {
|
|
375097
|
+
const wfDir = `${projectRoot}\\.localclawd\\image-pipeline\\workflows`;
|
|
375083
375098
|
onDone([
|
|
375084
375099
|
`◆ Image Pipeline — Fetch Failed: "${name}"`,
|
|
375085
375100
|
"",
|
|
375086
|
-
`
|
|
375087
|
-
"
|
|
375088
|
-
"
|
|
375101
|
+
` ${fetchResult.error}`,
|
|
375102
|
+
"",
|
|
375103
|
+
" Your ComfyUI version may not support workflow download via API.",
|
|
375104
|
+
" Export the workflow manually:",
|
|
375105
|
+
"",
|
|
375106
|
+
` 1. Open ComfyUI: ${backendUrl}`,
|
|
375107
|
+
" 2. Load the workflow from the sidebar",
|
|
375108
|
+
" 3. Settings → Enable Dev Mode (gear icon)",
|
|
375109
|
+
" 4. Click Save (API Format) — saves a flat JSON file",
|
|
375110
|
+
" 5. Copy that file here:",
|
|
375111
|
+
` ${wfDir}\\${name}.json`,
|
|
375112
|
+
"",
|
|
375113
|
+
" Then use: /image " + name + ": <your prompt>"
|
|
375089
375114
|
].join(`
|
|
375090
375115
|
`), { display: "system" });
|
|
375091
375116
|
return null;
|
|
@@ -375094,7 +375119,7 @@ var call20 = async (onDone, _context, args) => {
|
|
|
375094
375119
|
const filename = name.endsWith(".json") ? name : `${name}.json`;
|
|
375095
375120
|
const outPath = join113(projectRoot, ".localclawd", "image-pipeline", "workflows", filename);
|
|
375096
375121
|
await mkdir35(join113(projectRoot, ".localclawd", "image-pipeline", "workflows"), { recursive: true });
|
|
375097
|
-
await writeFile37(outPath, JSON.stringify(
|
|
375122
|
+
await writeFile37(outPath, JSON.stringify(fetchResult.data, null, 2), "utf-8");
|
|
375098
375123
|
onDone([
|
|
375099
375124
|
`◆ Image Pipeline — Fetched: "${name}"`,
|
|
375100
375125
|
"",
|
|
@@ -385751,7 +385776,7 @@ function Help(t0) {
|
|
|
385751
385776
|
let t6;
|
|
385752
385777
|
if ($2[31] !== tabs) {
|
|
385753
385778
|
t6 = /* @__PURE__ */ jsx_dev_runtime221.jsxDEV(Tabs, {
|
|
385754
|
-
title: `localclawd v${"1.8.
|
|
385779
|
+
title: `localclawd v${"1.8.9"}`,
|
|
385755
385780
|
color: "professionalBlue",
|
|
385756
385781
|
defaultTab: "general",
|
|
385757
385782
|
children: tabs
|
|
@@ -403013,7 +403038,7 @@ function getRecentReleaseNotes(currentVersion, previousVersion, changelogContent
|
|
|
403013
403038
|
}
|
|
403014
403039
|
return [];
|
|
403015
403040
|
}
|
|
403016
|
-
async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.8.
|
|
403041
|
+
async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.8.9") {
|
|
403017
403042
|
if (process.env.USER_TYPE === "ant") {
|
|
403018
403043
|
const changelog = MACRO.VERSION_CHANGELOG;
|
|
403019
403044
|
if (changelog) {
|
|
@@ -403040,7 +403065,7 @@ async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.8.7") {
|
|
|
403040
403065
|
releaseNotes
|
|
403041
403066
|
};
|
|
403042
403067
|
}
|
|
403043
|
-
function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.8.
|
|
403068
|
+
function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.8.9") {
|
|
403044
403069
|
if (process.env.USER_TYPE === "ant") {
|
|
403045
403070
|
const changelog = MACRO.VERSION_CHANGELOG;
|
|
403046
403071
|
if (changelog) {
|
|
@@ -403197,7 +403222,7 @@ function getRecentActivitySync() {
|
|
|
403197
403222
|
return cachedActivity;
|
|
403198
403223
|
}
|
|
403199
403224
|
function getLogoDisplayData() {
|
|
403200
|
-
const version = process.env.DEMO_VERSION ?? "1.8.
|
|
403225
|
+
const version = process.env.DEMO_VERSION ?? "1.8.9";
|
|
403201
403226
|
const serverUrl = getDirectConnectServerUrl();
|
|
403202
403227
|
const displayPath = process.env.DEMO_VERSION ? "/code/claude" : getDisplayPath(getCwd());
|
|
403203
403228
|
const cwd2 = serverUrl ? `${displayPath} in ${serverUrl.replace(/^https?:\/\//, "")}` : displayPath;
|
|
@@ -404297,7 +404322,7 @@ function Logo() {
|
|
|
404297
404322
|
if ($2[2] === Symbol.for("react.memo_cache_sentinel")) {
|
|
404298
404323
|
t2 = () => {
|
|
404299
404324
|
const currentConfig = getGlobalConfig();
|
|
404300
|
-
if (currentConfig.lastReleaseNotesSeen === "1.8.
|
|
404325
|
+
if (currentConfig.lastReleaseNotesSeen === "1.8.9") {
|
|
404301
404326
|
return;
|
|
404302
404327
|
}
|
|
404303
404328
|
saveGlobalConfig(_temp326);
|
|
@@ -404956,12 +404981,12 @@ function Logo() {
|
|
|
404956
404981
|
return t41;
|
|
404957
404982
|
}
|
|
404958
404983
|
function _temp326(current) {
|
|
404959
|
-
if (current.lastReleaseNotesSeen === "1.8.
|
|
404984
|
+
if (current.lastReleaseNotesSeen === "1.8.9") {
|
|
404960
404985
|
return current;
|
|
404961
404986
|
}
|
|
404962
404987
|
return {
|
|
404963
404988
|
...current,
|
|
404964
|
-
lastReleaseNotesSeen: "1.8.
|
|
404989
|
+
lastReleaseNotesSeen: "1.8.9"
|
|
404965
404990
|
};
|
|
404966
404991
|
}
|
|
404967
404992
|
function _temp241(s_0) {
|
|
@@ -435440,7 +435465,7 @@ async function captureMemoryDiagnostics(trigger, dumpNumber = 0) {
|
|
|
435440
435465
|
smapsRollup,
|
|
435441
435466
|
platform: process.platform,
|
|
435442
435467
|
nodeVersion: process.version,
|
|
435443
|
-
ccVersion: "1.8.
|
|
435468
|
+
ccVersion: "1.8.9"
|
|
435444
435469
|
};
|
|
435445
435470
|
}
|
|
435446
435471
|
async function performHeapDump(trigger = "manual", dumpNumber = 0) {
|
|
@@ -436025,7 +436050,7 @@ var init_bridge_kick = __esm(() => {
|
|
|
436025
436050
|
var call87 = async () => {
|
|
436026
436051
|
return {
|
|
436027
436052
|
type: "text",
|
|
436028
|
-
value: `${"1.8.
|
|
436053
|
+
value: `${"1.8.9"} (built ${"2026-05-07T17:33:40.617Z"})`
|
|
436029
436054
|
};
|
|
436030
436055
|
}, version, version_default;
|
|
436031
436056
|
var init_version = __esm(() => {
|
|
@@ -443969,7 +443994,7 @@ function generateHtmlReport(data, insights) {
|
|
|
443969
443994
|
</html>`;
|
|
443970
443995
|
}
|
|
443971
443996
|
function buildExportData(data, insights, facets, remoteStats) {
|
|
443972
|
-
const version2 = typeof MACRO !== "undefined" ? "1.8.
|
|
443997
|
+
const version2 = typeof MACRO !== "undefined" ? "1.8.9" : "unknown";
|
|
443973
443998
|
const remote_hosts_collected = remoteStats?.hosts.filter((h) => h.sessionCount > 0).map((h) => h.name);
|
|
443974
443999
|
const facets_summary = {
|
|
443975
444000
|
total: facets.size,
|
|
@@ -448170,7 +448195,7 @@ var init_sessionStorage = __esm(() => {
|
|
|
448170
448195
|
init_settings2();
|
|
448171
448196
|
init_slowOperations();
|
|
448172
448197
|
init_uuid();
|
|
448173
|
-
VERSION6 = typeof MACRO !== "undefined" ? "1.8.
|
|
448198
|
+
VERSION6 = typeof MACRO !== "undefined" ? "1.8.9" : "unknown";
|
|
448174
448199
|
MAX_TOMBSTONE_REWRITE_BYTES = 50 * 1024 * 1024;
|
|
448175
448200
|
SKIP_FIRST_PROMPT_PATTERN = /^(?:\s*<[a-z][\w-]*[\s>]|\[Request interrupted by user[^\]]*\])/;
|
|
448176
448201
|
EPHEMERAL_PROGRESS_TYPES = new Set([
|
|
@@ -449371,7 +449396,7 @@ var init_filesystem = __esm(() => {
|
|
|
449371
449396
|
});
|
|
449372
449397
|
getBundledSkillsRoot = memoize_default(function getBundledSkillsRoot2() {
|
|
449373
449398
|
const nonce = randomBytes20(16).toString("hex");
|
|
449374
|
-
return join151(getClaudeTempDir(), "bundled-skills", "1.8.
|
|
449399
|
+
return join151(getClaudeTempDir(), "bundled-skills", "1.8.9", nonce);
|
|
449375
449400
|
});
|
|
449376
449401
|
getResolvedWorkingDirPaths = memoize_default(getPathsForPermissionCheck);
|
|
449377
449402
|
});
|
|
@@ -458608,7 +458633,7 @@ function buildSystemInitMessage(inputs) {
|
|
|
458608
458633
|
slash_commands: inputs.commands.filter((c5) => c5.userInvocable !== false).map((c5) => c5.name),
|
|
458609
458634
|
apiKeySource: getAnthropicApiKeyWithSource().source,
|
|
458610
458635
|
betas: getSdkBetas(),
|
|
458611
|
-
claude_code_version: "1.8.
|
|
458636
|
+
claude_code_version: "1.8.9",
|
|
458612
458637
|
output_style: outputStyle2,
|
|
458613
458638
|
agents: inputs.agents.map((agent) => agent.agentType),
|
|
458614
458639
|
skills: inputs.skills.filter((s) => s.userInvocable !== false).map((skill) => skill.name),
|
|
@@ -472765,7 +472790,7 @@ var init_useVoiceEnabled = __esm(() => {
|
|
|
472765
472790
|
function getSemverPart(version2) {
|
|
472766
472791
|
return `${import_semver10.major(version2, { loose: true })}.${import_semver10.minor(version2, { loose: true })}.${import_semver10.patch(version2, { loose: true })}`;
|
|
472767
472792
|
}
|
|
472768
|
-
function useUpdateNotification(updatedVersion, initialVersion = "1.8.
|
|
472793
|
+
function useUpdateNotification(updatedVersion, initialVersion = "1.8.9") {
|
|
472769
472794
|
const [lastNotifiedSemver, setLastNotifiedSemver] = import_react214.useState(() => getSemverPart(initialVersion));
|
|
472770
472795
|
if (!updatedVersion) {
|
|
472771
472796
|
return null;
|
|
@@ -472805,7 +472830,7 @@ function AutoUpdater({
|
|
|
472805
472830
|
return;
|
|
472806
472831
|
}
|
|
472807
472832
|
if (false) {}
|
|
472808
|
-
const currentVersion = "1.8.
|
|
472833
|
+
const currentVersion = "1.8.9";
|
|
472809
472834
|
const channel = getInitialSettings()?.autoUpdatesChannel ?? "latest";
|
|
472810
472835
|
let latestVersion = await getLatestVersion(channel);
|
|
472811
472836
|
const isDisabled = isAutoUpdaterDisabled();
|
|
@@ -473016,12 +473041,12 @@ function NativeAutoUpdater({
|
|
|
473016
473041
|
logEvent("tengu_native_auto_updater_start", {});
|
|
473017
473042
|
try {
|
|
473018
473043
|
const maxVersion = await getMaxVersion();
|
|
473019
|
-
if (maxVersion && gt("1.8.
|
|
473044
|
+
if (maxVersion && gt("1.8.9", maxVersion)) {
|
|
473020
473045
|
const msg = await getMaxVersionMessage();
|
|
473021
473046
|
setMaxVersionIssue(msg ?? "affects your version");
|
|
473022
473047
|
}
|
|
473023
473048
|
const result = await installLatest(channel);
|
|
473024
|
-
const currentVersion = "1.8.
|
|
473049
|
+
const currentVersion = "1.8.9";
|
|
473025
473050
|
const latencyMs = Date.now() - startTime;
|
|
473026
473051
|
if (result.lockFailed) {
|
|
473027
473052
|
logEvent("tengu_native_auto_updater_lock_contention", {
|
|
@@ -473156,17 +473181,17 @@ function PackageManagerAutoUpdater(t0) {
|
|
|
473156
473181
|
const maxVersion = await getMaxVersion();
|
|
473157
473182
|
if (maxVersion && latest && gt(latest, maxVersion)) {
|
|
473158
473183
|
logForDebugging(`PackageManagerAutoUpdater: maxVersion ${maxVersion} is set, capping update from ${latest} to ${maxVersion}`);
|
|
473159
|
-
if (gte("1.8.
|
|
473160
|
-
logForDebugging(`PackageManagerAutoUpdater: current version ${"1.8.
|
|
473184
|
+
if (gte("1.8.9", maxVersion)) {
|
|
473185
|
+
logForDebugging(`PackageManagerAutoUpdater: current version ${"1.8.9"} is already at or above maxVersion ${maxVersion}, skipping update`);
|
|
473161
473186
|
setUpdateAvailable(false);
|
|
473162
473187
|
return;
|
|
473163
473188
|
}
|
|
473164
473189
|
latest = maxVersion;
|
|
473165
473190
|
}
|
|
473166
|
-
const hasUpdate = latest && !gte("1.8.
|
|
473191
|
+
const hasUpdate = latest && !gte("1.8.9", latest) && !shouldSkipVersion(latest);
|
|
473167
473192
|
setUpdateAvailable(!!hasUpdate);
|
|
473168
473193
|
if (hasUpdate) {
|
|
473169
|
-
logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.8.
|
|
473194
|
+
logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.8.9"} -> ${latest}`);
|
|
473170
473195
|
}
|
|
473171
473196
|
};
|
|
473172
473197
|
$2[0] = t1;
|
|
@@ -473200,7 +473225,7 @@ function PackageManagerAutoUpdater(t0) {
|
|
|
473200
473225
|
wrap: "truncate",
|
|
473201
473226
|
children: [
|
|
473202
473227
|
"currentVersion: ",
|
|
473203
|
-
"1.8.
|
|
473228
|
+
"1.8.9"
|
|
473204
473229
|
]
|
|
473205
473230
|
}, undefined, true, undefined, this);
|
|
473206
473231
|
$2[3] = verbose;
|
|
@@ -480760,7 +480785,7 @@ function buildStatusLineCommandInput(permissionMode, exceeds200kTokens, settings
|
|
|
480760
480785
|
project_dir: getOriginalCwd(),
|
|
480761
480786
|
added_dirs: addedDirs
|
|
480762
480787
|
},
|
|
480763
|
-
version: "1.8.
|
|
480788
|
+
version: "1.8.9",
|
|
480764
480789
|
output_style: {
|
|
480765
480790
|
name: outputStyleName
|
|
480766
480791
|
},
|
|
@@ -492332,7 +492357,7 @@ async function submitTranscriptShare(messages, trigger, appearanceId) {
|
|
|
492332
492357
|
} catch {}
|
|
492333
492358
|
const data = {
|
|
492334
492359
|
trigger,
|
|
492335
|
-
version: "1.8.
|
|
492360
|
+
version: "1.8.9",
|
|
492336
492361
|
platform: process.platform,
|
|
492337
492362
|
transcript,
|
|
492338
492363
|
subagentTranscripts: Object.keys(subagentTranscripts).length > 0 ? subagentTranscripts : undefined,
|
|
@@ -509241,7 +509266,7 @@ function appendToLog(path17, message) {
|
|
|
509241
509266
|
cwd: getFsImplementation().cwd(),
|
|
509242
509267
|
userType: process.env.USER_TYPE,
|
|
509243
509268
|
sessionId: getSessionId(),
|
|
509244
|
-
version: "1.8.
|
|
509269
|
+
version: "1.8.9"
|
|
509245
509270
|
};
|
|
509246
509271
|
getLogWriter(path17).write(messageWithTimestamp);
|
|
509247
509272
|
}
|
|
@@ -513265,8 +513290,8 @@ async function getEnvLessBridgeConfig() {
|
|
|
513265
513290
|
}
|
|
513266
513291
|
async function checkEnvLessBridgeMinVersion() {
|
|
513267
513292
|
const cfg = await getEnvLessBridgeConfig();
|
|
513268
|
-
if (cfg.min_version && lt("1.8.
|
|
513269
|
-
return `Your version of localclawd (${"1.8.
|
|
513293
|
+
if (cfg.min_version && lt("1.8.9", cfg.min_version)) {
|
|
513294
|
+
return `Your version of localclawd (${"1.8.9"}) is too old for Remote Control.
|
|
513270
513295
|
Version ${cfg.min_version} or higher is required. Run \`localclawd update\` to update.`;
|
|
513271
513296
|
}
|
|
513272
513297
|
return null;
|
|
@@ -513738,7 +513763,7 @@ async function initBridgeCore(params) {
|
|
|
513738
513763
|
const rawApi = createBridgeApiClient({
|
|
513739
513764
|
baseUrl,
|
|
513740
513765
|
getAccessToken,
|
|
513741
|
-
runnerVersion: "1.8.
|
|
513766
|
+
runnerVersion: "1.8.9",
|
|
513742
513767
|
onDebug: logForDebugging,
|
|
513743
513768
|
onAuth401,
|
|
513744
513769
|
getTrustedDeviceToken
|
|
@@ -519457,7 +519482,7 @@ async function startMCPServer(cwd3, debug4, verbose) {
|
|
|
519457
519482
|
setCwd(cwd3);
|
|
519458
519483
|
const server = new Server({
|
|
519459
519484
|
name: "claude/tengu",
|
|
519460
|
-
version: "1.8.
|
|
519485
|
+
version: "1.8.9"
|
|
519461
519486
|
}, {
|
|
519462
519487
|
capabilities: {
|
|
519463
519488
|
tools: {}
|
|
@@ -520538,7 +520563,7 @@ function WelcomeLogo() {
|
|
|
520538
520563
|
dimColor: true,
|
|
520539
520564
|
children: [
|
|
520540
520565
|
"v",
|
|
520541
|
-
"1.8.
|
|
520566
|
+
"1.8.9"
|
|
520542
520567
|
]
|
|
520543
520568
|
}, undefined, true, undefined, this)
|
|
520544
520569
|
]
|
|
@@ -520729,7 +520754,7 @@ __export(exports_update, {
|
|
|
520729
520754
|
});
|
|
520730
520755
|
async function update() {
|
|
520731
520756
|
logEvent("tengu_update_check", {});
|
|
520732
|
-
writeToStdout(`Current version: ${"1.8.
|
|
520757
|
+
writeToStdout(`Current version: ${"1.8.9"}
|
|
520733
520758
|
`);
|
|
520734
520759
|
const channel = getInitialSettings()?.autoUpdatesChannel ?? "latest";
|
|
520735
520760
|
writeToStdout(`Checking for updates to ${channel} version...
|
|
@@ -520804,8 +520829,8 @@ async function update() {
|
|
|
520804
520829
|
writeToStdout(`localclawd is managed by Homebrew.
|
|
520805
520830
|
`);
|
|
520806
520831
|
const latest = await getLatestVersion(channel);
|
|
520807
|
-
if (latest && !gte("1.8.
|
|
520808
|
-
writeToStdout(`Update available: ${"1.8.
|
|
520832
|
+
if (latest && !gte("1.8.9", latest)) {
|
|
520833
|
+
writeToStdout(`Update available: ${"1.8.9"} → ${latest}
|
|
520809
520834
|
`);
|
|
520810
520835
|
writeToStdout(`
|
|
520811
520836
|
`);
|
|
@@ -520821,8 +520846,8 @@ async function update() {
|
|
|
520821
520846
|
writeToStdout(`localclawd is managed by winget.
|
|
520822
520847
|
`);
|
|
520823
520848
|
const latest = await getLatestVersion(channel);
|
|
520824
|
-
if (latest && !gte("1.8.
|
|
520825
|
-
writeToStdout(`Update available: ${"1.8.
|
|
520849
|
+
if (latest && !gte("1.8.9", latest)) {
|
|
520850
|
+
writeToStdout(`Update available: ${"1.8.9"} → ${latest}
|
|
520826
520851
|
`);
|
|
520827
520852
|
writeToStdout(`
|
|
520828
520853
|
`);
|
|
@@ -520836,8 +520861,8 @@ async function update() {
|
|
|
520836
520861
|
writeToStdout(`localclawd is managed by apk.
|
|
520837
520862
|
`);
|
|
520838
520863
|
const latest = await getLatestVersion(channel);
|
|
520839
|
-
if (latest && !gte("1.8.
|
|
520840
|
-
writeToStdout(`Update available: ${"1.8.
|
|
520864
|
+
if (latest && !gte("1.8.9", latest)) {
|
|
520865
|
+
writeToStdout(`Update available: ${"1.8.9"} → ${latest}
|
|
520841
520866
|
`);
|
|
520842
520867
|
writeToStdout(`
|
|
520843
520868
|
`);
|
|
@@ -520902,11 +520927,11 @@ async function update() {
|
|
|
520902
520927
|
`);
|
|
520903
520928
|
await gracefulShutdown(1);
|
|
520904
520929
|
}
|
|
520905
|
-
if (result.latestVersion === "1.8.
|
|
520906
|
-
writeToStdout(source_default.green(`localclawd is up to date (${"1.8.
|
|
520930
|
+
if (result.latestVersion === "1.8.9") {
|
|
520931
|
+
writeToStdout(source_default.green(`localclawd is up to date (${"1.8.9"})`) + `
|
|
520907
520932
|
`);
|
|
520908
520933
|
} else {
|
|
520909
|
-
writeToStdout(source_default.green(`Successfully updated from ${"1.8.
|
|
520934
|
+
writeToStdout(source_default.green(`Successfully updated from ${"1.8.9"} to version ${result.latestVersion}`) + `
|
|
520910
520935
|
`);
|
|
520911
520936
|
await regenerateCompletionCache();
|
|
520912
520937
|
}
|
|
@@ -520966,12 +520991,12 @@ async function update() {
|
|
|
520966
520991
|
`);
|
|
520967
520992
|
await gracefulShutdown(1);
|
|
520968
520993
|
}
|
|
520969
|
-
if (latestVersion === "1.8.
|
|
520970
|
-
writeToStdout(source_default.green(`localclawd is up to date (${"1.8.
|
|
520994
|
+
if (latestVersion === "1.8.9") {
|
|
520995
|
+
writeToStdout(source_default.green(`localclawd is up to date (${"1.8.9"})`) + `
|
|
520971
520996
|
`);
|
|
520972
520997
|
await gracefulShutdown(0);
|
|
520973
520998
|
}
|
|
520974
|
-
writeToStdout(`New version available: ${latestVersion} (current: ${"1.8.
|
|
520999
|
+
writeToStdout(`New version available: ${latestVersion} (current: ${"1.8.9"})
|
|
520975
521000
|
`);
|
|
520976
521001
|
writeToStdout(`Installing update...
|
|
520977
521002
|
`);
|
|
@@ -521016,7 +521041,7 @@ async function update() {
|
|
|
521016
521041
|
logForDebugging(`update: Installation status: ${status2}`);
|
|
521017
521042
|
switch (status2) {
|
|
521018
521043
|
case "success":
|
|
521019
|
-
writeToStdout(source_default.green(`Successfully updated from ${"1.8.
|
|
521044
|
+
writeToStdout(source_default.green(`Successfully updated from ${"1.8.9"} to version ${latestVersion}`) + `
|
|
521020
521045
|
`);
|
|
521021
521046
|
await regenerateCompletionCache();
|
|
521022
521047
|
break;
|
|
@@ -522258,7 +522283,7 @@ Run with --debug for more details.
|
|
|
522258
522283
|
}
|
|
522259
522284
|
}
|
|
522260
522285
|
logForDiagnosticsNoPII("info", "started", {
|
|
522261
|
-
version: "1.8.
|
|
522286
|
+
version: "1.8.9",
|
|
522262
522287
|
is_native_binary: isInBundledMode()
|
|
522263
522288
|
});
|
|
522264
522289
|
registerCleanup(async () => {
|
|
@@ -523042,7 +523067,7 @@ Usage: localclawd --remote "your task description"`, () => gracefulShutdown(1));
|
|
|
523042
523067
|
pendingHookMessages
|
|
523043
523068
|
}, renderAndRun);
|
|
523044
523069
|
}
|
|
523045
|
-
}).version("1.8.
|
|
523070
|
+
}).version("1.8.9 (localclawd)", "-v, --version", "Output the version number");
|
|
523046
523071
|
program2.option("-w, --worktree [name]", "Create a new git worktree for this session (optionally specify a name)");
|
|
523047
523072
|
program2.option("--tmux", "Create a tmux session for the worktree (requires --worktree). Uses iTerm2 native panes when available; use --tmux=classic for traditional tmux.");
|
|
523048
523073
|
if (canUserConfigureAdvisor()) {
|
|
@@ -523556,7 +523581,7 @@ if (false) {}
|
|
|
523556
523581
|
async function main2() {
|
|
523557
523582
|
const args = process.argv.slice(2);
|
|
523558
523583
|
if (args.length === 1 && (args[0] === "--version" || args[0] === "-v" || args[0] === "-V")) {
|
|
523559
|
-
console.log(`${"1.8.
|
|
523584
|
+
console.log(`${"1.8.9"} (localclawd)`);
|
|
523560
523585
|
return;
|
|
523561
523586
|
}
|
|
523562
523587
|
const {
|
|
@@ -523639,4 +523664,4 @@ localclawd crashed: ${msg}
|
|
|
523639
523664
|
process.exit(1);
|
|
523640
523665
|
});
|
|
523641
523666
|
|
|
523642
|
-
//# debugId=
|
|
523667
|
+
//# debugId=8CAABE705FAA411364756E2164756E21
|