localclawd 1.8.9 → 1.9.0
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 +147 -104
- 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.
|
|
87611
|
+
return `claude-code/${"1.9.0"}`;
|
|
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.
|
|
87633
|
+
return `claude-cli/${"1.9.0"} (${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.
|
|
87647
|
+
return `claude-code/${"1.9.0"}${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.
|
|
130843
|
+
const version = `${"1.9.0"}.${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.
|
|
147032
|
+
const match = "1.9.0".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.
|
|
147072
|
+
version: "1.9.0",
|
|
147073
147073
|
versionBase: getVersionBase(),
|
|
147074
|
-
buildTime: "2026-05-07T17:
|
|
147074
|
+
buildTime: "2026-05-07T17:47:00.138Z",
|
|
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.
|
|
179650
|
+
attributes["app.version"] = "1.9.0";
|
|
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.
|
|
242451
|
+
return "1.9.0";
|
|
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.
|
|
247725
|
+
version: "1.9.0",
|
|
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.
|
|
248067
|
+
version: "1.9.0",
|
|
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.
|
|
262469
|
+
return computeFingerprint(firstMessageText, "1.9.0");
|
|
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.
|
|
262511
|
+
const fingerprint = computeFingerprint(messageText, "1.9.0");
|
|
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.
|
|
283259
|
+
appVersion: "1.9.0",
|
|
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.
|
|
284324
|
+
const eventLogger = logs.getLogger("com.anthropic.claude_code.events", "1.9.0");
|
|
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.
|
|
284364
|
+
[ATTR_SERVICE_VERSION4]: "1.9.0"
|
|
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.
|
|
284409
|
+
return meterProvider2.getMeter("com.anthropic.claude_code", "1.9.0");
|
|
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.
|
|
284429
|
+
const eventLogger = logs.getLogger("com.anthropic.claude_code.events", "1.9.0");
|
|
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.
|
|
284491
|
+
return meterProvider.getMeter("com.anthropic.claude_code", "1.9.0");
|
|
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.
|
|
285681
|
+
const version = typeof MACRO !== "undefined" ? "1.9.0" : "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.
|
|
286623
|
-
logForDebugging(`Native installer: current version ${"1.
|
|
286622
|
+
if (gte("1.9.0", maxVersion)) {
|
|
286623
|
+
logForDebugging(`Native installer: current version ${"1.9.0"} 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.
|
|
286634
|
+
if (!forceReinstall && version === "1.9.0" && 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,
|
|
@@ -322925,9 +322925,22 @@ function replaceTemplatesDeep(obj, vars) {
|
|
|
322925
322925
|
return obj;
|
|
322926
322926
|
}
|
|
322927
322927
|
async function loadWorkflow(projectRoot, name) {
|
|
322928
|
+
const wfBase = join79(projectRoot, ".localclawd", "image-pipeline", "workflows");
|
|
322928
322929
|
const filename = name.endsWith(".json") ? name : `${name}.json`;
|
|
322929
322930
|
try {
|
|
322930
|
-
const data = await readFile26(join79(
|
|
322931
|
+
const data = await readFile26(join79(wfBase, filename), "utf-8");
|
|
322932
|
+
return JSON.parse(data);
|
|
322933
|
+
} catch {}
|
|
322934
|
+
const all4 = await listWorkflows(projectRoot);
|
|
322935
|
+
const baseName = name.replace(/\.json$/, "").split(/[\\/]/).pop() ?? name;
|
|
322936
|
+
const match = all4.find((w2) => {
|
|
322937
|
+
const wBaseName = w2.replace(/\.json$/, "").split(/[\\/]/).pop() ?? "";
|
|
322938
|
+
return wBaseName === baseName;
|
|
322939
|
+
});
|
|
322940
|
+
if (!match)
|
|
322941
|
+
return null;
|
|
322942
|
+
try {
|
|
322943
|
+
const data = await readFile26(join79(wfBase, match), "utf-8");
|
|
322931
322944
|
return JSON.parse(data);
|
|
322932
322945
|
} catch {
|
|
322933
322946
|
return null;
|
|
@@ -322951,10 +322964,6 @@ async function scaffoldProject(projectRoot) {
|
|
|
322951
322964
|
created.push(".localclawd/image-pipeline/config.json");
|
|
322952
322965
|
await writeFile19(join79(base, "prompts", "example.json"), JSON.stringify(EXAMPLE_PROMPT, null, 2), "utf-8");
|
|
322953
322966
|
created.push(".localclawd/image-pipeline/prompts/example.json");
|
|
322954
|
-
await writeFile19(join79(base, "workflows", "txt2img.json"), JSON.stringify(DEFAULT_WORKFLOW, null, 2), "utf-8");
|
|
322955
|
-
created.push(".localclawd/image-pipeline/workflows/txt2img.json");
|
|
322956
|
-
await writeFile19(join79(base, "workflows", "z_image_turbo.json"), JSON.stringify(Z_IMAGE_TURBO_WORKFLOW, null, 2), "utf-8");
|
|
322957
|
-
created.push(".localclawd/image-pipeline/workflows/z_image_turbo.json");
|
|
322958
322967
|
await writeFile19(join79(base, "scripts", "generate.sh"), GENERATE_SH, "utf-8");
|
|
322959
322968
|
created.push(".localclawd/image-pipeline/scripts/generate.sh");
|
|
322960
322969
|
await writeFile19(join79(base, "scripts", "generate.ps1"), GENERATE_PS1, "utf-8");
|
|
@@ -322962,6 +322971,18 @@ async function scaffoldProject(projectRoot) {
|
|
|
322962
322971
|
await writeFile19(join79(base, "README.md"), README_CONTENT, "utf-8");
|
|
322963
322972
|
created.push(".localclawd/image-pipeline/README.md");
|
|
322964
322973
|
}
|
|
322974
|
+
for (const [wfName, wfContent] of [
|
|
322975
|
+
["txt2img.json", DEFAULT_WORKFLOW],
|
|
322976
|
+
["z_image_turbo.json", Z_IMAGE_TURBO_WORKFLOW]
|
|
322977
|
+
]) {
|
|
322978
|
+
const wfPath = join79(base, "workflows", wfName);
|
|
322979
|
+
try {
|
|
322980
|
+
await access5(wfPath);
|
|
322981
|
+
} catch {
|
|
322982
|
+
await writeFile19(wfPath, JSON.stringify(wfContent, null, 2), "utf-8");
|
|
322983
|
+
created.push(`.localclawd/image-pipeline/workflows/${wfName}`);
|
|
322984
|
+
}
|
|
322985
|
+
}
|
|
322965
322986
|
return { configPath, created, alreadyExisted };
|
|
322966
322987
|
}
|
|
322967
322988
|
async function loadConfig(projectRoot) {
|
|
@@ -322986,14 +323007,24 @@ async function listPrompts(projectRoot) {
|
|
|
322986
323007
|
}
|
|
322987
323008
|
}
|
|
322988
323009
|
async function listWorkflows(projectRoot) {
|
|
322989
|
-
|
|
322990
|
-
|
|
322991
|
-
|
|
322992
|
-
|
|
322993
|
-
|
|
322994
|
-
|
|
322995
|
-
|
|
323010
|
+
const base = join79(projectRoot, ".localclawd", "image-pipeline", "workflows");
|
|
323011
|
+
const results = [];
|
|
323012
|
+
async function scan(dir, rel) {
|
|
323013
|
+
try {
|
|
323014
|
+
const { readdir: rd } = await import("fs/promises");
|
|
323015
|
+
const entries = await rd(dir, { withFileTypes: true });
|
|
323016
|
+
for (const entry of entries) {
|
|
323017
|
+
const entryRel = rel ? `${rel}/${entry.name}` : entry.name;
|
|
323018
|
+
if (entry.isDirectory()) {
|
|
323019
|
+
await scan(join79(dir, entry.name), entryRel);
|
|
323020
|
+
} else if (entry.isFile() && entry.name.endsWith(".json")) {
|
|
323021
|
+
results.push(entryRel);
|
|
323022
|
+
}
|
|
323023
|
+
}
|
|
323024
|
+
} catch {}
|
|
322996
323025
|
}
|
|
323026
|
+
await scan(base, "");
|
|
323027
|
+
return results;
|
|
322997
323028
|
}
|
|
322998
323029
|
var DEFAULT_CONFIG2, EXAMPLE_PROMPT, DEFAULT_WORKFLOW, Z_IMAGE_TURBO_WORKFLOW, GENERATE_SH = `#!/usr/bin/env bash
|
|
322999
323030
|
# localclawd image pipeline — quick generate helper
|
|
@@ -331884,7 +331915,7 @@ function getAnthropicEnvMetadata() {
|
|
|
331884
331915
|
function getBuildAgeMinutes() {
|
|
331885
331916
|
if (false)
|
|
331886
331917
|
;
|
|
331887
|
-
const buildTime = new Date("2026-05-07T17:
|
|
331918
|
+
const buildTime = new Date("2026-05-07T17:47:00.138Z").getTime();
|
|
331888
331919
|
if (isNaN(buildTime))
|
|
331889
331920
|
return;
|
|
331890
331921
|
return Math.floor((Date.now() - buildTime) / 60000);
|
|
@@ -360714,7 +360745,7 @@ function Feedback({
|
|
|
360714
360745
|
platform: env3.platform,
|
|
360715
360746
|
gitRepo: envInfo.isGit,
|
|
360716
360747
|
terminal: env3.terminal,
|
|
360717
|
-
version: "1.
|
|
360748
|
+
version: "1.9.0",
|
|
360718
360749
|
transcript: normalizeMessagesForAPI(messages),
|
|
360719
360750
|
errors: sanitizedErrors,
|
|
360720
360751
|
lastApiRequest: getLastAPIRequest(),
|
|
@@ -360906,7 +360937,7 @@ function Feedback({
|
|
|
360906
360937
|
", ",
|
|
360907
360938
|
env3.terminal,
|
|
360908
360939
|
", v",
|
|
360909
|
-
"1.
|
|
360940
|
+
"1.9.0"
|
|
360910
360941
|
]
|
|
360911
360942
|
}, undefined, true, undefined, this)
|
|
360912
360943
|
]
|
|
@@ -361012,7 +361043,7 @@ ${sanitizedDescription}
|
|
|
361012
361043
|
` + `**Environment Info**
|
|
361013
361044
|
` + `- Platform: ${env3.platform}
|
|
361014
361045
|
` + `- Terminal: ${env3.terminal}
|
|
361015
|
-
` + `- Version: ${"1.
|
|
361046
|
+
` + `- Version: ${"1.9.0"}
|
|
361016
361047
|
` + `- Feedback ID: ${feedbackId}
|
|
361017
361048
|
` + `
|
|
361018
361049
|
**Errors**
|
|
@@ -363640,7 +363671,7 @@ function buildPrimarySection() {
|
|
|
363640
363671
|
}, undefined, false, undefined, this);
|
|
363641
363672
|
return [{
|
|
363642
363673
|
label: "Version",
|
|
363643
|
-
value: "1.
|
|
363674
|
+
value: "1.9.0"
|
|
363644
363675
|
}, {
|
|
363645
363676
|
label: "Session name",
|
|
363646
363677
|
value: nameValue
|
|
@@ -368321,7 +368352,7 @@ function Config({
|
|
|
368321
368352
|
}
|
|
368322
368353
|
}, undefined, false, undefined, this)
|
|
368323
368354
|
}, undefined, false, undefined, this) : showSubmenu === "ChannelDowngrade" ? /* @__PURE__ */ jsx_dev_runtime176.jsxDEV(ChannelDowngradeDialog, {
|
|
368324
|
-
currentVersion: "1.
|
|
368355
|
+
currentVersion: "1.9.0",
|
|
368325
368356
|
onChoice: (choice) => {
|
|
368326
368357
|
setShowSubmenu(null);
|
|
368327
368358
|
setTabsHidden(false);
|
|
@@ -368333,7 +368364,7 @@ function Config({
|
|
|
368333
368364
|
autoUpdatesChannel: "stable"
|
|
368334
368365
|
};
|
|
368335
368366
|
if (choice === "stay") {
|
|
368336
|
-
newSettings.minimumVersion = "1.
|
|
368367
|
+
newSettings.minimumVersion = "1.9.0";
|
|
368337
368368
|
}
|
|
368338
368369
|
updateSettingsForSource("userSettings", newSettings);
|
|
368339
368370
|
setSettingsData((prev_27) => ({
|
|
@@ -374920,9 +374951,15 @@ var call20 = async (onDone, _context, args) => {
|
|
|
374920
374951
|
lines.push(` Generated images will be saved to:`);
|
|
374921
374952
|
lines.push(` ${generatedDir}`);
|
|
374922
374953
|
lines.push("");
|
|
374954
|
+
lines.push(" To add custom workflows:");
|
|
374955
|
+
lines.push(` Export from ComfyUI → Save (API Format) → drop into:`);
|
|
374956
|
+
lines.push(` .localclawd/image-pipeline/workflows/`);
|
|
374957
|
+
lines.push(` .localclawd/image-pipeline/workflows/comfyui/ ← or any subfolder`);
|
|
374958
|
+
lines.push("");
|
|
374923
374959
|
lines.push(" Next steps:");
|
|
374924
374960
|
lines.push(" /image-pipeline config http://127.0.0.1:8000 — confirm or change ComfyUI URL");
|
|
374925
|
-
lines.push(" /image-pipeline
|
|
374961
|
+
lines.push(" /image-pipeline list — see all available workflows");
|
|
374962
|
+
lines.push(" /image-pipeline workflow z_image_turbo — set default workflow");
|
|
374926
374963
|
lines.push(" /image a misty forest at dawn — generate an image");
|
|
374927
374964
|
onDone(lines.join(`
|
|
374928
374965
|
`), { display: "system" });
|
|
@@ -374995,7 +375032,11 @@ var call20 = async (onDone, _context, args) => {
|
|
|
374995
375032
|
outputDir: ".localclawd/image-pipeline/generated"
|
|
374996
375033
|
};
|
|
374997
375034
|
const workflows = await listWorkflows(projectRoot);
|
|
374998
|
-
const
|
|
375035
|
+
const baseName = name.replace(/\.json$/, "").split(/[\\/]/).pop() ?? name;
|
|
375036
|
+
const match = workflows.find((w2) => {
|
|
375037
|
+
const wName = w2.replace(/\.json$/, "");
|
|
375038
|
+
return wName === name.replace(/\.json$/, "") || wName.split(/[\\/]/).pop() === baseName;
|
|
375039
|
+
});
|
|
374999
375040
|
if (!match) {
|
|
375000
375041
|
const lines = [
|
|
375001
375042
|
`◆ Image Pipeline — Workflow not found: "${name}"`,
|
|
@@ -375006,13 +375047,16 @@ var call20 = async (onDone, _context, args) => {
|
|
|
375006
375047
|
for (const w2 of workflows)
|
|
375007
375048
|
lines.push(` • ${w2.replace(/\.json$/, "")}`);
|
|
375008
375049
|
} else {
|
|
375009
|
-
lines.push(" No workflows found
|
|
375050
|
+
lines.push(" No local workflows found.");
|
|
375051
|
+
lines.push(" Run /image-pipeline setup to add bundled templates.");
|
|
375052
|
+
lines.push(" Or export a workflow from ComfyUI (API Format) and drop it into:");
|
|
375053
|
+
lines.push(` ${join113(projectRoot, ".localclawd", "image-pipeline", "workflows")}`);
|
|
375010
375054
|
}
|
|
375011
375055
|
onDone(lines.join(`
|
|
375012
375056
|
`), { display: "system" });
|
|
375013
375057
|
return null;
|
|
375014
375058
|
}
|
|
375015
|
-
config2.defaultWorkflow =
|
|
375059
|
+
config2.defaultWorkflow = match.replace(/\.json$/, "");
|
|
375016
375060
|
await saveConfig2(projectRoot, config2);
|
|
375017
375061
|
onDone([
|
|
375018
375062
|
"◆ Image Pipeline — Default Workflow Set",
|
|
@@ -375094,23 +375138,22 @@ var call20 = async (onDone, _context, args) => {
|
|
|
375094
375138
|
}
|
|
375095
375139
|
const fetchResult = await fetchServerWorkflow(backendUrl, name);
|
|
375096
375140
|
if ("error" in fetchResult) {
|
|
375097
|
-
const wfDir =
|
|
375141
|
+
const wfDir = join113(projectRoot, ".localclawd", "image-pipeline", "workflows", "comfyui");
|
|
375098
375142
|
onDone([
|
|
375099
375143
|
`◆ Image Pipeline — Fetch Failed: "${name}"`,
|
|
375100
375144
|
"",
|
|
375101
375145
|
` ${fetchResult.error}`,
|
|
375102
375146
|
"",
|
|
375103
|
-
"
|
|
375104
|
-
" Export the workflow manually:",
|
|
375105
|
-
"",
|
|
375147
|
+
" Export the workflow manually from ComfyUI:",
|
|
375106
375148
|
` 1. Open ComfyUI: ${backendUrl}`,
|
|
375107
|
-
" 2. Load the workflow
|
|
375108
|
-
" 3. Settings → Enable Dev Mode
|
|
375109
|
-
" 4.
|
|
375110
|
-
" 5.
|
|
375111
|
-
` ${wfDir}
|
|
375149
|
+
" 2. Load the workflow (sidebar or Menu → Open)",
|
|
375150
|
+
" 3. Settings → Enable Dev Mode",
|
|
375151
|
+
" 4. Save (API Format) — exports a flat JSON file",
|
|
375152
|
+
" 5. Drop the JSON file into:",
|
|
375153
|
+
` ${wfDir}`,
|
|
375112
375154
|
"",
|
|
375113
|
-
" Then
|
|
375155
|
+
" Then: /image-pipeline workflow " + name,
|
|
375156
|
+
" /image " + name + ": <your prompt>"
|
|
375114
375157
|
].join(`
|
|
375115
375158
|
`), { display: "system" });
|
|
375116
375159
|
return null;
|
|
@@ -385776,7 +385819,7 @@ function Help(t0) {
|
|
|
385776
385819
|
let t6;
|
|
385777
385820
|
if ($2[31] !== tabs) {
|
|
385778
385821
|
t6 = /* @__PURE__ */ jsx_dev_runtime221.jsxDEV(Tabs, {
|
|
385779
|
-
title: `localclawd v${"1.
|
|
385822
|
+
title: `localclawd v${"1.9.0"}`,
|
|
385780
385823
|
color: "professionalBlue",
|
|
385781
385824
|
defaultTab: "general",
|
|
385782
385825
|
children: tabs
|
|
@@ -403038,7 +403081,7 @@ function getRecentReleaseNotes(currentVersion, previousVersion, changelogContent
|
|
|
403038
403081
|
}
|
|
403039
403082
|
return [];
|
|
403040
403083
|
}
|
|
403041
|
-
async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.
|
|
403084
|
+
async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.9.0") {
|
|
403042
403085
|
if (process.env.USER_TYPE === "ant") {
|
|
403043
403086
|
const changelog = MACRO.VERSION_CHANGELOG;
|
|
403044
403087
|
if (changelog) {
|
|
@@ -403065,7 +403108,7 @@ async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.8.9") {
|
|
|
403065
403108
|
releaseNotes
|
|
403066
403109
|
};
|
|
403067
403110
|
}
|
|
403068
|
-
function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.
|
|
403111
|
+
function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.9.0") {
|
|
403069
403112
|
if (process.env.USER_TYPE === "ant") {
|
|
403070
403113
|
const changelog = MACRO.VERSION_CHANGELOG;
|
|
403071
403114
|
if (changelog) {
|
|
@@ -403222,7 +403265,7 @@ function getRecentActivitySync() {
|
|
|
403222
403265
|
return cachedActivity;
|
|
403223
403266
|
}
|
|
403224
403267
|
function getLogoDisplayData() {
|
|
403225
|
-
const version = process.env.DEMO_VERSION ?? "1.
|
|
403268
|
+
const version = process.env.DEMO_VERSION ?? "1.9.0";
|
|
403226
403269
|
const serverUrl = getDirectConnectServerUrl();
|
|
403227
403270
|
const displayPath = process.env.DEMO_VERSION ? "/code/claude" : getDisplayPath(getCwd());
|
|
403228
403271
|
const cwd2 = serverUrl ? `${displayPath} in ${serverUrl.replace(/^https?:\/\//, "")}` : displayPath;
|
|
@@ -404322,7 +404365,7 @@ function Logo() {
|
|
|
404322
404365
|
if ($2[2] === Symbol.for("react.memo_cache_sentinel")) {
|
|
404323
404366
|
t2 = () => {
|
|
404324
404367
|
const currentConfig = getGlobalConfig();
|
|
404325
|
-
if (currentConfig.lastReleaseNotesSeen === "1.
|
|
404368
|
+
if (currentConfig.lastReleaseNotesSeen === "1.9.0") {
|
|
404326
404369
|
return;
|
|
404327
404370
|
}
|
|
404328
404371
|
saveGlobalConfig(_temp326);
|
|
@@ -404981,12 +405024,12 @@ function Logo() {
|
|
|
404981
405024
|
return t41;
|
|
404982
405025
|
}
|
|
404983
405026
|
function _temp326(current) {
|
|
404984
|
-
if (current.lastReleaseNotesSeen === "1.
|
|
405027
|
+
if (current.lastReleaseNotesSeen === "1.9.0") {
|
|
404985
405028
|
return current;
|
|
404986
405029
|
}
|
|
404987
405030
|
return {
|
|
404988
405031
|
...current,
|
|
404989
|
-
lastReleaseNotesSeen: "1.
|
|
405032
|
+
lastReleaseNotesSeen: "1.9.0"
|
|
404990
405033
|
};
|
|
404991
405034
|
}
|
|
404992
405035
|
function _temp241(s_0) {
|
|
@@ -435465,7 +435508,7 @@ async function captureMemoryDiagnostics(trigger, dumpNumber = 0) {
|
|
|
435465
435508
|
smapsRollup,
|
|
435466
435509
|
platform: process.platform,
|
|
435467
435510
|
nodeVersion: process.version,
|
|
435468
|
-
ccVersion: "1.
|
|
435511
|
+
ccVersion: "1.9.0"
|
|
435469
435512
|
};
|
|
435470
435513
|
}
|
|
435471
435514
|
async function performHeapDump(trigger = "manual", dumpNumber = 0) {
|
|
@@ -436050,7 +436093,7 @@ var init_bridge_kick = __esm(() => {
|
|
|
436050
436093
|
var call87 = async () => {
|
|
436051
436094
|
return {
|
|
436052
436095
|
type: "text",
|
|
436053
|
-
value: `${"1.
|
|
436096
|
+
value: `${"1.9.0"} (built ${"2026-05-07T17:47:00.138Z"})`
|
|
436054
436097
|
};
|
|
436055
436098
|
}, version, version_default;
|
|
436056
436099
|
var init_version = __esm(() => {
|
|
@@ -443994,7 +444037,7 @@ function generateHtmlReport(data, insights) {
|
|
|
443994
444037
|
</html>`;
|
|
443995
444038
|
}
|
|
443996
444039
|
function buildExportData(data, insights, facets, remoteStats) {
|
|
443997
|
-
const version2 = typeof MACRO !== "undefined" ? "1.
|
|
444040
|
+
const version2 = typeof MACRO !== "undefined" ? "1.9.0" : "unknown";
|
|
443998
444041
|
const remote_hosts_collected = remoteStats?.hosts.filter((h) => h.sessionCount > 0).map((h) => h.name);
|
|
443999
444042
|
const facets_summary = {
|
|
444000
444043
|
total: facets.size,
|
|
@@ -448195,7 +448238,7 @@ var init_sessionStorage = __esm(() => {
|
|
|
448195
448238
|
init_settings2();
|
|
448196
448239
|
init_slowOperations();
|
|
448197
448240
|
init_uuid();
|
|
448198
|
-
VERSION6 = typeof MACRO !== "undefined" ? "1.
|
|
448241
|
+
VERSION6 = typeof MACRO !== "undefined" ? "1.9.0" : "unknown";
|
|
448199
448242
|
MAX_TOMBSTONE_REWRITE_BYTES = 50 * 1024 * 1024;
|
|
448200
448243
|
SKIP_FIRST_PROMPT_PATTERN = /^(?:\s*<[a-z][\w-]*[\s>]|\[Request interrupted by user[^\]]*\])/;
|
|
448201
448244
|
EPHEMERAL_PROGRESS_TYPES = new Set([
|
|
@@ -449396,7 +449439,7 @@ var init_filesystem = __esm(() => {
|
|
|
449396
449439
|
});
|
|
449397
449440
|
getBundledSkillsRoot = memoize_default(function getBundledSkillsRoot2() {
|
|
449398
449441
|
const nonce = randomBytes20(16).toString("hex");
|
|
449399
|
-
return join151(getClaudeTempDir(), "bundled-skills", "1.
|
|
449442
|
+
return join151(getClaudeTempDir(), "bundled-skills", "1.9.0", nonce);
|
|
449400
449443
|
});
|
|
449401
449444
|
getResolvedWorkingDirPaths = memoize_default(getPathsForPermissionCheck);
|
|
449402
449445
|
});
|
|
@@ -458633,7 +458676,7 @@ function buildSystemInitMessage(inputs) {
|
|
|
458633
458676
|
slash_commands: inputs.commands.filter((c5) => c5.userInvocable !== false).map((c5) => c5.name),
|
|
458634
458677
|
apiKeySource: getAnthropicApiKeyWithSource().source,
|
|
458635
458678
|
betas: getSdkBetas(),
|
|
458636
|
-
claude_code_version: "1.
|
|
458679
|
+
claude_code_version: "1.9.0",
|
|
458637
458680
|
output_style: outputStyle2,
|
|
458638
458681
|
agents: inputs.agents.map((agent) => agent.agentType),
|
|
458639
458682
|
skills: inputs.skills.filter((s) => s.userInvocable !== false).map((skill) => skill.name),
|
|
@@ -472790,7 +472833,7 @@ var init_useVoiceEnabled = __esm(() => {
|
|
|
472790
472833
|
function getSemverPart(version2) {
|
|
472791
472834
|
return `${import_semver10.major(version2, { loose: true })}.${import_semver10.minor(version2, { loose: true })}.${import_semver10.patch(version2, { loose: true })}`;
|
|
472792
472835
|
}
|
|
472793
|
-
function useUpdateNotification(updatedVersion, initialVersion = "1.
|
|
472836
|
+
function useUpdateNotification(updatedVersion, initialVersion = "1.9.0") {
|
|
472794
472837
|
const [lastNotifiedSemver, setLastNotifiedSemver] = import_react214.useState(() => getSemverPart(initialVersion));
|
|
472795
472838
|
if (!updatedVersion) {
|
|
472796
472839
|
return null;
|
|
@@ -472830,7 +472873,7 @@ function AutoUpdater({
|
|
|
472830
472873
|
return;
|
|
472831
472874
|
}
|
|
472832
472875
|
if (false) {}
|
|
472833
|
-
const currentVersion = "1.
|
|
472876
|
+
const currentVersion = "1.9.0";
|
|
472834
472877
|
const channel = getInitialSettings()?.autoUpdatesChannel ?? "latest";
|
|
472835
472878
|
let latestVersion = await getLatestVersion(channel);
|
|
472836
472879
|
const isDisabled = isAutoUpdaterDisabled();
|
|
@@ -473041,12 +473084,12 @@ function NativeAutoUpdater({
|
|
|
473041
473084
|
logEvent("tengu_native_auto_updater_start", {});
|
|
473042
473085
|
try {
|
|
473043
473086
|
const maxVersion = await getMaxVersion();
|
|
473044
|
-
if (maxVersion && gt("1.
|
|
473087
|
+
if (maxVersion && gt("1.9.0", maxVersion)) {
|
|
473045
473088
|
const msg = await getMaxVersionMessage();
|
|
473046
473089
|
setMaxVersionIssue(msg ?? "affects your version");
|
|
473047
473090
|
}
|
|
473048
473091
|
const result = await installLatest(channel);
|
|
473049
|
-
const currentVersion = "1.
|
|
473092
|
+
const currentVersion = "1.9.0";
|
|
473050
473093
|
const latencyMs = Date.now() - startTime;
|
|
473051
473094
|
if (result.lockFailed) {
|
|
473052
473095
|
logEvent("tengu_native_auto_updater_lock_contention", {
|
|
@@ -473181,17 +473224,17 @@ function PackageManagerAutoUpdater(t0) {
|
|
|
473181
473224
|
const maxVersion = await getMaxVersion();
|
|
473182
473225
|
if (maxVersion && latest && gt(latest, maxVersion)) {
|
|
473183
473226
|
logForDebugging(`PackageManagerAutoUpdater: maxVersion ${maxVersion} is set, capping update from ${latest} to ${maxVersion}`);
|
|
473184
|
-
if (gte("1.
|
|
473185
|
-
logForDebugging(`PackageManagerAutoUpdater: current version ${"1.
|
|
473227
|
+
if (gte("1.9.0", maxVersion)) {
|
|
473228
|
+
logForDebugging(`PackageManagerAutoUpdater: current version ${"1.9.0"} is already at or above maxVersion ${maxVersion}, skipping update`);
|
|
473186
473229
|
setUpdateAvailable(false);
|
|
473187
473230
|
return;
|
|
473188
473231
|
}
|
|
473189
473232
|
latest = maxVersion;
|
|
473190
473233
|
}
|
|
473191
|
-
const hasUpdate = latest && !gte("1.
|
|
473234
|
+
const hasUpdate = latest && !gte("1.9.0", latest) && !shouldSkipVersion(latest);
|
|
473192
473235
|
setUpdateAvailable(!!hasUpdate);
|
|
473193
473236
|
if (hasUpdate) {
|
|
473194
|
-
logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.
|
|
473237
|
+
logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.9.0"} -> ${latest}`);
|
|
473195
473238
|
}
|
|
473196
473239
|
};
|
|
473197
473240
|
$2[0] = t1;
|
|
@@ -473225,7 +473268,7 @@ function PackageManagerAutoUpdater(t0) {
|
|
|
473225
473268
|
wrap: "truncate",
|
|
473226
473269
|
children: [
|
|
473227
473270
|
"currentVersion: ",
|
|
473228
|
-
"1.
|
|
473271
|
+
"1.9.0"
|
|
473229
473272
|
]
|
|
473230
473273
|
}, undefined, true, undefined, this);
|
|
473231
473274
|
$2[3] = verbose;
|
|
@@ -480785,7 +480828,7 @@ function buildStatusLineCommandInput(permissionMode, exceeds200kTokens, settings
|
|
|
480785
480828
|
project_dir: getOriginalCwd(),
|
|
480786
480829
|
added_dirs: addedDirs
|
|
480787
480830
|
},
|
|
480788
|
-
version: "1.
|
|
480831
|
+
version: "1.9.0",
|
|
480789
480832
|
output_style: {
|
|
480790
480833
|
name: outputStyleName
|
|
480791
480834
|
},
|
|
@@ -492357,7 +492400,7 @@ async function submitTranscriptShare(messages, trigger, appearanceId) {
|
|
|
492357
492400
|
} catch {}
|
|
492358
492401
|
const data = {
|
|
492359
492402
|
trigger,
|
|
492360
|
-
version: "1.
|
|
492403
|
+
version: "1.9.0",
|
|
492361
492404
|
platform: process.platform,
|
|
492362
492405
|
transcript,
|
|
492363
492406
|
subagentTranscripts: Object.keys(subagentTranscripts).length > 0 ? subagentTranscripts : undefined,
|
|
@@ -509266,7 +509309,7 @@ function appendToLog(path17, message) {
|
|
|
509266
509309
|
cwd: getFsImplementation().cwd(),
|
|
509267
509310
|
userType: process.env.USER_TYPE,
|
|
509268
509311
|
sessionId: getSessionId(),
|
|
509269
|
-
version: "1.
|
|
509312
|
+
version: "1.9.0"
|
|
509270
509313
|
};
|
|
509271
509314
|
getLogWriter(path17).write(messageWithTimestamp);
|
|
509272
509315
|
}
|
|
@@ -513290,8 +513333,8 @@ async function getEnvLessBridgeConfig() {
|
|
|
513290
513333
|
}
|
|
513291
513334
|
async function checkEnvLessBridgeMinVersion() {
|
|
513292
513335
|
const cfg = await getEnvLessBridgeConfig();
|
|
513293
|
-
if (cfg.min_version && lt("1.
|
|
513294
|
-
return `Your version of localclawd (${"1.
|
|
513336
|
+
if (cfg.min_version && lt("1.9.0", cfg.min_version)) {
|
|
513337
|
+
return `Your version of localclawd (${"1.9.0"}) is too old for Remote Control.
|
|
513295
513338
|
Version ${cfg.min_version} or higher is required. Run \`localclawd update\` to update.`;
|
|
513296
513339
|
}
|
|
513297
513340
|
return null;
|
|
@@ -513763,7 +513806,7 @@ async function initBridgeCore(params) {
|
|
|
513763
513806
|
const rawApi = createBridgeApiClient({
|
|
513764
513807
|
baseUrl,
|
|
513765
513808
|
getAccessToken,
|
|
513766
|
-
runnerVersion: "1.
|
|
513809
|
+
runnerVersion: "1.9.0",
|
|
513767
513810
|
onDebug: logForDebugging,
|
|
513768
513811
|
onAuth401,
|
|
513769
513812
|
getTrustedDeviceToken
|
|
@@ -519482,7 +519525,7 @@ async function startMCPServer(cwd3, debug4, verbose) {
|
|
|
519482
519525
|
setCwd(cwd3);
|
|
519483
519526
|
const server = new Server({
|
|
519484
519527
|
name: "claude/tengu",
|
|
519485
|
-
version: "1.
|
|
519528
|
+
version: "1.9.0"
|
|
519486
519529
|
}, {
|
|
519487
519530
|
capabilities: {
|
|
519488
519531
|
tools: {}
|
|
@@ -520563,7 +520606,7 @@ function WelcomeLogo() {
|
|
|
520563
520606
|
dimColor: true,
|
|
520564
520607
|
children: [
|
|
520565
520608
|
"v",
|
|
520566
|
-
"1.
|
|
520609
|
+
"1.9.0"
|
|
520567
520610
|
]
|
|
520568
520611
|
}, undefined, true, undefined, this)
|
|
520569
520612
|
]
|
|
@@ -520754,7 +520797,7 @@ __export(exports_update, {
|
|
|
520754
520797
|
});
|
|
520755
520798
|
async function update() {
|
|
520756
520799
|
logEvent("tengu_update_check", {});
|
|
520757
|
-
writeToStdout(`Current version: ${"1.
|
|
520800
|
+
writeToStdout(`Current version: ${"1.9.0"}
|
|
520758
520801
|
`);
|
|
520759
520802
|
const channel = getInitialSettings()?.autoUpdatesChannel ?? "latest";
|
|
520760
520803
|
writeToStdout(`Checking for updates to ${channel} version...
|
|
@@ -520829,8 +520872,8 @@ async function update() {
|
|
|
520829
520872
|
writeToStdout(`localclawd is managed by Homebrew.
|
|
520830
520873
|
`);
|
|
520831
520874
|
const latest = await getLatestVersion(channel);
|
|
520832
|
-
if (latest && !gte("1.
|
|
520833
|
-
writeToStdout(`Update available: ${"1.
|
|
520875
|
+
if (latest && !gte("1.9.0", latest)) {
|
|
520876
|
+
writeToStdout(`Update available: ${"1.9.0"} → ${latest}
|
|
520834
520877
|
`);
|
|
520835
520878
|
writeToStdout(`
|
|
520836
520879
|
`);
|
|
@@ -520846,8 +520889,8 @@ async function update() {
|
|
|
520846
520889
|
writeToStdout(`localclawd is managed by winget.
|
|
520847
520890
|
`);
|
|
520848
520891
|
const latest = await getLatestVersion(channel);
|
|
520849
|
-
if (latest && !gte("1.
|
|
520850
|
-
writeToStdout(`Update available: ${"1.
|
|
520892
|
+
if (latest && !gte("1.9.0", latest)) {
|
|
520893
|
+
writeToStdout(`Update available: ${"1.9.0"} → ${latest}
|
|
520851
520894
|
`);
|
|
520852
520895
|
writeToStdout(`
|
|
520853
520896
|
`);
|
|
@@ -520861,8 +520904,8 @@ async function update() {
|
|
|
520861
520904
|
writeToStdout(`localclawd is managed by apk.
|
|
520862
520905
|
`);
|
|
520863
520906
|
const latest = await getLatestVersion(channel);
|
|
520864
|
-
if (latest && !gte("1.
|
|
520865
|
-
writeToStdout(`Update available: ${"1.
|
|
520907
|
+
if (latest && !gte("1.9.0", latest)) {
|
|
520908
|
+
writeToStdout(`Update available: ${"1.9.0"} → ${latest}
|
|
520866
520909
|
`);
|
|
520867
520910
|
writeToStdout(`
|
|
520868
520911
|
`);
|
|
@@ -520927,11 +520970,11 @@ async function update() {
|
|
|
520927
520970
|
`);
|
|
520928
520971
|
await gracefulShutdown(1);
|
|
520929
520972
|
}
|
|
520930
|
-
if (result.latestVersion === "1.
|
|
520931
|
-
writeToStdout(source_default.green(`localclawd is up to date (${"1.
|
|
520973
|
+
if (result.latestVersion === "1.9.0") {
|
|
520974
|
+
writeToStdout(source_default.green(`localclawd is up to date (${"1.9.0"})`) + `
|
|
520932
520975
|
`);
|
|
520933
520976
|
} else {
|
|
520934
|
-
writeToStdout(source_default.green(`Successfully updated from ${"1.
|
|
520977
|
+
writeToStdout(source_default.green(`Successfully updated from ${"1.9.0"} to version ${result.latestVersion}`) + `
|
|
520935
520978
|
`);
|
|
520936
520979
|
await regenerateCompletionCache();
|
|
520937
520980
|
}
|
|
@@ -520991,12 +521034,12 @@ async function update() {
|
|
|
520991
521034
|
`);
|
|
520992
521035
|
await gracefulShutdown(1);
|
|
520993
521036
|
}
|
|
520994
|
-
if (latestVersion === "1.
|
|
520995
|
-
writeToStdout(source_default.green(`localclawd is up to date (${"1.
|
|
521037
|
+
if (latestVersion === "1.9.0") {
|
|
521038
|
+
writeToStdout(source_default.green(`localclawd is up to date (${"1.9.0"})`) + `
|
|
520996
521039
|
`);
|
|
520997
521040
|
await gracefulShutdown(0);
|
|
520998
521041
|
}
|
|
520999
|
-
writeToStdout(`New version available: ${latestVersion} (current: ${"1.
|
|
521042
|
+
writeToStdout(`New version available: ${latestVersion} (current: ${"1.9.0"})
|
|
521000
521043
|
`);
|
|
521001
521044
|
writeToStdout(`Installing update...
|
|
521002
521045
|
`);
|
|
@@ -521041,7 +521084,7 @@ async function update() {
|
|
|
521041
521084
|
logForDebugging(`update: Installation status: ${status2}`);
|
|
521042
521085
|
switch (status2) {
|
|
521043
521086
|
case "success":
|
|
521044
|
-
writeToStdout(source_default.green(`Successfully updated from ${"1.
|
|
521087
|
+
writeToStdout(source_default.green(`Successfully updated from ${"1.9.0"} to version ${latestVersion}`) + `
|
|
521045
521088
|
`);
|
|
521046
521089
|
await regenerateCompletionCache();
|
|
521047
521090
|
break;
|
|
@@ -522283,7 +522326,7 @@ Run with --debug for more details.
|
|
|
522283
522326
|
}
|
|
522284
522327
|
}
|
|
522285
522328
|
logForDiagnosticsNoPII("info", "started", {
|
|
522286
|
-
version: "1.
|
|
522329
|
+
version: "1.9.0",
|
|
522287
522330
|
is_native_binary: isInBundledMode()
|
|
522288
522331
|
});
|
|
522289
522332
|
registerCleanup(async () => {
|
|
@@ -523067,7 +523110,7 @@ Usage: localclawd --remote "your task description"`, () => gracefulShutdown(1));
|
|
|
523067
523110
|
pendingHookMessages
|
|
523068
523111
|
}, renderAndRun);
|
|
523069
523112
|
}
|
|
523070
|
-
}).version("1.
|
|
523113
|
+
}).version("1.9.0 (localclawd)", "-v, --version", "Output the version number");
|
|
523071
523114
|
program2.option("-w, --worktree [name]", "Create a new git worktree for this session (optionally specify a name)");
|
|
523072
523115
|
program2.option("--tmux", "Create a tmux session for the worktree (requires --worktree). Uses iTerm2 native panes when available; use --tmux=classic for traditional tmux.");
|
|
523073
523116
|
if (canUserConfigureAdvisor()) {
|
|
@@ -523581,7 +523624,7 @@ if (false) {}
|
|
|
523581
523624
|
async function main2() {
|
|
523582
523625
|
const args = process.argv.slice(2);
|
|
523583
523626
|
if (args.length === 1 && (args[0] === "--version" || args[0] === "-v" || args[0] === "-V")) {
|
|
523584
|
-
console.log(`${"1.
|
|
523627
|
+
console.log(`${"1.9.0"} (localclawd)`);
|
|
523585
523628
|
return;
|
|
523586
523629
|
}
|
|
523587
523630
|
const {
|
|
@@ -523664,4 +523707,4 @@ localclawd crashed: ${msg}
|
|
|
523664
523707
|
process.exit(1);
|
|
523665
523708
|
});
|
|
523666
523709
|
|
|
523667
|
-
//# debugId=
|
|
523710
|
+
//# debugId=40FDF2E96DA5BCD764756E2164756E21
|