@tyvm/knowhow 0.0.140 → 0.0.141

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tyvm/knowhow",
3
- "version": "0.0.140",
3
+ "version": "0.0.141",
4
4
  "description": "ai cli with plugins and agents",
5
5
  "main": "ts_build/src/index.js",
6
6
  "bin": {
@@ -39,15 +39,146 @@ function ensureKnowhowPackageJson(knowhowDir: string): void {
39
39
  }
40
40
  }
41
41
 
42
+ /**
43
+ * Options that control how a module is installed via npm.
44
+ */
45
+ interface InstallOptions {
46
+ /**
47
+ * When true, force npm to run the module's install/build lifecycle scripts
48
+ * (preinstall/install/postinstall) in the foreground.
49
+ *
50
+ * This matters for native modules like `isolated-vm`, whose `install` script
51
+ * (`node-gyp-build || node-gyp rebuild`) selects/copies the correct prebuilt
52
+ * binary (or compiles from source). npm 11 and some org/CI policies block
53
+ * install scripts by default, which leaves native deps in a broken/mismatched
54
+ * state that later aborts the process at require-time (e.g. the
55
+ * `IsolateSpecificSize` assertion). Passing this flag ensures those scripts
56
+ * actually run so the right binary is in place.
57
+ */
58
+ allowScripts?: boolean;
59
+ }
60
+
42
61
  /**
43
62
  * Run `npm install --prefix <knowhowDir> <mod>` so that modules land in
44
63
  * .knowhow/node_modules rather than the project's node_modules.
64
+ *
65
+ * When `allowScripts` is set, we explicitly force install lifecycle scripts to
66
+ * run (`--foreground-scripts --ignore-scripts=false`) so native modules build
67
+ * correctly even under npm 11 / restrictive org policies that skip scripts by
68
+ * default.
45
69
  */
46
- function npmInstallToKnowhow(mod: string, knowhowDir: string): void {
47
- execSync(`npm install --prefix "${knowhowDir}" ${mod}`, {
70
+ function npmInstallToKnowhow(
71
+ mod: string,
72
+ knowhowDir: string,
73
+ options: InstallOptions = {}
74
+ ): void {
75
+ const scriptFlags = options.allowScripts
76
+ ? " --foreground-scripts --ignore-scripts=false"
77
+ : "";
78
+ execSync(`npm install --prefix "${knowhowDir}" ${mod}${scriptFlags}`, {
48
79
  stdio: "inherit",
49
80
  encoding: "utf-8",
50
81
  });
82
+
83
+ // When scripts weren't explicitly allowed, npm 11+ (and restrictive org/CI
84
+ // policies) silently *skip* package install/build scripts. For native addons
85
+ // like isolated-vm this leaves the package present but its native binary
86
+ // unbuilt — which later aborts at runtime with a cryptic error. Detect that
87
+ // situation now and tell the user exactly how to fix it (re-run with
88
+ // --allow-scripts) rather than letting them hit the runtime crash.
89
+ if (!options.allowScripts) {
90
+ warnIfInstallScriptsSkipped(knowhowDir);
91
+ }
92
+ }
93
+
94
+ /**
95
+ * Names of lifecycle scripts that run during `npm install` and typically build
96
+ * native code. If a freshly-installed package declares any of these AND we
97
+ * installed without allowing scripts, they were skipped.
98
+ */
99
+ const INSTALL_LIFECYCLE_SCRIPTS = ["preinstall", "install", "postinstall"];
100
+
101
+ /**
102
+ * Walk the installed dependency tree under <knowhowDir>/node_modules and return
103
+ * the names of packages that declare native/build install-lifecycle scripts.
104
+ *
105
+ * This reads the *actually installed* package.json files (rather than querying
106
+ * the registry) so it works offline, reflects the real resolved tree, and
107
+ * catches transitive dependencies (e.g. isolated-vm pulled in by a module).
108
+ */
109
+ function findPackagesWithInstallScripts(knowhowDir: string): string[] {
110
+ const nodeModules = path.join(knowhowDir, "node_modules");
111
+ const found = new Set<string>();
112
+
113
+ const readPkgScripts = (pkgDir: string): void => {
114
+ const pkgJsonPath = path.join(pkgDir, "package.json");
115
+ if (!fs.existsSync(pkgJsonPath)) return;
116
+ try {
117
+ const pkg = JSON.parse(fs.readFileSync(pkgJsonPath, "utf-8"));
118
+ const scripts = pkg.scripts ?? {};
119
+ const hasInstallScript = INSTALL_LIFECYCLE_SCRIPTS.some(
120
+ (s) => typeof scripts[s] === "string" && scripts[s].trim().length > 0
121
+ );
122
+ if (hasInstallScript && pkg.name) {
123
+ found.add(pkg.name);
124
+ }
125
+ } catch {
126
+ // ignore malformed package.json
127
+ }
128
+ };
129
+
130
+ const scanDir = (dir: string): void => {
131
+ if (!fs.existsSync(dir)) return;
132
+ let entries: fs.Dirent[] = [];
133
+ try {
134
+ entries = fs.readdirSync(dir, { withFileTypes: true });
135
+ } catch {
136
+ return;
137
+ }
138
+ for (const entry of entries) {
139
+ if (!entry.isDirectory()) continue;
140
+ if (entry.name === ".bin" || entry.name === ".cache") continue;
141
+ const full = path.join(dir, entry.name);
142
+ if (entry.name.startsWith("@")) {
143
+ // scope directory — recurse one level into the scoped packages
144
+ scanDir(full);
145
+ continue;
146
+ }
147
+ readPkgScripts(full);
148
+ // Recurse into nested node_modules for hoisting edge cases.
149
+ const nested = path.join(full, "node_modules");
150
+ if (fs.existsSync(nested)) scanDir(nested);
151
+ }
152
+ };
153
+
154
+ scanDir(nodeModules);
155
+ return Array.from(found).sort();
156
+ }
157
+
158
+ /**
159
+ * Check whether the just-installed tree contains packages with install scripts
160
+ * (that were skipped because --allow-scripts wasn't passed) and, if so, print a
161
+ * clear warning telling the user to re-run with --allow-scripts.
162
+ */
163
+ function warnIfInstallScriptsSkipped(knowhowDir: string): void {
164
+ let pkgsWithScripts: string[] = [];
165
+ try {
166
+ pkgsWithScripts = findPackagesWithInstallScripts(knowhowDir);
167
+ } catch {
168
+ return;
169
+ }
170
+ if (pkgsWithScripts.length === 0) return;
171
+
172
+ console.warn(
173
+ "\n⚠️ Some installed packages have native install/build scripts that may have\n" +
174
+ " been skipped (npm 11+ blocks install scripts by default):\n" +
175
+ pkgsWithScripts.map((p) => ` • ${p}`).join("\n") +
176
+ "\n\n If a module fails to load at runtime (e.g. isolated-vm), re-run the\n" +
177
+ " install with --allow-scripts so these build steps can run:\n\n" +
178
+ " knowhow modules install <module> --allow-scripts\n" +
179
+ " # or\n" +
180
+ " knowhow modules setup --allow-scripts\n"
181
+ );
51
182
  }
52
183
 
53
184
  /**
@@ -289,9 +420,14 @@ export function addModulesCommand(program: Command): void {
289
420
  "Add default built-in modules to your config and install them into .knowhow/node_modules"
290
421
  )
291
422
  .option("--global", "Use the global config (~/.knowhow/knowhow.json)")
423
+ .option(
424
+ "--allow-scripts",
425
+ "Allow modules' native install/build scripts to run (needed for native deps like isolated-vm under npm 11)"
426
+ )
292
427
  .action(async (opts) => {
293
428
  try {
294
429
  const isGlobal: boolean = opts.global ?? false;
430
+ const allowScripts: boolean = opts.allowScripts ?? false;
295
431
  const cfg = isGlobal ? await getGlobalConfig() : await getConfig();
296
432
  const configLabel = isGlobal
297
433
  ? "~/.knowhow/knowhow.json"
@@ -307,10 +443,16 @@ export function addModulesCommand(program: Command): void {
307
443
  let anyChanges = false;
308
444
  for (const mod of BUILTIN_MODULES) {
309
445
  if (!mod.startsWith(".") && !mod.startsWith("/")) {
310
- if (!isModuleInstalled(mod, knowhowDir)) {
446
+ // Reinstall if the module isn't installed yet, OR if the user
447
+ // explicitly passed --allow-scripts. In the latter case the whole
448
+ // point is to (re-)run the native install/build scripts (e.g.
449
+ // isolated-vm's node-gyp build), so skipping because the package
450
+ // is "already installed" would silently do nothing — which is
451
+ // exactly the confusing "Nothing to do" case we want to avoid.
452
+ if (!isModuleInstalled(mod, knowhowDir) || allowScripts) {
311
453
  const installTarget = await fetchLatestCompatibleVersion(mod);
312
454
  console.log(`📦 Installing ${installTarget}...`);
313
- npmInstallToKnowhow(installTarget, knowhowDir);
455
+ npmInstallToKnowhow(installTarget, knowhowDir, { allowScripts });
314
456
  console.log(`✅ Installed ${mod}`);
315
457
  anyChanges = true;
316
458
  }
@@ -346,9 +488,14 @@ export function addModulesCommand(program: Command): void {
346
488
  )
347
489
  .option("--global", "Use the global config (~/.knowhow/knowhow.json)")
348
490
  .option("--latest", "Force install the latest version (bypasses package-lock)")
491
+ .option(
492
+ "--allow-scripts",
493
+ "Allow the module's native install/build scripts to run (needed for native deps like isolated-vm under npm 11)"
494
+ )
349
495
  .action(async (moduleName: string | undefined, opts) => {
350
496
  try {
351
497
  const isGlobal: boolean = opts.global ?? false;
498
+ const allowScripts: boolean = opts.allowScripts ?? false;
352
499
  const cfg = isGlobal ? await getGlobalConfig() : await getConfig();
353
500
  const configLabel = isGlobal
354
501
  ? "~/.knowhow/knowhow.json"
@@ -374,7 +521,7 @@ export function addModulesCommand(program: Command): void {
374
521
  for (const mod of installable) {
375
522
  console.log(` 📦 Installing ${mod}...`);
376
523
  const installTarget = opts.latest ? await fetchLatestCompatibleVersion(mod) : mod;
377
- npmInstallToKnowhow(installTarget, knowhowDir);
524
+ npmInstallToKnowhow(installTarget, knowhowDir, { allowScripts });
378
525
  console.log(` ✅ Installed ${mod}`);
379
526
  }
380
527
  console.log(`\n🎉 All modules installed!`);
@@ -384,7 +531,7 @@ export function addModulesCommand(program: Command): void {
384
531
  // Install the specified module
385
532
  const installTarget = opts.latest ? await fetchLatestCompatibleVersion(moduleName) : moduleName;
386
533
  console.log(`📦 Installing ${installTarget} into ${knowhowDir}/node_modules...`);
387
- npmInstallToKnowhow(installTarget, knowhowDir);
534
+ npmInstallToKnowhow(installTarget, knowhowDir, { allowScripts });
388
535
  console.log(`✅ Installed ${moduleName}`);
389
536
 
390
537
  // Add to config if not already there
@@ -453,10 +600,15 @@ export function addModulesCommand(program: Command): void {
453
600
  )
454
601
  .option("--global", "Use the global config (~/.knowhow/knowhow.json)")
455
602
  .option("-y, --yes", "Skip confirmation prompt and update all outdated modules automatically")
603
+ .option(
604
+ "--allow-scripts",
605
+ "Allow modules' native install/build scripts to run (needed for native deps like isolated-vm under npm 11)"
606
+ )
456
607
  .action(async (opts) => {
457
608
  try {
458
609
  const isGlobal: boolean = opts.global ?? false;
459
610
  const skipConfirm: boolean = opts.yes ?? false;
611
+ const allowScripts: boolean = opts.allowScripts ?? false;
460
612
  const cfg = isGlobal ? await getGlobalConfig() : await getConfig();
461
613
  const configLabel = isGlobal
462
614
  ? "~/.knowhow/knowhow.json"
@@ -540,7 +692,7 @@ export function addModulesCommand(program: Command): void {
540
692
  console.log("");
541
693
  for (const { mod, compatibleVersion } of toUpdate) {
542
694
  console.log(` 📦 Updating ${compatibleVersion}...`);
543
- npmInstallToKnowhow(compatibleVersion, knowhowDir);
695
+ npmInstallToKnowhow(compatibleVersion, knowhowDir, { allowScripts });
544
696
  console.log(` ✅ Updated ${mod}`);
545
697
  }
546
698
  console.log(`\n🎉 Update complete! ${toUpdate.length} module(s) updated.`);
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tyvm/knowhow",
3
- "version": "0.0.140",
3
+ "version": "0.0.141",
4
4
  "description": "ai cli with plugins and agents",
5
5
  "main": "ts_build/src/index.js",
6
6
  "bin": {
@@ -58,11 +58,84 @@ function ensureKnowhowPackageJson(knowhowDir) {
58
58
  fs.writeFileSync(pkgPath, JSON.stringify({ name: "knowhow-modules", private: true, version: "1.0.0" }, null, 2));
59
59
  }
60
60
  }
61
- function npmInstallToKnowhow(mod, knowhowDir) {
62
- (0, child_process_1.execSync)(`npm install --prefix "${knowhowDir}" ${mod}`, {
61
+ function npmInstallToKnowhow(mod, knowhowDir, options = {}) {
62
+ const scriptFlags = options.allowScripts
63
+ ? " --foreground-scripts --ignore-scripts=false"
64
+ : "";
65
+ (0, child_process_1.execSync)(`npm install --prefix "${knowhowDir}" ${mod}${scriptFlags}`, {
63
66
  stdio: "inherit",
64
67
  encoding: "utf-8",
65
68
  });
69
+ if (!options.allowScripts) {
70
+ warnIfInstallScriptsSkipped(knowhowDir);
71
+ }
72
+ }
73
+ const INSTALL_LIFECYCLE_SCRIPTS = ["preinstall", "install", "postinstall"];
74
+ function findPackagesWithInstallScripts(knowhowDir) {
75
+ const nodeModules = path.join(knowhowDir, "node_modules");
76
+ const found = new Set();
77
+ const readPkgScripts = (pkgDir) => {
78
+ const pkgJsonPath = path.join(pkgDir, "package.json");
79
+ if (!fs.existsSync(pkgJsonPath))
80
+ return;
81
+ try {
82
+ const pkg = JSON.parse(fs.readFileSync(pkgJsonPath, "utf-8"));
83
+ const scripts = pkg.scripts ?? {};
84
+ const hasInstallScript = INSTALL_LIFECYCLE_SCRIPTS.some((s) => typeof scripts[s] === "string" && scripts[s].trim().length > 0);
85
+ if (hasInstallScript && pkg.name) {
86
+ found.add(pkg.name);
87
+ }
88
+ }
89
+ catch {
90
+ }
91
+ };
92
+ const scanDir = (dir) => {
93
+ if (!fs.existsSync(dir))
94
+ return;
95
+ let entries = [];
96
+ try {
97
+ entries = fs.readdirSync(dir, { withFileTypes: true });
98
+ }
99
+ catch {
100
+ return;
101
+ }
102
+ for (const entry of entries) {
103
+ if (!entry.isDirectory())
104
+ continue;
105
+ if (entry.name === ".bin" || entry.name === ".cache")
106
+ continue;
107
+ const full = path.join(dir, entry.name);
108
+ if (entry.name.startsWith("@")) {
109
+ scanDir(full);
110
+ continue;
111
+ }
112
+ readPkgScripts(full);
113
+ const nested = path.join(full, "node_modules");
114
+ if (fs.existsSync(nested))
115
+ scanDir(nested);
116
+ }
117
+ };
118
+ scanDir(nodeModules);
119
+ return Array.from(found).sort();
120
+ }
121
+ function warnIfInstallScriptsSkipped(knowhowDir) {
122
+ let pkgsWithScripts = [];
123
+ try {
124
+ pkgsWithScripts = findPackagesWithInstallScripts(knowhowDir);
125
+ }
126
+ catch {
127
+ return;
128
+ }
129
+ if (pkgsWithScripts.length === 0)
130
+ return;
131
+ console.warn("\n⚠️ Some installed packages have native install/build scripts that may have\n" +
132
+ " been skipped (npm 11+ blocks install scripts by default):\n" +
133
+ pkgsWithScripts.map((p) => ` • ${p}`).join("\n") +
134
+ "\n\n If a module fails to load at runtime (e.g. isolated-vm), re-run the\n" +
135
+ " install with --allow-scripts so these build steps can run:\n\n" +
136
+ " knowhow modules install <module> --allow-scripts\n" +
137
+ " # or\n" +
138
+ " knowhow modules setup --allow-scripts\n");
66
139
  }
67
140
  function isModuleInstalled(mod, knowhowDir) {
68
141
  try {
@@ -266,9 +339,11 @@ function addModulesCommand(program) {
266
339
  .command("setup")
267
340
  .description("Add default built-in modules to your config and install them into .knowhow/node_modules")
268
341
  .option("--global", "Use the global config (~/.knowhow/knowhow.json)")
342
+ .option("--allow-scripts", "Allow modules' native install/build scripts to run (needed for native deps like isolated-vm under npm 11)")
269
343
  .action(async (opts) => {
270
344
  try {
271
345
  const isGlobal = opts.global ?? false;
346
+ const allowScripts = opts.allowScripts ?? false;
272
347
  const cfg = isGlobal ? await (0, config_1.getGlobalConfig)() : await (0, config_1.getConfig)();
273
348
  const configLabel = isGlobal
274
349
  ? "~/.knowhow/knowhow.json"
@@ -280,10 +355,10 @@ function addModulesCommand(program) {
280
355
  let anyChanges = false;
281
356
  for (const mod of exports.BUILTIN_MODULES) {
282
357
  if (!mod.startsWith(".") && !mod.startsWith("/")) {
283
- if (!isModuleInstalled(mod, knowhowDir)) {
358
+ if (!isModuleInstalled(mod, knowhowDir) || allowScripts) {
284
359
  const installTarget = await fetchLatestCompatibleVersion(mod);
285
360
  console.log(`📦 Installing ${installTarget}...`);
286
- npmInstallToKnowhow(installTarget, knowhowDir);
361
+ npmInstallToKnowhow(installTarget, knowhowDir, { allowScripts });
287
362
  console.log(`✅ Installed ${mod}`);
288
363
  anyChanges = true;
289
364
  }
@@ -313,9 +388,11 @@ function addModulesCommand(program) {
313
388
  "If no module name is given, installs all modules already in the config.")
314
389
  .option("--global", "Use the global config (~/.knowhow/knowhow.json)")
315
390
  .option("--latest", "Force install the latest version (bypasses package-lock)")
391
+ .option("--allow-scripts", "Allow the module's native install/build scripts to run (needed for native deps like isolated-vm under npm 11)")
316
392
  .action(async (moduleName, opts) => {
317
393
  try {
318
394
  const isGlobal = opts.global ?? false;
395
+ const allowScripts = opts.allowScripts ?? false;
319
396
  const cfg = isGlobal ? await (0, config_1.getGlobalConfig)() : await (0, config_1.getConfig)();
320
397
  const configLabel = isGlobal
321
398
  ? "~/.knowhow/knowhow.json"
@@ -334,7 +411,7 @@ function addModulesCommand(program) {
334
411
  for (const mod of installable) {
335
412
  console.log(` 📦 Installing ${mod}...`);
336
413
  const installTarget = opts.latest ? await fetchLatestCompatibleVersion(mod) : mod;
337
- npmInstallToKnowhow(installTarget, knowhowDir);
414
+ npmInstallToKnowhow(installTarget, knowhowDir, { allowScripts });
338
415
  console.log(` ✅ Installed ${mod}`);
339
416
  }
340
417
  console.log(`\n🎉 All modules installed!`);
@@ -342,7 +419,7 @@ function addModulesCommand(program) {
342
419
  }
343
420
  const installTarget = opts.latest ? await fetchLatestCompatibleVersion(moduleName) : moduleName;
344
421
  console.log(`📦 Installing ${installTarget} into ${knowhowDir}/node_modules...`);
345
- npmInstallToKnowhow(installTarget, knowhowDir);
422
+ npmInstallToKnowhow(installTarget, knowhowDir, { allowScripts });
346
423
  console.log(`✅ Installed ${moduleName}`);
347
424
  if (!cfg.modules.includes(moduleName)) {
348
425
  cfg.modules.push(moduleName);
@@ -411,10 +488,12 @@ function addModulesCommand(program) {
411
488
  "Shows installed vs latest version with publish date before updating.")
412
489
  .option("--global", "Use the global config (~/.knowhow/knowhow.json)")
413
490
  .option("-y, --yes", "Skip confirmation prompt and update all outdated modules automatically")
491
+ .option("--allow-scripts", "Allow modules' native install/build scripts to run (needed for native deps like isolated-vm under npm 11)")
414
492
  .action(async (opts) => {
415
493
  try {
416
494
  const isGlobal = opts.global ?? false;
417
495
  const skipConfirm = opts.yes ?? false;
496
+ const allowScripts = opts.allowScripts ?? false;
418
497
  const cfg = isGlobal ? await (0, config_1.getGlobalConfig)() : await (0, config_1.getConfig)();
419
498
  const configLabel = isGlobal
420
499
  ? "~/.knowhow/knowhow.json"
@@ -473,7 +552,7 @@ function addModulesCommand(program) {
473
552
  console.log("");
474
553
  for (const { mod, compatibleVersion } of toUpdate) {
475
554
  console.log(` 📦 Updating ${compatibleVersion}...`);
476
- npmInstallToKnowhow(compatibleVersion, knowhowDir);
555
+ npmInstallToKnowhow(compatibleVersion, knowhowDir, { allowScripts });
477
556
  console.log(` ✅ Updated ${mod}`);
478
557
  }
479
558
  console.log(`\n🎉 Update complete! ${toUpdate.length} module(s) updated.`);
@@ -1 +1 @@
1
- {"version":3,"file":"modules.js","sourceRoot":"","sources":["../../../src/commands/modules.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"modules.js","sourceRoot":"","sources":["../../../src/commands/modules.ts"],"names":[],"mappings":"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"}