@sibyllinesoft/smith-installer 0.1.11 → 0.1.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/agents.md +68 -9
- package/dist/cli.js +170 -30
- package/dist/cli.js.map +1 -1
- package/package.json +1 -1
- package/skills/detect-system/SKILL.md +6 -5
- package/skills/preflight/SKILL.md +21 -4
- package/skills/start-chat-bridge/SKILL.md +6 -6
- package/skills/verify/SKILL.md +9 -10
package/agents.md
CHANGED
|
@@ -15,8 +15,8 @@ You are the Smith Core installer and configuration agent. Your job is to bootstr
|
|
|
15
15
|
|
|
16
16
|
Run these phases in order unless the user asks for a specific step:
|
|
17
17
|
|
|
18
|
-
1. `infra` — start Docker infrastructure.
|
|
19
|
-
2. `build` —
|
|
18
|
+
1. `infra` — start Docker infrastructure (pulls pre-built images from ghcr.io; falls back to local build if pull fails).
|
|
19
|
+
2. `build` — install pre-built smith-services and agentd binaries via npm.
|
|
20
20
|
3. `npm` — install Node workspace dependencies.
|
|
21
21
|
4. `verify` — run lightweight build checks and tunnel e2e checks when configured.
|
|
22
22
|
5. `configure-agentd` — ensure `.env` defaults are present and, on macOS, enable Gondolin VM pool settings.
|
|
@@ -49,22 +49,23 @@ if [ "$(uname -s)" = "Darwin" ]; then
|
|
|
49
49
|
# SMITH_EXECUTOR_GONDOLIN_ARGS=exec,--
|
|
50
50
|
fi
|
|
51
51
|
|
|
52
|
-
# infra
|
|
52
|
+
# infra (pulls pre-built images from ghcr.io; falls back to local build)
|
|
53
53
|
bash infra/envoy/certs/generate-certs.sh
|
|
54
|
-
docker compose up -d
|
|
54
|
+
docker compose up -d || \
|
|
55
|
+
docker compose -f docker-compose.yaml -f docker-compose.build.yml up -d --build
|
|
55
56
|
docker compose ps
|
|
56
57
|
|
|
57
|
-
# build
|
|
58
|
-
|
|
58
|
+
# build (install pre-built binaries)
|
|
59
|
+
npm install -g @sibyllinesoft/smith-services
|
|
60
|
+
npm install -g @sibyllinesoft/agentd
|
|
59
61
|
|
|
60
62
|
# npm
|
|
61
63
|
npm install
|
|
62
|
-
npm install -g @sibyllinesoft/agentd
|
|
63
64
|
|
|
64
65
|
# verify
|
|
65
|
-
cargo check --workspace
|
|
66
66
|
npm run build --workspaces --if-present
|
|
67
|
-
|
|
67
|
+
smith-chat-daemon --help || echo "smith-services not installed (non-fatal)"
|
|
68
|
+
agentd --version || echo "agentd not installed (non-fatal)"
|
|
68
69
|
|
|
69
70
|
# optional tunnel e2e checks when configured in .env
|
|
70
71
|
bash scripts/tunnel-e2e.sh cloudflare
|
|
@@ -107,3 +108,61 @@ When a step fails:
|
|
|
107
108
|
3. Apply the smallest viable fix.
|
|
108
109
|
4. Re-run only the failed command.
|
|
109
110
|
5. Summarize the root cause and the fix applied.
|
|
111
|
+
|
|
112
|
+
### Port Conflicts
|
|
113
|
+
|
|
114
|
+
If Docker Compose fails with "port is already allocated" or "address already in use":
|
|
115
|
+
|
|
116
|
+
```bash
|
|
117
|
+
# Linux — identify what is using a port
|
|
118
|
+
ss -tlnp 'sport = :5432'
|
|
119
|
+
|
|
120
|
+
# macOS — identify what is using a port
|
|
121
|
+
lsof -iTCP:5432 -sTCP:LISTEN
|
|
122
|
+
|
|
123
|
+
# If a previous smith-core stack is running
|
|
124
|
+
docker compose down
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
Key ports: 4222 (NATS), 5432 (PostgreSQL), 3000 (Grafana), 9200 (MCP Index), 6173 (Envoy), 9901 (Envoy Admin).
|
|
128
|
+
|
|
129
|
+
### Node.js Version Management
|
|
130
|
+
|
|
131
|
+
The repository includes a `.nvmrc` file specifying Node 22. When nvm or fnm is available, `nvm use` or `fnm use` in the repo root will automatically select the correct version.
|
|
132
|
+
|
|
133
|
+
If `node_22_ok` is `no` in preflight, check `node_version_manager`:
|
|
134
|
+
|
|
135
|
+
- **`fnm` detected**: Run `fnm install 22 && fnm use 22`, then verify with `node -v`. Suggest `fnm default 22` to make it persistent.
|
|
136
|
+
- **`nvm` detected**: Run `. "$NVM_DIR/nvm.sh" && nvm install 22 && nvm use 22`, then verify with `node -v`. Suggest `nvm alias default 22` to make it persistent.
|
|
137
|
+
- **`none` detected**: Ask the user which version manager they'd like to install:
|
|
138
|
+
- **fnm** (recommended — single binary, fast):
|
|
139
|
+
```bash
|
|
140
|
+
curl -fsSL https://fnm.vercel.app/install | bash
|
|
141
|
+
```
|
|
142
|
+
- **nvm** (widely used):
|
|
143
|
+
```bash
|
|
144
|
+
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
|
|
145
|
+
```
|
|
146
|
+
After installation, source the shell profile and install Node 22.
|
|
147
|
+
Remind the user they may need to restart their shell for PATH changes to take effect.
|
|
148
|
+
|
|
149
|
+
### npm Auth Warnings
|
|
150
|
+
|
|
151
|
+
`npm notice Access token expired or revoked` during `npm install -g` is harmless — smith packages are public. This warning appears when npm finds a stale token in `~/.npmrc`. The install will succeed regardless.
|
|
152
|
+
|
|
153
|
+
### Network Configuration
|
|
154
|
+
|
|
155
|
+
When no private network indicator is detected, recommend one of:
|
|
156
|
+
|
|
157
|
+
```bash
|
|
158
|
+
# Cloudflare Tunnel
|
|
159
|
+
cloudflared tunnel login
|
|
160
|
+
# Then set CLOUDFLARE_TUNNEL_TOKEN in .env
|
|
161
|
+
|
|
162
|
+
# Tailscale
|
|
163
|
+
tailscale up
|
|
164
|
+
# Then set TAILSCALE_AUTHKEY in .env
|
|
165
|
+
|
|
166
|
+
# SSH tunneling (simplest)
|
|
167
|
+
ssh -L 6173:localhost:6173 user@host
|
|
168
|
+
```
|
package/dist/cli.js
CHANGED
|
@@ -6,6 +6,7 @@ import { pipeline } from "stream/promises";
|
|
|
6
6
|
import { randomBytes } from "crypto";
|
|
7
7
|
import { tmpdir, homedir } from "os";
|
|
8
8
|
import { createInterface } from "readline/promises";
|
|
9
|
+
import { createServer } from "net";
|
|
9
10
|
import { createInstallerSession } from "./agents.js";
|
|
10
11
|
import { parseArgs, findSmithRoot, evaluateInstallerSecurity, readSmithConfig, writeSmithConfig } from "./lib.js";
|
|
11
12
|
const DEFAULT_REPO = "sibyllinesoft/smith-core";
|
|
@@ -185,7 +186,40 @@ function isCommandAvailable(cmd) {
|
|
|
185
186
|
return false;
|
|
186
187
|
}
|
|
187
188
|
}
|
|
188
|
-
function
|
|
189
|
+
function detectNodeVersionManager() {
|
|
190
|
+
// fnm is a standalone binary
|
|
191
|
+
try {
|
|
192
|
+
execFileSync("fnm", ["--version"], { stdio: "ignore" });
|
|
193
|
+
return { name: "fnm", dir: "" };
|
|
194
|
+
}
|
|
195
|
+
catch { }
|
|
196
|
+
// nvm is a shell function sourced from NVM_DIR/nvm.sh
|
|
197
|
+
const nvmDir = process.env.NVM_DIR || join(homedir(), ".nvm");
|
|
198
|
+
if (existsSync(join(nvmDir, "nvm.sh"))) {
|
|
199
|
+
return { name: "nvm", dir: nvmDir };
|
|
200
|
+
}
|
|
201
|
+
return null;
|
|
202
|
+
}
|
|
203
|
+
const REQUIRED_PORTS = [
|
|
204
|
+
[4222, "NATS"],
|
|
205
|
+
[5432, "PostgreSQL"],
|
|
206
|
+
[3000, "Grafana"],
|
|
207
|
+
[9200, "MCP Index"],
|
|
208
|
+
[6173, "Envoy mTLS Gateway"],
|
|
209
|
+
[9901, "Envoy Admin"],
|
|
210
|
+
];
|
|
211
|
+
function checkPortAvailable(port, host = "127.0.0.1") {
|
|
212
|
+
return new Promise((resolve) => {
|
|
213
|
+
const server = createServer();
|
|
214
|
+
server.once("error", () => resolve(false));
|
|
215
|
+
server.once("listening", () => {
|
|
216
|
+
server.close();
|
|
217
|
+
resolve(true);
|
|
218
|
+
});
|
|
219
|
+
server.listen(port, host);
|
|
220
|
+
});
|
|
221
|
+
}
|
|
222
|
+
async function runPreflightChecks() {
|
|
189
223
|
const errors = [];
|
|
190
224
|
// Check Docker
|
|
191
225
|
if (!isCommandAvailable("docker")) {
|
|
@@ -210,7 +244,10 @@ function runPreflightChecks() {
|
|
|
210
244
|
const nodeVersion = process.versions.node;
|
|
211
245
|
const major = parseInt(nodeVersion.split(".")[0], 10);
|
|
212
246
|
if (major < 20) {
|
|
213
|
-
errors.push(`Node.js ${nodeVersion} detected but >=20 is required
|
|
247
|
+
errors.push(`Node.js v${nodeVersion} detected but >=20 is required (>=22 recommended).\n` +
|
|
248
|
+
` Install with nvm: nvm install 22 && nvm use 22\n` +
|
|
249
|
+
` Install with fnm: fnm install 22 && fnm use 22\n` +
|
|
250
|
+
` Or download from: https://nodejs.org/`);
|
|
214
251
|
}
|
|
215
252
|
if (errors.length > 0) {
|
|
216
253
|
console.error("\n[preflight] Missing prerequisites:\n");
|
|
@@ -222,10 +259,39 @@ function runPreflightChecks() {
|
|
|
222
259
|
}
|
|
223
260
|
console.log(`[preflight] Docker OK, Node.js ${nodeVersion} OK`);
|
|
224
261
|
if (major < 22) {
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
262
|
+
const versionManager = detectNodeVersionManager();
|
|
263
|
+
if (versionManager) {
|
|
264
|
+
const cmd = versionManager.name;
|
|
265
|
+
console.warn(`\n[preflight] Warning: Node.js v${nodeVersion} detected — runtime services require Node >= 22.\n` +
|
|
266
|
+
`[preflight] Affected: pi-bridge, smith-cron, session-recorder (local dev only;\n` +
|
|
267
|
+
`[preflight] Docker containers use Node 22 regardless).\n` +
|
|
268
|
+
`[preflight] Detected ${cmd}. Upgrade with: ${cmd} install 22 && ${cmd} use 22\n`);
|
|
269
|
+
}
|
|
270
|
+
else {
|
|
271
|
+
console.warn(`\n[preflight] Warning: Node.js v${nodeVersion} detected — runtime services require Node >= 22.\n` +
|
|
272
|
+
`[preflight] Affected: pi-bridge, smith-cron, session-recorder (local dev only;\n` +
|
|
273
|
+
`[preflight] Docker containers use Node 22 regardless).\n` +
|
|
274
|
+
`[preflight] No version manager (nvm/fnm) detected — the installer agent can help set one up.\n`);
|
|
275
|
+
}
|
|
276
|
+
}
|
|
277
|
+
// Check port availability for Docker services
|
|
278
|
+
const portConflicts = [];
|
|
279
|
+
for (const [port, service] of REQUIRED_PORTS) {
|
|
280
|
+
const available = await checkPortAvailable(port);
|
|
281
|
+
if (!available) {
|
|
282
|
+
portConflicts.push([port, service]);
|
|
283
|
+
}
|
|
284
|
+
}
|
|
285
|
+
if (portConflicts.length > 0) {
|
|
286
|
+
console.warn("\n[preflight] Port conflicts detected — these ports are already in use:");
|
|
287
|
+
for (const [port, service] of portConflicts) {
|
|
288
|
+
console.warn(`[preflight] :${port} (${service})`);
|
|
289
|
+
}
|
|
290
|
+
console.warn(`[preflight]\n` +
|
|
291
|
+
`[preflight] Docker Compose will fail if these ports are not freed.\n` +
|
|
292
|
+
`[preflight] To identify the process: ss -tlnp 'sport = :PORT' (Linux)\n` +
|
|
293
|
+
`[preflight] lsof -iTCP:PORT -sTCP:LISTEN (macOS)\n` +
|
|
294
|
+
`[preflight] If a previous smith-core stack is running: docker compose down\n`);
|
|
229
295
|
}
|
|
230
296
|
}
|
|
231
297
|
function ensureMacOsGondolinDefaults(smithRoot) {
|
|
@@ -319,6 +385,33 @@ function ensureSecurityDefaults(smithRoot) {
|
|
|
319
385
|
configured.push(key);
|
|
320
386
|
}
|
|
321
387
|
};
|
|
388
|
+
// Database / service password hardening — replace known weak defaults
|
|
389
|
+
const weakPasswords = [
|
|
390
|
+
["POSTGRES_PASSWORD", ["smith-dev", "postgres", "password", "changeme"]],
|
|
391
|
+
["CLICKHOUSE_PASSWORD", ["observability-dev", "clickhouse", "password", "changeme"]],
|
|
392
|
+
["GRAFANA_ADMIN_PASSWORD", ["admin", "grafana", "password", "changeme"]],
|
|
393
|
+
];
|
|
394
|
+
for (const [key, weakValues] of weakPasswords) {
|
|
395
|
+
const current = (vars[key] ?? "").trim();
|
|
396
|
+
if (current.length === 0 || weakValues.includes(current)) {
|
|
397
|
+
const newPassword = generateHexSecret(16); // 32-char hex
|
|
398
|
+
upsertEnvValue(envPath, key, newPassword);
|
|
399
|
+
// Update connection strings that embed the old password
|
|
400
|
+
if (key === "POSTGRES_PASSWORD" && current.length > 0) {
|
|
401
|
+
const connKeys = ["SMITH_DATABASE_URL", "PI_BRIDGE_PG"];
|
|
402
|
+
for (const connKey of connKeys) {
|
|
403
|
+
const connStr = (vars[connKey] ?? "").trim();
|
|
404
|
+
if (connStr && connStr.includes(`:${current}@`)) {
|
|
405
|
+
const updated = connStr.replace(`:${current}@`, `:${newPassword}@`);
|
|
406
|
+
upsertEnvValue(envPath, connKey, updated);
|
|
407
|
+
vars[connKey] = updated;
|
|
408
|
+
}
|
|
409
|
+
}
|
|
410
|
+
}
|
|
411
|
+
vars[key] = newPassword;
|
|
412
|
+
generated.push(key);
|
|
413
|
+
}
|
|
414
|
+
}
|
|
322
415
|
// MCP index / sidecar API hardening
|
|
323
416
|
ensureToken("MCP_INDEX_API_TOKEN", 24, 24);
|
|
324
417
|
ensureToken("MCP_SIDECAR_API_TOKEN", 24, 24);
|
|
@@ -346,6 +439,42 @@ function ensureSecurityDefaults(smithRoot) {
|
|
|
346
439
|
console.log(`[installer] Applied security defaults in .env (${details})`);
|
|
347
440
|
}
|
|
348
441
|
}
|
|
442
|
+
function tryInstallSmithServices(smithRoot) {
|
|
443
|
+
const platform = process.platform;
|
|
444
|
+
const arch = process.arch;
|
|
445
|
+
const platformTag = `${platform}-${arch}`;
|
|
446
|
+
const supported = {
|
|
447
|
+
"linux-x64": "@sibyllinesoft/smith-services-linux-x64",
|
|
448
|
+
"darwin-arm64": "@sibyllinesoft/smith-services-darwin-arm64",
|
|
449
|
+
};
|
|
450
|
+
if (!supported[platformTag]) {
|
|
451
|
+
console.warn(`[installer] smith-services: no pre-built binaries for ${platformTag}.\n` +
|
|
452
|
+
`[installer] Supported platforms: ${Object.keys(supported).join(", ")}.\n` +
|
|
453
|
+
`[installer] To build from source: cargo build --workspace\n` +
|
|
454
|
+
`[installer] Skipping smith-services install (non-fatal).`);
|
|
455
|
+
return;
|
|
456
|
+
}
|
|
457
|
+
try {
|
|
458
|
+
runCommand(smithRoot, { command: "npm", args: ["install", "-g", "@sibyllinesoft/smith-services"] });
|
|
459
|
+
}
|
|
460
|
+
catch {
|
|
461
|
+
console.warn(`\n[installer] smith-services installation failed.\n` +
|
|
462
|
+
`[installer] The platform package ${supported[platformTag]} may not be published yet.\n` +
|
|
463
|
+
`[installer] This is non-fatal — you can build from source: cargo build --workspace\n` +
|
|
464
|
+
`[installer] To retry later: npm install -g @sibyllinesoft/smith-services\n`);
|
|
465
|
+
return;
|
|
466
|
+
}
|
|
467
|
+
// Verify at least one binary works
|
|
468
|
+
try {
|
|
469
|
+
execFileSync("smith-chat-daemon", ["--help"], { stdio: "pipe", env: process.env });
|
|
470
|
+
console.log("[installer] smith-services installed and verified.");
|
|
471
|
+
}
|
|
472
|
+
catch {
|
|
473
|
+
console.warn(`\n[installer] smith-services package installed but binaries not functional on ${platformTag}.\n` +
|
|
474
|
+
`[installer] The platform package ${supported[platformTag]} may be missing from the registry.\n` +
|
|
475
|
+
`[installer] This is non-fatal — you can build from source: cargo build --workspace\n`);
|
|
476
|
+
}
|
|
477
|
+
}
|
|
349
478
|
function tryInstallAgentd(smithRoot) {
|
|
350
479
|
const platform = process.platform;
|
|
351
480
|
const arch = process.arch;
|
|
@@ -385,6 +514,19 @@ function tryInstallAgentd(smithRoot) {
|
|
|
385
514
|
`[installer] To resolve: build agentd from source (see the agentd repo).\n`);
|
|
386
515
|
}
|
|
387
516
|
}
|
|
517
|
+
function runDockerComposeUp(smithRoot) {
|
|
518
|
+
try {
|
|
519
|
+
runCommand(smithRoot, { command: "docker", args: ["compose", "up", "-d"] });
|
|
520
|
+
}
|
|
521
|
+
catch {
|
|
522
|
+
console.warn("[installer] docker compose up failed (ghcr.io images may be private or unavailable).\n" +
|
|
523
|
+
"[installer] Falling back to local build via docker-compose.build.yml...");
|
|
524
|
+
runCommand(smithRoot, {
|
|
525
|
+
command: "docker",
|
|
526
|
+
args: ["compose", "-f", "docker-compose.yaml", "-f", "docker-compose.build.yml", "up", "-d", "--build"],
|
|
527
|
+
});
|
|
528
|
+
}
|
|
529
|
+
}
|
|
388
530
|
function waitForDockerHealth(smithRoot) {
|
|
389
531
|
console.log("[installer] Waiting for Docker services to become healthy...");
|
|
390
532
|
try {
|
|
@@ -441,38 +583,30 @@ function runNonInteractiveBootstrap(smithRoot, step, force) {
|
|
|
441
583
|
const plans = {
|
|
442
584
|
all: [
|
|
443
585
|
{ command: "bash", args: ["infra/envoy/certs/generate-certs.sh"] },
|
|
444
|
-
{
|
|
445
|
-
{ command: "
|
|
446
|
-
{ command: "npm", args: ["install"] },
|
|
447
|
-
{ command: "cargo", args: ["check", "--workspace"] },
|
|
586
|
+
{ custom: "docker-compose-up" },
|
|
587
|
+
{ command: "npm", args: ["install", "--no-audit"] },
|
|
448
588
|
{ command: "npm", args: ["run", "build", "--workspaces", "--if-present"] },
|
|
449
589
|
],
|
|
450
590
|
infra: [
|
|
451
591
|
{ command: "bash", args: ["infra/envoy/certs/generate-certs.sh"] },
|
|
452
|
-
{
|
|
453
|
-
],
|
|
454
|
-
build: [
|
|
455
|
-
{ command: "cargo", args: ["build", "--workspace"] },
|
|
592
|
+
{ custom: "docker-compose-up" },
|
|
456
593
|
],
|
|
594
|
+
build: [],
|
|
457
595
|
npm: [
|
|
458
|
-
{ command: "npm", args: ["install"] },
|
|
596
|
+
{ command: "npm", args: ["install", "--no-audit"] },
|
|
459
597
|
],
|
|
460
598
|
verify: [
|
|
461
|
-
{ command: "cargo", args: ["check", "--workspace"] },
|
|
462
599
|
{ command: "npm", args: ["run", "build", "--workspaces", "--if-present"] },
|
|
463
600
|
],
|
|
464
601
|
"25": [
|
|
465
|
-
{ command: "npm", args: ["install"] },
|
|
602
|
+
{ command: "npm", args: ["install", "--no-audit"] },
|
|
466
603
|
],
|
|
467
604
|
"30": [
|
|
468
605
|
{ command: "bash", args: ["infra/envoy/certs/generate-certs.sh"] },
|
|
469
|
-
{
|
|
470
|
-
],
|
|
471
|
-
"40": [
|
|
472
|
-
{ command: "cargo", args: ["build", "--workspace"] },
|
|
606
|
+
{ custom: "docker-compose-up" },
|
|
473
607
|
],
|
|
608
|
+
"40": [],
|
|
474
609
|
"90": [
|
|
475
|
-
{ command: "cargo", args: ["check", "--workspace"] },
|
|
476
610
|
{ command: "npm", args: ["run", "build", "--workspaces", "--if-present"] },
|
|
477
611
|
],
|
|
478
612
|
"configure-policy": [
|
|
@@ -493,16 +627,22 @@ function runNonInteractiveBootstrap(smithRoot, step, force) {
|
|
|
493
627
|
runCommand(smithRoot, { command: "docker", args: ["compose", "down"] });
|
|
494
628
|
}
|
|
495
629
|
for (const spec of plan) {
|
|
496
|
-
|
|
630
|
+
if ("custom" in spec) {
|
|
631
|
+
runDockerComposeUp(smithRoot);
|
|
632
|
+
}
|
|
633
|
+
else {
|
|
634
|
+
runCommand(smithRoot, spec);
|
|
635
|
+
}
|
|
497
636
|
}
|
|
498
637
|
// Wait for Docker services to become healthy after infra steps
|
|
499
638
|
const infraSteps = ["all", "infra", "30"];
|
|
500
639
|
if (infraSteps.includes(normalizedStep)) {
|
|
501
640
|
waitForDockerHealth(smithRoot);
|
|
502
641
|
}
|
|
503
|
-
// Install
|
|
504
|
-
const
|
|
505
|
-
if (
|
|
642
|
+
// Install pre-built binaries (non-fatal) after build/all steps
|
|
643
|
+
const binarySteps = ["all", "build", "40"];
|
|
644
|
+
if (binarySteps.includes(normalizedStep)) {
|
|
645
|
+
tryInstallSmithServices(smithRoot);
|
|
506
646
|
tryInstallAgentd(smithRoot);
|
|
507
647
|
}
|
|
508
648
|
if (normalizedStep === "all" || normalizedStep === "verify" || normalizedStep === "90") {
|
|
@@ -519,7 +659,7 @@ Options:
|
|
|
519
659
|
--provider <name> LLM provider (default: anthropic)
|
|
520
660
|
--model <id> Model ID (default: claude-sonnet-4-20250514)
|
|
521
661
|
--thinking <level> Thinking level: none, low, medium, high (default: medium)
|
|
522
|
-
--step <name> Run one step: all, infra, build, npm, verify, policy (also
|
|
662
|
+
--step <name> Run one step: all, infra, build, npm, verify, policy (also 25/30/40/90)
|
|
523
663
|
--force Recreate infrastructure before running infra/all
|
|
524
664
|
--repo <owner/repo> GitHub repository (default: sibyllinesoft/smith-core)
|
|
525
665
|
--ref <tag> Release tag to install (default: latest)
|
|
@@ -540,7 +680,7 @@ async function main() {
|
|
|
540
680
|
printHelp();
|
|
541
681
|
process.exit(0);
|
|
542
682
|
}
|
|
543
|
-
runPreflightChecks();
|
|
683
|
+
await runPreflightChecks();
|
|
544
684
|
// Resolve smith-core location
|
|
545
685
|
const existingConfig = readSmithConfig();
|
|
546
686
|
let smithRoot;
|
|
@@ -573,8 +713,7 @@ async function main() {
|
|
|
573
713
|
ensureSecurityDefaults(smithRoot);
|
|
574
714
|
ensureMacOsGondolinDefaults(smithRoot);
|
|
575
715
|
const securityReport = evaluateInstallerSecurity(smithRoot);
|
|
576
|
-
|
|
577
|
-
// Non-interactive mode: run bootstrap commands directly.
|
|
716
|
+
// Non-interactive mode: run bootstrap commands directly, show warnings after.
|
|
578
717
|
if (args.nonInteractive) {
|
|
579
718
|
try {
|
|
580
719
|
runNonInteractiveBootstrap(smithRoot, args.step, args.force);
|
|
@@ -586,6 +725,7 @@ async function main() {
|
|
|
586
725
|
}
|
|
587
726
|
process.exit(err.status ?? 1);
|
|
588
727
|
}
|
|
728
|
+
printSecurityWarnings(securityReport.sourceFile, securityReport.warnings);
|
|
589
729
|
return;
|
|
590
730
|
}
|
|
591
731
|
// Interactive mode: ensure API key is available, then create pi-agent session
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -10,7 +10,7 @@ uname -a
|
|
|
10
10
|
node -v
|
|
11
11
|
docker --version
|
|
12
12
|
docker compose version
|
|
13
|
-
cargo --version
|
|
13
|
+
cargo --version 2>/dev/null || echo "cargo not installed (optional — pre-built binaries available)"
|
|
14
14
|
|
|
15
15
|
if [ "$(uname -s)" = "Darwin" ]; then
|
|
16
16
|
command -v gondolin
|
|
@@ -25,7 +25,7 @@ This skill gathers the minimum environment facts needed before bootstrap.
|
|
|
25
25
|
1. Confirms host OS/kernel information.
|
|
26
26
|
2. Confirms Node.js runtime availability.
|
|
27
27
|
3. Confirms Docker engine and Compose plugin availability.
|
|
28
|
-
4.
|
|
28
|
+
4. Checks for Rust toolchain (optional — pre-built binaries are available via npm).
|
|
29
29
|
5. On macOS, confirms Gondolin is installed for persistent VM sandbox mode.
|
|
30
30
|
6. Establishes whether the machine can run the standard Smith Core flow.
|
|
31
31
|
|
|
@@ -51,17 +51,18 @@ cargo 1.xx.x ...
|
|
|
51
51
|
|
|
52
52
|
- Missing `node` means installer and Node workspaces cannot run.
|
|
53
53
|
- Missing `docker compose` means infrastructure cannot start.
|
|
54
|
-
- Missing `cargo`
|
|
54
|
+
- Missing `cargo` is non-blocking — pre-built binaries are installed via `npm install -g @sibyllinesoft/smith-services`. Cargo is only needed to build from source.
|
|
55
55
|
- On macOS, missing `gondolin` means persistent VM sandbox sessions cannot start.
|
|
56
56
|
|
|
57
57
|
## Common Failures
|
|
58
58
|
|
|
59
59
|
| Symptom | Cause | Fix |
|
|
60
60
|
|---------|-------|-----|
|
|
61
|
-
| `node: command not found` | Node.js missing | Install Node 22
|
|
61
|
+
| `node: command not found` | Node.js missing | Install Node 22+: `nvm install 22` or `fnm install 22` |
|
|
62
|
+
| Node < 22 detected | Older Node.js version | Upgrade: `nvm install 22 && nvm use 22` (or `fnm install 22 && fnm use 22`) |
|
|
62
63
|
| `docker: command not found` | Docker missing | Install Docker engine |
|
|
63
64
|
| `docker compose` unknown command | Compose plugin missing | Install Docker Compose plugin |
|
|
64
|
-
| `cargo: command not found` | Rust toolchain missing | Install Rust via rustup |
|
|
65
|
+
| `cargo: command not found` | Rust toolchain missing | Optional — pre-built binaries available via npm. Install Rust via rustup only if building from source |
|
|
65
66
|
| `gondolin: command not found` (macOS) | Gondolin missing | Install Gondolin and verify `gondolin help` works |
|
|
66
67
|
|
|
67
68
|
## Notes
|
|
@@ -30,15 +30,25 @@ NODE_VERSION="$(node -v 2>/dev/null || echo missing)"
|
|
|
30
30
|
NODE_MAJOR="${NODE_VERSION#v}"
|
|
31
31
|
NODE_MAJOR="${NODE_MAJOR%%.*}"
|
|
32
32
|
|
|
33
|
+
# Detect node version manager
|
|
34
|
+
if command -v fnm >/dev/null 2>&1; then
|
|
35
|
+
NODE_VM="fnm"
|
|
36
|
+
elif [ -f "${NVM_DIR:-$HOME/.nvm}/nvm.sh" ]; then
|
|
37
|
+
NODE_VM="nvm"
|
|
38
|
+
else
|
|
39
|
+
NODE_VM="none"
|
|
40
|
+
fi
|
|
41
|
+
|
|
33
42
|
cat > var/installer/preflight.json <<JSON
|
|
34
43
|
{
|
|
35
44
|
"env_source": "'${ENV_SOURCE}'",
|
|
36
45
|
"node": "'${NODE_VERSION}'",
|
|
37
46
|
"node_major": "'${NODE_MAJOR}'",
|
|
38
47
|
"node_22_ok": "'$( [ "${NODE_MAJOR}" -ge 22 ] 2>/dev/null && echo yes || echo no )'",
|
|
48
|
+
"node_version_manager": "'${NODE_VM}'",
|
|
39
49
|
"docker": "'$(docker --version 2>/dev/null || echo missing)'",
|
|
40
50
|
"compose": "'$(docker compose version 2>/dev/null || echo missing)'",
|
|
41
|
-
"cargo": "'$(cargo --version 2>/dev/null || echo
|
|
51
|
+
"cargo": "'$(cargo --version 2>/dev/null || echo optional)'",
|
|
42
52
|
"postgres_password_default": "'$( [ "${POSTGRES_PASSWORD}" = "smith-dev" ] && echo yes || echo no )'",
|
|
43
53
|
"mcp_index_token_set": "'$( [ -n "${MCP_INDEX_API_TOKEN}" ] && echo yes || echo no )'",
|
|
44
54
|
"cloudflare_tunnel_hint": "'$( [ -n "${CLOUDFLARE_TUNNEL_TOKEN}" ] && echo yes || echo no )'",
|
|
@@ -70,9 +80,10 @@ A JSON document exists at `var/installer/preflight.json` and includes:
|
|
|
70
80
|
- `node` — full version string
|
|
71
81
|
- `node_major` — major version number
|
|
72
82
|
- `node_22_ok` — `yes` if Node >= 22 (recommended for runtime services)
|
|
83
|
+
- `node_version_manager` — `fnm`, `nvm`, or `none`
|
|
73
84
|
- `docker`
|
|
74
85
|
- `compose`
|
|
75
|
-
- `cargo`
|
|
86
|
+
- `cargo` — `optional` if not installed (pre-built binaries available via npm)
|
|
76
87
|
- `postgres_password_default`
|
|
77
88
|
- `mcp_index_token_set`
|
|
78
89
|
- `cloudflare_tunnel_hint`
|
|
@@ -80,10 +91,13 @@ A JSON document exists at `var/installer/preflight.json` and includes:
|
|
|
80
91
|
|
|
81
92
|
## Reading Results
|
|
82
93
|
|
|
83
|
-
-
|
|
84
|
-
- If `node_22_ok` is `no`, warn that runtime services (pi-bridge, smith-cron, session-recorder) require Node >= 22 for local development. Docker containers use Node 22 regardless, so this only affects running services outside Docker.
|
|
94
|
+
- A `missing` value for `node`, `docker`, or `compose` is a hard blocker for full bootstrap. A `cargo` value of `optional` is non-blocking since pre-built binaries are available.
|
|
95
|
+
- If `node_22_ok` is `no`, warn that runtime services (pi-bridge, smith-cron, session-recorder) require Node >= 22 for local development. Docker containers use Node 22 regardless, so this only affects running services outside Docker. Provide upgrade instructions:
|
|
96
|
+
- nvm: `nvm install 22 && nvm use 22`
|
|
97
|
+
- fnm: `fnm install 22 && fnm use 22`
|
|
85
98
|
- If all values are present, continue with stack startup/build steps.
|
|
86
99
|
- If password defaults or missing private-network hints are detected, continue but emit loud warnings.
|
|
100
|
+
- Port conflicts are checked automatically by the CLI preflight. If reported, the user must free the ports before `docker compose up` will succeed.
|
|
87
101
|
|
|
88
102
|
## Common Failures
|
|
89
103
|
|
|
@@ -93,3 +107,6 @@ A JSON document exists at `var/installer/preflight.json` and includes:
|
|
|
93
107
|
| Empty JSON values | Command substitution failed | Re-run with full shell output |
|
|
94
108
|
| `cat: ... no such file` | Preflight command not run | Re-run preflight block |
|
|
95
109
|
| Missing tunnel hints | VPN/tunnel env not configured yet | Continue with warning and recommend Cloudflare Tunnel or Tailscale |
|
|
110
|
+
| Port conflict on :5432 | Another PostgreSQL instance | `ss -tlnp 'sport = :5432'` (Linux) or `lsof -iTCP:5432` (macOS) to identify; stop the conflicting service |
|
|
111
|
+
| Port conflict on :4222 | Another NATS instance | Stop the conflicting NATS or remap in compose |
|
|
112
|
+
| Port conflict on :3000 | Another service on Grafana port | Free port or remap Grafana in compose |
|
|
@@ -26,7 +26,7 @@ This skill starts the chat bridge daemon and the correct gateway binary for each
|
|
|
26
26
|
### 1. Start the daemon
|
|
27
27
|
|
|
28
28
|
```bash
|
|
29
|
-
|
|
29
|
+
smith-chat-daemon
|
|
30
30
|
```
|
|
31
31
|
|
|
32
32
|
The daemon reads `CHAT_BRIDGE_CONFIG` (defaults to `config/chat-bridge.toml`) and starts the webhook server on `CHAT_BRIDGE_WEBHOOK_PORT` (defaults to 8092).
|
|
@@ -34,7 +34,7 @@ The daemon reads `CHAT_BRIDGE_CONFIG` (defaults to `config/chat-bridge.toml`) an
|
|
|
34
34
|
Start this in a separate terminal or background it with log redirection:
|
|
35
35
|
|
|
36
36
|
```bash
|
|
37
|
-
|
|
37
|
+
smith-chat-daemon 2>&1 | tee logs/chat-daemon.log &
|
|
38
38
|
```
|
|
39
39
|
|
|
40
40
|
### 2. Start gateway(s) for each configured platform
|
|
@@ -54,16 +54,16 @@ Parse the `type = ` values from the config and start the matching gateway binary
|
|
|
54
54
|
| `google_chat` | `smith-google-chat-gateway` | `GOOGLE_CHAT_WEBHOOK_URL` |
|
|
55
55
|
| `imessage` | `smith-imessage-gateway` | (config-only) |
|
|
56
56
|
|
|
57
|
-
Start each gateway
|
|
57
|
+
Start each gateway directly:
|
|
58
58
|
|
|
59
59
|
```bash
|
|
60
|
-
|
|
60
|
+
<binary-name>
|
|
61
61
|
```
|
|
62
62
|
|
|
63
63
|
For example, for Discord:
|
|
64
64
|
|
|
65
65
|
```bash
|
|
66
|
-
|
|
66
|
+
smith-discord-gateway 2>&1 | tee logs/discord-gateway.log &
|
|
67
67
|
```
|
|
68
68
|
|
|
69
69
|
Each gateway should run in its own terminal or backgrounded process.
|
|
@@ -73,7 +73,7 @@ Each gateway should run in its own terminal or backgrounded process.
|
|
|
73
73
|
- `config/chat-bridge.toml` exists and has at least one `[[adapters]]` stanza (run `setup-chat-bridge` first).
|
|
74
74
|
- Platform credentials set in `.env` for each configured adapter.
|
|
75
75
|
- Docker stack running (NATS and Redis required by daemon).
|
|
76
|
-
-
|
|
76
|
+
- smith-services installed (`npm install -g @sibyllinesoft/smith-services`) or built from source (`cargo build -p smith-chat`).
|
|
77
77
|
|
|
78
78
|
## Expected Output
|
|
79
79
|
|
package/skills/verify/SKILL.md
CHANGED
|
@@ -6,24 +6,24 @@ description: Verify the full Smith Core bootstrap state after install steps
|
|
|
6
6
|
Run:
|
|
7
7
|
|
|
8
8
|
```bash
|
|
9
|
-
cargo check --workspace
|
|
10
9
|
npm run build --workspaces --if-present
|
|
11
10
|
docker compose ps
|
|
12
11
|
```
|
|
13
12
|
|
|
14
|
-
Then check
|
|
13
|
+
Then check pre-built binaries (optional, may not be installed):
|
|
15
14
|
|
|
16
15
|
```bash
|
|
16
|
+
smith-chat-daemon --help || echo "smith-services not installed (non-fatal)"
|
|
17
17
|
agentd --version || echo "agentd not installed (non-fatal)"
|
|
18
18
|
```
|
|
19
19
|
|
|
20
20
|
## What It Does
|
|
21
21
|
|
|
22
|
-
This skill validates that core components are
|
|
22
|
+
This skill validates that core components are installed and infrastructure is running.
|
|
23
23
|
|
|
24
|
-
1.
|
|
25
|
-
2.
|
|
26
|
-
3.
|
|
24
|
+
1. Builds Node workspaces.
|
|
25
|
+
2. Confirms Docker services are active and healthy.
|
|
26
|
+
3. Optionally verifies smith-services binaries are installed (non-fatal if missing).
|
|
27
27
|
4. Optionally verifies agentd is installed (non-fatal if missing).
|
|
28
28
|
|
|
29
29
|
## Prerequisites
|
|
@@ -33,27 +33,26 @@ This skill validates that core components are buildable and infrastructure is ru
|
|
|
33
33
|
|
|
34
34
|
## Expected Output
|
|
35
35
|
|
|
36
|
-
- All
|
|
36
|
+
- All build commands exit with status 0.
|
|
37
37
|
- `docker compose ps` shows core services as `running` or `healthy`.
|
|
38
38
|
|
|
39
39
|
## Reading Results
|
|
40
40
|
|
|
41
41
|
Installation is considered healthy when:
|
|
42
42
|
|
|
43
|
-
- Rust checks pass.
|
|
44
43
|
- Node workspace build passes.
|
|
45
44
|
- Core services (`nats`, `postgres`, `envoy`, `mcp-index`) are running.
|
|
46
45
|
|
|
47
|
-
agentd
|
|
46
|
+
smith-services and agentd are supplementary components — their absence does not block the core stack.
|
|
48
47
|
|
|
49
48
|
## Common Failures
|
|
50
49
|
|
|
51
50
|
| Symptom | Cause | Fix |
|
|
52
51
|
|---------|-------|-----|
|
|
53
|
-
| Rust check failures | Code/toolchain mismatch | Fix compile issues and rerun |
|
|
54
52
|
| npm build failures | TS/dependency issue | Resolve workspace build errors |
|
|
55
53
|
| Containers not running | Compose/startup failure | Inspect compose logs and restart |
|
|
56
54
|
| Intermittent health failures | Service startup race | Wait and re-run verification |
|
|
55
|
+
| smith-chat-daemon --help fails | Platform binary not available | Non-fatal; build from source with cargo if needed |
|
|
57
56
|
| agentd --version fails | Platform binary not available | Non-fatal; build from source if needed |
|
|
58
57
|
|
|
59
58
|
## Notes
|