@mesh-tech/mesh-cli 0.36.0 → 0.37.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.
Files changed (103) hide show
  1. package/assets/docs-preview.css +1599 -0
  2. package/dist/bin/mesh.auth-preflight-JFKL4Y4X.js +48 -0
  3. package/dist/bin/mesh.auth-preflight-JFKL4Y4X.js.map +6 -0
  4. package/dist/bin/mesh.capture-history-A4IAVVIR.js +38 -0
  5. package/dist/bin/mesh.capture-history-A4IAVVIR.js.map +6 -0
  6. package/dist/bin/mesh.chunk-5A5OFSYR.js +187 -0
  7. package/dist/bin/mesh.chunk-5A5OFSYR.js.map +6 -0
  8. package/dist/bin/mesh.chunk-7DMAFUBQ.js +7715 -0
  9. package/dist/bin/mesh.chunk-7DMAFUBQ.js.map +6 -0
  10. package/dist/bin/mesh.chunk-A4DGMGHF.js +303 -0
  11. package/dist/bin/mesh.chunk-A4DGMGHF.js.map +6 -0
  12. package/dist/bin/mesh.chunk-CQ2IC4OP.js +217 -0
  13. package/dist/bin/mesh.chunk-CQ2IC4OP.js.map +6 -0
  14. package/dist/bin/mesh.chunk-F4654EPX.js +383 -0
  15. package/dist/bin/mesh.chunk-F4654EPX.js.map +6 -0
  16. package/dist/bin/mesh.chunk-IQOBTL42.js +60 -0
  17. package/dist/bin/mesh.chunk-IQOBTL42.js.map +6 -0
  18. package/dist/bin/mesh.chunk-J6DVWKRW.js +647 -0
  19. package/dist/bin/mesh.chunk-J6DVWKRW.js.map +6 -0
  20. package/dist/bin/mesh.chunk-JB7FWYSP.js +1751 -0
  21. package/dist/bin/mesh.chunk-JB7FWYSP.js.map +6 -0
  22. package/dist/bin/mesh.chunk-MCBMHWXP.js +837 -0
  23. package/dist/bin/mesh.chunk-MCBMHWXP.js.map +6 -0
  24. package/dist/bin/mesh.chunk-OW5EMVG5.js +507 -0
  25. package/dist/bin/mesh.chunk-OW5EMVG5.js.map +6 -0
  26. package/dist/bin/mesh.chunk-R5VVTXG4.js +10092 -0
  27. package/dist/bin/mesh.chunk-R5VVTXG4.js.map +6 -0
  28. package/dist/bin/mesh.chunk-VKV6Z3UI.js +1146 -0
  29. package/dist/bin/mesh.chunk-VKV6Z3UI.js.map +6 -0
  30. package/dist/bin/mesh.chunk-WFFDF346.js +59 -0
  31. package/dist/bin/mesh.chunk-WFFDF346.js.map +6 -0
  32. package/dist/bin/mesh.chunk-WOJOTUFZ.js +835 -0
  33. package/dist/bin/mesh.chunk-WOJOTUFZ.js.map +6 -0
  34. package/dist/bin/mesh.cli-reference-H3TOPIET.js +158 -0
  35. package/dist/bin/mesh.cli-reference-H3TOPIET.js.map +6 -0
  36. package/dist/bin/mesh.convert-KK6ZP256.js +274 -0
  37. package/dist/bin/mesh.convert-KK6ZP256.js.map +6 -0
  38. package/dist/bin/mesh.create-app-A5F45PWZ.js +39 -0
  39. package/dist/bin/mesh.create-app-A5F45PWZ.js.map +6 -0
  40. package/dist/bin/mesh.dev-token-server-GYDYPXYH.js +61 -0
  41. package/dist/bin/mesh.dev-token-server-GYDYPXYH.js.map +6 -0
  42. package/dist/bin/mesh.js +20 -26418
  43. package/dist/bin/mesh.js.map +3 -3
  44. package/dist/bin/mesh.login-JNHPVMCT.js +91 -0
  45. package/dist/bin/mesh.login-JNHPVMCT.js.map +6 -0
  46. package/dist/bin/mesh.platform-setup-EB64EFRN.js +37 -0
  47. package/dist/bin/mesh.platform-setup-EB64EFRN.js.map +6 -0
  48. package/dist/bin/mesh.preview-3IP34TDO.js +2410 -0
  49. package/dist/bin/mesh.preview-3IP34TDO.js.map +6 -0
  50. package/dist/bin/mesh.program-DWOKHNMQ.js +23 -0
  51. package/dist/bin/mesh.program-DWOKHNMQ.js.map +6 -0
  52. package/dist/bin/mesh.registry-OXF57OQW.js +47 -0
  53. package/dist/bin/mesh.registry-OXF57OQW.js.map +6 -0
  54. package/dist/bin/mesh.registry-identity-2HSGQGJC.js +42 -0
  55. package/dist/bin/mesh.registry-identity-2HSGQGJC.js.map +6 -0
  56. package/dist/bin/mesh.skills-MNDSMBIE.js +23 -0
  57. package/dist/bin/mesh.skills-MNDSMBIE.js.map +6 -0
  58. package/dist/bin/mesh.src-5D5DFSLX.js +1302 -0
  59. package/dist/bin/mesh.src-5D5DFSLX.js.map +6 -0
  60. package/dist/bin/mesh.src-G7TJBLNJ.js +40 -0
  61. package/dist/bin/mesh.src-G7TJBLNJ.js.map +6 -0
  62. package/dist/bin/mesh.stack-EFTFAOCV.js +64 -0
  63. package/dist/bin/mesh.stack-EFTFAOCV.js.map +6 -0
  64. package/dist/bin/mesh.start-ARIIY6CV.js +454 -0
  65. package/dist/bin/mesh.start-ARIIY6CV.js.map +6 -0
  66. package/dist/bin/mesh.wizard-ROAQAGSF.js +500 -0
  67. package/dist/bin/mesh.wizard-ROAQAGSF.js.map +6 -0
  68. package/dist/build-info.json +2 -2
  69. package/dist/src/commands/app-check.d.ts +2 -1
  70. package/dist/src/commands/app-check.js +32 -0
  71. package/dist/src/commands/dev.d.ts +6 -0
  72. package/dist/src/commands/dev.js +152 -3
  73. package/dist/src/commands/docs.js +33 -0
  74. package/dist/src/commands/local/act-as-local.d.ts +5 -0
  75. package/dist/src/commands/local/act-as-local.js +41 -0
  76. package/dist/src/commands/local/auth-provision.d.ts +1 -0
  77. package/dist/src/commands/local/auth-provision.js +1 -0
  78. package/dist/src/commands/local/index.js +4 -0
  79. package/dist/src/commands/local/local-api-key.d.ts +44 -0
  80. package/dist/src/commands/local/local-api-key.js +115 -0
  81. package/dist/src/commands/local/local-spicedb.d.ts +95 -0
  82. package/dist/src/commands/local/local-spicedb.js +304 -0
  83. package/dist/src/commands/local/publish-docs.d.ts +81 -0
  84. package/dist/src/commands/local/publish-docs.js +328 -0
  85. package/dist/src/commands/local/seed-zitadel.js +2 -0
  86. package/dist/src/commands/temporal.js +191 -61
  87. package/dist/src/commands/temporal.js.map +3 -3
  88. package/dist/src/docs/convert.d.ts +35 -0
  89. package/dist/src/docs/convert.js +276 -0
  90. package/dist/src/docs/preview-source.d.ts +13 -0
  91. package/dist/src/docs/preview-source.js +58 -0
  92. package/dist/src/docs/preview.d.ts +32 -0
  93. package/dist/src/docs/preview.js +279 -0
  94. package/fragments/agents/AGENTS.md.hbs +27 -27
  95. package/fragments/base/README.md.hbs +5 -2
  96. package/fragments/base/index.ts.hbs +17 -30
  97. package/fragments/base/package.json.hbs +4 -1
  98. package/fragments/service/api/openapi.json.hbs +1 -1
  99. package/fragments/service/docs/docs.yaml.hbs +10 -0
  100. package/fragments/service/docs/pages/getting-started.md.hbs +6 -9
  101. package/package.json +19 -3
  102. package/skills/mesh/SKILL.md +2 -2
  103. package/stack/docker-compose.hub.yml +6 -0
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../workflow-model/src/workflow-ir.ts", "../../../workflow-model/src/workflow-ir-validate.ts", "../../../workflow-model/src/apply-preview-patch.ts", "../../../workflow-model/src/change-counts.ts", "../../../workflow-model/src/process-artifact.ts", "../../../workflow-model/src/process-lint.ts"],
4
+ "mappings": "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",
5
+ "names": []
6
+ }
@@ -0,0 +1,40 @@
1
+ import {
2
+ DEFAULT_APPROVAL_PATH_PREFIX,
3
+ DEFAULT_CONVERSATION_PATH_PREFIX,
4
+ DEFAULT_REGISTRY_PATH,
5
+ RegistrySchema,
6
+ TargetEntrySchema,
7
+ approvalUrl,
8
+ conversationUrl,
9
+ createVcsFolderReader,
10
+ deriveVcsBaseUrl,
11
+ extractDelegateIds,
12
+ loadTargetsFile,
13
+ normalizePathPrefix,
14
+ pullConversation,
15
+ renderMessageContent,
16
+ resolveEntry,
17
+ slugForDesign,
18
+ stripSlash,
19
+ writeBundle
20
+ } from "./mesh.chunk-OW5EMVG5.js";
21
+ export {
22
+ DEFAULT_APPROVAL_PATH_PREFIX,
23
+ DEFAULT_CONVERSATION_PATH_PREFIX,
24
+ DEFAULT_REGISTRY_PATH,
25
+ RegistrySchema,
26
+ TargetEntrySchema,
27
+ approvalUrl,
28
+ conversationUrl,
29
+ createVcsFolderReader,
30
+ deriveVcsBaseUrl,
31
+ extractDelegateIds,
32
+ loadTargetsFile,
33
+ normalizePathPrefix,
34
+ pullConversation,
35
+ renderMessageContent,
36
+ resolveEntry,
37
+ slugForDesign,
38
+ stripSlash,
39
+ writeBundle
40
+ };
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "mappings": "",
5
+ "names": []
6
+ }
@@ -0,0 +1,64 @@
1
+ import {
2
+ BASE_COMPOSE_FILE,
3
+ COMPOSE_PROJECT,
4
+ DEFAULT_HUB_PORT,
5
+ HUB_OVERLAY_FILE,
6
+ IDPS_OVERLAY_FILE,
7
+ ONE_SHOT_SERVICES,
8
+ STACK_ENDPOINTS,
9
+ compose,
10
+ composeLogPath,
11
+ composeStreamed,
12
+ crashedServices,
13
+ ensureDockerAvailable,
14
+ findPackageRoot,
15
+ hubApiRunning,
16
+ hubEndpoints,
17
+ hubOverlayServices,
18
+ hubPort,
19
+ idpsOverlayServices,
20
+ localLogsDir,
21
+ localProbesDir,
22
+ overlayRunning,
23
+ parseComposePs,
24
+ parseComposeServiceNames,
25
+ probeEndpoint,
26
+ stackDir,
27
+ stackOwnedElsewhere,
28
+ stackServices,
29
+ summarizeComposeFailure,
30
+ writeAppServiceProbes
31
+ } from "./mesh.chunk-MCBMHWXP.js";
32
+ import "./mesh.chunk-WFFDF346.js";
33
+ import "./mesh.chunk-IQOBTL42.js";
34
+ export {
35
+ BASE_COMPOSE_FILE,
36
+ COMPOSE_PROJECT,
37
+ DEFAULT_HUB_PORT,
38
+ HUB_OVERLAY_FILE,
39
+ IDPS_OVERLAY_FILE,
40
+ ONE_SHOT_SERVICES,
41
+ STACK_ENDPOINTS,
42
+ compose,
43
+ composeLogPath,
44
+ composeStreamed,
45
+ crashedServices,
46
+ ensureDockerAvailable,
47
+ findPackageRoot,
48
+ hubApiRunning,
49
+ hubEndpoints,
50
+ hubOverlayServices,
51
+ hubPort,
52
+ idpsOverlayServices,
53
+ localLogsDir,
54
+ localProbesDir,
55
+ overlayRunning,
56
+ parseComposePs,
57
+ parseComposeServiceNames,
58
+ probeEndpoint,
59
+ stackDir,
60
+ stackOwnedElsewhere,
61
+ stackServices,
62
+ summarizeComposeFailure,
63
+ writeAppServiceProbes
64
+ };
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "mappings": "",
5
+ "names": []
6
+ }
@@ -0,0 +1,454 @@
1
+ import {
2
+ DOCS_APP_DIR,
3
+ discoverDocRoots,
4
+ reportAssembly,
5
+ resolveCliRuntime,
6
+ runAssemble
7
+ } from "./mesh.chunk-VKV6Z3UI.js";
8
+ import {
9
+ logError,
10
+ logInfo,
11
+ logSuccess
12
+ } from "./mesh.chunk-WFFDF346.js";
13
+ import {
14
+ homeNpmrcPath,
15
+ parseNpmrcRegistryAuth
16
+ } from "./mesh.chunk-5A5OFSYR.js";
17
+
18
+ // packages/mesh-cli/src/docs/start.ts
19
+ import { execFileSync as execFileSync2 } from "node:child_process";
20
+ import { appendFileSync, existsSync as existsSync2, writeFileSync as writeFileSync2 } from "node:fs";
21
+ import path2 from "node:path";
22
+
23
+ // packages/mesh-cli/src/docs/serve.ts
24
+ import { createServer } from "node:http";
25
+ import { readFile } from "node:fs/promises";
26
+ import { extname, join, normalize, sep } from "node:path";
27
+ var CONTENT_TYPES = {
28
+ ".html": "text/html; charset=utf-8",
29
+ ".js": "text/javascript; charset=utf-8",
30
+ ".mjs": "text/javascript; charset=utf-8",
31
+ ".css": "text/css; charset=utf-8",
32
+ ".json": "application/json; charset=utf-8",
33
+ ".map": "application/json; charset=utf-8",
34
+ ".svg": "image/svg+xml",
35
+ ".png": "image/png",
36
+ ".jpg": "image/jpeg",
37
+ ".jpeg": "image/jpeg",
38
+ ".gif": "image/gif",
39
+ ".ico": "image/x-icon",
40
+ ".woff": "font/woff",
41
+ ".woff2": "font/woff2",
42
+ ".txt": "text/plain; charset=utf-8",
43
+ ".md": "text/markdown; charset=utf-8",
44
+ ".webmanifest": "application/manifest+json"
45
+ };
46
+ async function serveDocsSite(args) {
47
+ const root = normalize(args.root);
48
+ const rootPrefix = root.endsWith(sep) ? root : root + sep;
49
+ const server = createServer((req, res) => {
50
+ void (async () => {
51
+ const url = new URL(req.url ?? "/", "http://localhost");
52
+ const pathname = decodeURIComponent(url.pathname);
53
+ if (pathname === "/healthz") {
54
+ res.writeHead(200, { "content-type": "text/plain" }).end("ok");
55
+ return;
56
+ }
57
+ const candidates = [
58
+ pathname,
59
+ `${pathname}.html`,
60
+ `${pathname.replace(/\/$/, "")}/index.html`
61
+ ];
62
+ if (pathname !== "/") candidates.push("/index.html");
63
+ for (const candidate of candidates) {
64
+ const filePath = normalize(join(root, candidate));
65
+ if (filePath !== root && !filePath.startsWith(rootPrefix)) continue;
66
+ try {
67
+ const body = await readFile(filePath);
68
+ const type = CONTENT_TYPES[extname(filePath)] ?? "application/octet-stream";
69
+ const cache = candidate.includes("/assets/") ? "public, max-age=31536000, immutable" : "no-cache";
70
+ res.writeHead(200, { "content-type": type, "cache-control": cache });
71
+ res.end(body);
72
+ return;
73
+ } catch {
74
+ }
75
+ }
76
+ res.writeHead(404, { "content-type": "text/plain" }).end("not found");
77
+ })().catch(() => {
78
+ res.writeHead(500).end("internal error");
79
+ });
80
+ });
81
+ await new Promise((resolve, reject) => {
82
+ server.once("error", reject);
83
+ server.listen(args.port, "127.0.0.1", () => resolve());
84
+ });
85
+ const address = server.address();
86
+ const port = typeof address === "object" && address ? address.port : args.port;
87
+ return {
88
+ url: `http://127.0.0.1:${port}`,
89
+ port,
90
+ close: () => new Promise((resolve, reject) => {
91
+ server.close((error) => error ? reject(error) : resolve());
92
+ })
93
+ };
94
+ }
95
+
96
+ // packages/mesh-cli/src/docs/registry-docs.ts
97
+ import { execFileSync } from "node:child_process";
98
+ import { existsSync, mkdirSync, readFileSync, renameSync, rmSync, writeFileSync } from "node:fs";
99
+ import { tmpdir } from "node:os";
100
+ import path from "node:path";
101
+ var DOCS_PACKAGE = "@mesh-tech/docs";
102
+ function readDocsRegistryAuth(npmrcPath = homeNpmrcPath()) {
103
+ if (!existsSync(npmrcPath)) return null;
104
+ return parseNpmrcRegistryAuth(readFileSync(npmrcPath, "utf-8"));
105
+ }
106
+ function packumentUrl(endpoint, pkg) {
107
+ return `${endpoint.replace(/\/+$/, "")}/${pkg.replace(/\//g, "%2f")}`;
108
+ }
109
+ async function registryFetch(auth, url, fetchImpl, accept = "application/json") {
110
+ return fetchImpl(url, {
111
+ headers: {
112
+ authorization: `Bearer ${auth.token}`,
113
+ accept
114
+ }
115
+ });
116
+ }
117
+ function compareVersions(a, b) {
118
+ const parse = (v) => {
119
+ const parts = v.split(".").map((n) => Number.parseInt(n, 10) || 0);
120
+ while (parts.length < 3) parts.push(0);
121
+ return parts;
122
+ };
123
+ const pa = parse(a);
124
+ const pb = parse(b);
125
+ for (let i = 0; i < 3; i++) {
126
+ if (pa[i] !== pb[i]) return pa[i] - pb[i];
127
+ }
128
+ return 0;
129
+ }
130
+ async function listDocsVersions(auth, fetchImpl = fetch) {
131
+ const response = await registryFetch(auth, packumentUrl(auth.endpoint, DOCS_PACKAGE), fetchImpl).catch((error) => {
132
+ throw new Error(
133
+ `could not reach the package registry: ${error instanceof Error ? error.message : String(error)}`
134
+ );
135
+ });
136
+ if (response.status === 401 || response.status === 403) {
137
+ throw new Error(
138
+ `registry auth rejected the token (${response.status}). Refresh it: mesh registry login`
139
+ );
140
+ }
141
+ if (response.status === 404) {
142
+ throw new Error(
143
+ `${DOCS_PACKAGE} is not published yet \u2014 no release has shipped the docs artifact. In a mesh-platform checkout, use \`mesh docs start\` against the working tree instead.`
144
+ );
145
+ }
146
+ if (!response.ok) {
147
+ throw new Error(`registry returned ${response.status} for ${DOCS_PACKAGE}`);
148
+ }
149
+ const packument = await response.json();
150
+ const versions = Object.keys(packument.versions ?? {}).sort(compareVersions);
151
+ return { versions, latest: packument["dist-tags"]?.latest };
152
+ }
153
+ function docsCacheRoot() {
154
+ const base = process.env.XDG_CACHE_HOME ?? path.join(homeDir(), ".cache");
155
+ return path.join(base, "mesh", "docs");
156
+ }
157
+ function homeDir() {
158
+ return process.env.HOME ?? tmpdir();
159
+ }
160
+ async function fetchDocsArtifact(auth, version, cacheRoot = docsCacheRoot(), fetchImpl = fetch) {
161
+ const targetDir = path.join(cacheRoot, version);
162
+ if (existsSync(path.join(targetDir, "dist", "index.html"))) return targetDir;
163
+ const listResponse = await registryFetch(auth, packumentUrl(auth.endpoint, DOCS_PACKAGE), fetchImpl);
164
+ if (!listResponse.ok) {
165
+ throw new Error(`registry returned ${listResponse.status} for ${DOCS_PACKAGE}`);
166
+ }
167
+ const packument = await listResponse.json();
168
+ const tarball = packument.versions?.[version]?.dist?.tarball;
169
+ if (!tarball) {
170
+ throw new Error(
171
+ `${DOCS_PACKAGE}@${version} is not in the registry. Run \`mesh docs list\` to see published versions.`
172
+ );
173
+ }
174
+ if (new URL(tarball).origin !== new URL(auth.endpoint).origin) {
175
+ throw new Error(
176
+ `${DOCS_PACKAGE}@${version} points its tarball at ${new URL(tarball).origin}, not the registry (${new URL(auth.endpoint).origin}) \u2014 refusing to send the registry token off-origin`
177
+ );
178
+ }
179
+ const tgzResponse = await registryFetch(auth, tarball, fetchImpl, "application/octet-stream");
180
+ if (!tgzResponse.ok) {
181
+ throw new Error(`downloading ${DOCS_PACKAGE}@${version} failed: ${tgzResponse.status}`);
182
+ }
183
+ mkdirSync(cacheRoot, { recursive: true });
184
+ const tgzPath = path.join(cacheRoot, `.${version}.tgz`);
185
+ writeFileSync(tgzPath, Buffer.from(await tgzResponse.arrayBuffer()));
186
+ const staging = path.join(cacheRoot, `.staging-${version}`);
187
+ rmSync(staging, { recursive: true, force: true });
188
+ mkdirSync(staging, { recursive: true });
189
+ try {
190
+ execFileSync("tar", ["-xzf", tgzPath, "-C", staging, "--strip-components", "1"], {
191
+ stdio: ["pipe", "pipe", "pipe"]
192
+ });
193
+ } finally {
194
+ rmSync(tgzPath, { force: true });
195
+ }
196
+ if (!existsSync(path.join(staging, "dist", "index.html"))) {
197
+ rmSync(staging, { recursive: true, force: true });
198
+ throw new Error(`${DOCS_PACKAGE}@${version} unpacked without a dist/index.html \u2014 the artifact is malformed`);
199
+ }
200
+ rmSync(targetDir, { recursive: true, force: true });
201
+ renameSync(staging, targetDir);
202
+ return targetDir;
203
+ }
204
+
205
+ // packages/mesh-cli/src/docs/start.ts
206
+ var DOCS_TMUX_SESSION = "mesh-docs";
207
+ function registryAuthOrThrow() {
208
+ const auth = readDocsRegistryAuth();
209
+ if (!auth) {
210
+ throw new Error(
211
+ "no CodeArtifact token in ~/.npmrc \u2014 run `mesh registry login` first (the docs artifact is role-gated the same way the packages are)."
212
+ );
213
+ }
214
+ return auth;
215
+ }
216
+ async function runDocsList() {
217
+ const auth = registryAuthOrThrow();
218
+ const { versions, latest } = await listDocsVersions(auth);
219
+ if (versions.length === 0) {
220
+ logInfo(`No ${DOCS_PACKAGE} versions published yet.`);
221
+ return;
222
+ }
223
+ logInfo(`Published docs versions (docs version == @mesh-tech/* baseline):`);
224
+ for (const version of [...versions].reverse()) {
225
+ const marker = version === latest ? " \u2190 latest" : "";
226
+ process.stdout.write(` ${version}${marker}
227
+ `);
228
+ }
229
+ }
230
+ function tmuxInstallHint(platform = process.platform) {
231
+ if (platform === "darwin") return "brew install tmux";
232
+ if (platform === "linux") return "sudo apt-get install tmux # or your distro's package manager";
233
+ return "install tmux via your package manager";
234
+ }
235
+ function tmuxAvailable() {
236
+ try {
237
+ execFileSync2("tmux", ["-V"], { stdio: ["pipe", "pipe", "pipe"] });
238
+ return true;
239
+ } catch {
240
+ return false;
241
+ }
242
+ }
243
+ function shouldDetach(args) {
244
+ return !args.foreground && !args.dev && args.isTTY;
245
+ }
246
+ function docsSessionExists() {
247
+ try {
248
+ execFileSync2("tmux", ["has-session", "-t", DOCS_TMUX_SESSION], { stdio: ["pipe", "pipe", "pipe"] });
249
+ return true;
250
+ } catch {
251
+ return false;
252
+ }
253
+ }
254
+ function tmuxServeArgs(args) {
255
+ const serveArgs = ["docs", "serve-static", "--root", args.serveRoot, "--port", String(args.port)];
256
+ if (args.mode === "dist") {
257
+ return { command: ["mesh", ...serveArgs], cwd: args.repoRoot };
258
+ }
259
+ return { command: ["pnpm", "exec", "mesh", ...serveArgs], cwd: args.repoRoot };
260
+ }
261
+ async function startDetached(args) {
262
+ if (!tmuxAvailable()) {
263
+ throw new Error(
264
+ `tmux is not installed \u2014 the detached docs server runs in a tmux session named "${DOCS_TMUX_SESSION}".
265
+ Install it with: ${tmuxInstallHint()}
266
+ Or run in the foreground instead: mesh docs start --foreground`
267
+ );
268
+ }
269
+ if (docsSessionExists()) {
270
+ logInfo(`Replacing the docs server already running in tmux session "${DOCS_TMUX_SESSION}".`);
271
+ try {
272
+ execFileSync2("tmux", ["kill-session", "-t", DOCS_TMUX_SESSION], { stdio: ["pipe", "pipe", "pipe"] });
273
+ } catch {
274
+ }
275
+ }
276
+ const { command, cwd } = tmuxServeArgs(args);
277
+ execFileSync2(
278
+ "tmux",
279
+ ["new-session", "-d", "-s", DOCS_TMUX_SESSION, "-c", cwd, "--", ...command],
280
+ { stdio: ["pipe", "pipe", "pipe"] }
281
+ );
282
+ const deadline = Date.now() + 6e4;
283
+ const url = `http://127.0.0.1:${args.port}`;
284
+ let lastError = "";
285
+ while (Date.now() < deadline) {
286
+ try {
287
+ const response = await fetch(`${url}/healthz`);
288
+ if (response.ok) {
289
+ printReady(url, args.label);
290
+ return;
291
+ }
292
+ lastError = `HTTP ${response.status}`;
293
+ } catch (error) {
294
+ lastError = error instanceof Error ? error.message : String(error);
295
+ }
296
+ await new Promise((resolve) => setTimeout(resolve, 500));
297
+ }
298
+ throw new Error(
299
+ `the docs server did not answer at ${url} within 60s (${lastError || "no response"}).
300
+ Read its log with: tmux attach -t ${DOCS_TMUX_SESSION} (detach: Ctrl-B then D)`
301
+ );
302
+ }
303
+ function printReady(url, label) {
304
+ logSuccess(`Mesh docs (${label}) are live:`);
305
+ process.stdout.write(`
306
+ ${url}
307
+
308
+ `);
309
+ logInfo(`Running detached in the tmux session "${DOCS_TMUX_SESSION}".`);
310
+ logInfo(` attach: tmux attach -t ${DOCS_TMUX_SESSION}`);
311
+ logInfo(` stop: mesh docs stop`);
312
+ }
313
+ function runDocsStop() {
314
+ try {
315
+ execFileSync2("tmux", ["kill-session", "-t", DOCS_TMUX_SESSION], { stdio: ["pipe", "pipe", "pipe"] });
316
+ logSuccess(`Stopped the docs server (tmux session "${DOCS_TMUX_SESSION}").`);
317
+ } catch {
318
+ logInfo(`No docs server is running (no tmux session named "${DOCS_TMUX_SESSION}").`);
319
+ }
320
+ }
321
+ async function runDocsServeStatic(args) {
322
+ const requestedPort = Number.parseInt(args.port, 10);
323
+ if (!Number.isInteger(requestedPort) || requestedPort < 0 || requestedPort > 65535) {
324
+ throw new Error(`Invalid --port: ${args.port}`);
325
+ }
326
+ if (!args.root || !existsSync2(path2.join(args.root, "index.html"))) {
327
+ throw new Error(
328
+ `--root ${args.root || "(empty)"} does not hold a built site (no index.html). This command exists so the detached tmux session can re-enter; you probably want \`mesh docs start\`.`
329
+ );
330
+ }
331
+ const server = await serveDocsSite({ root: args.root, port: requestedPort });
332
+ logSuccess(`Mesh docs serving at ${server.url} (from ${args.root})`);
333
+ await new Promise((resolve) => {
334
+ const stop = () => void server.close().finally(() => resolve());
335
+ process.once("SIGINT", stop);
336
+ process.once("SIGTERM", stop);
337
+ });
338
+ }
339
+ async function runDocsStart(args) {
340
+ const requestedPort = Number.parseInt(args.port, 10);
341
+ if (!Number.isInteger(requestedPort) || requestedPort < 0 || requestedPort > 65535) {
342
+ throw new Error(`Invalid --port: ${args.port}`);
343
+ }
344
+ const detached = shouldDetach({
345
+ foreground: args.foreground,
346
+ dev: args.dev,
347
+ isTTY: process.stdout.isTTY === true
348
+ });
349
+ if (detached && requestedPort === 0) {
350
+ throw new Error(
351
+ "--port 0 (pick a free port) needs a foreground server, because the detached session cannot report the port it chose back to this process. Use `mesh docs start --foreground --port 0`, or pass an explicit port to run detached."
352
+ );
353
+ }
354
+ const localRoots = discoverDocRoots(args.repoRoot);
355
+ const repoHasDocs = localRoots.roots.length > 0;
356
+ const registryMode = args.version !== void 0 || !repoHasDocs;
357
+ let serveRoot;
358
+ let label;
359
+ if (registryMode) {
360
+ const auth = registryAuthOrThrow();
361
+ const version = args.version === void 0 || args.version === "latest" ? (await listDocsVersions(auth)).latest : args.version;
362
+ if (!version) {
363
+ throw new Error(`the registry has no ${DOCS_PACKAGE} versions tagged latest`);
364
+ }
365
+ logInfo(`Fetching ${DOCS_PACKAGE}@${version} from the registry\u2026`);
366
+ const artifactDir = await fetchDocsArtifact(auth, version);
367
+ serveRoot = path2.join(artifactDir, "dist");
368
+ label = `@mesh-tech/* ${version} (published artifact)`;
369
+ } else {
370
+ if (localRoots.errors.length > 0) {
371
+ for (const error of localRoots.errors) logError(error);
372
+ throw new Error(`docs discovery failed with ${localRoots.errors.length} problem(s)`);
373
+ }
374
+ const appDir = path2.join(args.repoRoot, DOCS_APP_DIR);
375
+ if (args.dev) {
376
+ const result2 = runAssemble({
377
+ repoRoot: args.repoRoot,
378
+ outDir: path2.join(appDir, "content"),
379
+ configOut: path2.join(appDir, "zudoku.config.ts")
380
+ });
381
+ reportAssembly(result2);
382
+ const { spawn: spawn2 } = await import("node:child_process");
383
+ const child = spawn2("pnpm", ["exec", "zudoku", "dev", "--port", String(requestedPort)], {
384
+ cwd: appDir,
385
+ stdio: "inherit",
386
+ env: process.env
387
+ });
388
+ await new Promise((resolve) => {
389
+ child.on("close", () => resolve());
390
+ process.once("SIGINT", () => child.kill("SIGINT"));
391
+ process.once("SIGTERM", () => child.kill("SIGTERM"));
392
+ });
393
+ return;
394
+ }
395
+ const buildLog = path2.join(args.repoRoot, DOCS_APP_DIR, "build.log");
396
+ logInfo(`Preparing the docs from this checkout (assemble + build \u2014 log: ${path2.relative(args.repoRoot, buildLog)})\u2026`);
397
+ const result = runAssemble({
398
+ repoRoot: args.repoRoot,
399
+ outDir: path2.join(appDir, "content"),
400
+ configOut: path2.join(appDir, "zudoku.config.ts")
401
+ });
402
+ reportAssembly(result);
403
+ const { spawn } = await import("node:child_process");
404
+ writeFileSync2(buildLog, "");
405
+ const code = await new Promise((resolve) => {
406
+ const child = spawn("pnpm", ["exec", "zudoku", "build"], {
407
+ cwd: appDir,
408
+ stdio: ["ignore", "pipe", "pipe"],
409
+ env: process.env
410
+ });
411
+ child.stdout?.on("data", (chunk) => appendFileSync(buildLog, chunk));
412
+ child.stderr?.on("data", (chunk) => appendFileSync(buildLog, chunk));
413
+ child.on("error", () => resolve(1));
414
+ child.on("close", (exitCode) => resolve(exitCode ?? 1));
415
+ });
416
+ if (code !== 0) throw new Error(`zudoku build exited with code ${code} \u2014 see ${buildLog}`);
417
+ serveRoot = path2.join(appDir, "dist");
418
+ label = "this checkout";
419
+ }
420
+ if (detached) {
421
+ const runtime = resolveCliRuntime({ vcs: false });
422
+ await startDetached({
423
+ mode: runtime.mode,
424
+ repoRoot: args.repoRoot,
425
+ serveRoot,
426
+ port: requestedPort,
427
+ label
428
+ });
429
+ return;
430
+ }
431
+ const server = await serveDocsSite({ root: serveRoot, port: requestedPort });
432
+ logSuccess(`Mesh docs (${label}) serving at ${server.url}`);
433
+ logInfo("Press Ctrl-C to stop");
434
+ await new Promise((resolve) => {
435
+ const stop = () => {
436
+ void server.close().finally(() => resolve());
437
+ };
438
+ process.once("SIGINT", stop);
439
+ process.once("SIGTERM", stop);
440
+ });
441
+ }
442
+ export {
443
+ DOCS_TMUX_SESSION,
444
+ docsSessionExists,
445
+ runDocsList,
446
+ runDocsServeStatic,
447
+ runDocsStart,
448
+ runDocsStop,
449
+ shouldDetach,
450
+ startDetached,
451
+ tmuxAvailable,
452
+ tmuxInstallHint,
453
+ tmuxServeArgs
454
+ };