@funnycode/myclaude 0.1.159 → 0.1.161
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/myclaude.js +31 -39
- package/dist/myclaude.mjs +31 -39
- package/package.json +1 -1
package/dist/myclaude.js
CHANGED
|
@@ -4,8 +4,8 @@
|
|
|
4
4
|
// MACRO - build-time constants (injected by build.ts)
|
|
5
5
|
// MACRO injected by build script
|
|
6
6
|
globalThis.MACRO = {
|
|
7
|
-
VERSION: "0.1.
|
|
8
|
-
BUILD_TIME: "2026-07-
|
|
7
|
+
VERSION: "0.1.161",
|
|
8
|
+
BUILD_TIME: "2026-07-30T06:39:33.267Z",
|
|
9
9
|
PACKAGE_URL: "@funnycode/myclaude",
|
|
10
10
|
NATIVE_PACKAGE_URL: "@funnycode/myclaude",
|
|
11
11
|
VERSION_CHANGELOG: '',
|
|
@@ -119829,7 +119829,7 @@ var package_default;
|
|
|
119829
119829
|
var init_package = __esm(() => {
|
|
119830
119830
|
package_default = {
|
|
119831
119831
|
name: "@funnycode/myclaude",
|
|
119832
|
-
version: "0.1.
|
|
119832
|
+
version: "0.1.161",
|
|
119833
119833
|
private: false,
|
|
119834
119834
|
description: "An open-source AI coding assistant in your terminal - powered by Claude",
|
|
119835
119835
|
license: "MIT",
|
|
@@ -410011,10 +410011,16 @@ function isInputModeCharacter(input) {
|
|
|
410011
410011
|
|
|
410012
410012
|
// src/projectOnboardingState.ts
|
|
410013
410013
|
import { join as join105 } from "path";
|
|
410014
|
+
function getDirectoryFingerprint(dirPath) {
|
|
410015
|
+
const fs13 = getFsImplementation();
|
|
410016
|
+
const entries = fs13.readdirStringSync(dirPath);
|
|
410017
|
+
return entries.sort().join(`
|
|
410018
|
+
`);
|
|
410019
|
+
}
|
|
410014
410020
|
function clearCachedSteps() {
|
|
410015
410021
|
cachedSteps = null;
|
|
410016
|
-
cachedClaudeMdMtime =
|
|
410017
|
-
|
|
410022
|
+
cachedClaudeMdMtime = -1;
|
|
410023
|
+
cachedDirFingerprint = "";
|
|
410018
410024
|
cachedAt = null;
|
|
410019
410025
|
}
|
|
410020
410026
|
function isCacheValid() {
|
|
@@ -410031,8 +410037,8 @@ function isCacheValid() {
|
|
|
410031
410037
|
return false;
|
|
410032
410038
|
}
|
|
410033
410039
|
try {
|
|
410034
|
-
const
|
|
410035
|
-
if (
|
|
410040
|
+
const currentFingerprint = getDirectoryFingerprint(cwd2);
|
|
410041
|
+
if (currentFingerprint !== cachedDirFingerprint)
|
|
410036
410042
|
return false;
|
|
410037
410043
|
} catch {
|
|
410038
410044
|
return false;
|
|
@@ -410057,9 +410063,9 @@ function getSteps() {
|
|
|
410057
410063
|
cachedClaudeMdMtime = -1;
|
|
410058
410064
|
}
|
|
410059
410065
|
try {
|
|
410060
|
-
|
|
410066
|
+
cachedDirFingerprint = getDirectoryFingerprint(cwd2);
|
|
410061
410067
|
} catch {
|
|
410062
|
-
|
|
410068
|
+
cachedDirFingerprint = "";
|
|
410063
410069
|
}
|
|
410064
410070
|
cachedAt = Date.now();
|
|
410065
410071
|
cachedSteps = [
|
|
@@ -410107,7 +410113,7 @@ function incrementProjectOnboardingSeenCount() {
|
|
|
410107
410113
|
projectOnboardingSeenCount: current.projectOnboardingSeenCount + 1
|
|
410108
410114
|
}));
|
|
410109
410115
|
}
|
|
410110
|
-
var cachedSteps = null, cachedClaudeMdMtime =
|
|
410116
|
+
var cachedSteps = null, cachedClaudeMdMtime = -1, cachedDirFingerprint = "", cachedAt = null, CACHE_MAX_AGE_MS = 30000;
|
|
410111
410117
|
var init_projectOnboardingState = __esm(() => {
|
|
410112
410118
|
init_config();
|
|
410113
410119
|
init_cwd2();
|
|
@@ -566367,14 +566373,13 @@ function migrateEnableAllProjectMcpServersToSettings() {
|
|
|
566367
566373
|
}
|
|
566368
566374
|
const originalSettings = getSettingsForSource("localSettings") || {};
|
|
566369
566375
|
const originalProjectConfig = { ...projectConfig };
|
|
566370
|
-
const
|
|
566371
|
-
const fieldsToRemove = [];
|
|
566376
|
+
const migratedFields = [];
|
|
566372
566377
|
const updates = {};
|
|
566373
566378
|
try {
|
|
566374
566379
|
const existingSettings = originalSettings;
|
|
566375
566380
|
if (hasEnableAll) {
|
|
566376
566381
|
updates.enableAllProjectMcpServers = projectConfig.enableAllProjectMcpServers;
|
|
566377
|
-
|
|
566382
|
+
migratedFields.push("enableAllProjectMcpServers");
|
|
566378
566383
|
}
|
|
566379
566384
|
const existingEnabledServers = Array.isArray(existingSettings.enabledMcpjsonServers) ? [...existingSettings.enabledMcpjsonServers] : [];
|
|
566380
566385
|
const existingDisabledServers = Array.isArray(existingSettings.disabledMcpjsonServers) ? [...existingSettings.disabledMcpjsonServers] : [];
|
|
@@ -566388,7 +566393,7 @@ function migrateEnableAllProjectMcpServersToSettings() {
|
|
|
566388
566393
|
}
|
|
566389
566394
|
}
|
|
566390
566395
|
}
|
|
566391
|
-
|
|
566396
|
+
migratedFields.push("enabledMcpjsonServers");
|
|
566392
566397
|
}
|
|
566393
566398
|
if (hasDisabledServers) {
|
|
566394
566399
|
if (Array.isArray(projectConfig.disabledMcpjsonServers) && projectConfig.disabledMcpjsonServers.length > 0) {
|
|
@@ -566400,21 +566405,19 @@ function migrateEnableAllProjectMcpServersToSettings() {
|
|
|
566400
566405
|
}
|
|
566401
566406
|
}
|
|
566402
566407
|
}
|
|
566403
|
-
|
|
566408
|
+
migratedFields.push("disabledMcpjsonServers");
|
|
566404
566409
|
}
|
|
566405
566410
|
const enabledSet = new Set(existingEnabledServers);
|
|
566406
566411
|
const overlappingServers = existingDisabledServers.filter((server) => enabledSet.has(server));
|
|
566407
|
-
|
|
566408
|
-
const
|
|
566409
|
-
|
|
566410
|
-
|
|
566411
|
-
existingDisabledServers.splice(i3, 1);
|
|
566412
|
-
}
|
|
566412
|
+
for (const server of overlappingServers) {
|
|
566413
|
+
const index = existingDisabledServers.indexOf(server);
|
|
566414
|
+
if (index !== -1) {
|
|
566415
|
+
existingDisabledServers.splice(index, 1);
|
|
566413
566416
|
}
|
|
566417
|
+
}
|
|
566418
|
+
if (overlappingServers.length > 0) {
|
|
566414
566419
|
logEvent("tengu_migrate_mcp_server_overlap_in_both_lists", {
|
|
566415
|
-
|
|
566416
|
-
overlappingServers: overlappingServers.join(","),
|
|
566417
|
-
message: "MCP server(s) appear in both enabled and disabled lists. Removed from disabled list to resolve conflict."
|
|
566420
|
+
overlappingServers: overlappingServers.join(",")
|
|
566418
566421
|
});
|
|
566419
566422
|
}
|
|
566420
566423
|
const existingHadEnabledServers = Array.isArray(existingSettings.enabledMcpjsonServers);
|
|
@@ -566430,7 +566433,7 @@ function migrateEnableAllProjectMcpServersToSettings() {
|
|
|
566430
566433
|
updateSettingsForSource("localSettings", updates);
|
|
566431
566434
|
saveCurrentProjectConfig((config5) => {
|
|
566432
566435
|
const updated = { ...config5 };
|
|
566433
|
-
for (const field of
|
|
566436
|
+
for (const field of migratedFields) {
|
|
566434
566437
|
delete updated[field];
|
|
566435
566438
|
}
|
|
566436
566439
|
return updated;
|
|
@@ -566438,17 +566441,12 @@ function migrateEnableAllProjectMcpServersToSettings() {
|
|
|
566438
566441
|
saveGlobalConfig((c6) => ({ ...c6, hasCompletedMcpServerMigration: true }));
|
|
566439
566442
|
logEvent("tengu_migrate_enable_all_project_mcp_servers_to_settings", {
|
|
566440
566443
|
migration: "enableAllProjectMcpServersToSettings",
|
|
566441
|
-
fieldsMigrated:
|
|
566444
|
+
fieldsMigrated: migratedFields.join(",")
|
|
566442
566445
|
});
|
|
566443
566446
|
} catch (error49) {
|
|
566444
566447
|
logError2("Failed to migrate MCP server settings, rolling back", error49);
|
|
566445
566448
|
let rollbackFailed = false;
|
|
566446
566449
|
const rollbackUpdates = {};
|
|
566447
|
-
const migratedFields = [
|
|
566448
|
-
"enableAllProjectMcpServers",
|
|
566449
|
-
"enabledMcpjsonServers",
|
|
566450
|
-
"disabledMcpjsonServers"
|
|
566451
|
-
];
|
|
566452
566450
|
for (const field of migratedFields) {
|
|
566453
566451
|
if (field in originalSettings) {
|
|
566454
566452
|
rollbackUpdates[field] = originalSettings[field];
|
|
@@ -566467,7 +566465,7 @@ function migrateEnableAllProjectMcpServersToSettings() {
|
|
|
566467
566465
|
try {
|
|
566468
566466
|
saveCurrentProjectConfig((config5) => {
|
|
566469
566467
|
const updated = { ...config5 };
|
|
566470
|
-
for (const field of
|
|
566468
|
+
for (const field of migratedFields) {
|
|
566471
566469
|
updated[field] = originalProjectConfig[field];
|
|
566472
566470
|
}
|
|
566473
566471
|
return updated;
|
|
@@ -566477,13 +566475,7 @@ function migrateEnableAllProjectMcpServersToSettings() {
|
|
|
566477
566475
|
rollbackFailed = true;
|
|
566478
566476
|
if (settingsRollbackSucceeded) {
|
|
566479
566477
|
try {
|
|
566480
|
-
|
|
566481
|
-
for (const field of migratedFields) {
|
|
566482
|
-
if (updates[field] !== undefined) {
|
|
566483
|
-
reapplyUpdates[field] = updates[field];
|
|
566484
|
-
}
|
|
566485
|
-
}
|
|
566486
|
-
updateSettingsForSource("localSettings", reapplyUpdates);
|
|
566478
|
+
updateSettingsForSource("localSettings", updates);
|
|
566487
566479
|
logError2("Re-applied migrated state to settings after project config rollback failure. " + "System is now consistent (migration state re-applied).", rollbackError);
|
|
566488
566480
|
} catch (reapplyError) {
|
|
566489
566481
|
logError2("Failed to re-apply migrated state to settings after project config rollback failure. " + "System is in an inconsistent state. Manual intervention may be required.", reapplyError);
|
package/dist/myclaude.mjs
CHANGED
|
@@ -4,8 +4,8 @@
|
|
|
4
4
|
// MACRO - build-time constants (injected by build.ts)
|
|
5
5
|
// MACRO injected by build script
|
|
6
6
|
globalThis.MACRO = {
|
|
7
|
-
VERSION: "0.1.
|
|
8
|
-
BUILD_TIME: "2026-07-
|
|
7
|
+
VERSION: "0.1.161",
|
|
8
|
+
BUILD_TIME: "2026-07-30T06:39:33.267Z",
|
|
9
9
|
PACKAGE_URL: "@funnycode/myclaude",
|
|
10
10
|
NATIVE_PACKAGE_URL: "@funnycode/myclaude",
|
|
11
11
|
VERSION_CHANGELOG: '',
|
|
@@ -119829,7 +119829,7 @@ var package_default;
|
|
|
119829
119829
|
var init_package = __esm(() => {
|
|
119830
119830
|
package_default = {
|
|
119831
119831
|
name: "@funnycode/myclaude",
|
|
119832
|
-
version: "0.1.
|
|
119832
|
+
version: "0.1.161",
|
|
119833
119833
|
private: false,
|
|
119834
119834
|
description: "An open-source AI coding assistant in your terminal - powered by Claude",
|
|
119835
119835
|
license: "MIT",
|
|
@@ -410011,10 +410011,16 @@ function isInputModeCharacter(input) {
|
|
|
410011
410011
|
|
|
410012
410012
|
// src/projectOnboardingState.ts
|
|
410013
410013
|
import { join as join105 } from "path";
|
|
410014
|
+
function getDirectoryFingerprint(dirPath) {
|
|
410015
|
+
const fs13 = getFsImplementation();
|
|
410016
|
+
const entries = fs13.readdirStringSync(dirPath);
|
|
410017
|
+
return entries.sort().join(`
|
|
410018
|
+
`);
|
|
410019
|
+
}
|
|
410014
410020
|
function clearCachedSteps() {
|
|
410015
410021
|
cachedSteps = null;
|
|
410016
|
-
cachedClaudeMdMtime =
|
|
410017
|
-
|
|
410022
|
+
cachedClaudeMdMtime = -1;
|
|
410023
|
+
cachedDirFingerprint = "";
|
|
410018
410024
|
cachedAt = null;
|
|
410019
410025
|
}
|
|
410020
410026
|
function isCacheValid() {
|
|
@@ -410031,8 +410037,8 @@ function isCacheValid() {
|
|
|
410031
410037
|
return false;
|
|
410032
410038
|
}
|
|
410033
410039
|
try {
|
|
410034
|
-
const
|
|
410035
|
-
if (
|
|
410040
|
+
const currentFingerprint = getDirectoryFingerprint(cwd2);
|
|
410041
|
+
if (currentFingerprint !== cachedDirFingerprint)
|
|
410036
410042
|
return false;
|
|
410037
410043
|
} catch {
|
|
410038
410044
|
return false;
|
|
@@ -410057,9 +410063,9 @@ function getSteps() {
|
|
|
410057
410063
|
cachedClaudeMdMtime = -1;
|
|
410058
410064
|
}
|
|
410059
410065
|
try {
|
|
410060
|
-
|
|
410066
|
+
cachedDirFingerprint = getDirectoryFingerprint(cwd2);
|
|
410061
410067
|
} catch {
|
|
410062
|
-
|
|
410068
|
+
cachedDirFingerprint = "";
|
|
410063
410069
|
}
|
|
410064
410070
|
cachedAt = Date.now();
|
|
410065
410071
|
cachedSteps = [
|
|
@@ -410107,7 +410113,7 @@ function incrementProjectOnboardingSeenCount() {
|
|
|
410107
410113
|
projectOnboardingSeenCount: current.projectOnboardingSeenCount + 1
|
|
410108
410114
|
}));
|
|
410109
410115
|
}
|
|
410110
|
-
var cachedSteps = null, cachedClaudeMdMtime =
|
|
410116
|
+
var cachedSteps = null, cachedClaudeMdMtime = -1, cachedDirFingerprint = "", cachedAt = null, CACHE_MAX_AGE_MS = 30000;
|
|
410111
410117
|
var init_projectOnboardingState = __esm(() => {
|
|
410112
410118
|
init_config();
|
|
410113
410119
|
init_cwd2();
|
|
@@ -566367,14 +566373,13 @@ function migrateEnableAllProjectMcpServersToSettings() {
|
|
|
566367
566373
|
}
|
|
566368
566374
|
const originalSettings = getSettingsForSource("localSettings") || {};
|
|
566369
566375
|
const originalProjectConfig = { ...projectConfig };
|
|
566370
|
-
const
|
|
566371
|
-
const fieldsToRemove = [];
|
|
566376
|
+
const migratedFields = [];
|
|
566372
566377
|
const updates = {};
|
|
566373
566378
|
try {
|
|
566374
566379
|
const existingSettings = originalSettings;
|
|
566375
566380
|
if (hasEnableAll) {
|
|
566376
566381
|
updates.enableAllProjectMcpServers = projectConfig.enableAllProjectMcpServers;
|
|
566377
|
-
|
|
566382
|
+
migratedFields.push("enableAllProjectMcpServers");
|
|
566378
566383
|
}
|
|
566379
566384
|
const existingEnabledServers = Array.isArray(existingSettings.enabledMcpjsonServers) ? [...existingSettings.enabledMcpjsonServers] : [];
|
|
566380
566385
|
const existingDisabledServers = Array.isArray(existingSettings.disabledMcpjsonServers) ? [...existingSettings.disabledMcpjsonServers] : [];
|
|
@@ -566388,7 +566393,7 @@ function migrateEnableAllProjectMcpServersToSettings() {
|
|
|
566388
566393
|
}
|
|
566389
566394
|
}
|
|
566390
566395
|
}
|
|
566391
|
-
|
|
566396
|
+
migratedFields.push("enabledMcpjsonServers");
|
|
566392
566397
|
}
|
|
566393
566398
|
if (hasDisabledServers) {
|
|
566394
566399
|
if (Array.isArray(projectConfig.disabledMcpjsonServers) && projectConfig.disabledMcpjsonServers.length > 0) {
|
|
@@ -566400,21 +566405,19 @@ function migrateEnableAllProjectMcpServersToSettings() {
|
|
|
566400
566405
|
}
|
|
566401
566406
|
}
|
|
566402
566407
|
}
|
|
566403
|
-
|
|
566408
|
+
migratedFields.push("disabledMcpjsonServers");
|
|
566404
566409
|
}
|
|
566405
566410
|
const enabledSet = new Set(existingEnabledServers);
|
|
566406
566411
|
const overlappingServers = existingDisabledServers.filter((server) => enabledSet.has(server));
|
|
566407
|
-
|
|
566408
|
-
const
|
|
566409
|
-
|
|
566410
|
-
|
|
566411
|
-
existingDisabledServers.splice(i3, 1);
|
|
566412
|
-
}
|
|
566412
|
+
for (const server of overlappingServers) {
|
|
566413
|
+
const index = existingDisabledServers.indexOf(server);
|
|
566414
|
+
if (index !== -1) {
|
|
566415
|
+
existingDisabledServers.splice(index, 1);
|
|
566413
566416
|
}
|
|
566417
|
+
}
|
|
566418
|
+
if (overlappingServers.length > 0) {
|
|
566414
566419
|
logEvent("tengu_migrate_mcp_server_overlap_in_both_lists", {
|
|
566415
|
-
|
|
566416
|
-
overlappingServers: overlappingServers.join(","),
|
|
566417
|
-
message: "MCP server(s) appear in both enabled and disabled lists. Removed from disabled list to resolve conflict."
|
|
566420
|
+
overlappingServers: overlappingServers.join(",")
|
|
566418
566421
|
});
|
|
566419
566422
|
}
|
|
566420
566423
|
const existingHadEnabledServers = Array.isArray(existingSettings.enabledMcpjsonServers);
|
|
@@ -566430,7 +566433,7 @@ function migrateEnableAllProjectMcpServersToSettings() {
|
|
|
566430
566433
|
updateSettingsForSource("localSettings", updates);
|
|
566431
566434
|
saveCurrentProjectConfig((config5) => {
|
|
566432
566435
|
const updated = { ...config5 };
|
|
566433
|
-
for (const field of
|
|
566436
|
+
for (const field of migratedFields) {
|
|
566434
566437
|
delete updated[field];
|
|
566435
566438
|
}
|
|
566436
566439
|
return updated;
|
|
@@ -566438,17 +566441,12 @@ function migrateEnableAllProjectMcpServersToSettings() {
|
|
|
566438
566441
|
saveGlobalConfig((c6) => ({ ...c6, hasCompletedMcpServerMigration: true }));
|
|
566439
566442
|
logEvent("tengu_migrate_enable_all_project_mcp_servers_to_settings", {
|
|
566440
566443
|
migration: "enableAllProjectMcpServersToSettings",
|
|
566441
|
-
fieldsMigrated:
|
|
566444
|
+
fieldsMigrated: migratedFields.join(",")
|
|
566442
566445
|
});
|
|
566443
566446
|
} catch (error49) {
|
|
566444
566447
|
logError2("Failed to migrate MCP server settings, rolling back", error49);
|
|
566445
566448
|
let rollbackFailed = false;
|
|
566446
566449
|
const rollbackUpdates = {};
|
|
566447
|
-
const migratedFields = [
|
|
566448
|
-
"enableAllProjectMcpServers",
|
|
566449
|
-
"enabledMcpjsonServers",
|
|
566450
|
-
"disabledMcpjsonServers"
|
|
566451
|
-
];
|
|
566452
566450
|
for (const field of migratedFields) {
|
|
566453
566451
|
if (field in originalSettings) {
|
|
566454
566452
|
rollbackUpdates[field] = originalSettings[field];
|
|
@@ -566467,7 +566465,7 @@ function migrateEnableAllProjectMcpServersToSettings() {
|
|
|
566467
566465
|
try {
|
|
566468
566466
|
saveCurrentProjectConfig((config5) => {
|
|
566469
566467
|
const updated = { ...config5 };
|
|
566470
|
-
for (const field of
|
|
566468
|
+
for (const field of migratedFields) {
|
|
566471
566469
|
updated[field] = originalProjectConfig[field];
|
|
566472
566470
|
}
|
|
566473
566471
|
return updated;
|
|
@@ -566477,13 +566475,7 @@ function migrateEnableAllProjectMcpServersToSettings() {
|
|
|
566477
566475
|
rollbackFailed = true;
|
|
566478
566476
|
if (settingsRollbackSucceeded) {
|
|
566479
566477
|
try {
|
|
566480
|
-
|
|
566481
|
-
for (const field of migratedFields) {
|
|
566482
|
-
if (updates[field] !== undefined) {
|
|
566483
|
-
reapplyUpdates[field] = updates[field];
|
|
566484
|
-
}
|
|
566485
|
-
}
|
|
566486
|
-
updateSettingsForSource("localSettings", reapplyUpdates);
|
|
566478
|
+
updateSettingsForSource("localSettings", updates);
|
|
566487
566479
|
logError2("Re-applied migrated state to settings after project config rollback failure. " + "System is now consistent (migration state re-applied).", rollbackError);
|
|
566488
566480
|
} catch (reapplyError) {
|
|
566489
566481
|
logError2("Failed to re-apply migrated state to settings after project config rollback failure. " + "System is in an inconsistent state. Manual intervention may be required.", reapplyError);
|