@synap-core/cli 1.12.2 → 1.13.1-next.20261102.ec3d166

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 (354) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +38 -11
  3. package/dist/build-info.json +2 -3
  4. package/dist/commands/agents.d.ts +0 -1
  5. package/dist/commands/agents.js +13 -3
  6. package/dist/commands/agents.js.map +1 -1
  7. package/dist/commands/app.js +2 -1
  8. package/dist/commands/app.js.map +1 -1
  9. package/dist/commands/automation.js +46 -41
  10. package/dist/commands/automation.js.map +1 -1
  11. package/dist/commands/box.d.ts +42 -0
  12. package/dist/commands/box.js +89 -0
  13. package/dist/commands/box.js.map +1 -0
  14. package/dist/commands/bridge-setup.js +3 -1
  15. package/dist/commands/bridge-setup.js.map +1 -1
  16. package/dist/commands/capability.d.ts +87 -1
  17. package/dist/commands/capability.js +174 -64
  18. package/dist/commands/capability.js.map +1 -1
  19. package/dist/commands/close-questions.d.ts +27 -0
  20. package/dist/commands/close-questions.js +49 -0
  21. package/dist/commands/close-questions.js.map +1 -0
  22. package/dist/commands/close-questions.test.d.ts +1 -0
  23. package/dist/commands/close-questions.test.js +52 -0
  24. package/dist/commands/close-questions.test.js.map +1 -0
  25. package/dist/commands/connect.d.ts +1 -3
  26. package/dist/commands/connect.js +2 -2
  27. package/dist/commands/connect.js.map +1 -1
  28. package/dist/commands/context.js +72 -43
  29. package/dist/commands/context.js.map +1 -1
  30. package/dist/commands/data-extra.d.ts +13 -0
  31. package/dist/commands/data-extra.js +35 -6
  32. package/dist/commands/data-extra.js.map +1 -1
  33. package/dist/commands/data.js +2 -1
  34. package/dist/commands/data.js.map +1 -1
  35. package/dist/commands/doctor.d.ts +39 -0
  36. package/dist/commands/doctor.js +136 -14
  37. package/dist/commands/doctor.js.map +1 -1
  38. package/dist/commands/hooks.d.ts +19 -0
  39. package/dist/commands/hooks.js +70 -0
  40. package/dist/commands/hooks.js.map +1 -0
  41. package/dist/commands/import.d.ts +25 -0
  42. package/dist/commands/import.js +98 -12
  43. package/dist/commands/import.js.map +1 -1
  44. package/dist/commands/init.d.ts +14 -0
  45. package/dist/commands/init.js +63 -21
  46. package/dist/commands/init.js.map +1 -1
  47. package/dist/commands/keys-request.d.ts +48 -0
  48. package/dist/commands/keys-request.js +236 -0
  49. package/dist/commands/keys-request.js.map +1 -0
  50. package/dist/commands/keys-request.test.d.ts +1 -0
  51. package/dist/commands/keys-request.test.js +176 -0
  52. package/dist/commands/keys-request.test.js.map +1 -0
  53. package/dist/commands/knowledge.d.ts +6 -0
  54. package/dist/commands/knowledge.js +13 -3
  55. package/dist/commands/knowledge.js.map +1 -1
  56. package/dist/commands/lens.js +2 -1
  57. package/dist/commands/lens.js.map +1 -1
  58. package/dist/commands/market-authoring.js +1 -1
  59. package/dist/commands/market-authoring.js.map +1 -1
  60. package/dist/commands/market.d.ts +61 -4
  61. package/dist/commands/market.js +106 -48
  62. package/dist/commands/market.js.map +1 -1
  63. package/dist/commands/mcp.d.ts +1 -1
  64. package/dist/commands/mcp.js +14 -9
  65. package/dist/commands/mcp.js.map +1 -1
  66. package/dist/commands/observe.category.test.d.ts +1 -0
  67. package/dist/commands/observe.category.test.js +59 -0
  68. package/dist/commands/observe.category.test.js.map +1 -0
  69. package/dist/commands/observe.d.ts +3 -0
  70. package/dist/commands/observe.js +7 -5
  71. package/dist/commands/observe.js.map +1 -1
  72. package/dist/commands/observe.title.test.d.ts +1 -0
  73. package/dist/commands/observe.title.test.js +37 -0
  74. package/dist/commands/observe.title.test.js.map +1 -0
  75. package/dist/commands/playbook.js +9 -0
  76. package/dist/commands/playbook.js.map +1 -1
  77. package/dist/commands/pods.d.ts +6 -1
  78. package/dist/commands/pods.js +38 -17
  79. package/dist/commands/pods.js.map +1 -1
  80. package/dist/commands/proposals-actions.js +7 -1
  81. package/dist/commands/proposals-actions.js.map +1 -1
  82. package/dist/commands/proton-setup.js +3 -1
  83. package/dist/commands/proton-setup.js.map +1 -1
  84. package/dist/commands/providers.d.ts +22 -6
  85. package/dist/commands/providers.js +39 -32
  86. package/dist/commands/providers.js.map +1 -1
  87. package/dist/commands/raycast.d.ts +15 -0
  88. package/dist/commands/raycast.js +36 -10
  89. package/dist/commands/raycast.js.map +1 -1
  90. package/dist/commands/session-feed-wait.d.ts +48 -0
  91. package/dist/commands/session-feed-wait.js +261 -0
  92. package/dist/commands/session-feed-wait.js.map +1 -0
  93. package/dist/commands/session-post.d.ts +40 -0
  94. package/dist/commands/session-post.js +96 -0
  95. package/dist/commands/session-post.js.map +1 -0
  96. package/dist/commands/session-wait.d.ts +9 -4
  97. package/dist/commands/session-wait.js +20 -5
  98. package/dist/commands/session-wait.js.map +1 -1
  99. package/dist/commands/sessions.d.ts +2 -0
  100. package/dist/commands/sessions.js +23 -0
  101. package/dist/commands/sessions.js.map +1 -1
  102. package/dist/commands/skills-commands.d.ts +2 -0
  103. package/dist/commands/skills-commands.js +9 -1
  104. package/dist/commands/skills-commands.js.map +1 -1
  105. package/dist/commands/skills-commands.test.d.ts +1 -0
  106. package/dist/commands/skills-commands.test.js +57 -0
  107. package/dist/commands/skills-commands.test.js.map +1 -0
  108. package/dist/commands/status.js +13 -7
  109. package/dist/commands/status.js.map +1 -1
  110. package/dist/commands/statusline.backoff.test.js +13 -3
  111. package/dist/commands/statusline.backoff.test.js.map +1 -1
  112. package/dist/commands/statusline.d.ts +104 -9
  113. package/dist/commands/statusline.js +392 -148
  114. package/dist/commands/statusline.js.map +1 -1
  115. package/dist/commands/statusline.line2.test.d.ts +15 -0
  116. package/dist/commands/statusline.line2.test.js +226 -0
  117. package/dist/commands/statusline.line2.test.js.map +1 -0
  118. package/dist/commands/statusline.needs-you.test.d.ts +1 -0
  119. package/dist/commands/statusline.needs-you.test.js +17 -0
  120. package/dist/commands/statusline.needs-you.test.js.map +1 -0
  121. package/dist/commands/statusline.now.test.d.ts +10 -0
  122. package/dist/commands/statusline.now.test.js +250 -0
  123. package/dist/commands/statusline.now.test.js.map +1 -0
  124. package/dist/commands/tracks.d.ts +68 -6
  125. package/dist/commands/tracks.js +272 -16
  126. package/dist/commands/tracks.js.map +1 -1
  127. package/dist/commands/upload.js +12 -0
  128. package/dist/commands/upload.js.map +1 -1
  129. package/dist/commands/wait.d.ts +124 -0
  130. package/dist/commands/wait.js +384 -0
  131. package/dist/commands/wait.js.map +1 -0
  132. package/dist/commands/wait.test.d.ts +8 -0
  133. package/dist/commands/wait.test.js +308 -0
  134. package/dist/commands/wait.test.js.map +1 -0
  135. package/dist/commands/whoami.d.ts +7 -0
  136. package/dist/commands/whoami.js +17 -0
  137. package/dist/commands/whoami.js.map +1 -1
  138. package/dist/commands/worker-accounts.d.ts +149 -0
  139. package/dist/commands/worker-accounts.js +339 -0
  140. package/dist/commands/worker-accounts.js.map +1 -0
  141. package/dist/commands/worker-accounts.test.d.ts +1 -0
  142. package/dist/commands/worker-accounts.test.js +224 -0
  143. package/dist/commands/worker-accounts.test.js.map +1 -0
  144. package/dist/commands/worker-github-app.d.ts +63 -0
  145. package/dist/commands/worker-github-app.js +161 -0
  146. package/dist/commands/worker-github-app.js.map +1 -0
  147. package/dist/commands/worker-github-app.test.d.ts +1 -0
  148. package/dist/commands/worker-github-app.test.js +102 -0
  149. package/dist/commands/worker-github-app.test.js.map +1 -0
  150. package/dist/commands/worker-github-broker.d.ts +39 -0
  151. package/dist/commands/worker-github-broker.js +106 -0
  152. package/dist/commands/worker-github-broker.js.map +1 -0
  153. package/dist/commands/worker-github-broker.test.d.ts +1 -0
  154. package/dist/commands/worker-github-broker.test.js +90 -0
  155. package/dist/commands/worker-github-broker.test.js.map +1 -0
  156. package/dist/commands/worker-runs.test.d.ts +1 -0
  157. package/dist/commands/worker-runs.test.js +150 -0
  158. package/dist/commands/worker-runs.test.js.map +1 -0
  159. package/dist/commands/worker-worktrees.d.ts +34 -0
  160. package/dist/commands/worker-worktrees.js +87 -0
  161. package/dist/commands/worker-worktrees.js.map +1 -0
  162. package/dist/commands/worker.d.ts +406 -10
  163. package/dist/commands/worker.js +1180 -126
  164. package/dist/commands/worker.js.map +1 -1
  165. package/dist/commands/worker.test.js +588 -11
  166. package/dist/commands/worker.test.js.map +1 -1
  167. package/dist/index.js +220 -28
  168. package/dist/index.js.map +1 -1
  169. package/dist/lib/agent-door.d.ts +1 -3
  170. package/dist/lib/agent-door.js +10 -7
  171. package/dist/lib/agent-door.js.map +1 -1
  172. package/dist/lib/agents-config.d.ts +9 -0
  173. package/dist/lib/agents-config.js +20 -0
  174. package/dist/lib/agents-config.js.map +1 -1
  175. package/dist/lib/atomic-file.d.ts +20 -1
  176. package/dist/lib/atomic-file.js +100 -2
  177. package/dist/lib/atomic-file.js.map +1 -1
  178. package/dist/lib/auth.d.ts +28 -2
  179. package/dist/lib/auth.js +52 -12
  180. package/dist/lib/auth.js.map +1 -1
  181. package/dist/lib/box/egress.d.ts +82 -0
  182. package/dist/lib/box/egress.js +264 -0
  183. package/dist/lib/box/egress.js.map +1 -0
  184. package/dist/lib/box/evidence.d.ts +86 -0
  185. package/dist/lib/box/evidence.js +121 -0
  186. package/dist/lib/box/evidence.js.map +1 -0
  187. package/dist/lib/box/job-server.d.ts +72 -0
  188. package/dist/lib/box/job-server.js +250 -0
  189. package/dist/lib/box/job-server.js.map +1 -0
  190. package/dist/lib/box/provisioner.d.ts +83 -0
  191. package/dist/lib/box/provisioner.js +312 -0
  192. package/dist/lib/box/provisioner.js.map +1 -0
  193. package/dist/lib/box/proxmox.d.ts +112 -0
  194. package/dist/lib/box/proxmox.js +211 -0
  195. package/dist/lib/box/proxmox.js.map +1 -0
  196. package/dist/lib/box/wire.d.ts +98 -0
  197. package/dist/lib/box/wire.js +70 -0
  198. package/dist/lib/box/wire.js.map +1 -0
  199. package/dist/lib/bridge-invocation.test.d.ts +1 -0
  200. package/dist/lib/bridge-invocation.test.js +75 -0
  201. package/dist/lib/bridge-invocation.test.js.map +1 -0
  202. package/dist/lib/bridge-status.d.ts +144 -0
  203. package/dist/lib/bridge-status.js +227 -0
  204. package/dist/lib/bridge-status.js.map +1 -0
  205. package/dist/lib/bridge-status.test.d.ts +6 -0
  206. package/dist/lib/bridge-status.test.js +197 -0
  207. package/dist/lib/bridge-status.test.js.map +1 -0
  208. package/dist/lib/client-header.test.d.ts +1 -0
  209. package/dist/lib/client-header.test.js +103 -0
  210. package/dist/lib/client-header.test.js.map +1 -0
  211. package/dist/lib/conversation-headers.d.ts +89 -9
  212. package/dist/lib/conversation-headers.js +156 -3
  213. package/dist/lib/conversation-headers.js.map +1 -1
  214. package/dist/lib/conversation-headers.test.d.ts +1 -0
  215. package/dist/lib/conversation-headers.test.js +78 -0
  216. package/dist/lib/conversation-headers.test.js.map +1 -0
  217. package/dist/lib/credential-class.d.ts +40 -2
  218. package/dist/lib/credential-class.js +48 -6
  219. package/dist/lib/credential-class.js.map +1 -1
  220. package/dist/lib/device-connect.d.ts +45 -0
  221. package/dist/lib/device-connect.js +60 -0
  222. package/dist/lib/device-connect.js.map +1 -1
  223. package/dist/lib/exporter-coverage.d.ts +1 -1
  224. package/dist/lib/exporter-coverage.js +1 -1
  225. package/dist/lib/goal-words.d.ts +38 -0
  226. package/dist/lib/goal-words.js +115 -0
  227. package/dist/lib/goal-words.js.map +1 -0
  228. package/dist/lib/hub-client.d.ts +87 -8
  229. package/dist/lib/hub-client.js +205 -70
  230. package/dist/lib/hub-client.js.map +1 -1
  231. package/dist/lib/init-handoff.d.ts +8 -0
  232. package/dist/lib/init-handoff.js +9 -2
  233. package/dist/lib/init-handoff.js.map +1 -1
  234. package/dist/lib/key-locations.d.ts +3 -3
  235. package/dist/lib/key-locations.js +3 -39
  236. package/dist/lib/key-locations.js.map +1 -1
  237. package/dist/lib/key-source.d.ts +3 -1
  238. package/dist/lib/key-source.js +7 -4
  239. package/dist/lib/key-source.js.map +1 -1
  240. package/dist/lib/knowledge-title.d.ts +3 -2
  241. package/dist/lib/knowledge-title.js +3 -2
  242. package/dist/lib/knowledge-title.js.map +1 -1
  243. package/dist/lib/machine-instance.d.ts +7 -5
  244. package/dist/lib/machine-instance.js +7 -5
  245. package/dist/lib/machine-instance.js.map +1 -1
  246. package/dist/lib/mcp-bridge.d.ts +50 -0
  247. package/dist/lib/mcp-bridge.js +232 -11
  248. package/dist/lib/mcp-bridge.js.map +1 -1
  249. package/dist/lib/mcp-bridge.test.js +224 -4
  250. package/dist/lib/mcp-bridge.test.js.map +1 -1
  251. package/dist/lib/mcp-call.d.ts +5 -1
  252. package/dist/lib/mcp-call.js +7 -6
  253. package/dist/lib/mcp-call.js.map +1 -1
  254. package/dist/lib/mcp-connector-url.test.d.ts +1 -0
  255. package/dist/lib/mcp-connector-url.test.js +13 -0
  256. package/dist/lib/mcp-connector-url.test.js.map +1 -0
  257. package/dist/lib/mcp-snippets.d.ts +16 -0
  258. package/dist/lib/mcp-snippets.js +20 -2
  259. package/dist/lib/mcp-snippets.js.map +1 -1
  260. package/dist/lib/now-line.d.ts +66 -0
  261. package/dist/lib/now-line.js +193 -0
  262. package/dist/lib/now-line.js.map +1 -0
  263. package/dist/lib/now-line.test.d.ts +5 -0
  264. package/dist/lib/now-line.test.js +177 -0
  265. package/dist/lib/now-line.test.js.map +1 -0
  266. package/dist/lib/package-updates.d.ts +66 -0
  267. package/dist/lib/package-updates.js +76 -0
  268. package/dist/lib/package-updates.js.map +1 -0
  269. package/dist/lib/pod-moved.d.ts +70 -0
  270. package/dist/lib/pod-moved.js +146 -0
  271. package/dist/lib/pod-moved.js.map +1 -0
  272. package/dist/lib/pod-reach.d.ts +39 -0
  273. package/dist/lib/pod-reach.js +117 -0
  274. package/dist/lib/pod-reach.js.map +1 -0
  275. package/dist/lib/pod-reach.test.d.ts +1 -0
  276. package/dist/lib/pod-reach.test.js +67 -0
  277. package/dist/lib/pod-reach.test.js.map +1 -0
  278. package/dist/lib/pod.d.ts +8 -4
  279. package/dist/lib/pod.js +12 -10
  280. package/dist/lib/pod.js.map +1 -1
  281. package/dist/lib/register-claude-code-mcp.test.d.ts +1 -0
  282. package/dist/lib/register-claude-code-mcp.test.js +97 -0
  283. package/dist/lib/register-claude-code-mcp.test.js.map +1 -0
  284. package/dist/lib/review-credential.js +3 -1
  285. package/dist/lib/review-credential.js.map +1 -1
  286. package/dist/lib/safe-open.d.ts +5 -3
  287. package/dist/lib/safe-open.js +9 -8
  288. package/dist/lib/safe-open.js.map +1 -1
  289. package/dist/lib/self-host.d.ts +17 -0
  290. package/dist/lib/self-host.js +24 -0
  291. package/dist/lib/self-host.js.map +1 -0
  292. package/dist/lib/session-feed.d.ts +185 -0
  293. package/dist/lib/session-feed.js +257 -0
  294. package/dist/lib/session-feed.js.map +1 -0
  295. package/dist/lib/targets.d.ts +52 -3
  296. package/dist/lib/targets.js +150 -209
  297. package/dist/lib/targets.js.map +1 -1
  298. package/dist/lib/term.d.ts +24 -0
  299. package/dist/lib/term.js +52 -0
  300. package/dist/lib/term.js.map +1 -0
  301. package/dist/lib/term.test.d.ts +1 -0
  302. package/dist/lib/term.test.js +29 -0
  303. package/dist/lib/term.test.js.map +1 -0
  304. package/dist/lib/transcript-index.d.ts +94 -0
  305. package/dist/lib/transcript-index.js +321 -0
  306. package/dist/lib/transcript-index.js.map +1 -0
  307. package/dist/lib/transcript-index.test.d.ts +10 -0
  308. package/dist/lib/transcript-index.test.js +200 -0
  309. package/dist/lib/transcript-index.test.js.map +1 -0
  310. package/dist/lib/wait-help.d.ts +11 -0
  311. package/dist/lib/wait-help.js +25 -0
  312. package/dist/lib/wait-help.js.map +1 -0
  313. package/dist/lib/wait-state.d.ts +57 -0
  314. package/dist/lib/wait-state.js +114 -0
  315. package/dist/lib/wait-state.js.map +1 -0
  316. package/dist/lib/wake-hook-settings.d.ts +57 -0
  317. package/dist/lib/wake-hook-settings.js +153 -0
  318. package/dist/lib/wake-hook-settings.js.map +1 -0
  319. package/dist/lib/wake-state.d.ts +65 -0
  320. package/dist/lib/wake-state.js +122 -0
  321. package/dist/lib/wake-state.js.map +1 -0
  322. package/package.json +5 -2
  323. package/skills/README.md +1 -1
  324. package/skills/agent-os/SKILL.md +8 -8
  325. package/skills/synap/SKILL.md +178 -88
  326. package/skills/synap/code-skills.md +84 -0
  327. package/skills/synap/concepts.md +38 -20
  328. package/skills/synap/creative-loop.md +1 -1
  329. package/skills/synap/document-embeds.md +17 -1
  330. package/skills/synap/focus-sessions.md +17 -8
  331. package/skills/synap/from-intent.md +33 -17
  332. package/skills/synap/governance-rules.md +3 -1
  333. package/skills/synap/lenses.md +4 -4
  334. package/skills/synap/linking.md +2 -2
  335. package/skills/synap/mental-model.md +1 -1
  336. package/skills/synap/operating-mode-rules.md +1 -1
  337. package/skills/synap/quick-reference.md +2 -1
  338. package/skills/synap/reflexes.md +8 -8
  339. package/skills/synap/viewframe-cells.md +1 -1
  340. package/skills/synap/work-model.md +24 -10
  341. package/skills/synap/workspace-design.md +5 -5
  342. package/skills/synap/writes.md +16 -9
  343. package/skills/synap/writing-titles.md +7 -0
  344. package/skills/synap-app/SKILL.md +148 -66
  345. package/skills/synap-app/creating-the-base-app.md +12 -7
  346. package/skills/synap-app/governance.md +27 -16
  347. package/skills/synap-app/install-commands.md +18 -9
  348. package/skills/synap-app/overview.md +16 -9
  349. package/skills/synap-app/using-the-sdk.md +75 -25
  350. package/skills/synap-market/SKILL.md +1 -1
  351. package/skills/synap-market/governance-and-catalog.md +1 -1
  352. package/skills/synap-schema/SKILL.md +24 -21
  353. package/skills/synap-schema/intent-vocabulary-ssot.md +24 -21
  354. package/templates/box/runner.py +206 -0
@@ -2,7 +2,7 @@
2
2
  * `synap mcp` — the MCP front door. Two lanes:
3
3
  *
4
4
  * 1. Web AI (Cloud MCP / OAuth) — control plane `${cp}/mcp` (managed:
5
- * https://api.synap.live/mcp). claude.ai's connector UI is OAuth-only; use
5
+ * https://mcp.synap.live). claude.ai's connector UI is OAuth-only; use
6
6
  * `synap mcp connect-claude` to print the URL (no key mint, no file write).
7
7
  * 2. IDE / file-configurable — pod `${podUrl}/mcp` (Bearer). Needs a pod +
8
8
  * key. `synap mcp connect <client>` writes client config; `synap mcp url`
@@ -17,7 +17,8 @@ import chalk from "chalk";
17
17
  import { resolveHubConfig } from "../lib/hub-client.js";
18
18
  import { buildMcpUrl, provisionAgentKey, enrollAgentIfNeeded, } from "../lib/targets.js";
19
19
  import { log } from "../utils/logger.js";
20
- import { printMcpConnection, redactKey, writeMcpSnippetFiles, MCP_KEY_ENV } from "../lib/mcp-snippets.js";
20
+ import { MANAGED_MCP_URL, mcpConnectorUrl } from "../lib/auth.js";
21
+ import { printMcpConnection, redactKey, writeMcpSnippetFiles, MCP_KEY_ENV, mcpRemoteArgs } from "../lib/mcp-snippets.js";
21
22
  /** Resolve the scoped MCP URL + the lenses from flags.
22
23
  *
23
24
  * Default is POD-WIDE: a workspace is a lens, not a container, so we do NOT
@@ -223,7 +224,7 @@ export async function mcpConnectClaudeWeb(opts) {
223
224
  }
224
225
  }
225
226
  const finalCpOrigin = cpOrigin.replace(/\/$/, "");
226
- const url = `${finalCpOrigin}/mcp`;
227
+ const url = mcpConnectorUrl(finalCpOrigin);
227
228
  const steps = [
228
229
  "Open claude.ai → Settings → Connectors → Add custom connector",
229
230
  "Name: Synap",
@@ -238,7 +239,7 @@ export async function mcpConnectClaudeWeb(opts) {
238
239
  }
239
240
  log.heading("\nConnect claude.ai (web) to Synap");
240
241
  if (source === "managed-fallback" && !opts.cpUrl) {
241
- console.log(chalk.dim(" Using managed Cloud MCP (https://api.synap.live). Pass --cp-url for a self-hosted control plane. No key minted."));
242
+ console.log(chalk.dim(` Using managed Cloud MCP (${MANAGED_MCP_URL}). Pass --cp-url for a self-hosted control plane. No key minted.`));
242
243
  }
243
244
  console.log(` ${chalk.dim("URL")} ${url}`);
244
245
  console.log();
@@ -288,7 +289,7 @@ export async function mcpUiSetup(client, opts) {
288
289
  format: "http",
289
290
  fields: {
290
291
  "Connector Name": "Synap (Control Plane)",
291
- "URL": "https://api.synap.live/mcp",
292
+ "URL": MANAGED_MCP_URL,
292
293
  "Auth Type": "OAuth",
293
294
  "API Key": "(leave blank — OAuth flow)",
294
295
  },
@@ -349,7 +350,7 @@ export async function mcpUiSetup(client, opts) {
349
350
  fields: {
350
351
  "Config file": "~/Library/Application Support/Claude/claude_desktop_config.json (macOS)",
351
352
  "mcpServers.synap.command": "npx",
352
- "mcpServers.synap.args": `-y mcp-remote ${url} --header "Authorization:\${SYNAP_AUTH}"`,
353
+ "mcpServers.synap.args": mcpRemoteArgs(url).join(" "),
353
354
  "mcpServers.synap.env.SYNAP_AUTH": `Bearer ${keyShown} (real value: "mcpRemote" block in ${snippetFiles.jsonFile})`,
354
355
  },
355
356
  notes: [
@@ -416,8 +417,8 @@ export async function mcpUiSetup(client, opts) {
416
417
  * stdout IS the protocol — nothing but JSON-RPC may be written to it.
417
418
  */
418
419
  export async function mcpBridge(opts) {
419
- const { runMcpBridge } = await import("../lib/mcp-bridge.js");
420
- const { conversationHeaders } = await import("../lib/conversation-headers.js");
420
+ const { modelHandoffPath, runMcpBridge } = await import("../lib/mcp-bridge.js");
421
+ const { claudeCodeProcess, mcpBridgeHeaders } = await import("../lib/conversation-headers.js");
421
422
  const fromEnv = process.env.SYNAP_MCP_API_KEY || process.env.SYNAP_HUB_API_KEY;
422
423
  const cfg = fromEnv && opts.url ? null : await resolveHubConfig();
423
424
  const apiKey = fromEnv || cfg?.apiKey;
@@ -427,10 +428,14 @@ export async function mcpBridge(opts) {
427
428
  process.exit(1);
428
429
  }
429
430
  // The spawn-time id (a stdio server's env), never a lens fallback.
431
+ const sessionId = process.env.CLAUDE_CODE_SESSION_ID;
430
432
  await runMcpBridge({
431
433
  url,
432
434
  apiKey,
433
- headers: conversationHeaders(process.env.CLAUDE_CODE_SESSION_ID),
435
+ // Claude Code's own process (the parent), read once: only inside Claude Code.
436
+ headers: mcpBridgeHeaders(sessionId, process.cwd(), sessionId ? claudeCodeProcess() : undefined),
437
+ // What the conversation runs on, handed over by the synap-bridge plugin.
438
+ modelFile: modelHandoffPath(sessionId),
434
439
  });
435
440
  }
436
441
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.js","sourceRoot":"","sources":["../../src/commands/mcp.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,gBAAgB,EAAkB,MAAM,sBAAsB,CAAC;AACxE,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAC;AACzC,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAE,oBAAoB,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAU1G;;;;;;;mDAOmD;AACnD,SAAS,gBAAgB,CACvB,GAAc,EACd,IAAiB;IAEjB,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,sCAAsC;IAC1E,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,oBAAoB;IACpD,OAAO;QACL,GAAG,EAAE,WAAW,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,SAAS,CAAC;QACpD,WAAW;QACX,SAAS;KACV,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,MAAM,CAC1B,IAAuC;IAEvC,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,gBAAgB,CAAC,IAAI,CAAC,CAAC;QACzC,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAEpE,yEAAyE;QACzE,yEAAyE;QACzE,mDAAmD;QACnD,sEAAsE;QACtE,2EAA2E;QAC3E,oCAAoC;QACpC,MAAM,aAAa,GAAG;YACpB,aAAa;YACb,gBAAgB;YAChB,QAAQ;YACR,SAAS;YACT,OAAO;YACP,WAAW;YACX,SAAS;SACV,CAAC;QACF,MAAM,SAAS,GACb,IAAI,CAAC,MAAM,IAAI,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC;YAChD,CAAC,CAAC,IAAI,CAAC,MAAM;YACb,CAAC,CAAC,SAAS,CAAC;QAChB,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,MAAM,iBAAiB,CACxD,GAAG,CAAC,MAAM,EACV,GAAG,CAAC,MAAM,EACV,SAAS,EACT,EAAE,eAAe,EAAE,KAAK,EAAE,CAC3B,CAAC;QAEF,wEAAwE;QACxE,wEAAwE;QACxE,2EAA2E;QAC3E,0EAA0E;QAC1E,gEAAgE;QAChE,MAAM,mBAAmB,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE;YAC1E,KAAK,EAAE,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE,+BAA+B;SAC3D,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAEnB,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CACT,IAAI,CAAC,SAAS,CACZ;gBACE,GAAG;gBACH,MAAM,EAAE,SAAS;gBACjB,WAAW;gBACX,WAAW,EAAE,WAAW,IAAI,IAAI;gBAChC,SAAS,EAAE,SAAS,IAAI,IAAI;aAC7B,EACD,IAAI,EACJ,CAAC,CACF,CACF,CAAC;YACF,OAAO;QACT,CAAC;QAED,kBAAkB,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC,CAAC;IAC9E,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,GAAG,CAAC,KAAK,CAAC,mCAAoC,CAAW,CAAC,OAAO,EAAE,CAAC,CAAC;QACrE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,IAAiB;IAC/C,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,gBAAgB,CAAC,IAAI,CAAC,CAAC;QACzC,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QACzD,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAE9C,uEAAuE;QACvE,2EAA2E;QAC3E,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,IAAI,SAA6B,CAAC;QAClC,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,MAAM,EAAE;gBACxC,OAAO,EAAE,EAAE,MAAM,EAAE,kBAAkB,EAAE;gBACvC,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC;aACnC,CAAC,CAAC;YACH,SAAS,GAAG,GAAG,CAAC,EAAE,CAAC;YACnB,IAAI,GAAG,CAAC,EAAE,EAAE,CAAC;gBACX,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAA2B,CAAC;gBAC1D,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;YAC7B,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,SAAS,GAAG,KAAK,CAAC;QACpB,CAAC;QAED,iCAAiC;QACjC,IAAI,QAAQ,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,sBAAsB,EAAE;gBACxD,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,GAAG,CAAC,MAAM,EAAE,EAAE;gBAClD,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC;aACnC,CAAC,CAAC;YACH,QAAQ,GAAG,GAAG,CAAC,EAAE,CAAC;QACpB,CAAC;QAAC,MAAM,CAAC;YACP,QAAQ,GAAG,KAAK,CAAC;QACnB,CAAC;QAED,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CACT,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CACjE,CAAC;YACF,OAAO;QACT,CAAC;QAED,GAAG,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;QACpC,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,GAAG,EAAE,CAAC,CAAC;QACnD,OAAO,CAAC,GAAG,CACT,KAAK,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,GAAG,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,SAAS,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAChK,CAAC;QACF,OAAO,CAAC,GAAG,CACT,KAAK,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,mBAAmB,CAAC,EAAE,CACnG,CAAC;QACF,IAAI,WAAW;YACb,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,KAAK,WAAW,EAAE,CAAC,CAAC;QAE7D,IAAI,SAAS,IAAI,QAAQ,EAAE,CAAC;YAC1B,GAAG,CAAC,OAAO,CAAC,qDAAqD,CAAC,CAAC;QACrE,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,KAAK,CACP,4GAA4G,CAC7G,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,GAAG,CAAC,KAAK,CAAC,kBAAmB,CAAW,CAAC,OAAO,EAAE,CAAC,CAAC;QACpD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,cAAc,CAAC,MAAc;IAC3C,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC;QACtC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC/B,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,KAAK,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YAC9C,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa;YAC3C,mEAAmE;YACnE,mEAAmE;YACnE,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACxE,OAAO,EAAE,QAAQ,EAAE,eAAe,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC5D,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,8BAA8B;IAChC,CAAC;IACD,OAAO,EAAE,QAAQ,EAAE,2BAA2B,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;AACnE,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,IAAsC;IAEtC,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,wBAAwB,CAAC;QAC5C,mEAAmE;QACnE,IAAI,MAAM,GAAgD,kBAAkB,CAAC;QAC7E,IAAI,QAAQ,GAAG,UAAU,CAAC;QAE1B,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACzC,MAAM,GAAG,UAAU,CAAC;QACtB,CAAC;aAAM,CAAC;YACN,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,MAAM,gBAAgB,CAAC,IAAI,CAAC,CAAC;gBACzC,MAAM,OAAO,GAAG,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBAC3C,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;oBACpB,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;oBAC5B,MAAM,GAAG,SAAS,CAAC;gBACrB,CAAC;qBAAM,CAAC;oBACN,wEAAwE;oBACxE,QAAQ,GAAG,UAAU,CAAC;oBACtB,MAAM,GAAG,kBAAkB,CAAC;gBAC9B,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,wEAAwE;gBACxE,QAAQ,GAAG,UAAU,CAAC;gBACtB,MAAM,GAAG,kBAAkB,CAAC;YAC9B,CAAC;QACH,CAAC;QAED,MAAM,aAAa,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAClD,MAAM,GAAG,GAAG,GAAG,aAAa,MAAM,CAAC;QAEnC,MAAM,KAAK,GAAG;YACZ,+DAA+D;YAC/D,aAAa;YACb,QAAQ,GAAG,EAAE;YACb,wDAAwD;YACxD,+EAA+E;YAC/E,mFAAmF;SACpF,CAAC;QAEF,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CACT,IAAI,CAAC,SAAS,CACZ,EAAE,GAAG,EAAE,QAAQ,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,EACxD,IAAI,EACJ,CAAC,CACF,CACF,CAAC;YACF,OAAO;QACT,CAAC;QAED,GAAG,CAAC,OAAO,CAAC,oCAAoC,CAAC,CAAC;QAClD,IAAI,MAAM,KAAK,kBAAkB,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YACjD,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,GAAG,CACP,mHAAmH,CACpH,CACF,CAAC;QACJ,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;QAC9C,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC;QAChF,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,GAAG,CACP,qHAAqH,CACtH,CACF,CAAC;IACJ,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,GAAG,CAAC,KAAK,CAAC,6CAA8C,CAAW,CAAC,OAAO,EAAE,CAAC,CAAC;QAC/E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,MAAc,EACd,IAA+G;IAE/G,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QACpF,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,gBAAgB,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAEvH,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,MAAM,iBAAiB,CACxD,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,MAAM,EACb,SAAS,EACT,EAAE,eAAe,EAAE,KAAK,EAAE,CAC3B,CAAC;QAEF,MAAM,gBAAgB,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAChE,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,0EAA0E;QAC1E,wEAAwE;QACxE,MAAM,QAAQ,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;QACtC,MAAM,YAAY,GAAG,oBAAoB,CAAC,GAAG,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;QAEvE,MAAM,aAAa,GAAyH;YAC1I,OAAO,EAAE;gBACP,IAAI,EAAE,mBAAmB;gBACzB,MAAM,EAAE,MAAM;gBACd,MAAM,EAAE;oBACN,gBAAgB,EAAE,OAAO;oBACzB,KAAK,EAAE,GAAG;oBACV,WAAW,EAAE,SAAS;oBACtB,SAAS,EAAE,GAAG,QAAQ,eAAe,YAAY,CAAC,OAAO,GAAG;iBAC7D;gBACD,KAAK,EAAE;oBACL,wDAAwD;oBACxD,kDAAkD;oBAClD,wFAAwF,YAAY,CAAC,OAAO,SAAS;iBACtH;aACF;YACD,YAAY,EAAE;gBACZ,IAAI,EAAE,mCAAmC;gBACzC,MAAM,EAAE,MAAM;gBACd,MAAM,EAAE;oBACN,gBAAgB,EAAE,uBAAuB;oBACzC,KAAK,EAAE,4BAA4B;oBACnC,WAAW,EAAE,OAAO;oBACpB,SAAS,EAAE,4BAA4B;iBACxC;gBACD,KAAK,EAAE;oBACL,wDAAwD;oBACxD,qDAAqD;oBACrD,+EAA+E;iBAChF;aACF;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,4BAA4B;gBAClC,MAAM,EAAE,MAAM;gBACd,MAAM,EAAE;oBACN,aAAa,EAAE,sBAAsB;oBACrC,gBAAgB,EAAE,qBAAqB;oBACvC,KAAK,EAAE,GAAG;oBACV,cAAc,EAAE,6BAA6B,QAAQ,KAAK;oBAC1D,qBAAqB,EAAE,IAAI;oBAC3B,SAAS,EAAE,MAAM;iBAClB;gBACD,KAAK,EAAE;oBACL,8EAA8E,QAAQ,2BAA2B,YAAY,CAAC,OAAO,SAAS;oBAC9I,iDAAiD;oBACjD,8CAA8C;iBAC/C;aACF;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,mBAAmB;gBACzB,MAAM,EAAE,MAAM;gBACd,MAAM,EAAE;oBACN,aAAa,EAAE,oBAAoB;oBACnC,sBAAsB,EAAE,GAAG;oBAC3B,wCAAwC,EAAE,iBAAiB,WAAW,GAAG;iBAC1E;gBACD,KAAK,EAAE;oBACL,6DAA6D;oBAC7D,+DAA+D;iBAChE;aACF;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,kDAAkD;gBACxD,MAAM,EAAE,MAAM;gBACd,MAAM,EAAE;oBACN,aAAa,EAAE,0DAA0D;oBACzE,oBAAoB,EAAE,MAAM;oBAC5B,mBAAmB,EAAE,GAAG;oBACxB,qCAAqC,EAAE,iBAAiB,WAAW,GAAG;iBACvE;gBACD,KAAK,EAAE;oBACL,sDAAsD;oBACtD,2EAA2E;oBAC3E,oDAAoD;iBACrD;aACF;YACD,gBAAgB,EAAE;gBAChB,IAAI,EAAE,+BAA+B;gBACrC,MAAM,EAAE,OAAO;gBACf,MAAM,EAAE;oBACN,aAAa,EAAE,yEAAyE;oBACxF,0BAA0B,EAAE,KAAK;oBACjC,uBAAuB,EAAE,iBAAiB,GAAG,0CAA0C;oBACvF,iCAAiC,EAAE,UAAU,QAAQ,sCAAsC,YAAY,CAAC,QAAQ,GAAG;iBACpH;gBACD,KAAK,EAAE;oBACL,iEAAiE;oBACjE,kDAAkD;oBAClD,yEAAyE;iBAC1E;aACF;YACD,aAAa,EAAE;gBACb,IAAI,EAAE,+BAA+B;gBACrC,MAAM,EAAE,MAAM;gBACd,MAAM,EAAE;oBACN,SAAS,EAAE,UAAU,YAAY,CAAC,OAAO,6CAA6C,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,GAAG,uCAAuC,WAAW,iBAAiB;iBACvN;gBACD,KAAK,EAAE;oBACL,sDAAsD,WAAW,kEAAkE,YAAY,CAAC,OAAO,EAAE;oBACzJ,wCAAwC;iBACzC;aACF;YACD,OAAO,EAAE;gBACP,IAAI,EAAE,2BAA2B;gBACjC,MAAM,EAAE,MAAM;gBACd,MAAM,EAAE;oBACN,KAAK,EAAE,GAAG;oBACV,SAAS,EAAE,yBAAyB,QAAQ,EAAE;iBAC/C;gBACD,KAAK,EAAE;oBACL,oEAAoE;oBACpE,wDAAwD;iBACzD;aACF;SACF,CAAC;QAEF,MAAM,YAAY,GAAG,aAAa,CAAC,gBAAgB,CAAC,IAAI,aAAa,CAAC,OAAO,CAAC;QAE9E,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE,YAAY,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YACzJ,OAAO;QACT,CAAC;QAED,GAAG,CAAC,OAAO,CAAC,kBAAkB,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;QACnD,GAAG,CAAC,KAAK,EAAE,CAAC;QACZ,GAAG,CAAC,IAAI,CAAC,8DAA8D,CAAC,CAAC;QACzE,GAAG,CAAC,KAAK,EAAE,CAAC;QACZ,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC;YAC/D,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC5D,CAAC;QACD,GAAG,CAAC,KAAK,EAAE,CAAC;QACZ,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACnB,KAAK,MAAM,IAAI,IAAI,YAAY,CAAC,KAAK,EAAE,CAAC;YACtC,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;QAC7B,CAAC;QACD,GAAG,CAAC,KAAK,EAAE,CAAC;QACZ,GAAG,CAAC,GAAG,CAAC,mFAAmF,CAAC,CAAC;IAE/F,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,GAAG,CAAC,KAAK,CAAC,6BAA8B,CAAW,CAAC,OAAO,EAAE,CAAC,CAAC;QAC/D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,IAAsB;IACpD,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;IAC9D,MAAM,EAAE,mBAAmB,EAAE,GAAG,MAAM,MAAM,CAAC,gCAAgC,CAAC,CAAC;IAC/E,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;IAC/E,MAAM,GAAG,GAAG,OAAO,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,gBAAgB,EAAE,CAAC;IAClE,MAAM,MAAM,GAAG,OAAO,IAAI,GAAG,EAAE,MAAM,CAAC;IACtC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IACpE,IAAI,CAAC,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC;QACpB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,2DAA2D,CAAC,CAAC;QAClF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,mEAAmE;IACnE,MAAM,YAAY,CAAC;QACjB,GAAG;QACH,MAAM;QACN,OAAO,EAAE,mBAAmB,CAAC,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC;KACjE,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,IAAuB;IACxD,MAAM,EAAE,yBAAyB,EAAE,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC;IACxE,MAAM,IAAI,GAAG,yBAAyB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IACrE,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,GAAG,CAAC,KAAK,CAAC,qEAAqE,CAAC,CAAC;QACjF,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACrB,OAAO;IACT,CAAC;IACD,GAAG,CAAC,GAAG,CACL,IAAI,CAAC,GAAG;QACN,CAAC,CAAC,8FAA8F;QAChG,CAAC,CAAC,uHAAuH,CAC5H,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"mcp.js","sourceRoot":"","sources":["../../src/commands/mcp.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,gBAAgB,EAAkB,MAAM,sBAAsB,CAAC;AACxE,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAE,oBAAoB,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAUzH;;;;;;;mDAOmD;AACnD,SAAS,gBAAgB,CACvB,GAAc,EACd,IAAiB;IAEjB,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,sCAAsC;IAC1E,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,oBAAoB;IACpD,OAAO;QACL,GAAG,EAAE,WAAW,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,SAAS,CAAC;QACpD,WAAW;QACX,SAAS;KACV,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,MAAM,CAC1B,IAAuC;IAEvC,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,gBAAgB,CAAC,IAAI,CAAC,CAAC;QACzC,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAEpE,yEAAyE;QACzE,yEAAyE;QACzE,mDAAmD;QACnD,sEAAsE;QACtE,2EAA2E;QAC3E,oCAAoC;QACpC,MAAM,aAAa,GAAG;YACpB,aAAa;YACb,gBAAgB;YAChB,QAAQ;YACR,SAAS;YACT,OAAO;YACP,WAAW;YACX,SAAS;SACV,CAAC;QACF,MAAM,SAAS,GACb,IAAI,CAAC,MAAM,IAAI,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC;YAChD,CAAC,CAAC,IAAI,CAAC,MAAM;YACb,CAAC,CAAC,SAAS,CAAC;QAChB,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,MAAM,iBAAiB,CACxD,GAAG,CAAC,MAAM,EACV,GAAG,CAAC,MAAM,EACV,SAAS,EACT,EAAE,eAAe,EAAE,KAAK,EAAE,CAC3B,CAAC;QAEF,wEAAwE;QACxE,wEAAwE;QACxE,2EAA2E;QAC3E,0EAA0E;QAC1E,gEAAgE;QAChE,MAAM,mBAAmB,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE;YAC1E,KAAK,EAAE,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE,+BAA+B;SAC3D,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAEnB,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CACT,IAAI,CAAC,SAAS,CACZ;gBACE,GAAG;gBACH,MAAM,EAAE,SAAS;gBACjB,WAAW;gBACX,WAAW,EAAE,WAAW,IAAI,IAAI;gBAChC,SAAS,EAAE,SAAS,IAAI,IAAI;aAC7B,EACD,IAAI,EACJ,CAAC,CACF,CACF,CAAC;YACF,OAAO;QACT,CAAC;QAED,kBAAkB,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC,CAAC;IAC9E,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,GAAG,CAAC,KAAK,CAAC,mCAAoC,CAAW,CAAC,OAAO,EAAE,CAAC,CAAC;QACrE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,IAAiB;IAC/C,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,gBAAgB,CAAC,IAAI,CAAC,CAAC;QACzC,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QACzD,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAE9C,uEAAuE;QACvE,2EAA2E;QAC3E,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,IAAI,SAA6B,CAAC;QAClC,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,MAAM,EAAE;gBACxC,OAAO,EAAE,EAAE,MAAM,EAAE,kBAAkB,EAAE;gBACvC,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC;aACnC,CAAC,CAAC;YACH,SAAS,GAAG,GAAG,CAAC,EAAE,CAAC;YACnB,IAAI,GAAG,CAAC,EAAE,EAAE,CAAC;gBACX,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAA2B,CAAC;gBAC1D,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;YAC7B,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,SAAS,GAAG,KAAK,CAAC;QACpB,CAAC;QAED,iCAAiC;QACjC,IAAI,QAAQ,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,sBAAsB,EAAE;gBACxD,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,GAAG,CAAC,MAAM,EAAE,EAAE;gBAClD,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC;aACnC,CAAC,CAAC;YACH,QAAQ,GAAG,GAAG,CAAC,EAAE,CAAC;QACpB,CAAC;QAAC,MAAM,CAAC;YACP,QAAQ,GAAG,KAAK,CAAC;QACnB,CAAC;QAED,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CACT,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CACjE,CAAC;YACF,OAAO;QACT,CAAC;QAED,GAAG,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;QACpC,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,GAAG,EAAE,CAAC,CAAC;QACnD,OAAO,CAAC,GAAG,CACT,KAAK,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,GAAG,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,SAAS,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAChK,CAAC;QACF,OAAO,CAAC,GAAG,CACT,KAAK,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,mBAAmB,CAAC,EAAE,CACnG,CAAC;QACF,IAAI,WAAW;YACb,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,KAAK,WAAW,EAAE,CAAC,CAAC;QAE7D,IAAI,SAAS,IAAI,QAAQ,EAAE,CAAC;YAC1B,GAAG,CAAC,OAAO,CAAC,qDAAqD,CAAC,CAAC;QACrE,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,KAAK,CACP,4GAA4G,CAC7G,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,GAAG,CAAC,KAAK,CAAC,kBAAmB,CAAW,CAAC,OAAO,EAAE,CAAC,CAAC;QACpD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,cAAc,CAAC,MAAc;IAC3C,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC;QACtC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC/B,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,KAAK,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YAC9C,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa;YAC3C,mEAAmE;YACnE,mEAAmE;YACnE,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACxE,OAAO,EAAE,QAAQ,EAAE,eAAe,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC5D,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,8BAA8B;IAChC,CAAC;IACD,OAAO,EAAE,QAAQ,EAAE,2BAA2B,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;AACnE,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,IAAsC;IAEtC,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,wBAAwB,CAAC;QAC5C,mEAAmE;QACnE,IAAI,MAAM,GAAgD,kBAAkB,CAAC;QAC7E,IAAI,QAAQ,GAAG,UAAU,CAAC;QAE1B,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACzC,MAAM,GAAG,UAAU,CAAC;QACtB,CAAC;aAAM,CAAC;YACN,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,MAAM,gBAAgB,CAAC,IAAI,CAAC,CAAC;gBACzC,MAAM,OAAO,GAAG,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBAC3C,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;oBACpB,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;oBAC5B,MAAM,GAAG,SAAS,CAAC;gBACrB,CAAC;qBAAM,CAAC;oBACN,wEAAwE;oBACxE,QAAQ,GAAG,UAAU,CAAC;oBACtB,MAAM,GAAG,kBAAkB,CAAC;gBAC9B,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,wEAAwE;gBACxE,QAAQ,GAAG,UAAU,CAAC;gBACtB,MAAM,GAAG,kBAAkB,CAAC;YAC9B,CAAC;QACH,CAAC;QAED,MAAM,aAAa,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAClD,MAAM,GAAG,GAAG,eAAe,CAAC,aAAa,CAAC,CAAC;QAE3C,MAAM,KAAK,GAAG;YACZ,+DAA+D;YAC/D,aAAa;YACb,QAAQ,GAAG,EAAE;YACb,wDAAwD;YACxD,+EAA+E;YAC/E,mFAAmF;SACpF,CAAC;QAEF,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CACT,IAAI,CAAC,SAAS,CACZ,EAAE,GAAG,EAAE,QAAQ,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,EACxD,IAAI,EACJ,CAAC,CACF,CACF,CAAC;YACF,OAAO;QACT,CAAC;QAED,GAAG,CAAC,OAAO,CAAC,oCAAoC,CAAC,CAAC;QAClD,IAAI,MAAM,KAAK,kBAAkB,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YACjD,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,GAAG,CACP,8BAA8B,eAAe,kEAAkE,CAChH,CACF,CAAC;QACJ,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;QAC9C,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC;QAChF,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,GAAG,CACP,qHAAqH,CACtH,CACF,CAAC;IACJ,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,GAAG,CAAC,KAAK,CAAC,6CAA8C,CAAW,CAAC,OAAO,EAAE,CAAC,CAAC;QAC/E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,MAAc,EACd,IAA+G;IAE/G,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QACpF,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,gBAAgB,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAEvH,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,MAAM,iBAAiB,CACxD,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,MAAM,EACb,SAAS,EACT,EAAE,eAAe,EAAE,KAAK,EAAE,CAC3B,CAAC;QAEF,MAAM,gBAAgB,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAChE,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,0EAA0E;QAC1E,wEAAwE;QACxE,MAAM,QAAQ,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;QACtC,MAAM,YAAY,GAAG,oBAAoB,CAAC,GAAG,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;QAEvE,MAAM,aAAa,GAAyH;YAC1I,OAAO,EAAE;gBACP,IAAI,EAAE,mBAAmB;gBACzB,MAAM,EAAE,MAAM;gBACd,MAAM,EAAE;oBACN,gBAAgB,EAAE,OAAO;oBACzB,KAAK,EAAE,GAAG;oBACV,WAAW,EAAE,SAAS;oBACtB,SAAS,EAAE,GAAG,QAAQ,eAAe,YAAY,CAAC,OAAO,GAAG;iBAC7D;gBACD,KAAK,EAAE;oBACL,wDAAwD;oBACxD,kDAAkD;oBAClD,wFAAwF,YAAY,CAAC,OAAO,SAAS;iBACtH;aACF;YACD,YAAY,EAAE;gBACZ,IAAI,EAAE,mCAAmC;gBACzC,MAAM,EAAE,MAAM;gBACd,MAAM,EAAE;oBACN,gBAAgB,EAAE,uBAAuB;oBACzC,KAAK,EAAE,eAAe;oBACtB,WAAW,EAAE,OAAO;oBACpB,SAAS,EAAE,4BAA4B;iBACxC;gBACD,KAAK,EAAE;oBACL,wDAAwD;oBACxD,qDAAqD;oBACrD,+EAA+E;iBAChF;aACF;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,4BAA4B;gBAClC,MAAM,EAAE,MAAM;gBACd,MAAM,EAAE;oBACN,aAAa,EAAE,sBAAsB;oBACrC,gBAAgB,EAAE,qBAAqB;oBACvC,KAAK,EAAE,GAAG;oBACV,cAAc,EAAE,6BAA6B,QAAQ,KAAK;oBAC1D,qBAAqB,EAAE,IAAI;oBAC3B,SAAS,EAAE,MAAM;iBAClB;gBACD,KAAK,EAAE;oBACL,8EAA8E,QAAQ,2BAA2B,YAAY,CAAC,OAAO,SAAS;oBAC9I,iDAAiD;oBACjD,8CAA8C;iBAC/C;aACF;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,mBAAmB;gBACzB,MAAM,EAAE,MAAM;gBACd,MAAM,EAAE;oBACN,aAAa,EAAE,oBAAoB;oBACnC,sBAAsB,EAAE,GAAG;oBAC3B,wCAAwC,EAAE,iBAAiB,WAAW,GAAG;iBAC1E;gBACD,KAAK,EAAE;oBACL,6DAA6D;oBAC7D,+DAA+D;iBAChE;aACF;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,kDAAkD;gBACxD,MAAM,EAAE,MAAM;gBACd,MAAM,EAAE;oBACN,aAAa,EAAE,0DAA0D;oBACzE,oBAAoB,EAAE,MAAM;oBAC5B,mBAAmB,EAAE,GAAG;oBACxB,qCAAqC,EAAE,iBAAiB,WAAW,GAAG;iBACvE;gBACD,KAAK,EAAE;oBACL,sDAAsD;oBACtD,2EAA2E;oBAC3E,oDAAoD;iBACrD;aACF;YACD,gBAAgB,EAAE;gBAChB,IAAI,EAAE,+BAA+B;gBACrC,MAAM,EAAE,OAAO;gBACf,MAAM,EAAE;oBACN,aAAa,EAAE,yEAAyE;oBACxF,0BAA0B,EAAE,KAAK;oBACjC,uBAAuB,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;oBACrD,iCAAiC,EAAE,UAAU,QAAQ,sCAAsC,YAAY,CAAC,QAAQ,GAAG;iBACpH;gBACD,KAAK,EAAE;oBACL,iEAAiE;oBACjE,kDAAkD;oBAClD,yEAAyE;iBAC1E;aACF;YACD,aAAa,EAAE;gBACb,IAAI,EAAE,+BAA+B;gBACrC,MAAM,EAAE,MAAM;gBACd,MAAM,EAAE;oBACN,SAAS,EAAE,UAAU,YAAY,CAAC,OAAO,6CAA6C,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,GAAG,uCAAuC,WAAW,iBAAiB;iBACvN;gBACD,KAAK,EAAE;oBACL,sDAAsD,WAAW,kEAAkE,YAAY,CAAC,OAAO,EAAE;oBACzJ,wCAAwC;iBACzC;aACF;YACD,OAAO,EAAE;gBACP,IAAI,EAAE,2BAA2B;gBACjC,MAAM,EAAE,MAAM;gBACd,MAAM,EAAE;oBACN,KAAK,EAAE,GAAG;oBACV,SAAS,EAAE,yBAAyB,QAAQ,EAAE;iBAC/C;gBACD,KAAK,EAAE;oBACL,oEAAoE;oBACpE,wDAAwD;iBACzD;aACF;SACF,CAAC;QAEF,MAAM,YAAY,GAAG,aAAa,CAAC,gBAAgB,CAAC,IAAI,aAAa,CAAC,OAAO,CAAC;QAE9E,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE,YAAY,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YACzJ,OAAO;QACT,CAAC;QAED,GAAG,CAAC,OAAO,CAAC,kBAAkB,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;QACnD,GAAG,CAAC,KAAK,EAAE,CAAC;QACZ,GAAG,CAAC,IAAI,CAAC,8DAA8D,CAAC,CAAC;QACzE,GAAG,CAAC,KAAK,EAAE,CAAC;QACZ,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC;YAC/D,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC5D,CAAC;QACD,GAAG,CAAC,KAAK,EAAE,CAAC;QACZ,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACnB,KAAK,MAAM,IAAI,IAAI,YAAY,CAAC,KAAK,EAAE,CAAC;YACtC,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;QAC7B,CAAC;QACD,GAAG,CAAC,KAAK,EAAE,CAAC;QACZ,GAAG,CAAC,GAAG,CAAC,mFAAmF,CAAC,CAAC;IAE/F,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,GAAG,CAAC,KAAK,CAAC,6BAA8B,CAAW,CAAC,OAAO,EAAE,CAAC,CAAC;QAC/D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,IAAsB;IACpD,MAAM,EAAE,gBAAgB,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;IAChF,MAAM,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,gCAAgC,CAAC,CAAC;IAC/F,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;IAC/E,MAAM,GAAG,GAAG,OAAO,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,gBAAgB,EAAE,CAAC;IAClE,MAAM,MAAM,GAAG,OAAO,IAAI,GAAG,EAAE,MAAM,CAAC;IACtC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IACpE,IAAI,CAAC,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC;QACpB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,2DAA2D,CAAC,CAAC;QAClF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,mEAAmE;IACnE,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC;IACrD,MAAM,YAAY,CAAC;QACjB,GAAG;QACH,MAAM;QACN,8EAA8E;QAC9E,OAAO,EAAE,gBAAgB,CAAC,SAAS,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QAChG,yEAAyE;QACzE,SAAS,EAAE,gBAAgB,CAAC,SAAS,CAAC;KACvC,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,IAAuB;IACxD,MAAM,EAAE,yBAAyB,EAAE,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC;IACxE,MAAM,IAAI,GAAG,yBAAyB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IACrE,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,GAAG,CAAC,KAAK,CAAC,qEAAqE,CAAC,CAAC;QACjF,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACrB,OAAO;IACT,CAAC;IACD,GAAG,CAAC,GAAG,CACL,IAAI,CAAC,GAAG;QACN,CAAC,CAAC,8FAA8F;QAChG,CAAC,CAAC,uHAAuH,CAC5H,CAAC;AACJ,CAAC"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,59 @@
1
+ import { afterEach, beforeEach, describe, expect, it, vi } from "vitest";
2
+ /**
3
+ * `synap observe` must only send a `uo_category` the pod accepts. The pod's
4
+ * enum is USER_OBSERVATION_CATEGORIES (synap-backend
5
+ * packages/api/src/services/knowledge/remember-fact.ts); a value outside it is
6
+ * filed as a proposal that then fails on approval ("not in enum"), as five
7
+ * founder preferences did on 2026-10-27 with the old default `preference`.
8
+ * Driven through the real command with the hub POST captured at the client
9
+ * boundary. Not covered: a future change of the pod's enum (this list mirrors
10
+ * it by hand; the pod remains the authority).
11
+ */
12
+ const posted = [];
13
+ vi.mock("../lib/hub-client.js", () => ({
14
+ resolveHubConfig: async () => ({}),
15
+ hubGet: async () => ({}),
16
+ hubPost: async (_path, body) => {
17
+ posted.push(body);
18
+ return { id: "e1", status: "proposed" };
19
+ },
20
+ renderHubError: () => { },
21
+ }));
22
+ vi.mock("../lib/capture-lane.js", () => ({ reportWrite: async () => { } }));
23
+ import { observeWrite } from "./observe.js";
24
+ const POD_ENUM = [
25
+ "working_style",
26
+ "communication",
27
+ "focus",
28
+ "preferences",
29
+ "habits",
30
+ "technical",
31
+ ];
32
+ const categoryOf = (i) => posted[i].properties.uo_category;
33
+ beforeEach(() => {
34
+ posted.length = 0;
35
+ vi.spyOn(process, "exit").mockImplementation(((code) => {
36
+ throw new Error(`process.exit(${code})`);
37
+ }));
38
+ vi.spyOn(console, "error").mockImplementation(() => { });
39
+ });
40
+ afterEach(() => vi.restoreAllMocks());
41
+ describe("synap observe — the category it sends", () => {
42
+ it("defaults to a category the pod accepts", async () => {
43
+ await observeWrite("Prefers async written updates", {});
44
+ expect(posted).toHaveLength(1);
45
+ expect(POD_ENUM).toContain(categoryOf(0));
46
+ expect(categoryOf(0)).toBe("preferences");
47
+ });
48
+ it("accepts every category of the pod's enum, unchanged", async () => {
49
+ for (const category of POD_ENUM) {
50
+ await observeWrite(`An observation about ${category}`, { category });
51
+ }
52
+ expect(posted.map((_, i) => categoryOf(i))).toEqual(POD_ENUM);
53
+ });
54
+ it("refuses a category the pod would reject, before anything is sent", async () => {
55
+ await expect(observeWrite("x", { category: "preference" })).rejects.toThrow("process.exit(1)");
56
+ expect(posted).toHaveLength(0);
57
+ });
58
+ });
59
+ //# sourceMappingURL=observe.category.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"observe.category.test.js","sourceRoot":"","sources":["../../src/commands/observe.category.test.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,6 @@
1
1
  import { type BaseOpts } from "./data.js";
2
+ type ObserveCategory = "working_style" | "communication" | "focus" | "preferences" | "habits" | "technical";
3
+ export declare const VALID_CATEGORIES: ObserveCategory[];
2
4
  export declare function observeWrite(text: string, opts: BaseOpts & {
3
5
  category?: string;
4
6
  confidence?: string;
@@ -7,3 +9,4 @@ export declare function observeRecall(query: string, opts: BaseOpts & {
7
9
  category?: string;
8
10
  limit?: string;
9
11
  }): Promise<void>;
12
+ export {};
@@ -1,21 +1,23 @@
1
1
  import chalk from "chalk";
2
+ import { shortenTitle } from "@synap-core/types/titles";
2
3
  import { log } from "../utils/logger.js";
3
4
  import { resolveHubConfig, hubGet, hubPost, renderHubError } from "../lib/hub-client.js";
4
5
  import { unwrapList } from "../lib/unwrapList.js";
5
6
  import { reportWrite } from "../lib/capture-lane.js";
6
7
  import { parseLimit } from "./data.js";
7
- const VALID_CATEGORIES = [
8
+ export const VALID_CATEGORIES = [
8
9
  "working_style",
9
10
  "communication",
10
11
  "focus",
12
+ "preferences",
13
+ "habits",
11
14
  "technical",
12
- "preference",
13
15
  ];
14
16
  // ─── observeWrite ─────────────────────────────────────────────────────────────
15
17
  export async function observeWrite(text, opts) {
16
18
  try {
17
19
  const cfg = await resolveHubConfig(opts);
18
- const category = (opts.category ?? "preference");
20
+ const category = (opts.category ?? "preferences");
19
21
  if (!VALID_CATEGORIES.includes(category)) {
20
22
  console.error(chalk.red(`Invalid category: ${category}. Must be one of: ${VALID_CATEGORIES.join(" | ")}`));
21
23
  process.exit(1);
@@ -27,7 +29,7 @@ export async function observeWrite(text, opts) {
27
29
  }
28
30
  const res = await hubPost("/entities", {
29
31
  profileSlug: "user_observation",
30
- title: text.slice(0, 80),
32
+ title: shortenTitle(text),
31
33
  properties: {
32
34
  uo_observation: text,
33
35
  uo_category: category,
@@ -79,7 +81,7 @@ export async function observeRecall(query, opts) {
79
81
  log.blank();
80
82
  for (const e of entities) {
81
83
  const props = (e.properties ?? {});
82
- const category = chalk.cyan(String(props.uo_category ?? "preference"));
84
+ const category = chalk.cyan(String(props.uo_category ?? "preferences"));
83
85
  const observation = String(props.uo_observation ?? e.title ?? "");
84
86
  const confidence = Number(props.uo_confidence ?? 0.5).toFixed(2);
85
87
  log.info(`${category} ${chalk.dim(`conf:${confidence}`)} ${observation}`);
@@ -1 +1 @@
1
- {"version":3,"file":"observe.js","sourceRoot":"","sources":["../../src/commands/observe.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"observe.js","sourceRoot":"","sources":["../../src/commands/observe.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,37 @@
1
+ import { beforeEach, describe, expect, it, vi } from "vitest";
2
+ /**
3
+ * `synap observe` names the observation through the one title door
4
+ * (`shortenTitle`, `@synap-core/types/titles`): first line, word boundary, no
5
+ * "…" — never `text.slice(0, 80)`. Driven through the real command with the
6
+ * hub POST captured at the client boundary.
7
+ */
8
+ const posted = [];
9
+ vi.mock("../lib/hub-client.js", () => ({
10
+ resolveHubConfig: async () => ({}),
11
+ hubGet: async () => ({}),
12
+ hubPost: async (_path, body) => {
13
+ posted.push(body);
14
+ return { id: "e1", status: "proposed" };
15
+ },
16
+ renderHubError: () => { },
17
+ }));
18
+ vi.mock("../lib/capture-lane.js", () => ({ reportWrite: async () => { } }));
19
+ import { observeWrite } from "./observe.js";
20
+ beforeEach(() => {
21
+ posted.length = 0;
22
+ });
23
+ describe("synap observe — the stored title", () => {
24
+ it("is the first line, cut at a word boundary, never mid-word", async () => {
25
+ const text = "Prefers async written updates over meetings for anything that is not urgent or blocking the team\nSeen three times this week.";
26
+ await observeWrite(text, {});
27
+ expect(posted).toHaveLength(1);
28
+ const title = posted[0].title;
29
+ expect(title.length).toBeLessThanOrEqual(80);
30
+ expect(text.startsWith(title)).toBe(true);
31
+ expect(text[title.length]).toBe(" ");
32
+ expect(title).not.toMatch(/(…|\.\.\.)$/);
33
+ // The full observation is still stored.
34
+ expect(posted[0].properties.uo_observation).toBe(text);
35
+ });
36
+ });
37
+ //# sourceMappingURL=observe.title.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"observe.title.test.js","sourceRoot":"","sources":["../../src/commands/observe.title.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAE9D;;;;;GAKG;AACH,MAAM,MAAM,GAAmC,EAAE,CAAC;AAClD,EAAE,CAAC,IAAI,CAAC,sBAAsB,EAAE,GAAG,EAAE,CAAC,CAAC;IACrC,gBAAgB,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;IAClC,MAAM,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;IACxB,OAAO,EAAE,KAAK,EAAE,KAAa,EAAE,IAA6B,EAAE,EAAE;QAC9D,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClB,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;IAC1C,CAAC;IACD,cAAc,EAAE,GAAG,EAAE,GAAE,CAAC;CACzB,CAAC,CAAC,CAAC;AACJ,EAAE,CAAC,IAAI,CAAC,wBAAwB,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,IAAI,EAAE,GAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAE3E,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE5C,UAAU,CAAC,GAAG,EAAE;IACd,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;AACpB,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,kCAAkC,EAAE,GAAG,EAAE;IAChD,EAAE,CAAC,2DAA2D,EAAE,KAAK,IAAI,EAAE;QACzE,MAAM,IAAI,GACR,+HAA+H,CAAC;QAClI,MAAM,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC7B,MAAM,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAC/B,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAE,CAAC,KAAe,CAAC;QACzC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC;QAC7C,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1C,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACrC,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QACzC,wCAAwC;QACxC,MAAM,CACH,MAAM,CAAC,CAAC,CAAE,CAAC,UAAsC,CAAC,cAAc,CAClE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACf,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -135,6 +135,15 @@ export async function runPlaybook(ref, opts) {
135
135
  }
136
136
  return;
137
137
  }
138
+ if (r.status === "draft") {
139
+ if (!opts.json) {
140
+ const session = r.session;
141
+ log.warn(`"${pb.name}" is waiting as a draft — it does not start until you accept it.`);
142
+ if (session?.id)
143
+ log.hint(`Accept it in your sessions: synap open session ${session.id}`);
144
+ }
145
+ return;
146
+ }
138
147
  if (r.status === "blocked" || r.status === "skipped") {
139
148
  if (!opts.json) {
140
149
  log.error(typeof r.message === "string" ? r.message : `Nothing ran (${String(r.status)}).`);
@@ -1 +1 @@
1
- {"version":3,"file":"playbook.js","sourceRoot":"","sources":["../../src/commands/playbook.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"playbook.js","sourceRoot":"","sources":["../../src/commands/playbook.ts"],"names":[],"mappings":"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"}
@@ -35,8 +35,13 @@ export declare function podsReconnect(name?: string): Promise<void>;
35
35
  * the key if the pod genuinely rejects it (keys survive a domain change, so a
36
36
  * re-auth is usually unnecessary). Nothing is written until both checks pass, so
37
37
  * a typo or a not-yet-live domain leaves the working profile untouched.
38
+ *
39
+ * Resolves true only when the profile was written. Every other outcome is
40
+ * false, with what is left to do printed: the caller exits non-zero (a fix that
41
+ * did not happen is not a success). Without a terminal nothing is asked: a
42
+ * prompt on a closed stdin never answers, and node exits 0 mid-await.
38
43
  */
39
44
  export declare function podsUpdate(name: string, newUrlArg?: string, opts?: {
40
45
  url?: string;
41
46
  yes?: boolean;
42
- }): Promise<void>;
47
+ }): Promise<boolean>;
@@ -19,6 +19,7 @@ import { checkPodHealth, addPodProfile, setActivePod, setSurfacePod, removePodPr
19
19
  import { samePodOrigin } from "../lib/project-ref.js";
20
20
  import { TARGETS, writeMcpServerEntry, writeClaudeCodeEnv, } from "../lib/targets.js";
21
21
  import { renderNextSteps, FLOW } from "../lib/next-steps.js";
22
+ import { mcpRemoteArgs } from "../lib/mcp-snippets.js";
22
23
  // ─── list ─────────────────────────────────────────────────────────────────────
23
24
  export async function podsList() {
24
25
  const profiles = listPodProfiles();
@@ -28,12 +29,16 @@ export async function podsList() {
28
29
  }
29
30
  log.heading("Configured pods");
30
31
  const checks = await Promise.all(profiles.map(async (p) => {
31
- const health = await checkPodHealth(p.config.podUrl).catch(() => ({ healthy: false }));
32
- return { ...p, healthy: health.healthy };
32
+ const health = await checkPodHealth(p.config.podUrl).catch(() => ({ healthy: false, moved: false }));
33
+ return { ...p, healthy: health.healthy, moved: Boolean(health.moved) };
33
34
  }));
34
35
  for (const p of checks) {
35
36
  const active = p.active ? chalk.green(" ● active") : chalk.dim(" ○");
36
- const health = p.healthy ? chalk.green("healthy") : chalk.red("unreachable");
37
+ const health = p.healthy
38
+ ? chalk.green("healthy")
39
+ : p.moved
40
+ ? chalk.yellow("moved — run: synap doctor --fix")
41
+ : chalk.red("unreachable");
37
42
  const label = p.config.label ? chalk.dim(` (${p.config.label})`) : "";
38
43
  console.log(` ${chalk.bold(p.name.padEnd(14))}${active} ${health} ${chalk.dim(p.config.podUrl)}${label}`);
39
44
  }
@@ -208,7 +213,7 @@ function isSupportedUseSurface(s) {
208
213
  }
209
214
  /**
210
215
  * Raycast's support dir — its presence is our "is Raycast installed" gate.
211
- * Mirrors `raycastSupportDir()` in lib/targets.ts, which is private to that file.
216
+ * (The one place the CLI looks for Raycast's support dir.)
212
217
  */
213
218
  function raycastSupportDir() {
214
219
  return path.join(os.homedir(), "Library", "Application Support", "com.raycast.macos");
@@ -252,7 +257,9 @@ export async function podsUse(name, opts = {}) {
252
257
  if (desktopPath && fs.existsSync(desktopPath)) {
253
258
  writeMcpServerEntry(desktopPath, "synap", {
254
259
  command: "npx",
255
- args: ["-y", "mcp-remote", `${podConfig.podUrl.replace(/\/$/, "")}/mcp`, "--header", `Authorization: Bearer ${podConfig.hubApiKey}`],
260
+ // Pinned bridge; the key rides in env (0600 file), never in argv.
261
+ args: mcpRemoteArgs(`${podConfig.podUrl.replace(/\/$/, "")}/mcp`),
262
+ env: { SYNAP_AUTH: `Bearer ${podConfig.hubApiKey}` },
256
263
  });
257
264
  updated.push("Claude Desktop");
258
265
  }
@@ -305,7 +312,8 @@ async function applySurfaceConfig(surface, podConfig) {
305
312
  if (p && fs.existsSync(p)) {
306
313
  writeMcpServerEntry(p, "synap", {
307
314
  command: "npx",
308
- args: ["-y", "mcp-remote", `${podConfig.podUrl.replace(/\/$/, "")}/mcp`, "--header", `Authorization: Bearer ${podConfig.hubApiKey}`],
315
+ args: mcpRemoteArgs(`${podConfig.podUrl.replace(/\/$/, "")}/mcp`),
316
+ env: { SYNAP_AUTH: `Bearer ${podConfig.hubApiKey}` },
309
317
  });
310
318
  log.success("Claude Desktop MCP config updated.");
311
319
  log.dim("Quit + relaunch Claude Desktop to apply.");
@@ -511,18 +519,24 @@ async function verifyKeyAgainstPod(podUrl, apiKey) {
511
519
  * the key if the pod genuinely rejects it (keys survive a domain change, so a
512
520
  * re-auth is usually unnecessary). Nothing is written until both checks pass, so
513
521
  * a typo or a not-yet-live domain leaves the working profile untouched.
522
+ *
523
+ * Resolves true only when the profile was written. Every other outcome is
524
+ * false, with what is left to do printed: the caller exits non-zero (a fix that
525
+ * did not happen is not a success). Without a terminal nothing is asked: a
526
+ * prompt on a closed stdin never answers, and node exits 0 mid-await.
514
527
  */
515
528
  export async function podsUpdate(name, newUrlArg, opts = {}) {
516
529
  const profiles = listPodProfiles();
517
530
  const profile = profiles.find((p) => p.name === name);
518
531
  if (!profile) {
519
532
  log.error(podNotFoundMessage(name));
520
- return;
533
+ return false;
521
534
  }
522
535
  const currentUrl = profile.config.podUrl;
536
+ const interactive = !opts.yes && Boolean(process.stdin.isTTY);
523
537
  // Resolve the new URL: positional arg > --url > prompt (default = current).
524
538
  let newUrl = (newUrlArg ?? opts.url)?.trim();
525
- if (!newUrl && !opts.yes) {
539
+ if (!newUrl && interactive) {
526
540
  const { url } = await prompts({
527
541
  type: "text",
528
542
  name: "url",
@@ -531,12 +545,12 @@ export async function podsUpdate(name, newUrlArg, opts = {}) {
531
545
  validate: (v) => v.startsWith("http") || "Must be a valid URL (https://…)",
532
546
  });
533
547
  if (!url)
534
- return;
548
+ return false;
535
549
  newUrl = url.trim();
536
550
  }
537
551
  if (!newUrl) {
538
552
  log.error("No new URL provided. Usage: synap pods update <name> <url>");
539
- return;
553
+ return false;
540
554
  }
541
555
  newUrl = newUrl.replace(/\/$/, "");
542
556
  if (newUrl === currentUrl.replace(/\/$/, "")) {
@@ -551,7 +565,7 @@ export async function podsUpdate(name, newUrlArg, opts = {}) {
551
565
  if (!health.healthy) {
552
566
  spinner.fail(`Pod not reachable at ${newUrl} — profile left unchanged.`);
553
567
  log.dim(`Verify the domain is live first: curl -sI ${newUrl}/health`);
554
- return;
568
+ return false;
555
569
  }
556
570
  spinner.succeed(`Pod healthy at ${newUrl}${health.version ? ` (v${health.version})` : ""}`);
557
571
  // 2) Does the EXISTING key still authenticate against the (possibly new) host?
@@ -568,10 +582,16 @@ export async function podsUpdate(name, newUrlArg, opts = {}) {
568
582
  else {
569
583
  // rejected — the key is genuinely refused; a recreate is required.
570
584
  keySpinner.fail("Pod rejected the existing key — it must be recreated.");
571
- if (opts.yes) {
572
- log.warn("Non-interactive (--yes): profile left unchanged so nothing breaks.");
573
- log.dim(`Recreate the key with: synap pods reconnect ${name}`);
574
- return;
585
+ if (!interactive) {
586
+ // Reconnecting asks the person to approve this computer: it needs a
587
+ // terminal. `pods reconnect` would use the saved (old) URL, so a move
588
+ // names the update itself.
589
+ const rerun = newUrl === currentUrl.replace(/\/$/, "")
590
+ ? `synap pods reconnect ${name}`
591
+ : `synap pods update ${name} ${newUrl}`;
592
+ log.warn(`${opts.yes ? "Non-interactive (--yes)" : "No terminal to ask in"}: profile left unchanged (still ${currentUrl}).`);
593
+ log.dim(`Connect this computer again, in a terminal: ${rerun}`);
594
+ return false;
575
595
  }
576
596
  const { recreate } = await prompts({
577
597
  type: "confirm",
@@ -581,7 +601,7 @@ export async function podsUpdate(name, newUrlArg, opts = {}) {
581
601
  });
582
602
  if (!recreate) {
583
603
  log.warn(`URL not updated (old profile kept). Re-run when ready, or: synap pods reconnect ${name}`);
584
- return;
604
+ return false;
585
605
  }
586
606
  // The pod's device flow — the same door as `synap pods reconnect`. It saves
587
607
  // the computer's new key under this profile (at the new URL) itself.
@@ -589,7 +609,7 @@ export async function podsUpdate(name, newUrlArg, opts = {}) {
589
609
  const saved = await connectThisComputer(newUrl, { name });
590
610
  if (!saved) {
591
611
  log.warn("URL not updated (old profile kept). Re-run when ready.");
592
- return;
612
+ return false;
593
613
  }
594
614
  config = saved;
595
615
  log.success("New key issued.");
@@ -612,5 +632,6 @@ export async function podsUpdate(name, newUrlArg, opts = {}) {
612
632
  else {
613
633
  log.dim(`'${name}' is not the active pod. Run 'synap pods use ${name}' to propagate the new URL to agent surfaces.`);
614
634
  }
635
+ return true;
615
636
  }
616
637
  //# sourceMappingURL=pods.js.map