@sentropic/h2a-runtime 0.85.1 → 0.85.3

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.
Files changed (64) hide show
  1. package/dist/attach.js +9 -9
  2. package/dist/attach.js.map +1 -1
  3. package/dist/auth-bundle.js +1 -1
  4. package/dist/auth-bundle.js.map +1 -1
  5. package/dist/auth-refresh.js +1 -1
  6. package/dist/auth-refresh.js.map +1 -1
  7. package/dist/browser-bridge-local.js +1 -1
  8. package/dist/browser-bridge-local.js.map +1 -1
  9. package/dist/browser.js +4 -4
  10. package/dist/browser.js.map +1 -1
  11. package/dist/conv-guard.js +6 -6
  12. package/dist/conv-guard.js.map +1 -1
  13. package/dist/convsync.js +1 -1
  14. package/dist/convsync.js.map +1 -1
  15. package/dist/cred-health.js +6 -6
  16. package/dist/cred-health.js.map +1 -1
  17. package/dist/delegate.js +1 -1
  18. package/dist/delegate.js.map +1 -1
  19. package/dist/forward.js +5 -5
  20. package/dist/forward.js.map +1 -1
  21. package/dist/h2a-bridge.js +4 -4
  22. package/dist/h2a-bridge.js.map +1 -1
  23. package/dist/index.d.ts.map +1 -1
  24. package/dist/index.js +413 -404
  25. package/dist/index.js.map +1 -1
  26. package/dist/interactive-throttle.js +6 -6
  27. package/dist/interactive-throttle.js.map +1 -1
  28. package/dist/llm-gateway-runtime/proxy-openai.d.ts +4 -3
  29. package/dist/llm-gateway-runtime/proxy-openai.d.ts.map +1 -1
  30. package/dist/llm-gateway-runtime/proxy-openai.js +45 -7
  31. package/dist/llm-gateway-runtime/proxy-openai.js.map +1 -1
  32. package/dist/llm-mesh.js +1 -1
  33. package/dist/llm-mesh.js.map +1 -1
  34. package/dist/migrate.js +32 -32
  35. package/dist/migrate.js.map +1 -1
  36. package/dist/plugin.js +27 -27
  37. package/dist/plugin.js.map +1 -1
  38. package/dist/pod-liveness.js +1 -1
  39. package/dist/pod-liveness.js.map +1 -1
  40. package/dist/profile-menu.js +3 -3
  41. package/dist/profile-menu.js.map +1 -1
  42. package/dist/registry.d.ts +16 -0
  43. package/dist/registry.d.ts.map +1 -1
  44. package/dist/registry.js +32 -0
  45. package/dist/registry.js.map +1 -1
  46. package/dist/restore.js +9 -9
  47. package/dist/restore.js.map +1 -1
  48. package/dist/skills-sync.js +6 -6
  49. package/dist/skills-sync.js.map +1 -1
  50. package/dist/smoke.js +4 -4
  51. package/dist/smoke.js.map +1 -1
  52. package/dist/soft-refresh.js +15 -15
  53. package/dist/soft-refresh.js.map +1 -1
  54. package/dist/sync.js +1 -1
  55. package/dist/sync.js.map +1 -1
  56. package/dist/tmux.d.ts +1 -1
  57. package/dist/tmux.d.ts.map +1 -1
  58. package/dist/tmux.js +12 -12
  59. package/dist/tmux.js.map +1 -1
  60. package/dist/tunnel.js +2 -2
  61. package/dist/tunnel.js.map +1 -1
  62. package/dist/workspace-sync.js +1 -1
  63. package/dist/workspace-sync.js.map +1 -1
  64. package/package.json +1 -1
package/dist/migrate.js CHANGED
@@ -54,19 +54,19 @@ async function resolveOrCreateWorkspace(cwd, remoteUrl, workspaceIdOverride, fet
54
54
  workspaceId: workspaceIdOverride,
55
55
  };
56
56
  writeWorkspaceMarker(cwd, marker);
57
- stderr.write(`[remote] using workspace ${workspaceIdOverride} (from --workspace flag)\n`);
57
+ stderr.write(`[h2a] using workspace ${workspaceIdOverride} (from --workspace flag)\n`);
58
58
  return marker;
59
59
  }
60
60
  const existing = readWorkspaceMarker(cwd);
61
61
  if (existing) {
62
- stderr.write(`[remote] cwd mapped to ${existing.workspaceId} (reusing workspace)\n`);
62
+ stderr.write(`[h2a] cwd mapped to ${existing.workspaceId} (reusing workspace)\n`);
63
63
  return existing;
64
64
  }
65
65
  // Create and link a new workspace.
66
66
  const ws = await createWorkspace(remoteUrl, {}, fetchImpl);
67
67
  const marker = { remote: remoteUrl, workspaceId: ws.id };
68
68
  writeWorkspaceMarker(cwd, marker);
69
- stderr.write(`[remote] created workspace ${ws.id} and linked to ${cwd}\n`);
69
+ stderr.write(`[h2a] created workspace ${ws.id} and linked to ${cwd}\n`);
70
70
  return marker;
71
71
  }
72
72
  /**
@@ -146,7 +146,7 @@ function captureLiveConversation(cwd, profile, home, stderr) {
146
146
  // archive has a size cap and rides a fragile port-forward).
147
147
  cpSync(join(src, newest.name), join(dstDir, newest.name));
148
148
  const convId = newest.name.replace(/\.jsonl$/, "");
149
- stderr.write(`[remote] captured live ${profile} conversation ${convId} for resume\n`);
149
+ stderr.write(`[h2a] captured live ${profile} conversation ${convId} for resume\n`);
150
150
  return convId;
151
151
  }
152
152
  /**
@@ -169,7 +169,7 @@ function writeGitMetadata(cwd, stderr) {
169
169
  try {
170
170
  mkdirSync(join(cwd, ".remote"), { recursive: true });
171
171
  writeFileSync(join(cwd, ".remote", "git.json"), JSON.stringify({ origin, branch, head }, null, 2), "utf8");
172
- stderr.write(`[remote] recorded git origin for clone-on-start: ${origin} (${branch || "HEAD"})\n`);
172
+ stderr.write(`[h2a] recorded git origin for clone-on-start: ${origin} (${branch || "HEAD"})\n`);
173
173
  }
174
174
  catch {
175
175
  // best-effort
@@ -198,9 +198,9 @@ function friendlyName(cwd) {
198
198
  async function pushWorkspace(cwd, remoteUrl, workspaceId, fetchImpl, stderr, leaseHdrs) {
199
199
  await acquireWorkspaceLock(remoteUrl, workspaceId, lockHolderId(), 300, fetchImpl);
200
200
  try {
201
- stderr.write(`[remote] packing ${cwd} (respecting .gitignore)\n`);
201
+ stderr.write(`[h2a] packing ${cwd} (respecting .gitignore)\n`);
202
202
  const archive = await buildWorkspaceArchive(cwd);
203
- stderr.write(`[remote] archive: ${(archive.byteLength / 1024).toFixed(0)} KiB -> ${workspaceId}\n`);
203
+ stderr.write(`[h2a] archive: ${(archive.byteLength / 1024).toFixed(0)} KiB -> ${workspaceId}\n`);
204
204
  // Use a throwaway shell session to seed the PVC.
205
205
  const session = await createRemoteSession(remoteUrl, {
206
206
  profile: "shell",
@@ -216,7 +216,7 @@ async function pushWorkspace(cwd, remoteUrl, workspaceId, fetchImpl, stderr, lea
216
216
  });
217
217
  await attached.finished;
218
218
  writeBaseSnapshot(cwd, archive);
219
- stderr.write(`[remote] pushed ${cwd} to ${workspaceId}\n`);
219
+ stderr.write(`[h2a] pushed ${cwd} to ${workspaceId}\n`);
220
220
  return archive;
221
221
  }
222
222
  finally {
@@ -249,7 +249,7 @@ async function pullWorkspace(cwd, home, remoteUrl, workspaceId, onConflict, fetc
249
249
  await stopRemoteSession(remoteUrl, session.id, "pull-complete", fetchImpl);
250
250
  }
251
251
  if (!remoteArchive) {
252
- stderr.write(`[remote] nothing to pull (workspace ${workspaceId} produced no export)\n`);
252
+ stderr.write(`[h2a] nothing to pull (workspace ${workspaceId} produced no export)\n`);
253
253
  return { remoteArchive: null, hasConflicts: false };
254
254
  }
255
255
  const mergeResult = mergeWorkspaceArchive({
@@ -257,17 +257,17 @@ async function pullWorkspace(cwd, home, remoteUrl, workspaceId, onConflict, fetc
257
257
  remoteArchive,
258
258
  baseArchive: readBaseSnapshot(cwd),
259
259
  });
260
- stderr.write(`[remote] pull: ${mergeResult.tookRemote.length} from remote, ${mergeResult.keptLocal.length} kept local, ${mergeResult.merged.length} merged\n`);
260
+ stderr.write(`[h2a] pull: ${mergeResult.tookRemote.length} from remote, ${mergeResult.keptLocal.length} kept local, ${mergeResult.merged.length} merged\n`);
261
261
  let hasConflicts = false;
262
262
  if (mergeResult.conflicts.length > 0) {
263
- stderr.write(`[remote] ${mergeResult.conflicts.length} conflict(s) (left with markers, resolve then re-run):\n`);
263
+ stderr.write(`[h2a] ${mergeResult.conflicts.length} conflict(s) (left with markers, resolve then re-run):\n`);
264
264
  for (const f of mergeResult.conflicts)
265
265
  stderr.write(` ${f}\n`);
266
266
  hasConflicts = true;
267
267
  }
268
268
  else {
269
269
  writeBaseSnapshot(cwd, remoteArchive);
270
- stderr.write(`[remote] pulled ${workspaceId} into ${cwd}\n`);
270
+ stderr.write(`[h2a] pulled ${workspaceId} into ${cwd}\n`);
271
271
  }
272
272
  // Restore conversation state.
273
273
  let anySessionConflict = false;
@@ -281,7 +281,7 @@ async function pullWorkspace(cwd, home, remoteUrl, workspaceId, onConflict, fetc
281
281
  const touched = r.restored.length + r.backedUp.length + r.conflicts.length;
282
282
  if (touched === 0 && r.keptLocal.length === 0)
283
283
  continue;
284
- stderr.write(`[remote] sessions(${profile}): ${r.restored.length} restored, ${r.backedUp.length} backed-up, ${r.keptLocal.length} kept, ${r.conflicts.length} conflict\n`);
284
+ stderr.write(`[h2a] sessions(${profile}): ${r.restored.length} restored, ${r.backedUp.length} backed-up, ${r.keptLocal.length} kept, ${r.conflicts.length} conflict\n`);
285
285
  for (const b of r.backedUp)
286
286
  stderr.write(` backup ${b}\n`);
287
287
  if (r.conflicts.length > 0) {
@@ -291,7 +291,7 @@ async function pullWorkspace(cwd, home, remoteUrl, workspaceId, onConflict, fetc
291
291
  }
292
292
  }
293
293
  if (anySessionConflict) {
294
- stderr.write(`[remote] diverged conversations left untouched. Re-run with --on-conflict backup or keep-local.\n`);
294
+ stderr.write(`[h2a] diverged conversations left untouched. Re-run with --on-conflict backup or keep-local.\n`);
295
295
  hasConflicts = true;
296
296
  }
297
297
  return { remoteArchive, hasConflicts };
@@ -343,7 +343,7 @@ export async function migrateForward(options) {
343
343
  if (options.reconnect) {
344
344
  // Revive on the existing PVC: no capture, no push — the conversation and any
345
345
  // work done remotely are already on the retained workspace volume.
346
- stderr.write(`[remote] reconnect: reusing workspace ${marker.workspaceId} as-is (no push)\n`);
346
+ stderr.write(`[h2a] reconnect: reusing workspace ${marker.workspaceId} as-is (no push)\n`);
347
347
  }
348
348
  else {
349
349
  // Record git origin so the Pod can clone-on-start when .git is too big to
@@ -369,7 +369,7 @@ export async function migrateForward(options) {
369
369
  try {
370
370
  const result = await acquireLineageLease(remoteUrl, { lineageId, holder, incarnationId, location: "local", ttlMs: 300_000 }, fetchImpl);
371
371
  if ("error" in result) {
372
- throw new Error(`[remote] workspace is already being migrated (concurrent push detected).\n` +
372
+ throw new Error(`[h2a] workspace is already being migrated (concurrent push detected).\n` +
373
373
  ` Current holder: ${result.current.holder}\n` +
374
374
  ` Wait for the other migration to complete, or release the lease manually.`);
375
375
  }
@@ -380,7 +380,7 @@ export async function migrateForward(options) {
380
380
  // Graceful fallback: if the CP doesn't have the lineage-leases route yet
381
381
  // (404) or is unreachable, skip enforcement (backward compat).
382
382
  if (msg.includes("acquireLineageLease: 404") || msg.includes("ECONNREFUSED") || msg.includes("ENOTFOUND")) {
383
- stderr.write(`[remote] lineage lease skipped (CP missing route or unreachable)\n`);
383
+ stderr.write(`[h2a] lineage lease skipped (CP missing route or unreachable)\n`);
384
384
  }
385
385
  else {
386
386
  throw err;
@@ -428,12 +428,12 @@ export async function migrateForward(options) {
428
428
  ...(resumeArgs.length > 0 ? { startupArgs: resumeArgs } : {}),
429
429
  }, fetchImpl);
430
430
  stderr.write(credentials
431
- ? `[remote] bundled ${profile} creds: ${Object.keys(credentials).join(", ")}\n`
432
- : `[remote] no ${profile} creds found locally — session starts unauthenticated\n`);
431
+ ? `[h2a] bundled ${profile} creds: ${Object.keys(credentials).join(", ")}\n`
432
+ : `[h2a] no ${profile} creds found locally — session starts unauthenticated\n`);
433
433
  if (bundledTools.length > 0) {
434
- stderr.write(`[remote] bundled tool auth: ${bundledTools.join(", ")}\n`);
434
+ stderr.write(`[h2a] bundled tool auth: ${bundledTools.join(", ")}\n`);
435
435
  }
436
- stderr.write(`[remote] migrated to remote session ${session.id} on ${remoteUrl} (workspace ${marker.workspaceId})\n`);
436
+ stderr.write(`[h2a] migrated to remote session ${session.id} on ${remoteUrl} (workspace ${marker.workspaceId})\n`);
437
437
  // Phase A: record the active remote session so migrateBack can target it
438
438
  // directly without a list-sessions round-trip.
439
439
  if (!options.reconnect) {
@@ -449,11 +449,11 @@ export async function migrateForward(options) {
449
449
  }
450
450
  // Step 5: hand off terminal — unless --no-attach (bulk / reconnect-yourself).
451
451
  if (options.noAttach) {
452
- stderr.write(`[remote] session ready (not attached). Reconnect your terminal with:\n` +
453
- ` remote attach ${remoteUrl} ${session.id}\n`);
452
+ stderr.write(`[h2a] session ready (not attached). Reconnect your terminal with:\n` +
453
+ ` h2a attach ${remoteUrl} ${session.id}\n`);
454
454
  return { workspaceId: marker.workspaceId, sessionId: session.id };
455
455
  }
456
- stderr.write(`[remote] terminal is now REMOTE — press Ctrl+P Ctrl+Q to detach without stopping the session\n`);
456
+ stderr.write(`[h2a] terminal is now REMOTE — press Ctrl+P Ctrl+Q to detach without stopping the session\n`);
457
457
  const attached = await attach({
458
458
  baseUrl: remoteUrl,
459
459
  sessionId: session.id,
@@ -477,7 +477,7 @@ export async function migrateBack(options) {
477
477
  const existing = readWorkspaceMarker(cwd);
478
478
  const workspaceId = options.workspaceId ?? existing?.workspaceId;
479
479
  if (!workspaceId) {
480
- throw new Error("No workspace mapped for this directory and no --workspace given. Run `remote workspace link` first or pass --workspace <id>.");
480
+ throw new Error("No workspace mapped for this directory and no --workspace given. Run `h2a workspace link` first or pass --workspace <id>.");
481
481
  }
482
482
  // Step 2: pull workspace + conversation state.
483
483
  const { remoteArchive, hasConflicts } = await pullWorkspace(cwd, home, remoteUrl, workspaceId, onConflict, fetchImpl, stderr);
@@ -495,7 +495,7 @@ export async function migrateBack(options) {
495
495
  }
496
496
  else if (lineageRec?.remoteSessionId) {
497
497
  target = { id: lineageRec.remoteSessionId };
498
- stderr.write(`[remote] targeting session ${target.id} from lineage record\n`);
498
+ stderr.write(`[h2a] targeting session ${target.id} from lineage record\n`);
499
499
  }
500
500
  else {
501
501
  const sessions = await listRemoteSessions(remoteUrl, fetchImpl);
@@ -508,7 +508,7 @@ export async function migrateBack(options) {
508
508
  if (target !== undefined) {
509
509
  await stopRemoteSession(remoteUrl, target.id, "migrate-back", fetchImpl);
510
510
  stoppedSessionId = target.id;
511
- stderr.write(`[remote] stopped remote session ${target.id}\n`);
511
+ stderr.write(`[h2a] stopped remote session ${target.id}\n`);
512
512
  // Clear the active session from the lineage record — the migration is done.
513
513
  if (lineageRec) {
514
514
  writeLineageRecord(cwd, workspaceId, { lineageId: lineageRec.lineageId });
@@ -516,7 +516,7 @@ export async function migrateBack(options) {
516
516
  }
517
517
  }
518
518
  catch (err) {
519
- stderr.write(`[remote] warning: could not stop remote session: ${String(err)}\n`);
519
+ stderr.write(`[h2a] warning: could not stop remote session: ${String(err)}\n`);
520
520
  }
521
521
  // Step 4: derive and print resume command.
522
522
  // Pick a profile from the restored archive — use the first CLI profile that
@@ -547,10 +547,10 @@ export async function migrateBack(options) {
547
547
  // Advice string: the ACTUAL CLI command shape (remote run … -r <id>), not a
548
548
  // raw profile flag — codex's resume is a subcommand, claude's differs by id.
549
549
  const resumeCommand = resumeConvId
550
- ? `remote run ${finalProfile} -r ${resumeConvId}`
551
- : `remote run ${finalProfile}`;
552
- stdout.write(`\n[remote] local state restored from workspace ${workspaceId}\n`);
553
- stdout.write(`[remote] resume your session with:\n\n ${resumeCommand}\n\n`);
550
+ ? `h2a run ${finalProfile} -r ${resumeConvId}`
551
+ : `h2a run ${finalProfile}`;
552
+ stdout.write(`\n[h2a] local state restored from workspace ${workspaceId}\n`);
553
+ stdout.write(`[h2a] resume your session with:\n\n ${resumeCommand}\n\n`);
554
554
  return {
555
555
  workspaceId,
556
556
  ...(stoppedSessionId !== undefined ? { stoppedSessionId } : {}),
@@ -1 +1 @@
1
- {"version":3,"file":"migrate.js","sourceRoot":"","sources":["../src/migrate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"migrate.js","sourceRoot":"","sources":["../src/migrate.ts"],"names":[],"mappings":"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"}
package/dist/plugin.js CHANGED
@@ -304,7 +304,7 @@ export function buildPodSyncScript(plugin, profile) {
304
304
  for (const mcp of plugin.mcp) {
305
305
  assertSafeName(mcp.name);
306
306
  if (!mcp.scriptRel) {
307
- lines.push(`echo "mcp ${mcp.name}: no scriptRel recorded — re-run: remote plugin add ${plugin.pkg}"`);
307
+ lines.push(`echo "mcp ${mcp.name}: no scriptRel recorded — re-run: h2a plugin add ${plugin.pkg}"`);
308
308
  continue;
309
309
  }
310
310
  assertSafeRel(mcp.scriptRel);
@@ -361,7 +361,7 @@ function installGlobally(spec, stderr) {
361
361
  .map((line) => line.trim())
362
362
  .find((line) => /^(added|changed|removed|up to date)/.test(line)) ??
363
363
  "installed";
364
- stderr.write(`[remote] npm i -g ${spec}: ${summary}\n`);
364
+ stderr.write(`[h2a] npm i -g ${spec}: ${summary}\n`);
365
365
  }
366
366
  function readFileIfExists(path) {
367
367
  try {
@@ -387,12 +387,12 @@ function registerClaudeLocal(name, scriptPath, stderr) {
387
387
  if (r.status !== 0) {
388
388
  throw new Error(`claude mcp add ${name} failed: ${(r.stderr || r.stdout || "").trim()}`);
389
389
  }
390
- stderr.write(`[remote] claude: MCP ${name} -> node ${scriptPath} (scope user)\n`);
390
+ stderr.write(`[h2a] claude: MCP ${name} -> node ${scriptPath} (scope user)\n`);
391
391
  return;
392
392
  }
393
393
  const path = join(homedir(), ".claude.json");
394
394
  writeFileSync(path, mergeClaudeMcpServers(readFileIfExists(path), name, "node", [scriptPath]), "utf8");
395
- stderr.write(`[remote] claude: MCP ${name} merged into ~/.claude.json (claude CLI not found)\n`);
395
+ stderr.write(`[h2a] claude: MCP ${name} merged into ~/.claude.json (claude CLI not found)\n`);
396
396
  }
397
397
  /**
398
398
  * Idempotent `mcpServers.<name>` merge into ~/.gemini/config/mcp_config.json
@@ -407,16 +407,16 @@ function registerAgyLocal(name, scriptPath, stderr) {
407
407
  const before = readFileIfExists(path);
408
408
  const { next, changed, needsBackup } = planAgyMcpConfigUpdate(before, name, "node", [scriptPath]);
409
409
  if (!changed) {
410
- stderr.write(`[remote] agy: MCP ${name} already in ${path} (unchanged)\n`);
410
+ stderr.write(`[h2a] agy: MCP ${name} already in ${path} (unchanged)\n`);
411
411
  return;
412
412
  }
413
413
  if (needsBackup) {
414
414
  const backup = `${path}.bak.${Date.now()}`;
415
415
  writeFileSync(backup, before, "utf8");
416
- stderr.write(`[remote] agy: backed up ${path} -> ${backup}\n`);
416
+ stderr.write(`[h2a] agy: backed up ${path} -> ${backup}\n`);
417
417
  }
418
418
  writeFileSync(path, next, "utf8");
419
- stderr.write(`[remote] agy: MCP ${name} -> node ${scriptPath} in ~/.gemini/config/mcp_config.json\n`);
419
+ stderr.write(`[h2a] agy: MCP ${name} -> node ${scriptPath} in ~/.gemini/config/mcp_config.json\n`);
420
420
  }
421
421
  /** Idempotent `[mcp_servers.<name>]` upsert in ~/.codex/config.toml. */
422
422
  function registerCodexLocal(name, scriptPath, stderr) {
@@ -424,7 +424,7 @@ function registerCodexLocal(name, scriptPath, stderr) {
424
424
  mkdirSync(dir, { recursive: true });
425
425
  const path = join(dir, "config.toml");
426
426
  writeFileSync(path, upsertCodexMcpServer(readFileIfExists(path), name, "node", [scriptPath]), "utf8");
427
- stderr.write(`[remote] codex: [mcp_servers.${name}] -> node ${scriptPath} in ~/.codex/config.toml\n`);
427
+ stderr.write(`[h2a] codex: [mcp_servers.${name}] -> node ${scriptPath} in ~/.codex/config.toml\n`);
428
428
  }
429
429
  // ---------------------------------------------------------------------------
430
430
  // kubectl exec into session Pods (pattern: soft-refresh.ts)
@@ -618,7 +618,7 @@ export function reconcilePodManifestVia(io, pod, manifest, plugins, stderr = pro
618
618
  return { reconciled: false, localHash, podHash, failures: 0 };
619
619
  }
620
620
  // Drift detected (hash only — never a secret). Re-run the EXISTING sync script.
621
- stderr.write(`[remote] ${pod}: plugin/MCP drift (manifest ${podHash ? "mismatch" : "absent"}) — reconciling via plugin sync\n`);
621
+ stderr.write(`[h2a] ${pod}: plugin/MCP drift (manifest ${podHash ? "mismatch" : "absent"}) — reconciling via plugin sync\n`);
622
622
  let failures = 0;
623
623
  for (const plugin of plugins) {
624
624
  try {
@@ -681,7 +681,7 @@ export function pluginAdd(npmSpec, mcpSpecs, stderr = process.stderr) {
681
681
  const bins = normalizeBins(pkg, pkgJson.bin);
682
682
  const requests = mcpSpecs.length > 0 ? parseMcpSpecs(mcpSpecs) : detectMcpBins(bins);
683
683
  if (requests.length === 0) {
684
- stderr.write(`[remote] no MCP bin detected for ${pkg} (none ends in -mcp; bins: ${Object.keys(bins).join(", ") || "none"}) — pass --mcp <name>=<bin>\n`);
684
+ stderr.write(`[h2a] no MCP bin detected for ${pkg} (none ends in -mcp; bins: ${Object.keys(bins).join(", ") || "none"}) — pass --mcp <name>=<bin>\n`);
685
685
  }
686
686
  const mcp = [];
687
687
  for (const { name, bin } of requests) {
@@ -700,8 +700,8 @@ export function pluginAdd(npmSpec, mcpSpecs, stderr = process.stderr) {
700
700
  }
701
701
  const entry = { pkg, version, mcp };
702
702
  setPlugins([...getPlugins().filter((p) => p.pkg !== pkg), entry]);
703
- stderr.write(`[remote] plugin ${pkg}@${version} installed — ${mcp.length} MCP server(s) registered; persisted in remote config\n`);
704
- stderr.write(`[remote] propagate to live remote sessions with: remote plugin sync\n`);
703
+ stderr.write(`[h2a] plugin ${pkg}@${version} installed — ${mcp.length} MCP server(s) registered; persisted in remote config\n`);
704
+ stderr.write(`[h2a] propagate to live remote sessions with: h2a plugin sync\n`);
705
705
  return entry;
706
706
  }
707
707
  /**
@@ -721,7 +721,7 @@ export function pluginAddInstaller(name, install, stderr = process.stderr) {
721
721
  };
722
722
  buildInstallCommand(entry); // throws on a bad curl url / empty script
723
723
  setPlugins([...getPlugins().filter((p) => p.pkg !== name), entry]);
724
- stderr.write(`[remote] plugin ${name} (${install.method}) persisted — installs in Pods on \`remote plugin sync\`\n`);
724
+ stderr.write(`[h2a] plugin ${name} (${install.method}) persisted — installs in Pods on \`h2a plugin sync\`\n`);
725
725
  return entry;
726
726
  }
727
727
  /**
@@ -738,7 +738,7 @@ export function pluginAddInstaller(name, install, stderr = process.stderr) {
738
738
  export async function pluginLs(stdout = process.stdout, url) {
739
739
  const plugins = getPlugins();
740
740
  if (plugins.length === 0) {
741
- stdout.write("[remote] no plugins configured (remote plugin add <npmPkg>)\n");
741
+ stdout.write("[h2a] no plugins configured (h2a plugin add <npmPkg>)\n");
742
742
  return;
743
743
  }
744
744
  let root;
@@ -784,8 +784,8 @@ export async function pluginLs(stdout = process.stdout, url) {
784
784
  stdout.write(`${w(p.pkg, 28)} ${w(p.version, 9)} ${w(mcps, 20)} ${w(local, 8)} ${remote}\n`);
785
785
  }
786
786
  stdout.write(remoteByPkg
787
- ? "\n(REMOTE: real per-Pod status, worst across live sessions — `remote plugin sync --check` for the full per-Pod table.)\n"
788
- : '\n(REMOTE "?": not connected to the control-plane — `remote plugin sync --check` (with the tunnel up) shows real per-Pod status.)\n');
787
+ ? "\n(REMOTE: real per-Pod status, worst across live sessions — `h2a plugin sync --check` for the full per-Pod table.)\n"
788
+ : '\n(REMOTE "?": not connected to the control-plane — `h2a plugin sync --check` (with the tunnel up) shows real per-Pod status.)\n');
789
789
  }
790
790
  /** Severity-rank two drift statuses; returns the worse (missing > version-drift > ok). */
791
791
  function worseStatus(a, b) {
@@ -807,23 +807,23 @@ function worseStatus(a, b) {
807
807
  export async function pluginSync(url, stderr = process.stderr) {
808
808
  const plugins = getPlugins();
809
809
  if (plugins.length === 0) {
810
- stderr.write("[remote] no plugins configured (remote plugin add <npmPkg>)\n");
810
+ stderr.write("[h2a] no plugins configured (h2a plugin add <npmPkg>)\n");
811
811
  return;
812
812
  }
813
813
  const tunnel = getTunnel();
814
814
  if (!tunnel) {
815
- throw new Error("plugin sync needs a tunnel configured (remote config tunnel …)");
815
+ throw new Error("plugin sync needs a tunnel configured (h2a config tunnel …)");
816
816
  }
817
817
  const sessions = await listRemoteSessions(url);
818
818
  if (sessions.length === 0) {
819
- stderr.write("[remote] no live remote sessions to sync\n");
819
+ stderr.write("[h2a] no live remote sessions to sync\n");
820
820
  return;
821
821
  }
822
822
  const manifest = renderManifest(plugins);
823
823
  let failures = 0;
824
824
  for (const session of sessions) {
825
825
  const pod = `session-${session.id}`;
826
- stderr.write(`[remote] ${session.id} (${session.profile}):\n`);
826
+ stderr.write(`[h2a] ${session.id} (${session.profile}):\n`);
827
827
  for (const plugin of plugins) {
828
828
  try {
829
829
  const out = execPod(tunnel, pod, buildPodSyncScript(plugin, session.profile));
@@ -846,7 +846,7 @@ export async function pluginSync(url, stderr = process.stderr) {
846
846
  stderr.write(` manifest sidecar push skipped: ${String(error).slice(0, 120)}\n`);
847
847
  }
848
848
  }
849
- stderr.write(`[remote] plugin sync done: ${sessions.length} session(s), ${plugins.length} plugin(s)${failures > 0 ? `, ${failures} failure(s)` : ""}\n`);
849
+ stderr.write(`[h2a] plugin sync done: ${sessions.length} session(s), ${plugins.length} plugin(s)${failures > 0 ? `, ${failures} failure(s)` : ""}\n`);
850
850
  if (failures > 0)
851
851
  process.exitCode = 1;
852
852
  }
@@ -863,16 +863,16 @@ export async function pluginSync(url, stderr = process.stderr) {
863
863
  export async function pluginSyncCheck(url, stdout = process.stdout, stderr = process.stderr) {
864
864
  const plugins = getPlugins();
865
865
  if (plugins.length === 0) {
866
- stderr.write("[remote] no plugins configured (remote plugin add <npmPkg>)\n");
866
+ stderr.write("[h2a] no plugins configured (h2a plugin add <npmPkg>)\n");
867
867
  return [];
868
868
  }
869
869
  const tunnel = getTunnel();
870
870
  if (!tunnel) {
871
- throw new Error("plugin sync --check needs a tunnel configured (remote config tunnel …)");
871
+ throw new Error("plugin sync --check needs a tunnel configured (h2a config tunnel …)");
872
872
  }
873
873
  const sessions = await listRemoteSessions(url);
874
874
  if (sessions.length === 0) {
875
- stderr.write("[remote] no live remote sessions to check\n");
875
+ stderr.write("[h2a] no live remote sessions to check\n");
876
876
  return [];
877
877
  }
878
878
  const manifest = renderManifest(plugins);
@@ -885,7 +885,7 @@ export async function pluginSyncCheck(url, stdout = process.stdout, stderr = pro
885
885
  allRows.push(...diffManifest(manifest, pod, state));
886
886
  }
887
887
  catch (error) {
888
- stderr.write(`[remote] ${pod}: drift probe failed: ${String(error).slice(0, 200)}\n`);
888
+ stderr.write(`[h2a] ${pod}: drift probe failed: ${String(error).slice(0, 200)}\n`);
889
889
  // A probe failure is itself drift we can't clear — surface every desired
890
890
  // item as a probe-failure row (status missing/unregistered conservatively).
891
891
  for (const p of manifest.plugins) {
@@ -913,7 +913,7 @@ function printDriftTable(rows, stdout) {
913
913
  }
914
914
  const drifted = rows.filter(isDrift).length;
915
915
  stdout.write(drifted === 0
916
- ? `\n[remote] no drift — every live Pod matches the desired manifest.\n`
917
- : `\n[remote] ${drifted} drift row(s) — run \`remote plugin sync\` to converge (exit 1).\n`);
916
+ ? `\n[h2a] no drift — every live Pod matches the desired manifest.\n`
917
+ : `\n[h2a] ${drifted} drift row(s) — run \`h2a plugin sync\` to converge (exit 1).\n`);
918
918
  }
919
919
  //# sourceMappingURL=plugin.js.map