@opentabs-dev/plugin-tools 0.0.34 → 0.0.35

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.
@@ -7,6 +7,11 @@
7
7
  import type { ManifestTool, OpenTabsPlugin, PromptDefinition, ResourceDefinition, ToolDefinition } from '@opentabs-dev/plugin-sdk';
8
8
  import type { ManifestPrompt, ManifestResource, PluginPackageJson } from '@opentabs-dev/shared';
9
9
  import type { Command } from 'commander';
10
+ /**
11
+ * Resolve a stored plugin path to its absolute form for comparison.
12
+ * Handles both absolute paths and relative paths (resolved against configDir).
13
+ */
14
+ declare const resolvePluginPathForComparison: (storedPath: string, configDir: string) => string;
10
15
  /**
11
16
  * Add the plugin directory to localPlugins in ~/.opentabs/config.json.
12
17
  * Uses an absolute path for consistency with the CLI's `localPlugins.add`.
@@ -84,5 +89,5 @@ declare const generateManifest: (plugin: OpenTabsPlugin, sdkVersion: string, ico
84
89
  declare const formatBytes: (bytes: number) => string;
85
90
  declare const formatTimestamp: () => string;
86
91
  declare const registerBuildCommand: (program: Command) => void;
87
- export { convertToolSchemas, deriveDisplayName, formatBytes, formatTimestamp, generateManifest, generatePromptsManifest, generateResourcesManifest, generateToolsManifest, minifySvg, notifyServer, readAndValidateIcons, registerBuildCommand, registerInConfig, resolveSdkVersion, validatePackageJson, validatePlugin, warnResourcesAndPrompts, };
92
+ export { convertToolSchemas, deriveDisplayName, formatBytes, formatTimestamp, generateManifest, generatePromptsManifest, generateResourcesManifest, generateToolsManifest, minifySvg, notifyServer, readAndValidateIcons, registerBuildCommand, registerInConfig, resolvePluginPathForComparison, resolveSdkVersion, validatePackageJson, validatePlugin, warnResourcesAndPrompts, };
88
93
  //# sourceMappingURL=build.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../src/commands/build.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAwBH,OAAO,KAAK,EACV,YAAY,EACZ,cAAc,EACd,gBAAgB,EAChB,kBAAkB,EAClB,cAAc,EACf,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,cAAc,EAA0B,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACxH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA2EzC;;;;;;GAMG;AACH,QAAA,MAAM,gBAAgB,GAAU,YAAY,MAAM,KAAG,OAAO,CAAC,OAAO,CAiDnE,CAAC;AAEF;;;GAGG;AACH,QAAA,MAAM,YAAY,QAAa,OAAO,CAAC,IAAI,CAsC1C,CAAC;AAEF;;;GAGG;AACH,QAAA,MAAM,mBAAmB,GAAI,SAAS,OAAO,EAAE,YAAY,MAAM,KAAG,iBAanE,CAAC;AAEF,QAAA,MAAM,cAAc,GAAI,QAAQ,cAAc,KAAG,MAAM,EA2GtD,CAAC;AAEF;;;;;GAKG;AACH,QAAA,MAAM,uBAAuB,GAAI,QAAQ,cAAc,KAAG,IA8BzD,CAAC;AAEF,QAAA,MAAM,kBAAkB,GAAI,MAAM,cAAc;;;CA2B/C,CAAC;AAEF;;;GAGG;AACH,QAAA,MAAM,SAAS,GAAI,KAAK,MAAM,KAAG,MAKtB,CAAC;AAEZ,0EAA0E;AAC1E,UAAU,UAAU;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;;;GAIG;AACH,QAAA,MAAM,oBAAoB,GAAU,YAAY,MAAM,KAAG,OAAO,CAAC,UAAU,CA0D1E,CAAC;AAEF,qDAAqD;AACrD,UAAU,oBAAoB;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,SAAS,EAAE,gBAAgB,EAAE,CAAC;IAC9B,OAAO,EAAE,cAAc,EAAE,CAAC;CAC3B;AAED;;;GAGG;AACH,QAAA,MAAM,iBAAiB,GAAI,MAAM,MAAM,KAAG,MAO5B,CAAC;AAEf,+CAA+C;AAC/C,QAAA,MAAM,qBAAqB,GAAI,QAAQ,cAAc,KAAG,YAAY,EAWhE,CAAC;AAEL,8EAA8E;AAC9E,QAAA,MAAM,yBAAyB,GAAI,WAAW,kBAAkB,EAAE,KAAG,gBAAgB,EAMjF,CAAC;AAkBL,0EAA0E;AAC1E,QAAA,MAAM,uBAAuB,GAAI,SAAS,gBAAgB,EAAE,KAAG,cAAc,EAiBzE,CAAC;AAEL;;;;GAIG;AACH,QAAA,MAAM,iBAAiB,GAAU,YAAY,MAAM,KAAG,OAAO,CAAC,MAAM,CAwBnE,CAAC;AAEF,mFAAmF;AACnF,QAAA,MAAM,gBAAgB,GAAI,QAAQ,cAAc,EAAE,YAAY,MAAM,EAAE,QAAQ,UAAU,KAAG,oBAOzF,CAAC;AAmPH,QAAA,MAAM,WAAW,GAAI,OAAO,MAAM,KAAG,MAIpC,CAAC;AAEF,QAAA,MAAM,eAAe,QAAO,MAM3B,CAAC;AA0RF,QAAA,MAAM,oBAAoB,GAAI,SAAS,OAAO,KAAG,IAahD,CAAC;AAEF,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,WAAW,EACX,eAAe,EACf,gBAAgB,EAChB,uBAAuB,EACvB,yBAAyB,EACzB,qBAAqB,EACrB,SAAS,EACT,YAAY,EACZ,oBAAoB,EACpB,oBAAoB,EACpB,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,EACnB,cAAc,EACd,uBAAuB,GACxB,CAAC"}
1
+ {"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../src/commands/build.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAwBH,OAAO,KAAK,EACV,YAAY,EACZ,cAAc,EACd,gBAAgB,EAChB,kBAAkB,EAClB,cAAc,EACf,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,cAAc,EAA0B,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACxH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAuHzC;;;GAGG;AACH,QAAA,MAAM,8BAA8B,GAAI,YAAY,MAAM,EAAE,WAAW,MAAM,KAAG,MAI/E,CAAC;AAEF;;;;;;GAMG;AACH,QAAA,MAAM,gBAAgB,GAAU,YAAY,MAAM,KAAG,OAAO,CAAC,OAAO,CAiDnE,CAAC;AAEF;;;GAGG;AACH,QAAA,MAAM,YAAY,QAAa,OAAO,CAAC,IAAI,CAuC1C,CAAC;AAEF;;;GAGG;AACH,QAAA,MAAM,mBAAmB,GAAI,SAAS,OAAO,EAAE,YAAY,MAAM,KAAG,iBAanE,CAAC;AAEF,QAAA,MAAM,cAAc,GAAI,QAAQ,cAAc,KAAG,MAAM,EA2GtD,CAAC;AAEF;;;;;GAKG;AACH,QAAA,MAAM,uBAAuB,GAAI,QAAQ,cAAc,KAAG,IA8BzD,CAAC;AAEF,QAAA,MAAM,kBAAkB,GAAI,MAAM,cAAc;;;CA2B/C,CAAC;AAEF;;;GAGG;AACH,QAAA,MAAM,SAAS,GAAI,KAAK,MAAM,KAAG,MAKtB,CAAC;AAEZ,0EAA0E;AAC1E,UAAU,UAAU;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;;;GAIG;AACH,QAAA,MAAM,oBAAoB,GAAU,YAAY,MAAM,KAAG,OAAO,CAAC,UAAU,CA0D1E,CAAC;AAEF,qDAAqD;AACrD,UAAU,oBAAoB;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,SAAS,EAAE,gBAAgB,EAAE,CAAC;IAC9B,OAAO,EAAE,cAAc,EAAE,CAAC;CAC3B;AAED;;;GAGG;AACH,QAAA,MAAM,iBAAiB,GAAI,MAAM,MAAM,KAAG,MAO5B,CAAC;AAEf,+CAA+C;AAC/C,QAAA,MAAM,qBAAqB,GAAI,QAAQ,cAAc,KAAG,YAAY,EAWhE,CAAC;AAEL,8EAA8E;AAC9E,QAAA,MAAM,yBAAyB,GAAI,WAAW,kBAAkB,EAAE,KAAG,gBAAgB,EAMjF,CAAC;AAkBL,0EAA0E;AAC1E,QAAA,MAAM,uBAAuB,GAAI,SAAS,gBAAgB,EAAE,KAAG,cAAc,EAiBzE,CAAC;AAEL;;;;GAIG;AACH,QAAA,MAAM,iBAAiB,GAAU,YAAY,MAAM,KAAG,OAAO,CAAC,MAAM,CAwBnE,CAAC;AAEF,mFAAmF;AACnF,QAAA,MAAM,gBAAgB,GAAI,QAAQ,cAAc,EAAE,YAAY,MAAM,EAAE,QAAQ,UAAU,KAAG,oBAOzF,CAAC;AAgRH,QAAA,MAAM,WAAW,GAAI,OAAO,MAAM,KAAG,MAIpC,CAAC;AAEF,QAAA,MAAM,eAAe,QAAO,MAM3B,CAAC;AA0SF,QAAA,MAAM,oBAAoB,GAAI,SAAS,OAAO,KAAG,IAahD,CAAC;AAEF,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,WAAW,EACX,eAAe,EACf,gBAAgB,EAChB,uBAAuB,EACvB,yBAAyB,EACzB,qBAAqB,EACrB,SAAS,EACT,YAAY,EACZ,oBAAoB,EACpB,oBAAoB,EACpB,gBAAgB,EAChB,8BAA8B,EAC9B,iBAAiB,EACjB,mBAAmB,EACnB,cAAc,EACd,uBAAuB,GACxB,CAAC"}
@@ -12,11 +12,15 @@ import pc from 'picocolors';
12
12
  import { z } from 'zod';
13
13
  import { spawnSync } from 'node:child_process';
14
14
  import { createHash } from 'node:crypto';
15
- import { mkdirSync, rmSync, statSync, watch } from 'node:fs';
15
+ import { mkdirSync, readFileSync, rmSync, statSync, watch, writeFileSync } from 'node:fs';
16
16
  import { access, readFile, stat, unlink, writeFile } from 'node:fs/promises';
17
17
  import { homedir } from 'node:os';
18
- import { resolve, join, relative, dirname } from 'node:path';
18
+ import { resolve, join, relative, dirname, isAbsolute } from 'node:path';
19
19
  const DEBOUNCE_MS = 100;
20
+ // Rotating cache key for bounded module cache growth in watch mode.
21
+ // Alternates between 0 and 1 so the ESM module cache holds at most 2 entries
22
+ // for the plugin entry point, instead of accumulating one entry per rebuild.
23
+ let pluginCacheKey = 0;
20
24
  /** Write config atomically with restrictive permissions via the shared helper. */
21
25
  const atomicWriteConfig = (configPath, content) => atomicWrite(configPath, content, 0o600);
22
26
  const CONFIG_LOCK_RETRY_DELAY_MS = 50;
@@ -34,9 +38,13 @@ const STALE_LOCK_THRESHOLD_MS = 5 * 60 * 1_000;
34
38
  */
35
39
  const acquireConfigLock = async (configPath) => {
36
40
  const lockDir = configPath + '.lock';
37
- for (let attempt = 0; attempt < CONFIG_LOCK_MAX_RETRIES; attempt++) {
41
+ const pidFile = join(lockDir, 'pid.txt');
42
+ // Atomically create the lock directory and write our PID. Returns a release
43
+ // function on success, or null if the directory already exists (EEXIST).
44
+ const tryAcquire = () => {
38
45
  try {
39
46
  mkdirSync(lockDir);
47
+ writeFileSync(pidFile, String(process.pid));
40
48
  return () => {
41
49
  try {
42
50
  rmSync(lockDir, { recursive: true });
@@ -48,26 +56,69 @@ const acquireConfigLock = async (configPath) => {
48
56
  }
49
57
  catch (err) {
50
58
  if (err instanceof Error && 'code' in err && err.code === 'EEXIST') {
51
- // Check for stale lock — if the lock directory is older than the
52
- // threshold, the owning process likely crashed without releasing it.
59
+ return null;
60
+ }
61
+ throw err;
62
+ }
63
+ };
64
+ for (let attempt = 0; attempt < CONFIG_LOCK_MAX_RETRIES; attempt++) {
65
+ const release = tryAcquire();
66
+ if (release)
67
+ return release;
68
+ // Check for stale lock — if the lock directory is older than the threshold
69
+ // AND the holding process is no longer alive, remove it and re-acquire.
70
+ try {
71
+ const lockStat = statSync(lockDir);
72
+ const ageMs = Date.now() - lockStat.mtimeMs;
73
+ if (ageMs > STALE_LOCK_THRESHOLD_MS) {
74
+ // Verify whether the holding process is still alive.
75
+ let holderAlive = false;
53
76
  try {
54
- const lockStat = statSync(lockDir);
55
- const ageMs = Date.now() - lockStat.mtimeMs;
56
- if (ageMs > STALE_LOCK_THRESHOLD_MS) {
57
- console.warn(pc.yellow(`Warning: Stale config lock detected (${Math.round(ageMs / 1_000)}s old). Removing and retrying.`));
58
- rmSync(lockDir, { recursive: true });
59
- continue;
77
+ const pid = parseInt(readFileSync(pidFile, 'utf8'), 10);
78
+ if (!isNaN(pid)) {
79
+ try {
80
+ process.kill(pid, 0);
81
+ holderAlive = true;
82
+ }
83
+ catch (killErr) {
84
+ // EPERM means the process exists but we lack permission to signal it.
85
+ if (killErr instanceof Error &&
86
+ 'code' in killErr &&
87
+ killErr.code === 'EPERM') {
88
+ holderAlive = true;
89
+ }
90
+ // ESRCH means the process is gone — lock is truly stale.
91
+ }
60
92
  }
61
93
  }
62
94
  catch {
63
- // stat or rmSync failed lock may have been released concurrently
95
+ // pid.txt missing or unreadableassume stale
96
+ }
97
+ if (!holderAlive) {
98
+ console.warn(pc.yellow(`Warning: Stale config lock detected (${Math.round(ageMs / 1_000)}s old). Removing and retrying.`));
99
+ try {
100
+ rmSync(lockDir, { recursive: true });
101
+ }
102
+ catch {
103
+ // Already removed by a concurrent process — benign
104
+ }
105
+ // Immediately try to re-acquire atomically. This closes the TOCTOU
106
+ // window: without this step, another process that also detected the
107
+ // stale lock could win mkdirSync between our rmSync and the next
108
+ // loop iteration.
109
+ const staleRelease = tryAcquire();
110
+ if (staleRelease)
111
+ return staleRelease;
112
+ // Another process won the race — fall through to retry delay
64
113
  }
65
- // Lock held by another process — retry
66
- await new Promise(r => setTimeout(r, CONFIG_LOCK_RETRY_DELAY_MS));
67
- continue;
68
114
  }
69
- throw err;
70
115
  }
116
+ catch {
117
+ // stat failed — lock was released concurrently; retry immediately
118
+ continue;
119
+ }
120
+ // Lock held by another process — wait before retrying
121
+ await new Promise(r => setTimeout(r, CONFIG_LOCK_RETRY_DELAY_MS));
71
122
  }
72
123
  throw new Error('Could not acquire config lock — another build may be running');
73
124
  };
@@ -76,7 +127,7 @@ const acquireConfigLock = async (configPath) => {
76
127
  * Handles both absolute paths and relative paths (resolved against configDir).
77
128
  */
78
129
  const resolvePluginPathForComparison = (storedPath, configDir) => {
79
- if (storedPath.startsWith('/'))
130
+ if (isAbsolute(storedPath))
80
131
  return storedPath;
81
132
  if (storedPath.startsWith('~/'))
82
133
  return resolve(homedir(), storedPath.slice(2));
@@ -161,6 +212,7 @@ const notifyServer = async () => {
161
212
  const res = await fetch(`http://localhost:${port}/reload`, {
162
213
  method: 'POST',
163
214
  headers: { Authorization: `Bearer ${secret}` },
215
+ signal: AbortSignal.timeout(5_000),
164
216
  });
165
217
  if (res.ok) {
166
218
  console.log(pc.dim('Notified MCP server to reload plugins.'));
@@ -535,10 +587,16 @@ import type { OpenTabsPlugin } from '@opentabs-dev/plugin-sdk';
535
587
  // Typed accessor for the globalThis.__openTabs runtime namespace, replacing
536
588
  // untyped \`(globalThis as any).__openTabs\` casts throughout the wrapper.
537
589
  interface LogEntry { level: string; message: string; data: unknown[]; ts: string }
590
+ interface NavigationInterceptor {
591
+ callbacks: Map<string, () => void>;
592
+ origPushState: typeof history.pushState;
593
+ origReplaceState: typeof history.replaceState;
594
+ }
538
595
  interface OpenTabsRuntime {
539
596
  adapters: Record<string, OpenTabsPlugin>;
540
597
  _setLogTransport?: (fn: (entry: LogEntry) => void) => () => void;
541
598
  _logNonce?: string;
599
+ _navigationInterceptor?: NavigationInterceptor;
542
600
  }
543
601
  declare global {
544
602
  var __openTabs: OpenTabsRuntime | undefined;
@@ -605,9 +663,8 @@ const restoreTransport = setLogTransport ? setLogTransport(logTransport) : undef
605
663
 
606
664
  const existing = adapters[${name}];
607
665
  if (existing) {
608
- if (typeof existing.onDeactivate === 'function') {
609
- try { existing.onDeactivate(); } catch (e) { console.warn('[OpenTabs] onDeactivate failed for ' + ${name} + ':', e); }
610
- }
666
+ // teardown() calls onDeactivate() as its first step, so invoking teardown()
667
+ // is sufficient calling onDeactivate() here too would fire it twice.
611
668
  if (typeof existing.teardown === 'function') {
612
669
  try { existing.teardown(); } catch (e) { console.warn('[OpenTabs] teardown failed for ' + ${name} + ':', e); }
613
670
  }
@@ -668,7 +725,10 @@ if (typeof plugin.onActivate === 'function') {
668
725
  try { plugin.onActivate(); } catch (e) { console.warn('[OpenTabs] onActivate failed for ' + ${name} + ':', e); }
669
726
  }
670
727
 
671
- // Wire onNavigate — intercept history methods and listen for popstate/hashchange
728
+ // Wire onNavigate — use a shared interceptor so multiple plugins can coexist.
729
+ // A single monkey-patch of history.pushState/replaceState dispatches to all
730
+ // registered callbacks. Each plugin registers/unregisters its callback. When
731
+ // the last callback is removed, the original methods are restored.
672
732
  if (typeof plugin.onNavigate === 'function') {
673
733
  let lastUrl = location.href;
674
734
  const checkUrl = () => {
@@ -678,28 +738,49 @@ if (typeof plugin.onNavigate === 'function') {
678
738
  try { plugin.onNavigate!(newUrl); } catch (e) { console.warn('[OpenTabs] onNavigate failed:', e); }
679
739
  }
680
740
  };
681
- const origPushState = history.pushState.bind(history);
682
- const origReplaceState = history.replaceState.bind(history);
683
- history.pushState = function(...args: Parameters<typeof history.pushState>) {
684
- origPushState(...args);
685
- checkUrl();
686
- };
687
- history.replaceState = function(...args: Parameters<typeof history.replaceState>) {
688
- origReplaceState(...args);
689
- checkUrl();
690
- };
741
+
742
+ const ot = globalThis.__openTabs!;
743
+ if (!ot._navigationInterceptor) {
744
+ // First plugin to need navigation — install the shared interceptor
745
+ const origPushState = history.pushState.bind(history);
746
+ const origReplaceState = history.replaceState.bind(history);
747
+ const callbacks = new Map<string, () => void>();
748
+ ot._navigationInterceptor = { callbacks, origPushState, origReplaceState };
749
+ history.pushState = function(...args: Parameters<typeof history.pushState>) {
750
+ origPushState(...args);
751
+ for (const cb of callbacks.values()) { cb(); }
752
+ };
753
+ history.replaceState = function(...args: Parameters<typeof history.replaceState>) {
754
+ origReplaceState(...args);
755
+ for (const cb of callbacks.values()) { cb(); }
756
+ };
757
+ }
758
+
759
+ const interceptor = ot._navigationInterceptor;
760
+ interceptor.callbacks.set(${name}, checkUrl);
761
+
762
+ // popstate/hashchange use addEventListener which safely supports multiple listeners
691
763
  window.addEventListener('popstate', checkUrl);
692
764
  window.addEventListener('hashchange', checkUrl);
693
765
 
694
- // Wrap teardown to restore navigation listeners when this adapter is later replaced
766
+ // Wrap teardown to unregister this plugin's navigation callback
695
767
  const origTeardown = typeof plugin.teardown === 'function' ? plugin.teardown.bind(plugin) : undefined;
696
768
  const origOnDeactivate = typeof plugin.onDeactivate === 'function' ? plugin.onDeactivate.bind(plugin) : undefined;
697
769
  plugin.teardown = function() {
698
770
  if (origOnDeactivate) {
699
771
  try { origOnDeactivate(); } catch (e) { console.warn('[OpenTabs] onDeactivate failed for ' + ${name} + ':', e); }
700
772
  }
701
- history.pushState = origPushState;
702
- history.replaceState = origReplaceState;
773
+ // Unregister this plugin's callback from the shared interceptor
774
+ const nav = globalThis.__openTabs?._navigationInterceptor;
775
+ if (nav) {
776
+ nav.callbacks.delete(${name});
777
+ if (nav.callbacks.size === 0) {
778
+ // Last plugin removed — restore original history methods
779
+ history.pushState = nav.origPushState;
780
+ history.replaceState = nav.origReplaceState;
781
+ delete globalThis.__openTabs!._navigationInterceptor;
782
+ }
783
+ }
703
784
  window.removeEventListener('popstate', checkUrl);
704
785
  window.removeEventListener('hashchange', checkUrl);
705
786
  // Flush remaining logs and tear down log transport
@@ -795,6 +876,12 @@ const runBuild = async (projectDir) => {
795
876
  const pathKey = process.platform === 'win32' ? 'Path' : 'PATH';
796
877
  const envWithBin = { ...process.env, [pathKey]: `${binDir}${pathSep}${process.env[pathKey] ?? ''}` };
797
878
  const tscResult = spawnSync('tsc', [], { cwd: projectDir, env: envWithBin });
879
+ if (tscResult.error) {
880
+ if (tscResult.error.code === 'ENOENT') {
881
+ throw new Error('tsc not found — run npm install to install TypeScript');
882
+ }
883
+ throw tscResult.error;
884
+ }
798
885
  if ((tscResult.status ?? 1) !== 0) {
799
886
  const stderr = tscResult.stderr.toString().trim();
800
887
  const stdout = tscResult.stdout.toString().trim();
@@ -805,8 +892,10 @@ const runBuild = async (projectDir) => {
805
892
  }
806
893
  }
807
894
  // Step 2: Dynamically import the plugin module (cache-bust for watch mode rebuilds)
895
+ // Rotate between two keys so the module cache stays bounded to 2 entries.
896
+ pluginCacheKey = (pluginCacheKey + 1) % 2;
808
897
  console.log(pc.dim('Loading plugin module...'));
809
- const mod = (await import(`${entryPoint}?t=${String(Date.now())}`));
898
+ const mod = (await import(`${entryPoint}?t=${String(pluginCacheKey)}`));
810
899
  const defaultExport = mod.default;
811
900
  if (!defaultExport) {
812
901
  throw new Error('Plugin module must export a default instance of OpenTabsPlugin.');
@@ -835,10 +924,16 @@ const runBuild = async (projectDir) => {
835
924
  const distDir = join(projectDir, 'dist');
836
925
  mkdirSync(distDir, { recursive: true });
837
926
  await bundleIIFE(sourceEntry, distDir, plugin.name);
838
- // Read the bundled IIFE and compute its SHA-256 hash. The hash is computed
839
- // from the core IIFE content (before the __adapterHash setter is appended).
927
+ // Read the bundled IIFE. esbuild appends a //# sourceMappingURL= comment at
928
+ // the end when sourcemap:'linked' is used. Strip it so we can move it to the
929
+ // very end of the file (after hashAndFreeze), keeping the source map reference
930
+ // valid and the source map's line mappings correct for the IIFE code.
840
931
  const iifePath = join(distDir, ADAPTER_FILENAME);
841
- const iifeContent = await readFile(iifePath, 'utf-8');
932
+ const iifeRaw = await readFile(iifePath, 'utf-8');
933
+ const sourceMappingUrlMatch = /\n\/\/# sourceMappingURL=[^\n]+\n?$/.exec(iifeRaw);
934
+ const sourceMappingUrlSuffix = sourceMappingUrlMatch ? sourceMappingUrlMatch[0] : '';
935
+ const iifeContent = sourceMappingUrlSuffix ? iifeRaw.slice(0, -sourceMappingUrlSuffix.length) : iifeRaw;
936
+ // Hash only the core IIFE content (without the source map reference comment).
842
937
  const adapterHash = createHash('sha256').update(iifeContent).digest('hex');
843
938
  // Append a self-contained snippet that sets the adapter hash and then freezes
844
939
  // the adapter entry to prevent cross-adapter tampering. The freeze must happen
@@ -850,10 +945,12 @@ const runBuild = async (projectDir) => {
850
945
  // Re-injection and cleanup are handled by the IIFE wrapper and the
851
946
  // extension's cleanup script, which rebuild the adapters container on
852
947
  // globalThis when deletion of a non-configurable property fails.
853
- const hashAndFreeze = `
854
- (function(){var o=(globalThis).__openTabs;if(o&&o.adapters&&o.adapters[${JSON.stringify(plugin.name)}]){var a=o.adapters[${JSON.stringify(plugin.name)}];a.__adapterHash=${JSON.stringify(adapterHash)};if(a.tools&&Array.isArray(a.tools)){for(var i=0;i<a.tools.length;i++){Object.freeze(a.tools[i]);}Object.freeze(a.tools);}Object.freeze(a);Object.defineProperty(o.adapters,${JSON.stringify(plugin.name)},{value:a,writable:false,configurable:false,enumerable:true});Object.defineProperty(o,"adapters",{value:o.adapters,writable:false,configurable:false});}})();
855
- `;
856
- await writeFile(iifePath, iifeContent + hashAndFreeze, 'utf-8');
948
+ // The snippet is kept on the same line as the IIFE's closing `})();` (no
949
+ // leading/trailing newlines) so it does not shift line numbers in the .map
950
+ // file. The sourceMappingURL comment is placed last so source map tooling
951
+ // finds it at the end of the file, as required by the source map spec.
952
+ const hashAndFreeze = `(function(){var o=(globalThis).__openTabs;if(o&&o.adapters&&o.adapters[${JSON.stringify(plugin.name)}]){var a=o.adapters[${JSON.stringify(plugin.name)}];a.__adapterHash=${JSON.stringify(adapterHash)};if(a.tools&&Array.isArray(a.tools)){for(var i=0;i<a.tools.length;i++){Object.freeze(a.tools[i]);}Object.freeze(a.tools);}Object.freeze(a);Object.defineProperty(o.adapters,${JSON.stringify(plugin.name)},{value:a,writable:false,configurable:false,enumerable:true});Object.defineProperty(o,"adapters",{value:o.adapters,writable:false,configurable:false});}})();`;
953
+ await writeFile(iifePath, iifeContent + hashAndFreeze + sourceMappingUrlSuffix, 'utf-8');
857
954
  if (await access(iifePath).then(() => true, () => false)) {
858
955
  const iifeSize = (await stat(iifePath)).size;
859
956
  console.log(` Written: ${pc.bold(`dist/${ADAPTER_FILENAME}`)} (${formatBytes(iifeSize)})`);
@@ -1000,5 +1097,5 @@ Examples:
1000
1097
  $ opentabs-plugin build --watch`)
1001
1098
  .action((options) => handleBuild(options));
1002
1099
  };
1003
- export { convertToolSchemas, deriveDisplayName, formatBytes, formatTimestamp, generateManifest, generatePromptsManifest, generateResourcesManifest, generateToolsManifest, minifySvg, notifyServer, readAndValidateIcons, registerBuildCommand, registerInConfig, resolveSdkVersion, validatePackageJson, validatePlugin, warnResourcesAndPrompts, };
1100
+ export { convertToolSchemas, deriveDisplayName, formatBytes, formatTimestamp, generateManifest, generatePromptsManifest, generateResourcesManifest, generateToolsManifest, minifySvg, notifyServer, readAndValidateIcons, registerBuildCommand, registerInConfig, resolvePluginPathForComparison, resolveSdkVersion, validatePackageJson, validatePlugin, warnResourcesAndPrompts, };
1004
1101
  //# sourceMappingURL=build.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"build.js","sourceRoot":"","sources":["../../src/commands/build.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"build.js","sourceRoot":"","sources":["../../src/commands/build.ts"],"names":[],"mappings":"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"}
@@ -21,12 +21,14 @@ type ValidationResult = {
21
21
  declare const validateIconSvg: (content: string, _filename: string) => ValidationResult;
22
22
  /**
23
23
  * Validate that an SVG contains only achromatic colors.
24
- * Checks fill, stroke, stop-color, and flood-color attributes and inline styles.
24
+ * Checks fill, stroke, stop-color, and flood-color in attributes, inline styles,
25
+ * and <style> blocks.
25
26
  */
26
27
  declare const validateInactiveIconColors: (content: string) => ValidationResult;
27
28
  /**
28
29
  * Convert all color values in an SVG to luminance-equivalent grays.
29
- * Processes fill, stroke, stop-color, and flood-color in both attributes and inline styles.
30
+ * Processes fill, stroke, stop-color, and flood-color in attributes, inline styles,
31
+ * and <style> blocks.
30
32
  * Uses ITU-R BT.709: gray = 0.2126*R + 0.7152*G + 0.0722*B
31
33
  */
32
34
  declare const generateInactiveIcon: (svgContent: string) => string;
@@ -1 +1 @@
1
- {"version":3,"file":"validate-icon.d.ts","sourceRoot":"","sources":["../src/validate-icon.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,QAAA,MAAM,aAAa,QAAW,CAAC;AA+O/B,KAAK,gBAAgB,GAAG;IAAE,KAAK,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC;AAE7E;;;;GAIG;AACH,QAAA,MAAM,eAAe,GAAI,SAAS,MAAM,EAAE,WAAW,MAAM,KAAG,gBA2C7D,CAAC;AAMF;;;GAGG;AACH,QAAA,MAAM,0BAA0B,GAAI,SAAS,MAAM,KAAG,gBAgCrD,CAAC;AAuEF;;;;GAIG;AACH,QAAA,MAAM,oBAAoB,GAAI,YAAY,MAAM,KAAG,MAyBlD,CAAC;AAEF,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAE,eAAe,EAAE,0BAA0B,EAAE,CAAC"}
1
+ {"version":3,"file":"validate-icon.d.ts","sourceRoot":"","sources":["../src/validate-icon.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,QAAA,MAAM,aAAa,QAAW,CAAC;AAoQ/B,KAAK,gBAAgB,GAAG;IAAE,KAAK,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC;AAE7E;;;;GAIG;AACH,QAAA,MAAM,eAAe,GAAI,SAAS,MAAM,EAAE,WAAW,MAAM,KAAG,gBA2C7D,CAAC;AAMF;;;;GAIG;AACH,QAAA,MAAM,0BAA0B,GAAI,SAAS,MAAM,KAAG,gBAiDrD,CAAC;AAuEF;;;;;GAKG;AACH,QAAA,MAAM,oBAAoB,GAAI,YAAY,MAAM,KAAG,MAuClD,CAAC;AAEF,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAE,eAAe,EAAE,0BAA0B,EAAE,CAAC"}
@@ -114,10 +114,23 @@ const EVENT_HANDLER_RE = /\bon(?:abort|activate|afterprint|beforeprint|beforeunl
114
114
  // ---------------------------------------------------------------------------
115
115
  // Color parsing utilities
116
116
  // ---------------------------------------------------------------------------
117
- /** Parse a hex color (#RGB or #RRGGBB) to [R, G, B] */
117
+ /** Parse a hex color (#RGB, #RGBA, #RRGGBB, or #RRGGBBAA) to [R, G, B] — alpha is ignored */
118
118
  const parseHex = (hex) => {
119
119
  const trimmedHex = hex.trim();
120
120
  if (trimmedHex.length === 4) {
121
+ // #RGB
122
+ const c1 = trimmedHex[1] ?? '0';
123
+ const c2 = trimmedHex[2] ?? '0';
124
+ const c3 = trimmedHex[3] ?? '0';
125
+ const red = parseInt(c1 + c1, 16);
126
+ const green = parseInt(c2 + c2, 16);
127
+ const blue = parseInt(c3 + c3, 16);
128
+ if (Number.isNaN(red) || Number.isNaN(green) || Number.isNaN(blue))
129
+ return null;
130
+ return [red, green, blue];
131
+ }
132
+ if (trimmedHex.length === 5) {
133
+ // #RGBA — expand each RGB digit, ignore alpha
121
134
  const c1 = trimmedHex[1] ?? '0';
122
135
  const c2 = trimmedHex[2] ?? '0';
123
136
  const c3 = trimmedHex[3] ?? '0';
@@ -129,6 +142,16 @@ const parseHex = (hex) => {
129
142
  return [red, green, blue];
130
143
  }
131
144
  if (trimmedHex.length === 7) {
145
+ // #RRGGBB
146
+ const red = parseInt(trimmedHex.slice(1, 3), 16);
147
+ const green = parseInt(trimmedHex.slice(3, 5), 16);
148
+ const blue = parseInt(trimmedHex.slice(5, 7), 16);
149
+ if (Number.isNaN(red) || Number.isNaN(green) || Number.isNaN(blue))
150
+ return null;
151
+ return [red, green, blue];
152
+ }
153
+ if (trimmedHex.length === 9) {
154
+ // #RRGGBBAA — parse RGB portion, ignore alpha
132
155
  const red = parseInt(trimmedHex.slice(1, 3), 16);
133
156
  const green = parseInt(trimmedHex.slice(3, 5), 16);
134
157
  const blue = parseInt(trimmedHex.slice(5, 7), 16);
@@ -279,7 +302,8 @@ const validateIconSvg = (content, _filename) => {
279
302
  // ---------------------------------------------------------------------------
280
303
  /**
281
304
  * Validate that an SVG contains only achromatic colors.
282
- * Checks fill, stroke, stop-color, and flood-color attributes and inline styles.
305
+ * Checks fill, stroke, stop-color, and flood-color in attributes, inline styles,
306
+ * and <style> blocks.
283
307
  */
284
308
  const validateInactiveIconColors = (content) => {
285
309
  const errors = [];
@@ -309,6 +333,22 @@ const validateInactiveIconColors = (content) => {
309
333
  }
310
334
  }
311
335
  }
336
+ // Check <style> blocks for color declarations
337
+ const styleBlockPattern = /<style[^>]*>([\s\S]*?)<\/style>/gi;
338
+ let styleBlockMatch;
339
+ while ((styleBlockMatch = styleBlockPattern.exec(content)) !== null) {
340
+ const cssContent = styleBlockMatch[1] ?? '';
341
+ for (const attr of COLOR_ATTRS) {
342
+ const cssPropPattern = new RegExp(`${attr.replace('-', '\\-')}\\s*:\\s*([^;}"']+)`, 'gi');
343
+ let cssPropMatch;
344
+ while ((cssPropMatch = cssPropPattern.exec(cssContent)) !== null) {
345
+ const value = (cssPropMatch[1] ?? '').trim();
346
+ if (value && !isAchromaticColor(value)) {
347
+ errors.push(`<style> property ${attr}: ${value} uses a saturated color`);
348
+ }
349
+ }
350
+ }
351
+ }
312
352
  return errors.length === 0 ? { valid: true } : { valid: false, errors };
313
353
  };
314
354
  // ---------------------------------------------------------------------------
@@ -375,7 +415,8 @@ const convertColorToGray = (value) => {
375
415
  };
376
416
  /**
377
417
  * Convert all color values in an SVG to luminance-equivalent grays.
378
- * Processes fill, stroke, stop-color, and flood-color in both attributes and inline styles.
418
+ * Processes fill, stroke, stop-color, and flood-color in attributes, inline styles,
419
+ * and <style> blocks.
379
420
  * Uses ITU-R BT.709: gray = 0.2126*R + 0.7152*G + 0.0722*B
380
421
  */
381
422
  const generateInactiveIcon = (svgContent) => {
@@ -399,6 +440,19 @@ const generateInactiveIcon = (svgContent) => {
399
440
  }
400
441
  return fullMatch.replace(styleValue, newStyle);
401
442
  });
443
+ // Convert colors in <style> blocks
444
+ const styleBlockPattern = /(<style[^>]*>)([\s\S]*?)(<\/style>)/gi;
445
+ result = result.replace(styleBlockPattern, (_fullMatch, openTag, cssContent, closeTag) => {
446
+ let newCss = cssContent;
447
+ for (const attr of COLOR_ATTRS) {
448
+ const cssPropPattern = new RegExp(`(${attr.replace('-', '\\-')}\\s*:\\s*)([^;}"']+)`, 'gi');
449
+ newCss = newCss.replace(cssPropPattern, (_m, propPrefix, propValue) => {
450
+ const converted = convertColorToGray(propValue);
451
+ return `${propPrefix}${converted}`;
452
+ });
453
+ }
454
+ return `${openTag}${newCss}${closeTag}`;
455
+ });
402
456
  return result;
403
457
  };
404
458
  export { generateInactiveIcon, MAX_ICON_SIZE, validateIconSvg, validateInactiveIconColors };
@@ -1 +1 @@
1
- {"version":3,"file":"validate-icon.js","sourceRoot":"","sources":["../src/validate-icon.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validate-icon.js","sourceRoot":"","sources":["../src/validate-icon.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@opentabs-dev/plugin-tools",
3
- "version": "0.0.34",
3
+ "version": "0.0.35",
4
4
  "engines": {
5
- "node": ">= 20.0.0"
5
+ "node": ">= 22.0.0"
6
6
  },
7
7
  "type": "module",
8
8
  "bin": {
@@ -18,14 +18,11 @@
18
18
  "build": "tsc --build"
19
19
  },
20
20
  "dependencies": {
21
- "@opentabs-dev/plugin-sdk": "0.0.34",
22
- "@opentabs-dev/shared": "0.0.34",
21
+ "@opentabs-dev/plugin-sdk": "*",
22
+ "@opentabs-dev/shared": "*",
23
23
  "commander": "^14.0.3",
24
- "esbuild": "^0.24.0",
24
+ "esbuild": "^0.27.3",
25
25
  "picocolors": "^1.1.1",
26
26
  "zod": "^4.3.6"
27
- },
28
- "devDependencies": {
29
- "bun-types": "^1.3.9"
30
27
  }
31
28
  }