@vitronai/alethia 0.5.2 → 0.6.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/README.md CHANGED
@@ -239,6 +239,8 @@ alethia-mcp --debug Run with debug logging on stderr
239
239
  | `ALETHIA_HEADLESS` | (unset) | Set to `1` to hide the cockpit window. Default is visible. CI environments (`CI=1`, `GITHUB_ACTIONS`, etc.) auto-hide. |
240
240
  | `ALETHIA_VISIBLE` | (unset) | **Deprecated** — set to `0` as a legacy alias for `ALETHIA_HEADLESS=1`. Removed in a future release. |
241
241
  | `ALETHIA_HIGHLIGHTS` | (unset) | Set to `1` to overlay per-step highlights on the target |
242
+ | `ALETHIA_RUNTIME_VERSION` | (unset) | Pin the bridge to a specific runtime version (e.g. `0.4.0`). By default the bridge queries GitHub Releases for the current latest runtime and downloads that. Use this for reproducible CI, bisection, or deliberately staying on an older runtime. |
243
+ | `ALETHIA_RUNTIME_DIR` | `~/.alethia/runtime` | Where the auto-installed runtime lives. Override for sandboxing or to stash multiple installs. |
242
244
 
243
245
  ---
244
246
 
@@ -247,6 +249,7 @@ alethia-mcp --debug Run with debug logging on stderr
247
249
  - This package is the MCP bridge. It translates MCP tool calls into requests to the Alethia runtime.
248
250
  - The runtime listens on `127.0.0.1:47432` over loopback JSON-RPC. No cloud calls, no telemetry.
249
251
  - The runtime auto-installs on first use from signed GitHub releases (Ed25519-verified).
252
+ - **The bridge asks GitHub Releases what the current runtime version is on first start** (cached 1h). No RUNTIME_VERSION pin lives in the bridge source, so a globally-installed bridge keeps pulling the current runtime as new ones ship. Pin to a specific version with `ALETHIA_RUNTIME_VERSION=x.y.z` for reproducible CI or bisection.
250
253
  - The cockpit is visible by default — it's the oversight surface where each step is highlighted live. Set `ALETHIA_HEADLESS=1` to hide, or toggle mid-session with `alethia_show_cockpit` / `alethia_hide_cockpit`.
251
254
 
252
255
  ---
package/dist/index.d.ts CHANGED
@@ -18,5 +18,9 @@
18
18
  * Patent Pending — U.S. Application No. 19/571,437. The MIT license on this
19
19
  * MCP bridge does NOT grant any patent license under U.S. App 19/571,437.
20
20
  */
21
+ export declare const __setLatestVersionFetcherForTests: (fn: (() => Promise<string | null>) | null) => void;
22
+ export declare const resolveRuntimeVersion: () => Promise<string>;
23
+ export declare const getArtifactName: (runtimeVersion: string) => string | null;
24
+ export declare const getGithubReleaseBase: (runtimeVersion: string) => string;
21
25
  export declare const getLocalInstalledRuntimeVersion: (runtimeDir?: string) => string | null;
22
26
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;;;;;GAkBG;AAyVH,eAAO,MAAM,+BAA+B,GAAI,mBAAwB,KAAG,MAAM,GAAG,IAsBnF,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;;;;;GAkBG;AAsLH,eAAO,MAAM,iCAAiC,GAAI,IAAI,CAAC,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,GAAG,IAAI,KAAG,IAE7F,CAAC;AAEF,eAAO,MAAM,qBAAqB,QAAa,OAAO,CAAC,MAAM,CAmC5D,CAAC;AAuDF,eAAO,MAAM,eAAe,GAAI,gBAAgB,MAAM,KAAG,MAAM,GAAG,IAiBjE,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAAI,gBAAgB,MAAM,KAAG,MACe,CAAC;AAsF9E,eAAO,MAAM,+BAA+B,GAAI,mBAAwB,KAAG,MAAM,GAAG,IAsBnF,CAAC"}
package/dist/index.js CHANGED
@@ -54,110 +54,12 @@ const ALETHIA_HOST = process.env.ALETHIA_HOST ?? '127.0.0.1';
54
54
  const ALETHIA_PORT = Number(process.env.ALETHIA_PORT ?? 47432);
55
55
  const ALETHIA_TIMEOUT_MS = Number(process.env.ALETHIA_TIMEOUT_MS ?? 60_000);
56
56
  const DEBUG = process.env.ALETHIA_DEBUG === '1' || process.argv.includes('--debug');
57
- const SKIP_UPDATE_CHECK = process.env.ALETHIA_SKIP_UPDATE_CHECK === '1';
58
57
  const debug = (...args) => {
59
58
  if (DEBUG) {
60
59
  process.stderr.write(`[alethia-mcp] ${args.map(String).join(' ')}\n`);
61
60
  }
62
61
  };
63
62
  // ---------------------------------------------------------------------------
64
- // Update check — globally-installed bridges don't auto-update. npm doesn't
65
- // tell users a newer version exists. Without this, a user on last month's
66
- // bridge silently misses every new runtime + tool we ship until they manually
67
- // re-install. Check npm registry at most once per 24h, warn on stderr, and
68
- // surface the notice in the MCP initialize response so the agent can relay
69
- // it to the user. All failures are silent (offline, rate-limit, parse error).
70
- // Opt out with ALETHIA_SKIP_UPDATE_CHECK=1.
71
- // ---------------------------------------------------------------------------
72
- const UPDATE_CHECK_CACHE = join(homedir(), '.alethia', '.update-check');
73
- const UPDATE_CHECK_TTL_MS = 24 * 60 * 60 * 1000;
74
- // Accepts x.y.z and x.y.z-pre.N. Returns 1/-1/0. Silent on parse failure
75
- // (returns 0 so we never warn on garbage).
76
- const compareSemver = (a, b) => {
77
- const parse = (v) => {
78
- const core = v.split('-')[0] ?? v;
79
- return core.split('.').map((n) => {
80
- const x = parseInt(n, 10);
81
- return Number.isFinite(x) ? x : 0;
82
- });
83
- };
84
- const pa = parse(a);
85
- const pb = parse(b);
86
- const len = Math.max(pa.length, pb.length);
87
- for (let i = 0; i < len; i++) {
88
- const av = pa[i] ?? 0;
89
- const bv = pb[i] ?? 0;
90
- if (av !== bv)
91
- return av > bv ? 1 : -1;
92
- }
93
- return 0;
94
- };
95
- let latestBridgeVersion = null;
96
- const fetchLatestBridgeVersion = () => new Promise((resolveFetch) => {
97
- const req = https.get(`https://registry.npmjs.org/${PKG_NAME}/latest`, { timeout: 2000, headers: { accept: 'application/json' } }, (res) => {
98
- if (res.statusCode !== 200) {
99
- res.resume();
100
- return resolveFetch(null);
101
- }
102
- let body = '';
103
- res.setEncoding('utf8');
104
- res.on('data', (c) => { body += c; if (body.length > 64 * 1024)
105
- res.destroy(); });
106
- res.on('end', () => {
107
- try {
108
- const v = JSON.parse(body).version;
109
- resolveFetch(typeof v === 'string' ? v : null);
110
- }
111
- catch {
112
- resolveFetch(null);
113
- }
114
- });
115
- });
116
- req.on('error', () => resolveFetch(null));
117
- req.on('timeout', () => { req.destroy(); resolveFetch(null); });
118
- });
119
- const readUpdateCache = () => {
120
- try {
121
- const raw = JSON.parse(readFileSync(UPDATE_CHECK_CACHE, 'utf8'));
122
- if (typeof raw.lastChecked === 'number' && typeof raw.latestVersion === 'string')
123
- return raw;
124
- }
125
- catch { /* no cache / corrupt cache */ }
126
- return null;
127
- };
128
- const writeUpdateCache = (latestVersion) => {
129
- try {
130
- mkdirSync(dirname(UPDATE_CHECK_CACHE), { recursive: true });
131
- writeFileSync(UPDATE_CHECK_CACHE, JSON.stringify({ lastChecked: Date.now(), latestVersion }));
132
- }
133
- catch { /* best-effort */ }
134
- };
135
- // Returns the newer version string if the user's bridge is behind, else null.
136
- // Consults cache first; only hits the network if cache is stale.
137
- const checkForBridgeUpdate = async () => {
138
- if (SKIP_UPDATE_CHECK)
139
- return null;
140
- const cached = readUpdateCache();
141
- const fresh = cached && Date.now() - cached.lastChecked < UPDATE_CHECK_TTL_MS;
142
- const latest = fresh ? cached.latestVersion : await fetchLatestBridgeVersion();
143
- if (!latest)
144
- return null;
145
- if (!fresh)
146
- writeUpdateCache(latest);
147
- return compareSemver(latest, PKG_VERSION) > 0 ? latest : null;
148
- };
149
- // Kicked off at module load; the result lands in latestBridgeVersion and is
150
- // inspected by the initialize response + the pre-handler stderr notice. The
151
- // bridge's cold start path (auto-install, download, spawn) is IO-bound for
152
- // several seconds — this network call piggy-backs on that idle window.
153
- void checkForBridgeUpdate().then((newer) => {
154
- if (!newer)
155
- return;
156
- latestBridgeVersion = newer;
157
- process.stderr.write(`[alethia-mcp] A newer bridge is available: ${newer} (you have ${PKG_VERSION}). ` +
158
- `Update with: npm install -g @vitronai/alethia@latest\n`);
159
- });
160
- // ---------------------------------------------------------------------------
161
63
  // Demo server — serves demo/ files on localhost for preview panels
162
64
  // ---------------------------------------------------------------------------
163
65
  let demoServer = null;
@@ -220,35 +122,167 @@ const getDemoPages = () => {
220
122
  };
221
123
  // ---------------------------------------------------------------------------
222
124
  // Auto-install: download, verify, extract, and spawn the headless runtime
125
+ //
126
+ // Philosophy change vs. 0.5.x — the bridge no longer pins a specific runtime
127
+ // version in source. Instead, it asks GitHub Releases what's current and
128
+ // downloads that. Rationale:
129
+ // - One fewer thing to hand-edit at release time (RUNTIME_VERSION bump was
130
+ // a step that went wrong twice in session 2026-04-19).
131
+ // - Globally-installed bridges no longer silently get frozen on last
132
+ // month's runtime. They pull the current signed pair on demand.
133
+ // - Explicit opt-out: set ALETHIA_RUNTIME_VERSION=x.y.z to pin — useful
134
+ // for reproducible CI, bisection, or deliberately staying behind.
135
+ //
136
+ // All downloads still go through the same Ed25519 + SHA-256 verification
137
+ // path. The Ed25519 public key ships embedded in the bridge and is the
138
+ // chain-of-custody anchor — we trust what GitHub serves only to the extent
139
+ // that its signature matches this key.
223
140
  // ---------------------------------------------------------------------------
224
- const RUNTIME_VERSION = '0.4.0';
225
- // Allow override via env var so tests (and unusual installs) can sandbox the path.
226
141
  const RUNTIME_DIR = process.env.ALETHIA_RUNTIME_DIR ?? join(homedir(), '.alethia', 'runtime');
227
142
  const RUNTIME_MARKER = join(RUNTIME_DIR, '.installed');
228
- const GITHUB_RELEASE_BASE = `https://github.com/vitron-ai/alethia/releases/download/v${RUNTIME_VERSION}`;
143
+ const LATEST_RELEASE_CACHE = join(homedir(), '.alethia', '.latest-release');
144
+ const LATEST_RELEASE_TTL_MS = 60 * 60 * 1000; // 1h — fresh enough to pick up new releases same-day.
145
+ const GITHUB_API_LATEST = 'https://api.github.com/repos/vitron-ai/alethia/releases/latest';
229
146
  // Ed25519 public key for release verification — embedded so it ships with npm
230
147
  const RELEASE_PUBLIC_KEY = `-----BEGIN PUBLIC KEY-----
231
148
  MCowBQYDK2VwAyEA0zXtS6R90li3nBHsO4iae1Ltddx9skjQuFv+/V497UQ=
232
149
  -----END PUBLIC KEY-----`;
233
- const PLATFORM_MAP = {
234
- darwin: {
235
- x64: `Alethia-${RUNTIME_VERSION}-mac.tar.gz`,
236
- arm64: `Alethia-${RUNTIME_VERSION}-mac-arm64.tar.gz`,
237
- },
238
- linux: {
239
- x64: `alethia-${RUNTIME_VERSION}.tar.gz`,
240
- arm64: `alethia-${RUNTIME_VERSION}-arm64.tar.gz`,
241
- },
242
- win32: {
243
- x64: `Alethia-${RUNTIME_VERSION}-win.zip`,
244
- },
150
+ // Pin override (advanced users / CI / bisection). Accepts "0.4.0" or "v0.4.0"
151
+ // for convenience; normalized to the bare semver form used throughout.
152
+ const getPinnedRuntimeVersion = () => {
153
+ const raw = process.env.ALETHIA_RUNTIME_VERSION;
154
+ if (!raw)
155
+ return null;
156
+ const trimmed = raw.trim();
157
+ if (!trimmed)
158
+ return null;
159
+ return trimmed.startsWith('v') ? trimmed.slice(1) : trimmed;
160
+ };
161
+ // Query GitHub Releases for the current latest version. Cached 1h in
162
+ // ~/.alethia/.latest-release. Honors ALETHIA_RUNTIME_VERSION pin override
163
+ // (skips network entirely if pinned).
164
+ //
165
+ // Fetch failures are non-fatal if we have *any* cached value (even stale),
166
+ // any installed runtime (use its marker version), or the user has pinned.
167
+ // Only the cold path (first run + offline + no pin) produces an error,
168
+ // because there is no signed chain-of-custody anchor we can use without
169
+ // reaching the release metadata at least once.
170
+ // Test hook — allows tests to swap the network fetcher for a deterministic
171
+ // mock. Production callers never set this; the default is the real
172
+ // fetchLatestRuntimeVersion. Keeps the test surface in-process with no mocks
173
+ // of global https.get required.
174
+ let _fetcherForTests = null;
175
+ export const __setLatestVersionFetcherForTests = (fn) => {
176
+ _fetcherForTests = fn;
177
+ };
178
+ export const resolveRuntimeVersion = async () => {
179
+ const pinned = getPinnedRuntimeVersion();
180
+ if (pinned) {
181
+ debug(`runtime version pinned via ALETHIA_RUNTIME_VERSION=${pinned}`);
182
+ return pinned;
183
+ }
184
+ const cached = readLatestReleaseCache();
185
+ if (cached && Date.now() - cached.fetchedAt < LATEST_RELEASE_TTL_MS) {
186
+ debug(`using cached latest-release version ${cached.version} (age ${Date.now() - cached.fetchedAt}ms)`);
187
+ return cached.version;
188
+ }
189
+ const fetched = await (_fetcherForTests ?? fetchLatestRuntimeVersion)();
190
+ if (fetched) {
191
+ writeLatestReleaseCache(fetched);
192
+ return fetched;
193
+ }
194
+ // Network failed. Fall back to stale cache, then installed marker.
195
+ if (cached) {
196
+ debug(`latest-release fetch failed; using stale cache ${cached.version}`);
197
+ return cached.version;
198
+ }
199
+ const installed = getLocalInstalledRuntimeVersion();
200
+ if (installed && installed !== 'unknown') {
201
+ debug(`latest-release fetch failed and no cache; using installed marker ${installed}`);
202
+ return installed;
203
+ }
204
+ throw new Error('Could not determine runtime version. ' +
205
+ 'The bridge needs to reach https://api.github.com/repos/vitron-ai/alethia/releases/latest at least once to discover the current signed runtime. ' +
206
+ 'Pin a specific version to skip this: ALETHIA_RUNTIME_VERSION=x.y.z');
207
+ };
208
+ const readLatestReleaseCache = () => {
209
+ try {
210
+ const raw = JSON.parse(readFileSync(LATEST_RELEASE_CACHE, 'utf8'));
211
+ if (typeof raw.fetchedAt === 'number' && typeof raw.version === 'string')
212
+ return raw;
213
+ }
214
+ catch { /* no cache / corrupt */ }
215
+ return null;
245
216
  };
246
- const getArtifactName = () => {
217
+ const writeLatestReleaseCache = (version) => {
218
+ try {
219
+ mkdirSync(dirname(LATEST_RELEASE_CACHE), { recursive: true });
220
+ writeFileSync(LATEST_RELEASE_CACHE, JSON.stringify({ fetchedAt: Date.now(), version }));
221
+ }
222
+ catch { /* best effort */ }
223
+ };
224
+ const fetchLatestRuntimeVersion = () => new Promise((resolveFetch) => {
225
+ const req = https.get(GITHUB_API_LATEST, {
226
+ timeout: 3000,
227
+ headers: {
228
+ accept: 'application/vnd.github+json',
229
+ 'user-agent': `${PKG_NAME}/${PKG_VERSION}`,
230
+ },
231
+ }, (res) => {
232
+ if (res.statusCode && res.statusCode >= 300 && res.statusCode < 400 && res.headers.location) {
233
+ res.resume();
234
+ // GitHub API doesn't redirect for this endpoint, but be safe.
235
+ resolveFetch(null);
236
+ return;
237
+ }
238
+ if (res.statusCode !== 200) {
239
+ res.resume();
240
+ return resolveFetch(null);
241
+ }
242
+ let body = '';
243
+ res.setEncoding('utf8');
244
+ res.on('data', (c) => { body += c; if (body.length > 256 * 1024)
245
+ res.destroy(); });
246
+ res.on('end', () => {
247
+ try {
248
+ const tag = JSON.parse(body).tag_name;
249
+ if (typeof tag !== 'string')
250
+ return resolveFetch(null);
251
+ // Accept "v0.4.0" or "0.4.0"
252
+ resolveFetch(tag.startsWith('v') ? tag.slice(1) : tag);
253
+ }
254
+ catch {
255
+ resolveFetch(null);
256
+ }
257
+ });
258
+ });
259
+ req.on('error', () => resolveFetch(null));
260
+ req.on('timeout', () => { req.destroy(); resolveFetch(null); });
261
+ });
262
+ // Platform → artifact filename template. The version is substituted at
263
+ // install time now that it's no longer a module-level constant.
264
+ export const getArtifactName = (runtimeVersion) => {
247
265
  const p = platform();
248
266
  const a = arch();
249
- return PLATFORM_MAP[p]?.[a] ?? null;
267
+ const templates = {
268
+ darwin: {
269
+ x64: `Alethia-${runtimeVersion}-mac.tar.gz`,
270
+ arm64: `Alethia-${runtimeVersion}-mac-arm64.tar.gz`,
271
+ },
272
+ linux: {
273
+ x64: `alethia-${runtimeVersion}.tar.gz`,
274
+ arm64: `alethia-${runtimeVersion}-arm64.tar.gz`,
275
+ },
276
+ win32: {
277
+ x64: `Alethia-${runtimeVersion}-win.zip`,
278
+ },
279
+ };
280
+ return templates[p]?.[a] ?? null;
250
281
  };
251
- const getExecutablePath = () => {
282
+ export const getGithubReleaseBase = (runtimeVersion) => `https://github.com/vitron-ai/alethia/releases/download/v${runtimeVersion}`;
283
+ // Finds the runtime binary in the install dir. Runtime version is only needed
284
+ // for Linux (version-prefixed extract dir); Mac and Windows have stable layouts.
285
+ const getExecutablePath = (runtimeVersion) => {
252
286
  const p = platform();
253
287
  if (p === 'darwin') {
254
288
  // Look for the .app inside the extracted directory
@@ -258,14 +292,11 @@ const getExecutablePath = () => {
258
292
  if (p === 'win32') {
259
293
  return join(RUNTIME_DIR, 'win-unpacked', 'Alethia.exe');
260
294
  }
261
- // Linux — the tarball extracts into a version-prefixed directory.
262
- // Probe likely candidates and fall back to scanning RUNTIME_DIR.
263
- const linuxCandidates = [
264
- `alethia-${RUNTIME_VERSION}`,
265
- `alethia-${RUNTIME_VERSION}-arm64`,
266
- 'linux-unpacked',
267
- 'linux-arm64-unpacked',
268
- ];
295
+ // Linux — the tarball extracts into a version-prefixed directory. Try the
296
+ // expected-for-this-version paths first, then scan.
297
+ const linuxCandidates = runtimeVersion
298
+ ? [`alethia-${runtimeVersion}`, `alethia-${runtimeVersion}-arm64`, 'linux-unpacked', 'linux-arm64-unpacked']
299
+ : ['linux-unpacked', 'linux-arm64-unpacked'];
269
300
  for (const dir of linuxCandidates) {
270
301
  const exe = join(RUNTIME_DIR, dir, 'alethia');
271
302
  if (existsSync(exe))
@@ -280,9 +311,9 @@ const getExecutablePath = () => {
280
311
  }
281
312
  }
282
313
  catch { /* ignore */ }
283
- // Return the canonical expected path so the downstream error message
284
- // tells the user where we LOOKED (rather than landing on an unrelated arm64 path).
285
- return join(RUNTIME_DIR, `alethia-${RUNTIME_VERSION}`, 'alethia');
314
+ // Return a canonical expected path so downstream errors tell the user
315
+ // where we LOOKED (rather than landing on an unrelated arm64 path).
316
+ return join(RUNTIME_DIR, runtimeVersion ? `alethia-${runtimeVersion}` : 'linux-unpacked', 'alethia');
286
317
  };
287
318
  const httpsGet = (url) => new Promise((res, rej) => {
288
319
  const doGet = (u, redirects = 0) => {
@@ -378,8 +409,9 @@ const probeRunningRuntimeVersion = async () => {
378
409
  }
379
410
  };
380
411
  let runtimeVersionVerified = false;
412
+ let resolvedTargetVersion = null;
381
413
  // One-shot guard, called before each tool dispatch. If a runtime is already on
382
- // the port with a version that doesn't match what this bridge ships against,
414
+ // the port with a version that doesn't match what this bridge is targeting,
383
415
  // refuse to operate — the user is silently driving against a stale runtime
384
416
  // (likely an orphan from a prior bridge that wasn't cleaned up). Returns
385
417
  // silently if no runtime answers (the normal install path will then take over).
@@ -391,9 +423,10 @@ const ensureCorrectRuntimeVersion = async () => {
391
423
  // Nothing answering or too-old runtime — let the install/spawn path drive.
392
424
  return;
393
425
  }
394
- if (runningVersion !== RUNTIME_VERSION) {
395
- throw new Error(`Stale Alethia runtime v${runningVersion} is responding on port ${ALETHIA_PORT}; this bridge expects v${RUNTIME_VERSION}. ` +
396
- `An older runtime (likely orphaned from a previous bridge process) is occupying the port, so the bridge cannot spawn the correct version. ` +
426
+ const targetVersion = resolvedTargetVersion ?? (resolvedTargetVersion = await resolveRuntimeVersion());
427
+ if (runningVersion !== targetVersion) {
428
+ throw new Error(`Stale Alethia runtime v${runningVersion} is responding on port ${ALETHIA_PORT}; this bridge is targeting v${targetVersion}. ` +
429
+ `An older runtime (likely orphaned from a previous bridge process) is occupying the port, so the bridge cannot spawn the current version. ` +
397
430
  `Quit the running runtime — on macOS: \`pkill -f Alethia.app\` — then restart your MCP host.`);
398
431
  }
399
432
  runtimeVersionVerified = true;
@@ -402,7 +435,8 @@ const ensureRuntime = async () => {
402
435
  if (autoInstallAttempted)
403
436
  return;
404
437
  autoInstallAttempted = true;
405
- const artifactName = getArtifactName();
438
+ const targetVersion = resolvedTargetVersion ?? (resolvedTargetVersion = await resolveRuntimeVersion());
439
+ const artifactName = getArtifactName(targetVersion);
406
440
  if (!artifactName) {
407
441
  throw new Error(`No Alethia runtime available for ${platform()}-${arch()}. ` +
408
442
  `Supported: macOS (x64/arm64), Linux (x64/arm64), Windows (x64). ` +
@@ -411,13 +445,13 @@ const ensureRuntime = async () => {
411
445
  // Check what's installed on disk. Marker is fast path; Info.plist fallback
412
446
  // catches legacy installs / partial extracts that never wrote a marker.
413
447
  const installedVersion = getLocalInstalledRuntimeVersion();
414
- if (installedVersion === RUNTIME_VERSION) {
448
+ if (installedVersion === targetVersion) {
415
449
  debug('runtime already installed and up-to-date, spawning');
416
- await spawnRuntime();
450
+ await spawnRuntime(targetVersion);
417
451
  return;
418
452
  }
419
453
  if (installedVersion) {
420
- process.stderr.write(`[alethia] Installed runtime v${installedVersion} is outdated. Upgrading to v${RUNTIME_VERSION}...\n`);
454
+ process.stderr.write(`[alethia] Installed runtime v${installedVersion} differs from target v${targetVersion}. Replacing...\n`);
421
455
  // Wipe the stale install before re-extracting so orphan files from the
422
456
  // previous version (different bundle layout, removed assets) don't linger.
423
457
  try {
@@ -426,13 +460,14 @@ const ensureRuntime = async () => {
426
460
  catch { /* best effort */ }
427
461
  }
428
462
  else {
429
- process.stderr.write(`[alethia] Runtime not found. Auto-installing v${RUNTIME_VERSION}...\n`);
463
+ process.stderr.write(`[alethia] Runtime not found. Auto-installing v${targetVersion}...\n`);
430
464
  }
431
465
  mkdirSync(RUNTIME_DIR, { recursive: true });
432
466
  const artifactPath = join(RUNTIME_DIR, artifactName);
433
467
  const manifestPath = join(RUNTIME_DIR, 'manifest.json');
468
+ const releaseBase = getGithubReleaseBase(targetVersion);
434
469
  // Download manifest + artifact
435
- await downloadFile(`${GITHUB_RELEASE_BASE}/manifest.json`, manifestPath);
470
+ await downloadFile(`${releaseBase}/manifest.json`, manifestPath);
436
471
  const manifest = JSON.parse(readFileSync(manifestPath, 'utf8'));
437
472
  // Verify Ed25519 signature on manifest
438
473
  process.stderr.write('[alethia] Verifying Ed25519 signature...\n');
@@ -443,7 +478,7 @@ const ensureRuntime = async () => {
443
478
  }
444
479
  debug('manifest signature verified');
445
480
  // Download the binary
446
- await downloadFile(`${GITHUB_RELEASE_BASE}/${artifactName}`, artifactPath);
481
+ await downloadFile(`${releaseBase}/${artifactName}`, artifactPath);
447
482
  // Verify SHA-256 of downloaded artifact against manifest
448
483
  const expectedHash = manifest.artifacts.find(a => a.file === artifactName)?.sha256;
449
484
  if (!expectedHash) {
@@ -466,12 +501,12 @@ const ensureRuntime = async () => {
466
501
  execSync(`unzip -o -q "${artifactPath}" -d "${RUNTIME_DIR}"`, { stdio: 'pipe' });
467
502
  }
468
503
  // Mark as installed
469
- writeFileSync(RUNTIME_MARKER, JSON.stringify({ version: RUNTIME_VERSION, installedAt: new Date().toISOString() }), 'utf8');
470
- process.stderr.write(`[alethia] Runtime v${RUNTIME_VERSION} installed to ${RUNTIME_DIR}\n`);
471
- await spawnRuntime();
504
+ writeFileSync(RUNTIME_MARKER, JSON.stringify({ version: targetVersion, installedAt: new Date().toISOString() }), 'utf8');
505
+ process.stderr.write(`[alethia] Runtime v${targetVersion} installed to ${RUNTIME_DIR}\n`);
506
+ await spawnRuntime(targetVersion);
472
507
  };
473
- const spawnRuntime = async () => {
474
- const exe = getExecutablePath();
508
+ const spawnRuntime = async (runtimeVersion) => {
509
+ const exe = getExecutablePath(runtimeVersion);
475
510
  if (!existsSync(exe)) {
476
511
  throw new Error(`Runtime executable not found at ${exe}. Try deleting ${RUNTIME_DIR} and restarting.`);
477
512
  }
@@ -1053,10 +1088,7 @@ const handle = async (request) => {
1053
1088
  capabilities: {
1054
1089
  tools: { listChanged: false },
1055
1090
  },
1056
- instructions: (latestBridgeVersion
1057
- ? `NOTICE TO USER: A newer @vitronai/alethia bridge is available (${latestBridgeVersion}; current: ${PKG_VERSION}). Tell the user to run: npm install -g @vitronai/alethia@latest. Their current bridge is pinned to an older runtime and will miss recently-shipped tools and fixes.\n\n`
1058
- : '') +
1059
- 'Alethia is the patent-pending zero-IPC E2E test runtime built for AI agents. ' +
1091
+ instructions: 'Alethia is the patent-pending zero-IPC E2E test runtime built for AI agents. ' +
1060
1092
  '~13ms per step, 45x faster than CDP-based tools. Local-first, zero telemetry by default.\n\n' +
1061
1093
  'Core tools:\n' +
1062
1094
  '- alethia_tell: Drive a real browser with plain English. Returns per-step results, DOM diffs (what changed), ' +
@@ -1229,45 +1261,52 @@ const write = (response) => {
1229
1261
  return; // Notifications get no response
1230
1262
  process.stdout.write(`${JSON.stringify(response)}\n`);
1231
1263
  };
1232
- debug(`starting ${PKG_NAME} v${PKG_VERSION}, target ${ALETHIA_HOST}:${ALETHIA_PORT}, timeout ${ALETHIA_TIMEOUT_MS}ms`);
1233
- process.stdin.setEncoding('utf8');
1234
- let buffer = '';
1235
- process.stdin.on('data', (chunk) => {
1236
- buffer += chunk;
1237
- while (true) {
1238
- const nl = buffer.indexOf('\n');
1239
- if (nl === -1)
1240
- break;
1241
- const line = buffer.slice(0, nl).trim();
1242
- buffer = buffer.slice(nl + 1);
1243
- if (!line)
1244
- continue;
1245
- let request;
1246
- try {
1247
- request = JSON.parse(line);
1248
- }
1249
- catch {
1250
- write({ jsonrpc: '2.0', id: null, error: { code: -32700, message: 'Parse error' } });
1251
- continue;
1264
+ // Only attach stdio handlers when this module is the entry point. Keeps
1265
+ // test imports from hanging on process.stdin, and keeps the server from
1266
+ // accidentally starting twice if the file is ever imported from another
1267
+ // CLI wrapper.
1268
+ const isMainModule = process.argv[1] && fileURLToPath(import.meta.url) === resolve(process.argv[1]);
1269
+ if (isMainModule) {
1270
+ debug(`starting ${PKG_NAME} v${PKG_VERSION}, target ${ALETHIA_HOST}:${ALETHIA_PORT}, timeout ${ALETHIA_TIMEOUT_MS}ms`);
1271
+ process.stdin.setEncoding('utf8');
1272
+ let buffer = '';
1273
+ process.stdin.on('data', (chunk) => {
1274
+ buffer += chunk;
1275
+ while (true) {
1276
+ const nl = buffer.indexOf('\n');
1277
+ if (nl === -1)
1278
+ break;
1279
+ const line = buffer.slice(0, nl).trim();
1280
+ buffer = buffer.slice(nl + 1);
1281
+ if (!line)
1282
+ continue;
1283
+ let request;
1284
+ try {
1285
+ request = JSON.parse(line);
1286
+ }
1287
+ catch {
1288
+ write({ jsonrpc: '2.0', id: null, error: { code: -32700, message: 'Parse error' } });
1289
+ continue;
1290
+ }
1291
+ void handle(request).then(write).catch((err) => {
1292
+ write({ jsonrpc: '2.0', id: request.id ?? null, error: { code: -32000, message: err.message } });
1293
+ });
1252
1294
  }
1253
- void handle(request).then(write).catch((err) => {
1254
- write({ jsonrpc: '2.0', id: request.id ?? null, error: { code: -32000, message: err.message } });
1255
- });
1256
- }
1257
- });
1258
- process.stdin.on('end', () => {
1259
- // Set exitCode but DON'T forcibly exit. Pending HTTP responses (e.g. an
1260
- // in-flight tools/call against an offline runtime) need to write their
1261
- // error response back before the process is allowed to exit. The Node
1262
- // event loop will drain naturally and exit with this code once there's
1263
- // no remaining work.
1264
- debug('stdin closed, will exit when pending work drains');
1265
- process.exitCode = 0;
1266
- });
1267
- const shutdown = (signal) => () => {
1268
- debug(`received ${signal}, exiting`);
1269
- process.exit(0);
1270
- };
1271
- process.on('SIGINT', shutdown('SIGINT'));
1272
- process.on('SIGTERM', shutdown('SIGTERM'));
1295
+ });
1296
+ process.stdin.on('end', () => {
1297
+ // Set exitCode but DON'T forcibly exit. Pending HTTP responses (e.g. an
1298
+ // in-flight tools/call against an offline runtime) need to write their
1299
+ // error response back before the process is allowed to exit. The Node
1300
+ // event loop will drain naturally and exit with this code once there's
1301
+ // no remaining work.
1302
+ debug('stdin closed, will exit when pending work drains');
1303
+ process.exitCode = 0;
1304
+ });
1305
+ const shutdown = (signal) => () => {
1306
+ debug(`received ${signal}, exiting`);
1307
+ process.exit(0);
1308
+ };
1309
+ process.on('SIGINT', shutdown('SIGINT'));
1310
+ process.on('SIGTERM', shutdown('SIGTERM'));
1311
+ }
1273
1312
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vitronai/alethia",
3
- "version": "0.5.2",
3
+ "version": "0.6.0",
4
4
  "description": "MIT-licensed MCP bridge to the Alethia runtime — the patent-pending zero-IPC E2E test runtime built for AI agents. 45x faster than Playwright. Local-first, zero telemetry. WCAG + NIST 800-53 compliance audits built in. Auto-installs on first use.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -16,9 +16,7 @@
16
16
  "scripts": {
17
17
  "build": "tsc",
18
18
  "dev": "tsc --watch",
19
- "test": "node --test bridge-tests/bridge-smoke.test.mjs",
20
- "test:auto-install": "node --test bridge-tests/auto-install.test.mjs",
21
- "test:all": "node --test bridge-tests/*.test.mjs",
19
+ "test": "node --test bridge-tests/*.test.mjs",
22
20
  "prepublishOnly": "npm run build && npm test"
23
21
  },
24
22
  "keywords": [