@synap-core/cli 1.12.2 → 1.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +25 -8
- package/dist/build-info.json +2 -2
- package/dist/commands/agents.d.ts +0 -1
- package/dist/commands/agents.js +1 -1
- package/dist/commands/agents.js.map +1 -1
- package/dist/commands/app.js +2 -1
- package/dist/commands/app.js.map +1 -1
- package/dist/commands/automation.js +46 -41
- package/dist/commands/automation.js.map +1 -1
- package/dist/commands/box.d.ts +42 -0
- package/dist/commands/box.js +89 -0
- package/dist/commands/box.js.map +1 -0
- package/dist/commands/bridge-setup.js +3 -1
- package/dist/commands/bridge-setup.js.map +1 -1
- package/dist/commands/capability.d.ts +1 -1
- package/dist/commands/capability.js +57 -34
- package/dist/commands/capability.js.map +1 -1
- package/dist/commands/close-questions.d.ts +27 -0
- package/dist/commands/close-questions.js +49 -0
- package/dist/commands/close-questions.js.map +1 -0
- package/dist/commands/close-questions.test.d.ts +1 -0
- package/dist/commands/close-questions.test.js +52 -0
- package/dist/commands/close-questions.test.js.map +1 -0
- package/dist/commands/connect.d.ts +1 -3
- package/dist/commands/connect.js +2 -2
- package/dist/commands/connect.js.map +1 -1
- package/dist/commands/context.js +72 -43
- package/dist/commands/context.js.map +1 -1
- package/dist/commands/data-extra.js +12 -4
- package/dist/commands/data-extra.js.map +1 -1
- package/dist/commands/data.js +2 -1
- package/dist/commands/data.js.map +1 -1
- package/dist/commands/doctor.d.ts +21 -0
- package/dist/commands/doctor.js +108 -13
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/hooks.d.ts +19 -0
- package/dist/commands/hooks.js +70 -0
- package/dist/commands/hooks.js.map +1 -0
- package/dist/commands/import.d.ts +25 -0
- package/dist/commands/import.js +98 -12
- package/dist/commands/import.js.map +1 -1
- package/dist/commands/init.d.ts +14 -0
- package/dist/commands/init.js +59 -19
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/knowledge.js +4 -2
- package/dist/commands/knowledge.js.map +1 -1
- package/dist/commands/lens.js +2 -1
- package/dist/commands/lens.js.map +1 -1
- package/dist/commands/market-authoring.js +1 -1
- package/dist/commands/market-authoring.js.map +1 -1
- package/dist/commands/mcp.js +2 -2
- package/dist/commands/mcp.js.map +1 -1
- package/dist/commands/observe.category.test.d.ts +1 -0
- package/dist/commands/observe.category.test.js +59 -0
- package/dist/commands/observe.category.test.js.map +1 -0
- package/dist/commands/observe.d.ts +3 -0
- package/dist/commands/observe.js +7 -5
- package/dist/commands/observe.js.map +1 -1
- package/dist/commands/observe.title.test.d.ts +1 -0
- package/dist/commands/observe.title.test.js +37 -0
- package/dist/commands/observe.title.test.js.map +1 -0
- package/dist/commands/playbook.js +9 -0
- package/dist/commands/playbook.js.map +1 -1
- package/dist/commands/pods.d.ts +6 -1
- package/dist/commands/pods.js +32 -15
- package/dist/commands/pods.js.map +1 -1
- package/dist/commands/proton-setup.js +3 -1
- package/dist/commands/proton-setup.js.map +1 -1
- package/dist/commands/session-feed-wait.d.ts +48 -0
- package/dist/commands/session-feed-wait.js +261 -0
- package/dist/commands/session-feed-wait.js.map +1 -0
- package/dist/commands/session-post.d.ts +40 -0
- package/dist/commands/session-post.js +96 -0
- package/dist/commands/session-post.js.map +1 -0
- package/dist/commands/session-wait.d.ts +9 -4
- package/dist/commands/session-wait.js +20 -5
- package/dist/commands/session-wait.js.map +1 -1
- package/dist/commands/sessions.d.ts +2 -0
- package/dist/commands/sessions.js +23 -0
- package/dist/commands/sessions.js.map +1 -1
- package/dist/commands/skills-commands.d.ts +2 -0
- package/dist/commands/skills-commands.js +9 -1
- package/dist/commands/skills-commands.js.map +1 -1
- package/dist/commands/skills-commands.test.d.ts +1 -0
- package/dist/commands/skills-commands.test.js +57 -0
- package/dist/commands/skills-commands.test.js.map +1 -0
- package/dist/commands/status.js +1 -1
- package/dist/commands/status.js.map +1 -1
- package/dist/commands/template.d.ts +42 -0
- package/dist/commands/template.js +191 -0
- package/dist/commands/template.js.map +1 -0
- package/dist/commands/tracks.d.ts +67 -6
- package/dist/commands/tracks.js +268 -16
- package/dist/commands/tracks.js.map +1 -1
- package/dist/commands/whoami.d.ts +7 -0
- package/dist/commands/whoami.js +17 -0
- package/dist/commands/whoami.js.map +1 -1
- package/dist/commands/worker-accounts.d.ts +149 -0
- package/dist/commands/worker-accounts.js +339 -0
- package/dist/commands/worker-accounts.js.map +1 -0
- package/dist/commands/worker-accounts.test.d.ts +1 -0
- package/dist/commands/worker-accounts.test.js +224 -0
- package/dist/commands/worker-accounts.test.js.map +1 -0
- package/dist/commands/worker.d.ts +219 -10
- package/dist/commands/worker.js +749 -117
- package/dist/commands/worker.js.map +1 -1
- package/dist/commands/worker.test.js +321 -10
- package/dist/commands/worker.test.js.map +1 -1
- package/dist/index.js +164 -27
- package/dist/index.js.map +1 -1
- package/dist/lib/agent-door.d.ts +1 -3
- package/dist/lib/agent-door.js +10 -7
- package/dist/lib/agent-door.js.map +1 -1
- package/dist/lib/auth.d.ts +3 -2
- package/dist/lib/auth.js +3 -3
- package/dist/lib/auth.js.map +1 -1
- package/dist/lib/box/egress.d.ts +82 -0
- package/dist/lib/box/egress.js +264 -0
- package/dist/lib/box/egress.js.map +1 -0
- package/dist/lib/box/evidence.d.ts +86 -0
- package/dist/lib/box/evidence.js +121 -0
- package/dist/lib/box/evidence.js.map +1 -0
- package/dist/lib/box/job-server.d.ts +72 -0
- package/dist/lib/box/job-server.js +246 -0
- package/dist/lib/box/job-server.js.map +1 -0
- package/dist/lib/box/provisioner.d.ts +83 -0
- package/dist/lib/box/provisioner.js +312 -0
- package/dist/lib/box/provisioner.js.map +1 -0
- package/dist/lib/box/proxmox.d.ts +112 -0
- package/dist/lib/box/proxmox.js +211 -0
- package/dist/lib/box/proxmox.js.map +1 -0
- package/dist/lib/box/wire.d.ts +98 -0
- package/dist/lib/box/wire.js +70 -0
- package/dist/lib/box/wire.js.map +1 -0
- package/dist/lib/browser-auth.d.ts +35 -0
- package/dist/lib/browser-auth.js +170 -0
- package/dist/lib/browser-auth.js.map +1 -0
- package/dist/lib/client-header.test.d.ts +1 -0
- package/dist/lib/client-header.test.js +85 -0
- package/dist/lib/client-header.test.js.map +1 -0
- package/dist/lib/conversation-headers.d.ts +24 -9
- package/dist/lib/conversation-headers.js +40 -3
- package/dist/lib/conversation-headers.js.map +1 -1
- package/dist/lib/credential-class.d.ts +28 -1
- package/dist/lib/credential-class.js +28 -6
- package/dist/lib/credential-class.js.map +1 -1
- package/dist/lib/exporter-coverage.d.ts +1 -1
- package/dist/lib/exporter-coverage.js +1 -1
- package/dist/lib/goal-words.d.ts +38 -0
- package/dist/lib/goal-words.js +112 -0
- package/dist/lib/goal-words.js.map +1 -0
- package/dist/lib/hub-client.d.ts +28 -7
- package/dist/lib/hub-client.js +75 -34
- package/dist/lib/hub-client.js.map +1 -1
- package/dist/lib/init-handoff.d.ts +8 -0
- package/dist/lib/init-handoff.js +9 -2
- package/dist/lib/init-handoff.js.map +1 -1
- package/dist/lib/key-source.d.ts +3 -1
- package/dist/lib/key-source.js +7 -4
- package/dist/lib/key-source.js.map +1 -1
- package/dist/lib/knowledge-title.d.ts +3 -2
- package/dist/lib/knowledge-title.js +3 -2
- package/dist/lib/knowledge-title.js.map +1 -1
- package/dist/lib/mcp-bridge.d.ts +7 -0
- package/dist/lib/mcp-bridge.js +34 -1
- package/dist/lib/mcp-bridge.js.map +1 -1
- package/dist/lib/mcp-bridge.test.js +31 -3
- package/dist/lib/mcp-bridge.test.js.map +1 -1
- package/dist/lib/openclaw.d.ts +32 -0
- package/dist/lib/openclaw.js +165 -0
- package/dist/lib/openclaw.js.map +1 -0
- package/dist/lib/pod-moved.d.ts +70 -0
- package/dist/lib/pod-moved.js +146 -0
- package/dist/lib/pod-moved.js.map +1 -0
- package/dist/lib/pod-reach.d.ts +39 -0
- package/dist/lib/pod-reach.js +117 -0
- package/dist/lib/pod-reach.js.map +1 -0
- package/dist/lib/pod-reach.test.d.ts +1 -0
- package/dist/lib/pod-reach.test.js +67 -0
- package/dist/lib/pod-reach.test.js.map +1 -0
- package/dist/lib/pod.d.ts +8 -0
- package/dist/lib/pod.js +12 -3
- package/dist/lib/pod.js.map +1 -1
- package/dist/lib/register-claude-code-mcp.test.d.ts +1 -0
- package/dist/lib/register-claude-code-mcp.test.js +78 -0
- package/dist/lib/register-claude-code-mcp.test.js.map +1 -0
- package/dist/lib/review-credential.js +3 -1
- package/dist/lib/review-credential.js.map +1 -1
- package/dist/lib/seed.d.ts +13 -0
- package/dist/lib/seed.js +135 -0
- package/dist/lib/seed.js.map +1 -0
- package/dist/lib/session-feed.d.ts +185 -0
- package/dist/lib/session-feed.js +257 -0
- package/dist/lib/session-feed.js.map +1 -0
- package/dist/lib/targets.d.ts +21 -3
- package/dist/lib/targets.js +52 -107
- package/dist/lib/targets.js.map +1 -1
- package/dist/lib/wake-hook-settings.d.ts +57 -0
- package/dist/lib/wake-hook-settings.js +153 -0
- package/dist/lib/wake-hook-settings.js.map +1 -0
- package/dist/lib/wake-state.d.ts +65 -0
- package/dist/lib/wake-state.js +122 -0
- package/dist/lib/wake-state.js.map +1 -0
- package/package.json +5 -2
- package/skills/README.md +1 -1
- package/skills/agent-os/SKILL.md +8 -8
- package/skills/synap/SKILL.md +141 -84
- package/skills/synap/code-skills.md +70 -0
- package/skills/synap/concepts.md +28 -20
- package/skills/synap/creative-loop.md +1 -1
- package/skills/synap/document-embeds.md +3 -1
- package/skills/synap/focus-sessions.md +16 -7
- package/skills/synap/from-intent.md +32 -16
- package/skills/synap/governance-rules.md +1 -1
- package/skills/synap/lenses.md +4 -4
- package/skills/synap/linking.md +2 -2
- package/skills/synap/mental-model.md +1 -1
- package/skills/synap/operating-mode-rules.md +1 -1
- package/skills/synap/quick-reference.md +2 -1
- package/skills/synap/reflexes.md +6 -6
- package/skills/synap/viewframe-cells.md +1 -1
- package/skills/synap/work-model.md +24 -10
- package/skills/synap/workspace-design.md +5 -5
- package/skills/synap/writes.md +16 -9
- package/skills/synap-app/SKILL.md +148 -66
- package/skills/synap-app/creating-the-base-app.md +12 -7
- package/skills/synap-app/governance.md +27 -16
- package/skills/synap-app/install-commands.md +18 -9
- package/skills/synap-app/overview.md +16 -9
- package/skills/synap-app/using-the-sdk.md +75 -25
- package/skills/synap-schema/SKILL.md +21 -21
- package/skills/synap-schema/intent-vocabulary-ssot.md +21 -21
- package/templates/box/runner.py +206 -0
package/dist/commands/doctor.js
CHANGED
|
@@ -24,7 +24,8 @@
|
|
|
24
24
|
*/
|
|
25
25
|
import chalk from "chalk";
|
|
26
26
|
import { log } from "../utils/logger.js";
|
|
27
|
-
import {
|
|
27
|
+
import { reachChecklist } from "../lib/pod-reach.js";
|
|
28
|
+
import { getActivePodConfig, getActiveWorkspaceId, getActiveProjectId, listPodProfiles, checkPodHealth, findPodNameByUrl } from "../lib/pod.js";
|
|
28
29
|
import { resolveHubConfig, hubGet, HubError } from "../lib/hub-client.js";
|
|
29
30
|
import { formatKeySource, resolveKeySource } from "../lib/key-source.js";
|
|
30
31
|
import { resolveLensProvenance } from "../lib/describe-lens.js";
|
|
@@ -36,6 +37,8 @@ import { connectionLines } from "../lib/agent-connections.js";
|
|
|
36
37
|
import { thisComputerInstanceIds } from "../lib/machine-instance.js";
|
|
37
38
|
import { tildify } from "../lib/key-locations.js";
|
|
38
39
|
import { cliBuild, formatCliBuild } from "../lib/cli-build.js";
|
|
40
|
+
import { CP_URL, getStoredToken } from "../lib/auth.js";
|
|
41
|
+
import { askControlPlaneWherePodIs, POD_MOVED_HINT } from "../lib/pod-moved.js";
|
|
39
42
|
import os from "node:os";
|
|
40
43
|
import path from "node:path";
|
|
41
44
|
import { unwrapList } from "../lib/unwrapList.js";
|
|
@@ -81,6 +84,65 @@ async function printAgentConnections(cfg) {
|
|
|
81
84
|
if (olderPod)
|
|
82
85
|
console.log(chalk.dim(" (this pod predates per-computer connections — update it to see them)"));
|
|
83
86
|
}
|
|
87
|
+
/** Hosted pods (the only ones the Control Plane can move) live under synap.live. */
|
|
88
|
+
function isSynapHosted(podUrl) {
|
|
89
|
+
try {
|
|
90
|
+
const host = new URL(podUrl).hostname;
|
|
91
|
+
return host === "synap.live" || host.endsWith(".synap.live");
|
|
92
|
+
}
|
|
93
|
+
catch {
|
|
94
|
+
return false;
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Why a pod host did not answer, when the reason is a move. Null when it is not
|
|
99
|
+
* one (or nothing suggests it), so the caller keeps its generic message. Asks
|
|
100
|
+
* the Control Plane only on a signal: a redirect to another host, or a hosted
|
|
101
|
+
* address that stopped answering.
|
|
102
|
+
*/
|
|
103
|
+
export async function diagnosePodMove(podUrl, health, activeName) {
|
|
104
|
+
if (!health.moved && !isSynapHosted(podUrl))
|
|
105
|
+
return null;
|
|
106
|
+
const answer = await askControlPlaneWherePodIs({
|
|
107
|
+
podUrl,
|
|
108
|
+
cpUrl: CP_URL,
|
|
109
|
+
cpToken: getStoredToken()?.token,
|
|
110
|
+
});
|
|
111
|
+
const name = "Pod host resolves";
|
|
112
|
+
if (answer.kind === "moved") {
|
|
113
|
+
return {
|
|
114
|
+
check: {
|
|
115
|
+
name,
|
|
116
|
+
ok: false,
|
|
117
|
+
detail: `${podUrl} has a new address: ${answer.podUrl}`,
|
|
118
|
+
fix: POD_MOVED_HINT,
|
|
119
|
+
},
|
|
120
|
+
move: { from: podUrl, to: answer.podUrl, profileName: findPodNameByUrl(podUrl) },
|
|
121
|
+
};
|
|
122
|
+
}
|
|
123
|
+
if (!health.moved)
|
|
124
|
+
return null;
|
|
125
|
+
return {
|
|
126
|
+
check: {
|
|
127
|
+
name,
|
|
128
|
+
ok: false,
|
|
129
|
+
detail: `${podUrl} sends its requests to another address, and Synap does not follow it`,
|
|
130
|
+
fix: answer.kind === "signed-out"
|
|
131
|
+
? "Sign in so Synap can look up the new address: synap login — then run: synap doctor --fix"
|
|
132
|
+
: `Find the pod's address in your account, then run: synap pods update ${activeName} <new-url>`,
|
|
133
|
+
},
|
|
134
|
+
};
|
|
135
|
+
}
|
|
136
|
+
/** `doctor --fix` for a moved pod: the same door as `synap pods update`. */
|
|
137
|
+
async function fixPodMove(move) {
|
|
138
|
+
if (!move.profileName) {
|
|
139
|
+
console.log(` ${chalk.red("✗")} No saved pod uses ${move.from}, so there is nothing to update here.`);
|
|
140
|
+
console.log(chalk.dim(` → Set SYNAP_POD_URL to ${move.to}, or save it: synap pods add`));
|
|
141
|
+
return false;
|
|
142
|
+
}
|
|
143
|
+
const { podsUpdate } = await import("./pods.js");
|
|
144
|
+
return (await podsUpdate(move.profileName, move.to)) && findPodNameByUrl(move.to) === move.profileName;
|
|
145
|
+
}
|
|
84
146
|
/**
|
|
85
147
|
* Read the Intelligence-Service entry out of `GET /api/hub/health/dependencies`.
|
|
86
148
|
*
|
|
@@ -217,7 +279,7 @@ export async function doctor(opts = {}) {
|
|
|
217
279
|
}
|
|
218
280
|
// ── (a) Host resolves — the pod is actually served at this URL ───────────
|
|
219
281
|
const localConfig = getActivePodConfig();
|
|
220
|
-
const podUrl = cfgResolved?.podUrl ?? localConfig?.podUrl ?? process.env.SYNAP_POD_URL;
|
|
282
|
+
const podUrl = opts.podUrl ?? cfgResolved?.podUrl ?? localConfig?.podUrl ?? process.env.SYNAP_POD_URL;
|
|
221
283
|
if (!podUrl) {
|
|
222
284
|
checks.push({
|
|
223
285
|
name: "Pod URL configured",
|
|
@@ -228,6 +290,7 @@ export async function doctor(opts = {}) {
|
|
|
228
290
|
return finish(checks, opts, { podUrl: undefined, workspaceId: undefined, projectId: undefined });
|
|
229
291
|
}
|
|
230
292
|
let hostServed = false;
|
|
293
|
+
let podMove;
|
|
231
294
|
const names = {};
|
|
232
295
|
const health = await checkPodHealth(podUrl);
|
|
233
296
|
names.podVersion = health.version;
|
|
@@ -240,15 +303,35 @@ export async function doctor(opts = {}) {
|
|
|
240
303
|
});
|
|
241
304
|
}
|
|
242
305
|
else {
|
|
243
|
-
//
|
|
244
|
-
//
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
306
|
+
// A moved pod: the old name redirects elsewhere, or (after the redirect
|
|
307
|
+
// window) no longer answers. Only the Control Plane says where it went.
|
|
308
|
+
const diagnosis = await diagnosePodMove(podUrl, health, activeName);
|
|
309
|
+
if (diagnosis) {
|
|
310
|
+
checks.push(diagnosis.check);
|
|
311
|
+
podMove = diagnosis.move;
|
|
312
|
+
}
|
|
313
|
+
else {
|
|
314
|
+
// The classic failure this check exists for: a saved profile URL that no
|
|
315
|
+
// longer resolves to a live pod — most often a stale/migrated domain, not
|
|
316
|
+
// a transient network blip (checkPodHealth already retried the timeout).
|
|
317
|
+
const f = health.failure;
|
|
318
|
+
const networkSide = f?.kind === "proxy" || f?.kind === "network";
|
|
319
|
+
checks.push({
|
|
320
|
+
name: "Pod host resolves",
|
|
321
|
+
ok: false,
|
|
322
|
+
detail: f
|
|
323
|
+
? `${podUrl}: ${f.detail}${f.proxy ? ` — via ${f.proxy.env}=${f.proxy.url}` : ""}`
|
|
324
|
+
: `${podUrl} did not answer /health`,
|
|
325
|
+
fix: networkSide
|
|
326
|
+
? reachChecklist(f).join("\n")
|
|
327
|
+
: `Your profile URL may be stale. Run: synap pods list (see saved pods) — or: synap pods update ${activeName} <new-url>`,
|
|
328
|
+
});
|
|
329
|
+
}
|
|
330
|
+
}
|
|
331
|
+
// An explicit --pod-url is a reachability probe of THAT pod: the configured
|
|
332
|
+
// key and lens belong to another pod, so do not judge them against it.
|
|
333
|
+
if (opts.podUrl) {
|
|
334
|
+
return finish(checks, opts, { podUrl, workspaceId: undefined, projectId: undefined, podVersion: names.podVersion }, undefined, undefined, podMove);
|
|
252
335
|
}
|
|
253
336
|
// ── (b) Key authenticates against this pod ────────────────────────────────
|
|
254
337
|
let keyValid = false;
|
|
@@ -404,7 +487,7 @@ export async function doctor(opts = {}) {
|
|
|
404
487
|
workspaceId: cfgResolved?.workspaceId,
|
|
405
488
|
projectId: cfgResolved?.projectId,
|
|
406
489
|
...names,
|
|
407
|
-
}, keyHealth, cfgResolved);
|
|
490
|
+
}, keyHealth, cfgResolved, podMove);
|
|
408
491
|
}
|
|
409
492
|
/**
|
|
410
493
|
* Call the pod's dependency probe. Every failure mode that is not a positive
|
|
@@ -676,7 +759,7 @@ function lensOrigin(p) {
|
|
|
676
759
|
}
|
|
677
760
|
return p.source;
|
|
678
761
|
}
|
|
679
|
-
async function finish(checks, opts, lens, keyHealth, hubCfg) {
|
|
762
|
+
async function finish(checks, opts, lens, keyHealth, hubCfg, podMove) {
|
|
680
763
|
// Green requires every check to have VERIFIED something. An undetermined
|
|
681
764
|
// check suppresses green (it is not a pass) but does not fail the run — only
|
|
682
765
|
// a proven failure sets a non-zero exit code.
|
|
@@ -777,6 +860,18 @@ async function finish(checks, opts, lens, keyHealth, hubCfg) {
|
|
|
777
860
|
}
|
|
778
861
|
}
|
|
779
862
|
}
|
|
863
|
+
// ── A moved pod: rewrite the saved address through the one door ──────────
|
|
864
|
+
if (podMove && opts.fix) {
|
|
865
|
+
log.blank();
|
|
866
|
+
console.log(chalk.bold("Fixing"));
|
|
867
|
+
const hostRow = checks.find((c) => c.name === "Pod host resolves");
|
|
868
|
+
if (await fixPodMove(podMove)) {
|
|
869
|
+
if (hostRow) {
|
|
870
|
+
hostRow.ok = true;
|
|
871
|
+
hostRow.detail = `updated to ${podMove.to} — run synap doctor again to check the rest`;
|
|
872
|
+
}
|
|
873
|
+
}
|
|
874
|
+
}
|
|
780
875
|
// ── One agent, several computers ─────────────────────────────────────────
|
|
781
876
|
if (hubCfg) {
|
|
782
877
|
log.blank();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `synap hooks install-wake` — put the wake hook in a Claude Code settings
|
|
3
|
+
* file (or take it out with `--uninstall`). The merge and the contract live in
|
|
4
|
+
* `lib/wake-hook-settings.ts`; `synap init` calls {@link installWakeHookForProject}.
|
|
5
|
+
*/
|
|
6
|
+
export interface InstallWakeOpts {
|
|
7
|
+
uninstall?: boolean;
|
|
8
|
+
user?: boolean;
|
|
9
|
+
dir?: string;
|
|
10
|
+
json?: boolean;
|
|
11
|
+
}
|
|
12
|
+
export declare function installWakeCommand(opts: InstallWakeOpts): void;
|
|
13
|
+
/**
|
|
14
|
+
* `synap init`'s step: install into the project init runs in — only when that
|
|
15
|
+
* directory IS a project (it has `.git` or `.claude`), never into a stray
|
|
16
|
+
* directory, and never into the home directory (that file is the user's
|
|
17
|
+
* global settings: `--user` is a deliberate choice). Never fails init.
|
|
18
|
+
*/
|
|
19
|
+
export declare function installWakeHookForProject(dir?: string): void;
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `synap hooks install-wake` — put the wake hook in a Claude Code settings
|
|
3
|
+
* file (or take it out with `--uninstall`). The merge and the contract live in
|
|
4
|
+
* `lib/wake-hook-settings.ts`; `synap init` calls {@link installWakeHookForProject}.
|
|
5
|
+
*/
|
|
6
|
+
import fs from "node:fs";
|
|
7
|
+
import os from "node:os";
|
|
8
|
+
import path from "node:path";
|
|
9
|
+
import chalk from "chalk";
|
|
10
|
+
import { log } from "../utils/logger.js";
|
|
11
|
+
import { WAKE_HOOK_COMMAND, applyWakeHook, wakeHookSettingsPath, } from "../lib/wake-hook-settings.js";
|
|
12
|
+
const SAID = {
|
|
13
|
+
added: "Wake hook added",
|
|
14
|
+
updated: "Wake hook updated",
|
|
15
|
+
unchanged: "Wake hook already in place",
|
|
16
|
+
removed: "Wake hook removed",
|
|
17
|
+
absent: "No wake hook to remove",
|
|
18
|
+
};
|
|
19
|
+
export function installWakeCommand(opts) {
|
|
20
|
+
const file = wakeHookSettingsPath(opts);
|
|
21
|
+
let change;
|
|
22
|
+
try {
|
|
23
|
+
change = applyWakeHook(file, opts.uninstall === true);
|
|
24
|
+
}
|
|
25
|
+
catch (e) {
|
|
26
|
+
if (opts.json)
|
|
27
|
+
console.log(JSON.stringify({ file, error: e.message }));
|
|
28
|
+
else
|
|
29
|
+
log.error(e.message);
|
|
30
|
+
process.exit(1);
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
if (opts.json) {
|
|
34
|
+
console.log(JSON.stringify({ file, change, command: WAKE_HOOK_COMMAND }));
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
log.success(`${SAID[change]}: ${file}`);
|
|
38
|
+
if (!opts.uninstall) {
|
|
39
|
+
log.dim(`Stop → ${WAKE_HOOK_COMMAND} (asyncRewake)`);
|
|
40
|
+
log.dim("A Claude Code terminal attached to a session (synap session attach <id>) now wakes when another");
|
|
41
|
+
log.dim("session's agent hands it work or is blocked on it, or when you answer in the session's room.");
|
|
42
|
+
log.dim(`Undo: ${chalk.cyan("synap hooks install-wake --uninstall" + (opts.user ? " --user" : ""))}`);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* `synap init`'s step: install into the project init runs in — only when that
|
|
47
|
+
* directory IS a project (it has `.git` or `.claude`), never into a stray
|
|
48
|
+
* directory, and never into the home directory (that file is the user's
|
|
49
|
+
* global settings: `--user` is a deliberate choice). Never fails init.
|
|
50
|
+
*/
|
|
51
|
+
export function installWakeHookForProject(dir = process.cwd()) {
|
|
52
|
+
const here = path.resolve(dir);
|
|
53
|
+
const isProject = fs.existsSync(path.join(here, ".git")) || fs.existsSync(path.join(here, ".claude"));
|
|
54
|
+
if (here === path.resolve(os.homedir()) || !isProject) {
|
|
55
|
+
log.dim(`To let another session wake Claude Code here, run in your project: ${chalk.cyan("synap hooks install-wake")}`);
|
|
56
|
+
return;
|
|
57
|
+
}
|
|
58
|
+
try {
|
|
59
|
+
const file = wakeHookSettingsPath({ dir: here });
|
|
60
|
+
const change = applyWakeHook(file);
|
|
61
|
+
if (change === "added" || change === "updated") {
|
|
62
|
+
log.success(`Claude Code wake hook ${change}: ${file}`);
|
|
63
|
+
log.dim(`Undo: ${chalk.cyan("synap hooks install-wake --uninstall")}`);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
catch (e) {
|
|
67
|
+
log.warn(`Wake hook not installed: ${e.message}`);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=hooks.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../src/commands/hooks.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,8 @@
|
|
|
4
4
|
* Routing (INTAKE-CONSOLIDATION-PLAN Wave 1):
|
|
5
5
|
* - Superwhisper store-first → lib/superwhisper-import (unchanged)
|
|
6
6
|
* - Single file OR single URL → POST /capture/structure + /capture/execute
|
|
7
|
+
* - Any .csv (even ONE) → its own `source: csv` batch on the table
|
|
8
|
+
* door below (a CSV is a table, never prose)
|
|
7
9
|
* - 2 text-like files
|
|
8
10
|
* (md / markdown / txt / csv) → ONE batch via SYNCHRONOUS REST import:
|
|
9
11
|
* POST /import/analyze → human review (or --yes / --dry-run)
|
|
@@ -153,6 +155,23 @@ interface ImportApplyResult {
|
|
|
153
155
|
linked?: number;
|
|
154
156
|
[key: string]: unknown;
|
|
155
157
|
}
|
|
158
|
+
/**
|
|
159
|
+
* Which batch-eligible files go through the table/batch door, and in which
|
|
160
|
+
* batches:
|
|
161
|
+
* - every CSV, even a lone one, in ONE `source: csv` batch. A CSV is a TABLE:
|
|
162
|
+
* the batch door builds a column→kind plan for it, while the single-file
|
|
163
|
+
* capture door reads it as free text (a 1,500-row contacts export came back
|
|
164
|
+
* as one degraded note filed in the wrong space). Keeping CSVs apart also
|
|
165
|
+
* stops a mixed md + csv batch from parsing the markdown as CSV.
|
|
166
|
+
* - the other text files in ONE batch when there are ≥2; a lone one stays on
|
|
167
|
+
* the capture door (unchanged).
|
|
168
|
+
*/
|
|
169
|
+
export declare function groupBatchFiles<T extends {
|
|
170
|
+
path: string;
|
|
171
|
+
}>(files: T[]): {
|
|
172
|
+
batches: T[][];
|
|
173
|
+
single: T[];
|
|
174
|
+
};
|
|
156
175
|
type HomeMapPair = {
|
|
157
176
|
pathSubstring: string;
|
|
158
177
|
workspace: string;
|
|
@@ -206,6 +225,12 @@ export interface ItemOutcome {
|
|
|
206
225
|
* blob is still only a pending review.
|
|
207
226
|
*/
|
|
208
227
|
sourceFile?: "stored" | "proposed" | "denied" | "failed";
|
|
228
|
+
/**
|
|
229
|
+
* Where a person reviews a `proposed` import (the pod's /open/<id> page).
|
|
230
|
+
* Present when the import was filed and NOT applied — an agent credential
|
|
231
|
+
* cannot approve, so its import stops at the proposal.
|
|
232
|
+
*/
|
|
233
|
+
reviewUrl?: string;
|
|
209
234
|
/** Present for the multi-file /import/* batch path. */
|
|
210
235
|
batch?: {
|
|
211
236
|
source: ImportSource;
|
package/dist/commands/import.js
CHANGED
|
@@ -4,6 +4,8 @@
|
|
|
4
4
|
* Routing (INTAKE-CONSOLIDATION-PLAN Wave 1):
|
|
5
5
|
* - Superwhisper store-first → lib/superwhisper-import (unchanged)
|
|
6
6
|
* - Single file OR single URL → POST /capture/structure + /capture/execute
|
|
7
|
+
* - Any .csv (even ONE) → its own `source: csv` batch on the table
|
|
8
|
+
* door below (a CSV is a table, never prose)
|
|
7
9
|
* - 2 text-like files
|
|
8
10
|
* (md / markdown / txt / csv) → ONE batch via SYNCHRONOUS REST import:
|
|
9
11
|
* POST /import/analyze → human review (or --yes / --dry-run)
|
|
@@ -45,6 +47,7 @@ import { resolveHubConfig, resolveUserId, hubGet, hubPost, resolveActiveSessionI
|
|
|
45
47
|
import { unwrapList } from "../lib/unwrapList.js";
|
|
46
48
|
import { pollForApproval } from "../lib/approval-poll.js";
|
|
47
49
|
import { FLOW, renderNextSteps } from "../lib/next-steps.js";
|
|
50
|
+
import { fetchEffectiveIdentity, isAgentReviewRejection, proposalWebLink, } from "../lib/credential-class.js";
|
|
48
51
|
import { formatLaneLine, resolveWorkspaceName } from "../lib/capture-lane.js";
|
|
49
52
|
import { isDegraded, degradedMessage, readCaptureExecute, formatWorkspaceRouting, formatPendingWorkspaceSwitch, headlessPlacementFields, projectRoutingHints, workspaceRoutingHints, } from "../lib/capture-structure.js";
|
|
50
53
|
// ─── input classification ─────────────────────────────────────────────────────
|
|
@@ -249,6 +252,28 @@ function sourceForBatchItems(items) {
|
|
|
249
252
|
return "markdown";
|
|
250
253
|
return "markdown";
|
|
251
254
|
}
|
|
255
|
+
/**
|
|
256
|
+
* Which batch-eligible files go through the table/batch door, and in which
|
|
257
|
+
* batches:
|
|
258
|
+
* - every CSV, even a lone one, in ONE `source: csv` batch. A CSV is a TABLE:
|
|
259
|
+
* the batch door builds a column→kind plan for it, while the single-file
|
|
260
|
+
* capture door reads it as free text (a 1,500-row contacts export came back
|
|
261
|
+
* as one degraded note filed in the wrong space). Keeping CSVs apart also
|
|
262
|
+
* stops a mixed md + csv batch from parsing the markdown as CSV.
|
|
263
|
+
* - the other text files in ONE batch when there are ≥2; a lone one stays on
|
|
264
|
+
* the capture door (unchanged).
|
|
265
|
+
*/
|
|
266
|
+
export function groupBatchFiles(files) {
|
|
267
|
+
const isCsv = (f) => f.path.toLowerCase().endsWith(".csv");
|
|
268
|
+
const csv = files.filter(isCsv);
|
|
269
|
+
const text = files.filter((f) => !isCsv(f));
|
|
270
|
+
const batches = [];
|
|
271
|
+
if (csv.length > 0)
|
|
272
|
+
batches.push(csv);
|
|
273
|
+
if (text.length >= 2)
|
|
274
|
+
batches.push(text);
|
|
275
|
+
return { batches, single: text.length >= 2 ? [] : text };
|
|
276
|
+
}
|
|
252
277
|
function toBatchTextItem(item) {
|
|
253
278
|
return {
|
|
254
279
|
path: item.path,
|
|
@@ -1060,7 +1085,12 @@ async function processBatchImport(batchItems, opts, cfg, userId, wsOverride, pro
|
|
|
1060
1085
|
: 0;
|
|
1061
1086
|
const source = sourceForBatchItems(mappedItems);
|
|
1062
1087
|
const label = `batch:${source} (${mappedItems.length} files)`;
|
|
1063
|
-
|
|
1088
|
+
// Only an explicit --workspace pins an import. The saved default space is
|
|
1089
|
+
// not a choice the person made for THIS import: sent as a pin it filed a
|
|
1090
|
+
// 2,827-entity, all pod-wide contacts import under "Brand" (live 0728053b,
|
|
1091
|
+
// 2026-10-22). Without a pin the pod places the graph by its kinds and
|
|
1092
|
+
// roles (one space when they all point at it, else pod-wide).
|
|
1093
|
+
const workspaceId = wsOverride;
|
|
1064
1094
|
// Above CORPUS_THRESHOLD the synchronous door cannot finish inside the pod's
|
|
1065
1095
|
// request timeout — hand the SAME mapped items (home-map already applied, caps
|
|
1066
1096
|
// already enforced, source already resolved) to the background door instead.
|
|
@@ -1141,6 +1171,20 @@ async function processBatchImport(batchItems, opts, cfg, userId, wsOverride, pro
|
|
|
1141
1171
|
batch: batchMeta,
|
|
1142
1172
|
};
|
|
1143
1173
|
}
|
|
1174
|
+
// Applying a NAMED import proposal is approving it, and approval is the
|
|
1175
|
+
// human step: the pod refuses an agent credential (HTTP 403, correct
|
|
1176
|
+
// governance). So an agent's import ends at the proposal — reported as
|
|
1177
|
+
// `proposed` with the review link, never as `failed`. `/users/me` `isAgent`
|
|
1178
|
+
// is the pod's own answer; when it is unknown the apply runs and a 403
|
|
1179
|
+
// agent refusal is read the same way.
|
|
1180
|
+
const filedProposalId = analyzeRes.proposalId ?? null;
|
|
1181
|
+
if (filedProposalId && (await callerIsAgent(cfg))) {
|
|
1182
|
+
return proposedForReview(label, filedProposalId, cfg, opts, {
|
|
1183
|
+
workspaceId: analyzeRes.workspaceId ?? workspaceId ?? null,
|
|
1184
|
+
projectId: projOverride ?? null,
|
|
1185
|
+
batch: batchMeta,
|
|
1186
|
+
});
|
|
1187
|
+
}
|
|
1144
1188
|
const applySessionId = analyzeRes.sessionId ?? sessionId;
|
|
1145
1189
|
// Prefer analyze-resolved placement so apply lands where the proposal was filed.
|
|
1146
1190
|
const applyWorkspaceId = analyzeRes.workspaceId ?? workspaceId ?? undefined;
|
|
@@ -1159,7 +1203,20 @@ async function processBatchImport(batchItems, opts, cfg, userId, wsOverride, pro
|
|
|
1159
1203
|
}
|
|
1160
1204
|
: {}),
|
|
1161
1205
|
};
|
|
1162
|
-
|
|
1206
|
+
let applyRes;
|
|
1207
|
+
try {
|
|
1208
|
+
applyRes = (await hubPost("/import/apply", applyBody, cfg, IMPORT_APPLY_TIMEOUT_MS));
|
|
1209
|
+
}
|
|
1210
|
+
catch (e) {
|
|
1211
|
+
if (filedProposalId && isAgentReviewRejection(e)) {
|
|
1212
|
+
return proposedForReview(label, filedProposalId, cfg, opts, {
|
|
1213
|
+
workspaceId: analyzeRes.workspaceId ?? workspaceId ?? null,
|
|
1214
|
+
projectId: projOverride ?? null,
|
|
1215
|
+
batch: batchMeta,
|
|
1216
|
+
});
|
|
1217
|
+
}
|
|
1218
|
+
throw e;
|
|
1219
|
+
}
|
|
1163
1220
|
const created = applyRes.created ?? 0;
|
|
1164
1221
|
const linked = applyRes.linked ?? 0;
|
|
1165
1222
|
const finalWs = applyRes.workspaceId ?? analyzeRes.workspaceId ?? workspaceId ?? null;
|
|
@@ -1190,6 +1247,38 @@ async function processBatchImport(batchItems, opts, cfg, userId, wsOverride, pro
|
|
|
1190
1247
|
batch: { ...batchMeta, apply: applyRes },
|
|
1191
1248
|
};
|
|
1192
1249
|
}
|
|
1250
|
+
/**
|
|
1251
|
+
* Is the calling credential an agent? The pod's own `/users/me` `isAgent`.
|
|
1252
|
+
* Unknown (older pod, network) is `false`: the apply then runs and the pod's
|
|
1253
|
+
* 403 agent refusal is translated after the fact — never a guess that blocks
|
|
1254
|
+
* a human.
|
|
1255
|
+
*/
|
|
1256
|
+
async function callerIsAgent(cfg) {
|
|
1257
|
+
try {
|
|
1258
|
+
return (await fetchEffectiveIdentity(cfg)).isAgent === true;
|
|
1259
|
+
}
|
|
1260
|
+
catch {
|
|
1261
|
+
return false;
|
|
1262
|
+
}
|
|
1263
|
+
}
|
|
1264
|
+
/** The import was filed for review and not applied: say so, with the door. */
|
|
1265
|
+
function proposedForReview(label, proposalId, cfg, opts, rest) {
|
|
1266
|
+
const reviewUrl = proposalWebLink(cfg.podUrl, proposalId);
|
|
1267
|
+
if (!opts.json) {
|
|
1268
|
+
log.info(" Proposed — waiting for your approval. Nothing is stored until a person approves it.");
|
|
1269
|
+
log.dim(` proposal: ${proposalId}`);
|
|
1270
|
+
log.dim(` review: ${reviewUrl}`);
|
|
1271
|
+
log.dim(` or run: synap open proposal ${proposalId}`);
|
|
1272
|
+
}
|
|
1273
|
+
return {
|
|
1274
|
+
label,
|
|
1275
|
+
status: "proposed",
|
|
1276
|
+
entities: 0,
|
|
1277
|
+
relations: 0,
|
|
1278
|
+
reviewUrl,
|
|
1279
|
+
...rest,
|
|
1280
|
+
};
|
|
1281
|
+
}
|
|
1193
1282
|
// ─── `synap import --job-status <jobId>` ──────────────────────────────────────
|
|
1194
1283
|
/**
|
|
1195
1284
|
* Re-poll a corpus job started by an earlier `synap import`.
|
|
@@ -1352,17 +1441,14 @@ export async function importData(inputs, opts) {
|
|
|
1352
1441
|
}
|
|
1353
1442
|
batchFileItems.length = GLOBAL_BATCH_CAP;
|
|
1354
1443
|
}
|
|
1355
|
-
const
|
|
1356
|
-
const
|
|
1357
|
-
|
|
1358
|
-
: [];
|
|
1359
|
-
if (!useBatch) {
|
|
1360
|
-
captureItems.push(...batchFileItems);
|
|
1361
|
-
}
|
|
1444
|
+
const grouped = groupBatchFiles(batchFileItems);
|
|
1445
|
+
const batchGroups = grouped.batches.map((group) => group.map(toBatchTextItem));
|
|
1446
|
+
captureItems.push(...grouped.single);
|
|
1362
1447
|
if (!opts.json) {
|
|
1363
1448
|
const parts = [];
|
|
1364
|
-
|
|
1365
|
-
parts.push(`${
|
|
1449
|
+
for (const group of batchGroups) {
|
|
1450
|
+
parts.push(`${group.length} ${sourceForBatchItems(group) === "csv" ? "CSV" : "text"} file${group.length !== 1 ? "s" : ""} (batch import)`);
|
|
1451
|
+
}
|
|
1366
1452
|
if (captureItems.length > 0) {
|
|
1367
1453
|
parts.push(`${captureItems.length} item${captureItems.length !== 1 ? "s" : ""} (capture pipeline)`);
|
|
1368
1454
|
}
|
|
@@ -1374,7 +1460,7 @@ export async function importData(inputs, opts) {
|
|
|
1374
1460
|
const interactive = !opts.json && !opts.dryRun && !opts.yes;
|
|
1375
1461
|
const rl = interactive ? readline.createInterface({ input, output }) : undefined;
|
|
1376
1462
|
try {
|
|
1377
|
-
|
|
1463
|
+
for (const batchCandidates of batchGroups) {
|
|
1378
1464
|
try {
|
|
1379
1465
|
outcomes.push(await processBatchImport(batchCandidates, opts, cfg, userId, wsOverride, projOverride, sessionId, rl, homeMap));
|
|
1380
1466
|
}
|