@pleri/olam-cli 0.1.175 → 0.1.182

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 (130) hide show
  1. package/README.md +19 -0
  2. package/bin/olam.cjs +22 -0
  3. package/dist/commands/auth.d.ts.map +1 -1
  4. package/dist/commands/auth.js +67 -19
  5. package/dist/commands/auth.js.map +1 -1
  6. package/dist/commands/config.d.ts.map +1 -1
  7. package/dist/commands/config.js +93 -0
  8. package/dist/commands/config.js.map +1 -1
  9. package/dist/commands/destroy.d.ts +41 -0
  10. package/dist/commands/destroy.d.ts.map +1 -1
  11. package/dist/commands/destroy.js +81 -33
  12. package/dist/commands/destroy.js.map +1 -1
  13. package/dist/commands/dispatch-resolve.d.ts +54 -0
  14. package/dist/commands/dispatch-resolve.d.ts.map +1 -0
  15. package/dist/commands/dispatch-resolve.js +105 -0
  16. package/dist/commands/dispatch-resolve.js.map +1 -0
  17. package/dist/commands/dispatch.d.ts.map +1 -1
  18. package/dist/commands/dispatch.js +40 -9
  19. package/dist/commands/dispatch.js.map +1 -1
  20. package/dist/commands/flywheel/index.d.ts.map +1 -1
  21. package/dist/commands/flywheel/index.js +4 -0
  22. package/dist/commands/flywheel/index.js.map +1 -1
  23. package/dist/commands/flywheel/install-sessionstart-hook.d.ts +64 -0
  24. package/dist/commands/flywheel/install-sessionstart-hook.d.ts.map +1 -0
  25. package/dist/commands/flywheel/install-sessionstart-hook.js +197 -0
  26. package/dist/commands/flywheel/install-sessionstart-hook.js.map +1 -0
  27. package/dist/commands/flywheel/k5-validate.d.ts +31 -0
  28. package/dist/commands/flywheel/k5-validate.d.ts.map +1 -1
  29. package/dist/commands/flywheel/k5-validate.js +80 -19
  30. package/dist/commands/flywheel/k5-validate.js.map +1 -1
  31. package/dist/commands/flywheel/session-start.d.ts +26 -0
  32. package/dist/commands/flywheel/session-start.d.ts.map +1 -0
  33. package/dist/commands/flywheel/session-start.js +119 -0
  34. package/dist/commands/flywheel/session-start.js.map +1 -0
  35. package/dist/commands/host-cp.d.ts +0 -3
  36. package/dist/commands/host-cp.d.ts.map +1 -1
  37. package/dist/commands/host-cp.js +27 -2
  38. package/dist/commands/host-cp.js.map +1 -1
  39. package/dist/commands/kg-classify.d.ts.map +1 -1
  40. package/dist/commands/kg-classify.js +20 -0
  41. package/dist/commands/kg-classify.js.map +1 -1
  42. package/dist/commands/kg-doctor.d.ts +67 -6
  43. package/dist/commands/kg-doctor.d.ts.map +1 -1
  44. package/dist/commands/kg-doctor.js +126 -46
  45. package/dist/commands/kg-doctor.js.map +1 -1
  46. package/dist/commands/list.d.ts +27 -0
  47. package/dist/commands/list.d.ts.map +1 -1
  48. package/dist/commands/list.js +67 -19
  49. package/dist/commands/list.js.map +1 -1
  50. package/dist/commands/memory/status.d.ts +18 -0
  51. package/dist/commands/memory/status.d.ts.map +1 -1
  52. package/dist/commands/memory/status.js +38 -2
  53. package/dist/commands/memory/status.js.map +1 -1
  54. package/dist/commands/memory-service-container.d.ts +44 -0
  55. package/dist/commands/memory-service-container.d.ts.map +1 -1
  56. package/dist/commands/memory-service-container.js +49 -0
  57. package/dist/commands/memory-service-container.js.map +1 -1
  58. package/dist/commands/ps.d.ts +32 -0
  59. package/dist/commands/ps.d.ts.map +1 -1
  60. package/dist/commands/ps.js +34 -0
  61. package/dist/commands/ps.js.map +1 -1
  62. package/dist/commands/runbooks.d.ts +32 -0
  63. package/dist/commands/runbooks.d.ts.map +1 -1
  64. package/dist/commands/runbooks.js +79 -22
  65. package/dist/commands/runbooks.js.map +1 -1
  66. package/dist/commands/skills-source.d.ts.map +1 -1
  67. package/dist/commands/skills-source.js +77 -2
  68. package/dist/commands/skills-source.js.map +1 -1
  69. package/dist/commands/upgrade-history.d.ts +0 -2
  70. package/dist/commands/upgrade-history.d.ts.map +1 -1
  71. package/dist/commands/upgrade-history.js +0 -6
  72. package/dist/commands/upgrade-history.js.map +1 -1
  73. package/dist/commands/upgrade-lock.d.ts +0 -9
  74. package/dist/commands/upgrade-lock.d.ts.map +1 -1
  75. package/dist/commands/upgrade-lock.js +1 -1
  76. package/dist/commands/upgrade-lock.js.map +1 -1
  77. package/dist/commands/world-snapshot.d.ts +13 -0
  78. package/dist/commands/world-snapshot.d.ts.map +1 -1
  79. package/dist/commands/world-snapshot.js +81 -1
  80. package/dist/commands/world-snapshot.js.map +1 -1
  81. package/dist/commands/yolo.d.ts +95 -0
  82. package/dist/commands/yolo.d.ts.map +1 -0
  83. package/dist/commands/yolo.js +377 -0
  84. package/dist/commands/yolo.js.map +1 -0
  85. package/dist/image-digests.json +8 -8
  86. package/dist/index.js +3990 -2445
  87. package/dist/index.js.map +1 -1
  88. package/dist/lib/anthropic-base-url-file.d.ts +37 -0
  89. package/dist/lib/anthropic-base-url-file.d.ts.map +1 -0
  90. package/dist/lib/anthropic-base-url-file.js +46 -0
  91. package/dist/lib/anthropic-base-url-file.js.map +1 -0
  92. package/dist/lib/auth-remote.d.ts +9 -17
  93. package/dist/lib/auth-remote.d.ts.map +1 -1
  94. package/dist/lib/auth-remote.js +25 -20
  95. package/dist/lib/auth-remote.js.map +1 -1
  96. package/dist/lib/cf-access-token.d.ts +32 -0
  97. package/dist/lib/cf-access-token.d.ts.map +1 -0
  98. package/dist/lib/cf-access-token.js +52 -0
  99. package/dist/lib/cf-access-token.js.map +1 -0
  100. package/dist/lib/config.d.ts +17 -3
  101. package/dist/lib/config.d.ts.map +1 -1
  102. package/dist/lib/config.js +28 -4
  103. package/dist/lib/config.js.map +1 -1
  104. package/dist/lib/kubectl-context.d.ts +49 -0
  105. package/dist/lib/kubectl-context.d.ts.map +1 -1
  106. package/dist/lib/kubectl-context.js +64 -2
  107. package/dist/lib/kubectl-context.js.map +1 -1
  108. package/dist/lib/upgrade-kubernetes.d.ts +7 -0
  109. package/dist/lib/upgrade-kubernetes.d.ts.map +1 -1
  110. package/dist/lib/upgrade-kubernetes.js +35 -8
  111. package/dist/lib/upgrade-kubernetes.js.map +1 -1
  112. package/dist/mcp-server.js +1470 -991
  113. package/hermes-bundle/version.json +1 -1
  114. package/host-cp/k8s/manifests/45-pvc.yaml +6 -2
  115. package/host-cp/k8s/manifests/50-deployment.yaml +1 -1
  116. package/host-cp/k8s/manifests/auth-service/50-deployment.yaml +1 -1
  117. package/host-cp/k8s/manifests/kg-service/50-deployment.yaml +1 -1
  118. package/host-cp/k8s/manifests/mcp-auth-service/50-deployment.yaml +1 -1
  119. package/host-cp/k8s/manifests/memory-service/50-deployment.yaml +1 -1
  120. package/host-cp/observability/trace-summary.mjs +267 -0
  121. package/host-cp/src/bootstrap-selective.mjs +58 -0
  122. package/host-cp/src/host-stream.mjs +52 -0
  123. package/host-cp/src/plan-chat-service.mjs +51 -0
  124. package/host-cp/src/redirect.mjs +159 -0
  125. package/host-cp/src/resolver.mjs +121 -0
  126. package/host-cp/src/router.mjs +168 -0
  127. package/host-cp/src/serve-only-config.mjs +85 -0
  128. package/host-cp/src/server.mjs +375 -205
  129. package/host-cp/src/world-services.mjs +136 -0
  130. package/package.json +1 -1
@@ -7,13 +7,28 @@
7
7
  * reports container lifecycle (`running | stopped | missing`) instead of
8
8
  * pid/alive.
9
9
  *
10
+ * Enrichment (additive, backward-compatible): a single `docker inspect` call
11
+ * augments the dump with container runtime metadata — `uptime` (from
12
+ * `State.StartedAt`), `restarts` (`RestartCount`, with a crash-loop warning
13
+ * past a threshold), and `health` (Docker `State.Health.Status`, or `none`
14
+ * for images without a HEALTHCHECK). All new fields are display-only and
15
+ * additive in both human + `--json` modes; existing field names/types and the
16
+ * exit-code contract (anchored on `state` + `livez`) are unchanged.
17
+ *
10
18
  * Plan reference: docs/plans/memory-service-as-docker-peripheral/phase-b-tasks.md B3
11
19
  */
12
20
  import { existsSync } from 'node:fs';
13
- import { printInfo, printHeader, printWarning } from '../../output.js';
21
+ import { printInfo, printHeader, printWarning, formatAge } from '../../output.js';
14
22
  import { hasMemorySecret, readMemorySecretOrNull } from '../../lib/memory-secret.js';
15
23
  import { MEMORY_LIVEZ_URL, MEMORY_REST_PORT, MEMORY_PID_PATH, } from './_paths.js';
16
- import { MemoryServiceContainerController } from '../memory-service-container.js';
24
+ import { MemoryServiceContainerController, } from '../memory-service-container.js';
25
+ /**
26
+ * Restart count at/above which `olam memory status` surfaces a crash-loop
27
+ * warning. A couple of restarts across a host reboot or a deliberate
28
+ * `docker restart` are benign; a climbing count under `unless-stopped` is the
29
+ * signal we want operators to notice.
30
+ */
31
+ const RESTART_CHURN_THRESHOLD = 3;
17
32
  async function probe(secret) {
18
33
  try {
19
34
  const headers = {};
@@ -36,6 +51,9 @@ export async function collectMemoryStatus() {
36
51
  const containerStatus = controller.status();
37
52
  const secret = readMemorySecretOrNull();
38
53
  const livez = await probe(secret);
54
+ // Best-effort runtime metadata — `null` when the container is missing or a
55
+ // `docker inspect` field fails to parse. Display-only; never gates exit code.
56
+ const runtime = containerStatus.state === 'missing' ? null : controller.runtimeInspect();
39
57
  return {
40
58
  state: containerStatus.state,
41
59
  containerId: containerStatus.containerId ?? null,
@@ -43,6 +61,9 @@ export async function collectMemoryStatus() {
43
61
  secretSet: hasMemorySecret(),
44
62
  port: MEMORY_REST_PORT,
45
63
  legacyPidfilePresent: existsSync(MEMORY_PID_PATH),
64
+ startedAt: runtime?.startedAt ?? null,
65
+ restartCount: runtime?.restartCount ?? null,
66
+ health: runtime?.health ?? 'unknown',
46
67
  };
47
68
  }
48
69
  export async function runMemoryStatus(opts = {}) {
@@ -55,6 +76,12 @@ export async function runMemoryStatus(opts = {}) {
55
76
  printInfo('state', s.state);
56
77
  if (s.containerId)
57
78
  printInfo('container', s.containerId.slice(0, 12));
79
+ if (s.startedAt)
80
+ printInfo('uptime', formatAge(s.startedAt));
81
+ if (s.restartCount !== null)
82
+ printInfo('restarts', String(s.restartCount));
83
+ if (s.health !== 'unknown')
84
+ printInfo('health', s.health);
58
85
  printInfo('livez', s.livez);
59
86
  printInfo('secret', s.secretSet ? '~/.olam/memory-secret (set)' : '(missing)');
60
87
  printInfo('port', `${s.port}`);
@@ -62,6 +89,15 @@ export async function runMemoryStatus(opts = {}) {
62
89
  printWarning('~/.olam/memory.pid is present (Phase A legacy artefact). ' +
63
90
  'Will be cleaned up on next `olam memory start` or `olam memory stop`.');
64
91
  }
92
+ // Crash-loop signal: a high restart count means the container has been
93
+ // bouncing even if it's healthy right now. Non-gating (display + warn only).
94
+ if (s.restartCount !== null && s.restartCount >= RESTART_CHURN_THRESHOLD) {
95
+ printWarning(`container has restarted ${s.restartCount} times (restart policy: unless-stopped). ` +
96
+ 'A persistently climbing count points at a crash loop — check `olam memory logs` for repeated startup failures.');
97
+ }
98
+ if (s.health === 'unhealthy') {
99
+ printWarning("Docker reports the container as 'unhealthy'. Check `olam memory logs` for the failing healthcheck.");
100
+ }
65
101
  if (s.state === 'running' && s.livez === 'ok')
66
102
  return 0;
67
103
  if (s.state === 'missing') {
@@ -1 +1 @@
1
- {"version":3,"file":"status.js","sourceRoot":"","sources":["../../../src/commands/memory/status.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"status.js","sourceRoot":"","sources":["../../../src/commands/memory/status.ts"],"names":[],"mappings":"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"}
@@ -32,9 +32,53 @@ export interface MemoryServiceStatus {
32
32
  readonly containerId?: string;
33
33
  readonly ready?: boolean;
34
34
  }
35
+ /**
36
+ * Container-health classification surfaced to operators.
37
+ *
38
+ * Mirrors Docker's own `State.Health.Status` enum plus a `none` sentinel for
39
+ * images that ship no `HEALTHCHECK` directive (the olam-memory-service image
40
+ * relies on the bearer-authenticated `/agentmemory/livez` probe rather than a
41
+ * Dockerfile HEALTHCHECK, so `none` is the expected steady-state today). `none`
42
+ * is NOT a failure — it just means container health is reported via livez, not
43
+ * via Docker's healthcheck loop.
44
+ */
45
+ export type MemoryServiceHealth = 'starting' | 'healthy' | 'unhealthy' | 'none' | 'unknown';
46
+ /**
47
+ * Runtime metadata for a started/running container — `StartedAt`, restart
48
+ * count, and Docker health. Returned by {@link MemoryServiceContainerController.runtimeInspect}.
49
+ *
50
+ * Every field is best-effort: a single `docker inspect` call extracts all
51
+ * three, and any parse miss degrades to `null` / `'unknown'` rather than
52
+ * throwing. `olam memory status` consumes this purely for display — it never
53
+ * gates exit codes on it (the livez probe remains the source of truth for
54
+ * health-derived exit codes).
55
+ */
56
+ export interface MemoryServiceRuntime {
57
+ /** ISO-8601 container start time, or `null` if unavailable / never started. */
58
+ readonly startedAt: string | null;
59
+ /** Docker restart count since creation, or `null` if unparseable. */
60
+ readonly restartCount: number | null;
61
+ /** Docker healthcheck status, or `'none'` when the image ships no HEALTHCHECK. */
62
+ readonly health: MemoryServiceHealth;
63
+ }
35
64
  export declare class MemoryServiceContainerController {
36
65
  private imageTag;
37
66
  status(): MemoryServiceStatus;
67
+ /**
68
+ * Best-effort runtime metadata for the container — start time (for uptime),
69
+ * restart count, and Docker health. One `docker inspect` call; never throws.
70
+ *
71
+ * Returns `null` when the container doesn't exist (inspect exits non-zero).
72
+ * Field-level parse misses degrade to `null` / `'unknown'` so `olam memory
73
+ * status` can render partial data instead of failing the whole command.
74
+ *
75
+ * The format string emits three pipe-delimited fields:
76
+ * {{.State.StartedAt}}|{{.RestartCount}}|{{health-or-"none"}}
77
+ *
78
+ * `StartedAt` is the zero-value `0001-01-01T00:00:00Z` for never-started
79
+ * containers; the caller treats that as "no uptime" via `null` mapping.
80
+ */
81
+ runtimeInspect(): MemoryServiceRuntime | null;
38
82
  private imageExists;
39
83
  /**
40
84
  * Resolve the first available image tag: local → dev → published.
@@ -1 +1 @@
1
- {"version":3,"file":"memory-service-container.d.ts","sourceRoot":"","sources":["../../src/commands/memory-service-container.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AASH,eAAO,MAAM,mBAAmB,OAAO,CAAC;AACxC,eAAO,MAAM,wBAAwB,wBAAwB,CAAC;AAC9D,eAAO,MAAM,wBAAwB,8BAA8B,CAAC;AACpE,eAAO,MAAM,4BAA4B,6CAA6C,CAAC;AACvF,eAAO,MAAM,sBAAsB,4BAA4B,CAAC;AAChE,eAAO,MAAM,yBAAyB,4CAA8D,CAAC;AAKrG,eAAO,MAAM,gCAAgC,QAAS,CAAC;AAOvD,KAAK,cAAc,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;AAExD,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;IAC/B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;CAC1B;AAeD,qBAAa,gCAAgC;IAC3C,OAAO,CAAC,QAAQ,CAAoC;IAEpD,MAAM,IAAI,mBAAmB;IAiB7B,OAAO,CAAC,WAAW;IAInB;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,YAAY;IAkBpB;;;;;;;;;OASG;IACH,KAAK,IAAI,IAAI;IA6Cb;;;;;OAKG;IACH,sBAAsB,IAAI,OAAO;IAQjC,IAAI,IAAI,IAAI;IAMZ,MAAM,IAAI,IAAI;IAId;;;;;;;;;OASG;IACG,YAAY,CAAC,SAAS,SAAmC,GAAG,OAAO,CAAC,OAAO,CAAC;CAoBnF"}
1
+ {"version":3,"file":"memory-service-container.d.ts","sourceRoot":"","sources":["../../src/commands/memory-service-container.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AASH,eAAO,MAAM,mBAAmB,OAAO,CAAC;AACxC,eAAO,MAAM,wBAAwB,wBAAwB,CAAC;AAC9D,eAAO,MAAM,wBAAwB,8BAA8B,CAAC;AACpE,eAAO,MAAM,4BAA4B,6CAA6C,CAAC;AACvF,eAAO,MAAM,sBAAsB,4BAA4B,CAAC;AAChE,eAAO,MAAM,yBAAyB,4CAA8D,CAAC;AAKrG,eAAO,MAAM,gCAAgC,QAAS,CAAC;AAOvD,KAAK,cAAc,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;AAExD,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;IAC/B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED;;;;;;;;;GASG;AACH,MAAM,MAAM,mBAAmB,GAC3B,UAAU,GACV,SAAS,GACT,WAAW,GACX,MAAM,GACN,SAAS,CAAC;AAEd;;;;;;;;;GASG;AACH,MAAM,WAAW,oBAAoB;IACnC,+EAA+E;IAC/E,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,qEAAqE;IACrE,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,kFAAkF;IAClF,QAAQ,CAAC,MAAM,EAAE,mBAAmB,CAAC;CACtC;AA+BD,qBAAa,gCAAgC;IAC3C,OAAO,CAAC,QAAQ,CAAoC;IAEpD,MAAM,IAAI,mBAAmB;IAiB7B;;;;;;;;;;;;;OAaG;IACH,cAAc,IAAI,oBAAoB,GAAG,IAAI;IA4B7C,OAAO,CAAC,WAAW;IAInB;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,YAAY;IAkBpB;;;;;;;;;OASG;IACH,KAAK,IAAI,IAAI;IA6Cb;;;;;OAKG;IACH,sBAAsB,IAAI,OAAO;IAQjC,IAAI,IAAI,IAAI;IAMZ,MAAM,IAAI,IAAI;IAId;;;;;;;;;OASG;IACG,YAAY,CAAC,SAAS,SAAmC,GAAG,OAAO,CAAC,OAAO,CAAC;CAoBnF"}
@@ -38,6 +38,21 @@ export const MEMORY_SERVICE_HEALTH_TIMEOUT_MS = 60_000;
38
38
  // agentmemory engine can persist iii-engine state to a path the operator can
39
39
  // inspect + that survives `docker rm`.
40
40
  const MEMORY_SERVICE_VOLUME_TARGET = '/data';
41
+ function parseHealth(raw) {
42
+ switch (raw) {
43
+ case 'starting':
44
+ case 'healthy':
45
+ case 'unhealthy':
46
+ return raw;
47
+ // Docker prints an empty `State.Health.Status` for images without a
48
+ // HEALTHCHECK. The `{{if}}` guard in the format string maps that to the
49
+ // literal `none` so we can distinguish "no healthcheck" from a parse miss.
50
+ case 'none':
51
+ return 'none';
52
+ default:
53
+ return 'unknown';
54
+ }
55
+ }
41
56
  /**
42
57
  * Resolves the operator's memory-data root for the host bind-mount.
43
58
  *
@@ -64,6 +79,40 @@ export class MemoryServiceContainerController {
64
79
  }
65
80
  return { state: 'missing', port: MEMORY_SERVICE_PORT };
66
81
  }
82
+ /**
83
+ * Best-effort runtime metadata for the container — start time (for uptime),
84
+ * restart count, and Docker health. One `docker inspect` call; never throws.
85
+ *
86
+ * Returns `null` when the container doesn't exist (inspect exits non-zero).
87
+ * Field-level parse misses degrade to `null` / `'unknown'` so `olam memory
88
+ * status` can render partial data instead of failing the whole command.
89
+ *
90
+ * The format string emits three pipe-delimited fields:
91
+ * {{.State.StartedAt}}|{{.RestartCount}}|{{health-or-"none"}}
92
+ *
93
+ * `StartedAt` is the zero-value `0001-01-01T00:00:00Z` for never-started
94
+ * containers; the caller treats that as "no uptime" via `null` mapping.
95
+ */
96
+ runtimeInspect() {
97
+ const r = spawnSync('docker', [
98
+ 'inspect',
99
+ '--format',
100
+ '{{.State.StartedAt}}|{{.RestartCount}}|{{if .State.Health}}{{.State.Health.Status}}{{else}}none{{end}}',
101
+ MEMORY_SERVICE_CONTAINER,
102
+ ], { encoding: 'utf-8' });
103
+ if (r.status !== 0)
104
+ return null;
105
+ const [startedRaw = '', restartRaw = '', healthRaw = ''] = r.stdout.trim().split('|');
106
+ // Docker's zero-value timestamp means "never started" — treat as no uptime.
107
+ const startedAt = startedRaw && !startedRaw.startsWith('0001-01-01') ? startedRaw : null;
108
+ const restartNum = Number.parseInt(restartRaw, 10);
109
+ const restartCount = Number.isFinite(restartNum) ? restartNum : null;
110
+ return {
111
+ startedAt,
112
+ restartCount,
113
+ health: parseHealth(healthRaw),
114
+ };
115
+ }
67
116
  imageExists(tag = this.imageTag) {
68
117
  return spawnSync('docker', ['image', 'inspect', tag], { encoding: 'utf-8' }).status === 0;
69
118
  }
@@ -1 +1 @@
1
- {"version":3,"file":"memory-service-container.js","sourceRoot":"","sources":["../../src/commands/memory-service-container.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"memory-service-container.js","sourceRoot":"","sources":["../../src/commands/memory-service-container.ts"],"names":[],"mappings":"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"}
@@ -20,6 +20,38 @@ type SortKey = 'cpu' | 'mem' | 'pid';
20
20
  */
21
21
  export declare function parseDockerTop(stdout: string): ProcessRow[];
22
22
  export declare function sortRows(rows: ProcessRow[], key: SortKey): ProcessRow[];
23
+ /**
24
+ * Machine-readable shape emitted by `olam ps --json`. Numeric fields are
25
+ * coerced from the string columns docker top hands us so downstream
26
+ * consumers (jq filters, dashboards) don't have to re-parse — `NaN`
27
+ * collapses to `0` to keep the contract total.
28
+ */
29
+ export interface ProcessJson {
30
+ pid: number;
31
+ user: string;
32
+ cpu: number;
33
+ mem: number;
34
+ started: string;
35
+ state: string;
36
+ command: string;
37
+ }
38
+ export interface PsJson {
39
+ world: string;
40
+ container: string;
41
+ sort: SortKey;
42
+ count: number;
43
+ processes: ProcessJson[];
44
+ }
45
+ /**
46
+ * Pure JSON serialiser for `olam ps --json`. Kept separate from the
47
+ * docker spawn so the wire contract is unit-testable without process I/O
48
+ * (mirrors `renderWorldList` in list.ts).
49
+ */
50
+ export declare function renderPsJson(rows: ProcessRow[], meta: {
51
+ world: string;
52
+ container: string;
53
+ sort: SortKey;
54
+ }): string;
23
55
  export declare function registerPs(program: Command): void;
24
56
  export {};
25
57
  //# sourceMappingURL=ps.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ps.d.ts","sourceRoot":"","sources":["../../src/commands/ps.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAMzC,UAAU,UAAU;IAClB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,KAAK,OAAO,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC;AAKrC;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,EAAE,CAoD3D;AAED,wBAAgB,QAAQ,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE,GAAG,EAAE,OAAO,GAAG,UAAU,EAAE,CAKvE;AA0CD,wBAAgB,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAkEjD"}
1
+ {"version":3,"file":"ps.d.ts","sourceRoot":"","sources":["../../src/commands/ps.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAMzC,UAAU,UAAU;IAClB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,KAAK,OAAO,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC;AAKrC;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,EAAE,CAoD3D;AAED,wBAAgB,QAAQ,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE,GAAG,EAAE,OAAO,GAAG,UAAU,EAAE,CAKvE;AAED;;;;;GAKG;AACH,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,MAAM;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,WAAW,EAAE,CAAC;CAC1B;AAOD;;;;GAIG;AACH,wBAAgB,YAAY,CAC1B,IAAI,EAAE,UAAU,EAAE,EAClB,IAAI,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,OAAO,CAAA;CAAE,GACxD,MAAM,CAiBR;AA0CD,wBAAgB,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAyEjD"}
@@ -73,6 +73,33 @@ export function sortRows(rows, key) {
73
73
  return parseFloat(b[key]) - parseFloat(a[key]);
74
74
  });
75
75
  }
76
+ function toNumber(value) {
77
+ const n = parseFloat(value);
78
+ return Number.isFinite(n) ? n : 0;
79
+ }
80
+ /**
81
+ * Pure JSON serialiser for `olam ps --json`. Kept separate from the
82
+ * docker spawn so the wire contract is unit-testable without process I/O
83
+ * (mirrors `renderWorldList` in list.ts).
84
+ */
85
+ export function renderPsJson(rows, meta) {
86
+ const payload = {
87
+ world: meta.world,
88
+ container: meta.container,
89
+ sort: meta.sort,
90
+ count: rows.length,
91
+ processes: rows.map((r) => ({
92
+ pid: toNumber(r.pid),
93
+ user: r.user,
94
+ cpu: toNumber(r.cpu),
95
+ mem: toNumber(r.mem),
96
+ started: r.started,
97
+ state: r.state,
98
+ command: r.command,
99
+ })),
100
+ };
101
+ return JSON.stringify(payload);
102
+ }
76
103
  function printTable(rows) {
77
104
  const cols = process.stdout.columns ?? 80;
78
105
  const fixedWidth = 5 + 1 + 8 + 1 + 6 + 1 + 6 + 1 + 10 + 1 + 6 + 1;
@@ -114,6 +141,7 @@ export function registerPs(program) {
114
141
  .argument('<world>', 'World ID')
115
142
  .option('--watch', 'Refresh every 5 seconds (Ctrl-C to exit)')
116
143
  .option('--sort <key>', 'Sort column: cpu, mem, pid', 'cpu')
144
+ .option('--json', 'Emit machine-readable JSON instead of the text table', false)
117
145
  .action(async (worldId, opts) => {
118
146
  if (!SAFE_IDENT.test(worldId)) {
119
147
  printError(`Invalid world ID "${worldId}". World IDs must match [a-z0-9][a-z0-9-]{0,63}.`);
@@ -144,6 +172,12 @@ export function registerPs(program) {
144
172
  return;
145
173
  }
146
174
  const rows = sortRows(parseDockerTop(result.stdout ?? ''), sortKey);
175
+ if (opts.json) {
176
+ if (opts.watch)
177
+ process.stdout.write('\x1b[2J\x1b[H');
178
+ console.log(renderPsJson(rows, { world: worldId, container: containerName, sort: sortKey }));
179
+ return;
180
+ }
147
181
  if (opts.watch)
148
182
  process.stdout.write('\x1b[2J\x1b[H');
149
183
  printTable(rows);
@@ -1 +1 @@
1
- {"version":3,"file":"ps.js","sourceRoot":"","sources":["../../src/commands/ps.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ps.js","sourceRoot":"","sources":["../../src/commands/ps.ts"],"names":[],"mappings":"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"}
@@ -9,5 +9,37 @@
9
9
  * olam runbooks check-ports <name>
10
10
  */
11
11
  import type { Command } from 'commander';
12
+ import type { PortConflict, Runbook } from '@olam/core/src/global-config/index.js';
13
+ /**
14
+ * Pure renderer for `olam runbooks list`.
15
+ *
16
+ * Extracted so the `--json` contract is unit-testable without the global
17
+ * config store or a TTY (Rule 9). The JSON shape is a stable, color-free
18
+ * array of `{ name, repos, description, portCount, updatedAt }` so agents
19
+ * and scripts can enumerate runbook inventory without screen-scraping the
20
+ * colorized human table.
21
+ */
22
+ export declare function renderRunbookList(runbooks: readonly Runbook[], opts: {
23
+ json: boolean;
24
+ }): string;
25
+ /** One declared-port row in the `check-ports --json` payload. */
26
+ export interface PortStatusRow {
27
+ readonly repoName: string;
28
+ readonly serviceName: string;
29
+ readonly port: number;
30
+ readonly free: boolean;
31
+ /** Populated only when `free` is false. */
32
+ readonly occupant?: PortConflict['occupant'];
33
+ }
34
+ /**
35
+ * Build the structured port-status rows for a runbook, pairing each declared
36
+ * port against the resolved conflict set. Pure + deterministic so the
37
+ * `check-ports --json` contract is testable without binding real TCP ports
38
+ * (Rule 9 — the WHY: scripts gating world creation must read conflict state
39
+ * machine-readably, not parse the ✓/✗ glyph table).
40
+ */
41
+ export declare function buildPortStatusRows(portMap: Runbook['portMap'], conflicts: readonly PortConflict[]): PortStatusRow[];
42
+ /** Pure JSON renderer for `olam runbooks check-ports --json`. */
43
+ export declare function renderCheckPortsJson(name: string, rows: readonly PortStatusRow[], conflictCount: number): string;
12
44
  export declare function registerRunbooks(program: Command): void;
13
45
  //# sourceMappingURL=runbooks.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"runbooks.d.ts","sourceRoot":"","sources":["../../src/commands/runbooks.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAkDzC,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAmKvD"}
1
+ {"version":3,"file":"runbooks.d.ts","sourceRoot":"","sources":["../../src/commands/runbooks.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AASzC,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,uCAAuC,CAAC;AAOnF;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,SAAS,OAAO,EAAE,EAC5B,IAAI,EAAE;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,GACtB,MAAM,CA4BR;AAED,iEAAiE;AACjE,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,2CAA2C;IAC3C,QAAQ,CAAC,QAAQ,CAAC,EAAE,YAAY,CAAC,UAAU,CAAC,CAAC;CAC9C;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,EAC3B,SAAS,EAAE,SAAS,YAAY,EAAE,GACjC,aAAa,EAAE,CAajB;AAED,iEAAiE;AACjE,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,SAAS,aAAa,EAAE,EAC9B,aAAa,EAAE,MAAM,GACpB,MAAM,CAMR;AAoCD,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAkKvD"}
@@ -10,10 +10,65 @@
10
10
  */
11
11
  import pc from 'picocolors';
12
12
  import { listRunbooks, getRunbook, addRunbook, removeRunbook, validateRunbookPorts, } from '@olam/core/src/global-config/index.js';
13
- import { printError, printSuccess, printHeader } from '../output.js';
13
+ import { printError, printSuccess } from '../output.js';
14
14
  function asMessage(err) {
15
15
  return err instanceof Error ? err.message : String(err);
16
16
  }
17
+ /**
18
+ * Pure renderer for `olam runbooks list`.
19
+ *
20
+ * Extracted so the `--json` contract is unit-testable without the global
21
+ * config store or a TTY (Rule 9). The JSON shape is a stable, color-free
22
+ * array of `{ name, repos, description, portCount, updatedAt }` so agents
23
+ * and scripts can enumerate runbook inventory without screen-scraping the
24
+ * colorized human table.
25
+ */
26
+ export function renderRunbookList(runbooks, opts) {
27
+ if (opts.json) {
28
+ return JSON.stringify(runbooks.map((rb) => ({
29
+ name: rb.name,
30
+ repos: rb.repos,
31
+ description: rb.description ?? null,
32
+ portCount: rb.portMap
33
+ ? Object.values(rb.portMap).reduce((n, svc) => n + Object.keys(svc).length, 0)
34
+ : 0,
35
+ updatedAt: rb.updatedAt,
36
+ })), null, 2);
37
+ }
38
+ if (runbooks.length === 0) {
39
+ return pc.dim('0 runbook(s). Add one with: olam runbooks add <name> --repos <repo>');
40
+ }
41
+ const lines = [pc.bold(`${runbooks.length} runbook(s)`)];
42
+ for (const rb of runbooks) {
43
+ const when = new Date(rb.updatedAt).toISOString().slice(0, 10);
44
+ const repoList = rb.repos.join(', ');
45
+ lines.push(` ${pc.bold(rb.name.padEnd(24))} ${repoList.padEnd(40)} ${pc.dim(when)}`);
46
+ }
47
+ return lines.join('\n');
48
+ }
49
+ /**
50
+ * Build the structured port-status rows for a runbook, pairing each declared
51
+ * port against the resolved conflict set. Pure + deterministic so the
52
+ * `check-ports --json` contract is testable without binding real TCP ports
53
+ * (Rule 9 — the WHY: scripts gating world creation must read conflict state
54
+ * machine-readably, not parse the ✓/✗ glyph table).
55
+ */
56
+ export function buildPortStatusRows(portMap, conflicts) {
57
+ const rows = [];
58
+ for (const [repoName, svcMap] of Object.entries(portMap ?? {})) {
59
+ for (const [serviceName, port] of Object.entries(svcMap)) {
60
+ const conflict = conflicts.find((c) => c.port === port);
61
+ rows.push(conflict
62
+ ? { repoName, serviceName, port, free: false, occupant: conflict.occupant }
63
+ : { repoName, serviceName, port, free: true });
64
+ }
65
+ }
66
+ return rows;
67
+ }
68
+ /** Pure JSON renderer for `olam runbooks check-ports --json`. */
69
+ export function renderCheckPortsJson(name, rows, conflictCount) {
70
+ return JSON.stringify({ name, conflictCount, ports: rows }, null, 2);
71
+ }
17
72
  /** Parse "--port repo.svc=N" args into a nested portMap. */
18
73
  function parsePortFlags(ports) {
19
74
  const portMap = {};
@@ -53,18 +108,10 @@ export function registerRunbooks(program) {
53
108
  runbooks
54
109
  .command('list')
55
110
  .description('List all runbooks')
56
- .action(() => {
111
+ .option('--json', 'Emit machine-readable JSON instead of the text table', false)
112
+ .action((opts) => {
57
113
  const all = listRunbooks();
58
- if (all.length === 0) {
59
- console.log(pc.dim('0 runbook(s). Add one with: olam runbooks add <name> --repos <repo>'));
60
- return;
61
- }
62
- printHeader(`${all.length} runbook(s)`);
63
- for (const rb of all) {
64
- const when = new Date(rb.updatedAt).toISOString().slice(0, 10);
65
- const repoList = rb.repos.join(', ');
66
- console.log(` ${pc.bold(rb.name.padEnd(24))} ${repoList.padEnd(40)} ${pc.dim(when)}`);
67
- }
114
+ console.log(renderRunbookList(all, { json: opts.json === true }));
68
115
  });
69
116
  runbooks
70
117
  .command('show')
@@ -152,24 +199,34 @@ export function registerRunbooks(program) {
152
199
  .command('check-ports')
153
200
  .description('Check if runbook ports are available')
154
201
  .argument('<name>', 'Runbook name')
155
- .action((name) => {
202
+ .option('--json', 'Emit machine-readable JSON instead of the text table', false)
203
+ .action((name, opts) => {
156
204
  try {
157
205
  const rb = getRunbook(name);
158
206
  const { conflicts } = validateRunbookPorts(rb);
159
- if (!rb.portMap || Object.keys(rb.portMap).length === 0) {
207
+ const rows = buildPortStatusRows(rb.portMap, conflicts);
208
+ if (opts.json === true) {
209
+ // --json always emits the full structured payload (including the
210
+ // empty-ports case as `ports: []`), so consumers get one stable
211
+ // shape regardless of whether the runbook declares ports.
212
+ console.log(renderCheckPortsJson(name, rows, conflicts.length));
213
+ if (conflicts.length > 0)
214
+ process.exitCode = 1;
215
+ return;
216
+ }
217
+ if (rows.length === 0) {
160
218
  console.log(pc.dim(`runbook "${name}" declares no ports.`));
161
219
  return;
162
220
  }
163
221
  // Print all declared ports
164
- for (const [repoName, svcMap] of Object.entries(rb.portMap ?? {})) {
165
- for (const [svcName, port] of Object.entries(svcMap)) {
166
- const conflict = conflicts.find((c) => c.port === port);
167
- if (conflict) {
222
+ for (const row of rows) {
223
+ if (!row.free) {
224
+ const conflict = conflicts.find((c) => c.port === row.port);
225
+ if (conflict)
168
226
  console.log(formatConflict(conflict));
169
- }
170
- else {
171
- console.log(` ${pc.green('✓')} ${repoName}.${svcName}:${port} — free`);
172
- }
227
+ }
228
+ else {
229
+ console.log(` ${pc.green('✓')} ${row.repoName}.${row.serviceName}:${row.port} — free`);
173
230
  }
174
231
  }
175
232
  if (conflicts.length > 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"runbooks.js","sourceRoot":"","sources":["../../src/commands/runbooks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runbooks.js","sourceRoot":"","sources":["../../src/commands/runbooks.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"skills-source.d.ts","sourceRoot":"","sources":["../../src/commands/skills-source.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGzC,OAAO,EAqBL,KAAK,YAAY,EAClB,MAAM,uCAAuC,CAAC;AA2D/C;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,KAAK,EAAE;IACzC,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,YAAY,CAAC;CACzB,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;AAsBvB;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,kBAAkB;IACjC,oBAAoB,EAAE,OAAO,CAAC;CAC/B;AACD,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;CACtB;AACD,MAAM,MAAM,eAAe,GAAG,CAAC,KAAK,EAAE,kBAAkB,KAAK,OAAO,CAAC,mBAAmB,CAAC,CAAC;AAwC1F,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAkrB3D"}
1
+ {"version":3,"file":"skills-source.d.ts","sourceRoot":"","sources":["../../src/commands/skills-source.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGzC,OAAO,EAqBL,KAAK,YAAY,EAClB,MAAM,uCAAuC,CAAC;AAqH/C;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,KAAK,EAAE;IACzC,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,YAAY,CAAC;CACzB,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;AAsBvB;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,kBAAkB;IACjC,oBAAoB,EAAE,OAAO,CAAC;CAC/B;AACD,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;CACtB;AACD,MAAM,MAAM,eAAe,GAAG,CAAC,KAAK,EAAE,kBAAkB,KAAK,OAAO,CAAC,mBAAmB,CAAC,CAAC;AAwC1F,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA+vB3D"}