@synap-core/cli 1.8.0 → 1.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (372) hide show
  1. package/dist/commands/agent-chat.d.ts +47 -0
  2. package/dist/commands/agent-chat.js +250 -0
  3. package/dist/commands/agent-chat.js.map +1 -0
  4. package/dist/commands/agent-run.js +3 -4
  5. package/dist/commands/agent-run.js.map +1 -1
  6. package/dist/commands/agents.js +85 -46
  7. package/dist/commands/agents.js.map +1 -1
  8. package/dist/commands/automation.js +2 -1
  9. package/dist/commands/automation.js.map +1 -1
  10. package/dist/commands/bridge-setup.d.ts +66 -0
  11. package/dist/commands/bridge-setup.js +1112 -0
  12. package/dist/commands/bridge-setup.js.map +1 -0
  13. package/dist/commands/cap-connections.d.ts +28 -0
  14. package/dist/commands/cap-connections.js +224 -0
  15. package/dist/commands/cap-connections.js.map +1 -0
  16. package/dist/commands/capability.d.ts +89 -0
  17. package/dist/commands/capability.js +1594 -0
  18. package/dist/commands/capability.js.map +1 -0
  19. package/dist/commands/centrality.d.ts +20 -0
  20. package/dist/commands/centrality.js +95 -0
  21. package/dist/commands/centrality.js.map +1 -0
  22. package/dist/commands/connect.d.ts +2 -0
  23. package/dist/commands/connect.js +16 -35
  24. package/dist/commands/connect.js.map +1 -1
  25. package/dist/commands/context.js +6 -7
  26. package/dist/commands/context.js.map +1 -1
  27. package/dist/commands/data-extra.d.ts +1 -0
  28. package/dist/commands/data-extra.js +41 -14
  29. package/dist/commands/data-extra.js.map +1 -1
  30. package/dist/commands/data.d.ts +4 -4
  31. package/dist/commands/data.js +254 -187
  32. package/dist/commands/data.js.map +1 -1
  33. package/dist/commands/diagnose.d.ts +20 -0
  34. package/dist/commands/diagnose.js +186 -0
  35. package/dist/commands/diagnose.js.map +1 -0
  36. package/dist/commands/digest.d.ts +17 -0
  37. package/dist/commands/digest.js +122 -0
  38. package/dist/commands/digest.js.map +1 -0
  39. package/dist/commands/discover.d.ts +2 -0
  40. package/dist/commands/discover.js +25 -8
  41. package/dist/commands/discover.js.map +1 -1
  42. package/dist/commands/doc.d.ts +14 -0
  43. package/dist/commands/doc.js +61 -4
  44. package/dist/commands/doc.js.map +1 -1
  45. package/dist/commands/doctor.d.ts +21 -0
  46. package/dist/commands/doctor.js +189 -0
  47. package/dist/commands/doctor.js.map +1 -0
  48. package/dist/commands/events.js +5 -2
  49. package/dist/commands/events.js.map +1 -1
  50. package/dist/commands/explain.d.ts +1 -1
  51. package/dist/commands/explain.js +18 -15
  52. package/dist/commands/explain.js.map +1 -1
  53. package/dist/commands/facet.d.ts +29 -0
  54. package/dist/commands/facet.js +113 -0
  55. package/dist/commands/facet.js.map +1 -0
  56. package/dist/commands/graph.js +7 -4
  57. package/dist/commands/graph.js.map +1 -1
  58. package/dist/commands/import.d.ts +38 -0
  59. package/dist/commands/import.js +471 -0
  60. package/dist/commands/import.js.map +1 -0
  61. package/dist/commands/init.js +35 -16
  62. package/dist/commands/init.js.map +1 -1
  63. package/dist/commands/keys.js +3 -4
  64. package/dist/commands/keys.js.map +1 -1
  65. package/dist/commands/knowledge.d.ts +8 -0
  66. package/dist/commands/knowledge.js +308 -33
  67. package/dist/commands/knowledge.js.map +1 -1
  68. package/dist/commands/launch.d.ts +50 -0
  69. package/dist/commands/launch.js +790 -0
  70. package/dist/commands/launch.js.map +1 -0
  71. package/dist/commands/lens.d.ts +45 -0
  72. package/dist/commands/lens.js +386 -0
  73. package/dist/commands/lens.js.map +1 -0
  74. package/dist/commands/market-authoring.d.ts +45 -0
  75. package/dist/commands/market-authoring.js +225 -0
  76. package/dist/commands/market-authoring.js.map +1 -0
  77. package/dist/commands/market.d.ts +224 -0
  78. package/dist/commands/market.js +1643 -0
  79. package/dist/commands/market.js.map +1 -0
  80. package/dist/commands/mcp.d.ts +64 -0
  81. package/dist/commands/mcp.js +265 -0
  82. package/dist/commands/mcp.js.map +1 -0
  83. package/dist/commands/observe.js +14 -11
  84. package/dist/commands/observe.js.map +1 -1
  85. package/dist/commands/open.d.ts +21 -4
  86. package/dist/commands/open.js +45 -4
  87. package/dist/commands/open.js.map +1 -1
  88. package/dist/commands/pod.d.ts +100 -0
  89. package/dist/commands/pod.js +359 -0
  90. package/dist/commands/pod.js.map +1 -0
  91. package/dist/commands/pods.d.ts +15 -0
  92. package/dist/commands/pods.js +233 -17
  93. package/dist/commands/pods.js.map +1 -1
  94. package/dist/commands/proposals-actions.js +43 -3
  95. package/dist/commands/proposals-actions.js.map +1 -1
  96. package/dist/commands/purge.d.ts +23 -0
  97. package/dist/commands/purge.js +148 -0
  98. package/dist/commands/purge.js.map +1 -0
  99. package/dist/commands/raycast.d.ts +15 -0
  100. package/dist/commands/raycast.js +153 -0
  101. package/dist/commands/raycast.js.map +1 -0
  102. package/dist/commands/sessions.js +47 -22
  103. package/dist/commands/sessions.js.map +1 -1
  104. package/dist/commands/skill-manage.d.ts +21 -0
  105. package/dist/commands/skill-manage.js +195 -0
  106. package/dist/commands/skill-manage.js.map +1 -0
  107. package/dist/commands/skills-commands.js +2 -1
  108. package/dist/commands/skills-commands.js.map +1 -1
  109. package/dist/commands/skills.js +7 -4
  110. package/dist/commands/skills.js.map +1 -1
  111. package/dist/commands/status.d.ts +3 -1
  112. package/dist/commands/status.js +166 -14
  113. package/dist/commands/status.js.map +1 -1
  114. package/dist/commands/statusline.d.ts +24 -0
  115. package/dist/commands/statusline.js +450 -0
  116. package/dist/commands/statusline.js.map +1 -0
  117. package/dist/commands/subscribe.js +2 -2
  118. package/dist/commands/subscribe.js.map +1 -1
  119. package/dist/commands/template.d.ts +42 -0
  120. package/dist/commands/template.js +191 -0
  121. package/dist/commands/template.js.map +1 -0
  122. package/dist/commands/tools.d.ts +30 -0
  123. package/dist/commands/tools.js +315 -0
  124. package/dist/commands/tools.js.map +1 -0
  125. package/dist/commands/upload.d.ts +30 -0
  126. package/dist/commands/upload.js +155 -0
  127. package/dist/commands/upload.js.map +1 -0
  128. package/dist/commands/versions.d.ts +27 -0
  129. package/dist/commands/versions.js +277 -0
  130. package/dist/commands/versions.js.map +1 -0
  131. package/dist/commands/view.js +3 -2
  132. package/dist/commands/view.js.map +1 -1
  133. package/dist/commands/whoami.d.ts +21 -0
  134. package/dist/commands/whoami.js +129 -0
  135. package/dist/commands/whoami.js.map +1 -0
  136. package/dist/index.js +894 -60
  137. package/dist/index.js.map +1 -1
  138. package/dist/lib/approval-poll.d.ts +42 -0
  139. package/dist/lib/approval-poll.js +52 -0
  140. package/dist/lib/approval-poll.js.map +1 -0
  141. package/dist/lib/auth.d.ts +29 -6
  142. package/dist/lib/auth.js +105 -94
  143. package/dist/lib/auth.js.map +1 -1
  144. package/dist/lib/bundle-version.d.ts +11 -0
  145. package/dist/lib/bundle-version.js +33 -0
  146. package/dist/lib/bundle-version.js.map +1 -0
  147. package/dist/lib/capture-lane.d.ts +30 -12
  148. package/dist/lib/capture-lane.js +73 -14
  149. package/dist/lib/capture-lane.js.map +1 -1
  150. package/dist/lib/capture-structure.d.ts +123 -0
  151. package/dist/lib/capture-structure.js +57 -0
  152. package/dist/lib/capture-structure.js.map +1 -0
  153. package/dist/lib/cp-packages.d.ts +177 -0
  154. package/dist/lib/cp-packages.js +389 -0
  155. package/dist/lib/cp-packages.js.map +1 -0
  156. package/dist/lib/describe-lens.d.ts +46 -0
  157. package/dist/lib/describe-lens.js +33 -0
  158. package/dist/lib/describe-lens.js.map +1 -0
  159. package/dist/lib/hub-client.d.ts +91 -1
  160. package/dist/lib/hub-client.js +565 -22
  161. package/dist/lib/hub-client.js.map +1 -1
  162. package/dist/lib/id.d.ts +23 -0
  163. package/dist/lib/id.js +35 -0
  164. package/dist/lib/id.js.map +1 -0
  165. package/dist/lib/installed.d.ts +51 -0
  166. package/dist/lib/installed.js +70 -0
  167. package/dist/lib/installed.js.map +1 -0
  168. package/dist/lib/next-steps.d.ts +61 -0
  169. package/dist/lib/next-steps.js +146 -0
  170. package/dist/lib/next-steps.js.map +1 -0
  171. package/dist/lib/pod.d.ts +144 -22
  172. package/dist/lib/pod.js +302 -64
  173. package/dist/lib/pod.js.map +1 -1
  174. package/dist/lib/project-ref.d.ts +95 -0
  175. package/dist/lib/project-ref.js +144 -0
  176. package/dist/lib/project-ref.js.map +1 -0
  177. package/dist/lib/project.d.ts +35 -0
  178. package/dist/lib/project.js +39 -0
  179. package/dist/lib/project.js.map +1 -0
  180. package/dist/lib/session-lens.d.ts +33 -0
  181. package/dist/lib/session-lens.js +76 -0
  182. package/dist/lib/session-lens.js.map +1 -0
  183. package/dist/lib/skill-import.d.ts +40 -0
  184. package/dist/lib/skill-import.js +203 -0
  185. package/dist/lib/skill-import.js.map +1 -0
  186. package/dist/lib/skills-installer.d.ts +17 -6
  187. package/dist/lib/skills-installer.js +133 -19
  188. package/dist/lib/skills-installer.js.map +1 -1
  189. package/dist/lib/suite.d.ts +28 -0
  190. package/dist/lib/suite.js +29 -0
  191. package/dist/lib/suite.js.map +1 -0
  192. package/dist/lib/superwhisper-import.d.ts +40 -0
  193. package/dist/lib/superwhisper-import.js +389 -0
  194. package/dist/lib/superwhisper-import.js.map +1 -0
  195. package/dist/lib/targets.d.ts +49 -1
  196. package/dist/lib/targets.js +420 -288
  197. package/dist/lib/targets.js.map +1 -1
  198. package/dist/lib/template-file.d.ts +74 -0
  199. package/dist/lib/template-file.js +140 -0
  200. package/dist/lib/template-file.js.map +1 -0
  201. package/dist/lib/unwrapList.d.ts +1 -0
  202. package/dist/lib/unwrapList.js +20 -0
  203. package/dist/lib/unwrapList.js.map +1 -0
  204. package/dist/utils/logger.d.ts +2 -0
  205. package/dist/utils/logger.js +10 -2
  206. package/dist/utils/logger.js.map +1 -1
  207. package/node_modules/@synap/hub-rest-client/dist/index.cjs +414 -34
  208. package/node_modules/@synap/hub-rest-client/dist/index.d.cts +762 -22
  209. package/node_modules/@synap/hub-rest-client/dist/index.d.ts +762 -22
  210. package/node_modules/@synap/hub-rest-client/dist/index.js +414 -34
  211. package/node_modules/@synap/hub-rest-client/package.json +1 -1
  212. package/node_modules/@synap/hub-rest-client/src/client.ts +525 -37
  213. package/node_modules/@synap/hub-rest-client/src/index.ts +42 -0
  214. package/node_modules/@synap/hub-rest-client/src/setup.ts +57 -1
  215. package/node_modules/@synap/hub-rest-client/src/types.ts +697 -37
  216. package/package.json +11 -5
  217. package/skills/agent-os/SKILL.md +218 -0
  218. package/skills/manifest.json +5 -0
  219. package/skills/onboard/SKILL.md +193 -0
  220. package/skills/synap/SKILL.md +1284 -58
  221. package/skills/synap/_order.txt +37 -0
  222. package/skills/synap/_skill.yaml +24 -0
  223. package/skills/synap/authentication.md +10 -0
  224. package/skills/synap/automations.md +264 -0
  225. package/skills/synap/capabilities.md +107 -0
  226. package/skills/synap/capture.md +50 -142
  227. package/skills/synap/cli-operations.md +107 -0
  228. package/skills/synap/common-mistakes.md +13 -0
  229. package/skills/synap/content-os.md +83 -0
  230. package/skills/synap/creative-loop.md +43 -0
  231. package/skills/synap/crm.md +117 -0
  232. package/skills/synap/diagnostics.md +35 -0
  233. package/skills/synap/digesting-a-channel.md +63 -0
  234. package/skills/synap/document-embeds.md +123 -0
  235. package/skills/synap/escalation-ladder.md +71 -0
  236. package/skills/synap/focus-sessions.md +47 -0
  237. package/skills/synap/governance-rules.md +64 -0
  238. package/skills/synap/governance.md +6 -6
  239. package/skills/synap/graph-gardening.md +21 -0
  240. package/skills/synap/inline-patterns.md +38 -0
  241. package/skills/synap/lenses.md +38 -0
  242. package/skills/synap/linking-principle.md +39 -0
  243. package/skills/synap/linking.md +1 -0
  244. package/skills/synap/mental-model.md +45 -0
  245. package/skills/synap/more.md +7 -0
  246. package/skills/synap/multi-entity-capture.md +12 -0
  247. package/skills/synap/next-action.md +37 -0
  248. package/skills/synap/north-star.md +17 -0
  249. package/skills/synap/operating-mode-rules.md +45 -0
  250. package/skills/synap/operating-mode.md +9 -0
  251. package/skills/synap/quick-reference.md +67 -0
  252. package/skills/synap/reading.md +43 -0
  253. package/skills/synap/recap.md +21 -0
  254. package/skills/synap/reflexes.md +46 -0
  255. package/skills/synap/response-style.md +21 -0
  256. package/skills/synap/scope.md +13 -0
  257. package/skills/synap/showing.md +17 -0
  258. package/skills/synap/user-model.md +25 -0
  259. package/skills/synap/viewframe-cells.md +290 -0
  260. package/skills/synap/work-flow.md +113 -0
  261. package/skills/synap/worked-examples.md +74 -0
  262. package/skills/synap/workspace-design.md +45 -0
  263. package/skills/synap/workspace-edges.md +49 -0
  264. package/skills/synap/writes.md +213 -0
  265. package/skills/synap-app/SKILL.md +319 -0
  266. package/skills/synap-app/_order.txt +5 -0
  267. package/skills/synap-app/_skill.yaml +20 -0
  268. package/skills/synap-app/creating-the-base-app.md +64 -0
  269. package/skills/synap-app/governance.md +42 -0
  270. package/skills/synap-app/install-commands.md +55 -0
  271. package/skills/synap-app/overview.md +50 -0
  272. package/skills/synap-app/using-the-sdk.md +73 -0
  273. package/skills/synap-market/SKILL.md +335 -0
  274. package/skills/synap-market/_order.txt +5 -0
  275. package/skills/synap-market/_skill.yaml +24 -0
  276. package/skills/synap-market/author-and-publish.md +75 -0
  277. package/skills/synap-market/discover-and-fetch.md +59 -0
  278. package/skills/synap-market/governance-and-catalog.md +56 -0
  279. package/skills/synap-market/install.md +55 -0
  280. package/skills/synap-market/overview.md +51 -0
  281. package/skills/synap-schema/SKILL.md +97 -6
  282. package/skills/synap-schema/_order.txt +13 -0
  283. package/skills/synap-schema/_skill.yaml +22 -0
  284. package/skills/synap-schema/before-you-touch.md +14 -0
  285. package/skills/synap-schema/common-mistakes.md +9 -0
  286. package/skills/synap-schema/creating-profiles.md +17 -0
  287. package/skills/synap-schema/discover-profiles.md +24 -0
  288. package/skills/synap-schema/entity-scope.md +8 -0
  289. package/skills/synap-schema/extend-vs-create.md +31 -0
  290. package/skills/synap-schema/more.md +6 -0
  291. package/skills/synap-schema/overlay-properties.md +22 -0
  292. package/skills/synap-schema/profiles.md +3 -0
  293. package/skills/synap-schema/property-defs.md +29 -0
  294. package/skills/synap-schema/read-before-write.md +50 -0
  295. package/skills/synap-schema/relations.md +18 -0
  296. package/skills/synap-schema/worked-example.md +30 -0
  297. package/skills/synap-ui/SKILL.md +26 -2
  298. package/skills/synap-ui/_order.txt +13 -0
  299. package/skills/synap-ui/_skill.yaml +23 -0
  300. package/skills/synap-ui/ai-companion.md +27 -0
  301. package/skills/synap-ui/arranging-bento.md +8 -0
  302. package/skills/synap-ui/before-you-build.md +20 -0
  303. package/skills/synap-ui/bento-layouts.md +35 -0
  304. package/skills/synap-ui/common-mistakes.md +10 -0
  305. package/skills/synap-ui/creating-views.md +26 -0
  306. package/skills/synap-ui/four-builds.md +24 -0
  307. package/skills/synap-ui/more.md +7 -0
  308. package/skills/synap-ui/proposing-vs-extending.md +11 -0
  309. package/skills/synap-ui/view-list.md +24 -0
  310. package/skills/synap-ui/views.md +3 -0
  311. package/skills/synap-ui/worked-example.md +18 -0
  312. package/skills/synap-ui/workspaces.md +47 -0
  313. package/templates/automations/bookmark-enrichment.automation.json +44 -0
  314. package/templates/automations/mail-feed.automation.json +86 -0
  315. package/templates/automations/url-bookmark-capture.automation.json +70 -0
  316. package/templates/skills/README.md +21 -0
  317. package/templates/skills/authoring-automations/SKILL.md +95 -0
  318. package/templates/skills/authoring-automations/reference/node-matrix.md +49 -0
  319. package/templates/skills/authoring-capabilities/SKILL.md +93 -0
  320. package/templates/skills/authoring-capabilities/reference/template-anatomy.md +70 -0
  321. package/templates/skills/authoring-playbooks/SKILL.md +102 -0
  322. package/templates/skills/authoring-playbooks/reference/stages-contract.md +35 -0
  323. package/templates/skills/authoring-playbooks/reference/worked-example.md +64 -0
  324. package/templates/skills/bookmark-enrichment/SKILL.md +40 -0
  325. package/templates/skills/coordinating-agents/SKILL.md +32 -0
  326. package/templates/skills/coordinating-branches/SKILL.md +27 -0
  327. package/templates/skills/mapping-the-server/SKILL.md +54 -0
  328. package/templates/skills/reading-client-progress/SKILL.md +65 -0
  329. package/templates/skills/routing-to-channels/SKILL.md +54 -0
  330. package/templates/skills/stellar-scf-grants-advisor/ASSOCIATE-CHEATSHEET.md +133 -0
  331. package/templates/skills/stellar-scf-grants-advisor/ASSOCIATE-ONBOARDING-GUIDE.md +761 -0
  332. package/templates/skills/stellar-scf-grants-advisor/CLIENT-FAQ.md +181 -0
  333. package/templates/skills/stellar-scf-grants-advisor/PARTNER-HANDOVER.md +130 -0
  334. package/templates/skills/stellar-scf-grants-advisor/SKILL.md +102 -0
  335. package/templates/skills/stellar-scf-grants-advisor/examples/README.md +43 -0
  336. package/templates/skills/stellar-scf-grants-advisor/examples/chat-summary-templates.md +158 -0
  337. package/templates/skills/stellar-scf-grants-advisor/examples/corpus-comparable-rows.md +136 -0
  338. package/templates/skills/stellar-scf-grants-advisor/examples/q10-team-rewrites.md +109 -0
  339. package/templates/skills/stellar-scf-grants-advisor/examples/q2-description-rewrites.md +88 -0
  340. package/templates/skills/stellar-scf-grants-advisor/examples/q6-integration-rewrites.md +107 -0
  341. package/templates/skills/stellar-scf-grants-advisor/examples/tranche-structures.md +176 -0
  342. package/templates/skills/stellar-scf-grants-advisor/reference/01-methodology.md +96 -0
  343. package/templates/skills/stellar-scf-grants-advisor/reference/02-scoring-framework.md +199 -0
  344. package/templates/skills/stellar-scf-grants-advisor/reference/03-rejection-patterns.md +241 -0
  345. package/templates/skills/stellar-scf-grants-advisor/reference/04-winner-patterns.md +120 -0
  346. package/templates/skills/stellar-scf-grants-advisor/reference/05-comeback-patterns.md +92 -0
  347. package/templates/skills/stellar-scf-grants-advisor/reference/06-budget-benchmarks.md +125 -0
  348. package/templates/skills/stellar-scf-grants-advisor/reference/07-integration-list.md +147 -0
  349. package/templates/skills/stellar-scf-grants-advisor/reference/08-abstract-fields.md +258 -0
  350. package/templates/skills/stellar-scf-grants-advisor/reference/09-build-fields.md +259 -0
  351. package/templates/skills/stellar-scf-grants-advisor/reference/10-corpus-winners.md +135 -0
  352. package/templates/skills/stellar-scf-grants-advisor/reference/11-corpus-rejects.md +267 -0
  353. package/templates/skills/stellar-scf-grants-advisor/reference/12-client-communication.md +131 -0
  354. package/templates/skills/stellar-scf-grants-advisor/reference/13-excel-output-spec.md +199 -0
  355. package/templates/skills/stellar-scf-grants-advisor/reference/14-worked-examples.md +160 -0
  356. package/templates/skills/stellar-scf-grants-advisor/templates/abstract-review-builder.py +253 -0
  357. package/templates/skills/stellar-scf-grants-advisor/templates/build-review-builder.py +213 -0
  358. package/dist/commands/connectors.d.ts +0 -31
  359. package/dist/commands/connectors.js +0 -276
  360. package/dist/commands/connectors.js.map +0 -1
  361. package/dist/commands/finish.d.ts +0 -25
  362. package/dist/commands/finish.js +0 -274
  363. package/dist/commands/finish.js.map +0 -1
  364. package/dist/commands/openclaw.d.ts +0 -40
  365. package/dist/commands/openclaw.js +0 -1148
  366. package/dist/commands/openclaw.js.map +0 -1
  367. package/dist/commands/security-audit.d.ts +0 -12
  368. package/dist/commands/security-audit.js +0 -100
  369. package/dist/commands/security-audit.js.map +0 -1
  370. package/dist/lib/hardening.d.ts +0 -18
  371. package/dist/lib/hardening.js +0 -214
  372. package/dist/lib/hardening.js.map +0 -1
@@ -19,9 +19,58 @@ import chalk from "chalk";
19
19
  import * as readline from "node:readline/promises";
20
20
  import { stdin as input, stdout as output } from "node:process";
21
21
  import { log } from "../utils/logger.js";
22
- import { resolveHubConfig, resolveUserId, hubPost, } from "../lib/hub-client.js";
22
+ import { resolveHubConfig, resolveUserId, hubPost, hubGet, readActiveSessionId, renderHubError, } from "../lib/hub-client.js";
23
+ import { unwrapList } from "../lib/unwrapList.js";
23
24
  import { getAgentWorkspaceRouting } from "../lib/pod.js";
24
- import { laneFromSource, resolveWorkspaceName, formatLaneLine, laneJsonFields, } from "../lib/capture-lane.js";
25
+ import { laneFromSource, resolveWorkspaceName, formatLaneLine, laneJsonFields, writeGovernance, } from "../lib/capture-lane.js";
26
+ import { isDegraded, degradedMessage, readCaptureExecute, } from "../lib/capture-structure.js";
27
+ import { UUID_RE } from "../lib/id.js";
28
+ // ─── Client-side length guard ────────────────────────────────────────────────
29
+ // Captures used to die SERVER-SIDE with a raw "String length 1404 > maximum
30
+ // 1000" after the user had already composed + confirmed — surface the same
31
+ // caps client-side, BEFORE sending, so a too-long capture gets a heads-up
32
+ // instead of a mid-flight rejection. Not a hard block: --yes/--json paths and
33
+ // a declined truncation still send as-is and let the pod be the final judge
34
+ // (the caps below mirror the pod's contract but are not re-validated here).
35
+ //
36
+ // Mirrors:
37
+ // - synap-backend CaptureStructureRequestSchema.text
38
+ // (packages/api/src/routers/hub-protocol/rest/_codecs/misc.ts)
39
+ // - the `knowledge` profile's ek_claim/ek_why/ek_evidence property defs
40
+ // (packages/database/src/utils/ensure-system-profiles.ts)
41
+ const SMART_TEXT_MAX = 8000;
42
+ const CLAIM_MAX = 1000;
43
+ const WHY_MAX = 5000;
44
+ const EVIDENCE_MAX = 2000;
45
+ /**
46
+ * Warn when `value` exceeds `max`, and offer to truncate (interactive) or
47
+ * proceed as-is. Returns the value to send (possibly truncated), or
48
+ * `undefined` if the user aborted.
49
+ *
50
+ * Non-interactive (`--yes` / `--json`): warns to stderr and proceeds unchanged
51
+ * — this is a heads-up, not a client-side hard block; the pod is still free to
52
+ * accept a since-raised cap.
53
+ */
54
+ async function guardLength(label, value, max, opts) {
55
+ if (value.length <= max)
56
+ return value;
57
+ if (opts.yes || opts.json) {
58
+ log.warn(`${label} is ${value.length} chars (pod limit ~${max}) — sending as-is; the pod may reject it.`);
59
+ return value;
60
+ }
61
+ log.warn(`${label} is ${value.length} chars — the pod's limit is ~${max}.`);
62
+ const rl = readline.createInterface({ input, output });
63
+ try {
64
+ const answer = await rl.question(chalk.bold(` Truncate to ${max} chars and continue? [Y/n/(a)bort] `));
65
+ const a = answer.trim().toLowerCase();
66
+ if (a === "n" || a === "abort" || a === "a")
67
+ return undefined;
68
+ return value.slice(0, max);
69
+ }
70
+ finally {
71
+ rl.close();
72
+ }
73
+ }
25
74
  /**
26
75
  * Resolve the workspace for a DOMAIN capture (the `knowledge` entity, the Work
27
76
  * lane). Knowledge is workspace-scoped, so the destination IS the separation:
@@ -49,6 +98,66 @@ async function resolveKnowledgeWorkspace(opts, _cfg, activeWorkspaceId) {
49
98
  source: activeWorkspaceId ? "active" : "active (run `synap use <id>` to set a workspace)",
50
99
  };
51
100
  }
101
+ /**
102
+ * Resolve a `--project` value (id or name) to a project id on the active pod.
103
+ * Mirrors `synap import`'s resolveProjectArg — same shape, same "not found"
104
+ * wording, kept local here since neither command shares a project-resolution
105
+ * lib yet. Throws on no match so a typo'd project name fails loud instead of
106
+ * silently dropping the pin.
107
+ */
108
+ async function resolveProjectArg(value, cfg) {
109
+ if (UUID_RE.test(value))
110
+ return value;
111
+ const res = (await hubGet("/projects", {}, cfg));
112
+ const list = unwrapList(res, ["projects"]);
113
+ const match = list.find((p) => String(p.name ?? "").toLowerCase() === value.toLowerCase());
114
+ if (!match) {
115
+ const names = list.map((p) => String(p.name ?? p.id)).join(", ");
116
+ throw new Error(`Project '${value}' not found.${names ? ` Available: ${names}` : ""}`);
117
+ }
118
+ return String(match.id);
119
+ }
120
+ /**
121
+ * Render the pod's project-link receipt honestly — never a bare "✓ stored"
122
+ * that hides a dropped project coordinate. Read DEFENSIVELY: the two write
123
+ * doors this command uses shape their receipt differently —
124
+ * - POST /capture/execute → `res.project = { projectId, rung, status }`
125
+ * - POST /entities → `res.writeReceipt.projectId` (present only once
126
+ * applied — omitted while the write is still a pending proposal)
127
+ * and the exact field name may still shift as the backend's receipt work
128
+ * lands, so this checks both shapes rather than assuming one.
129
+ */
130
+ function renderProjectReceipt(res, requestedProjectId, isProposed) {
131
+ if (!requestedProjectId)
132
+ return;
133
+ const captureProject = res.project;
134
+ if (captureProject?.projectId) {
135
+ if (captureProject.status === "linked") {
136
+ log.dim(` → linked to project ${captureProject.projectId.slice(0, 8)}`);
137
+ }
138
+ else if (captureProject.status === "proposed") {
139
+ log.dim(` → project ${captureProject.projectId.slice(0, 8)} proposed (advisory — awaiting confirm, not yet linked)`);
140
+ }
141
+ else {
142
+ log.dim(` → project ${captureProject.projectId.slice(0, 8)} (${captureProject.status ?? "unknown"})`);
143
+ }
144
+ return;
145
+ }
146
+ const writeReceipt = res.writeReceipt;
147
+ if (writeReceipt?.projectId) {
148
+ log.dim(` → linked to project ${writeReceipt.projectId.slice(0, 8)}`);
149
+ return;
150
+ }
151
+ if (isProposed) {
152
+ // The whole write is pending review — the project link rides along with
153
+ // it and applies on approval, not dropped.
154
+ log.dim(` → project ${requestedProjectId.slice(0, 8)} will link on approval (write is pending review)`);
155
+ return;
156
+ }
157
+ // A project pin was sent but no receipt confirms it — say so plainly rather
158
+ // than letting a silent drop look like success.
159
+ log.dim(` → project NOT linked (pod did not confirm ${requestedProjectId.slice(0, 8)} — it may not be reachable from this workspace)`);
160
+ }
52
161
  /** Slugify free text into a knowledge_keys slug fragment. */
53
162
  function slugify(text) {
54
163
  return text
@@ -101,12 +210,14 @@ async function captureGlobalRunbook(opts, cfg, authorUserId) {
101
210
  log.dim(` key: ${key}`);
102
211
  console.log(" " + formatLaneLine(report));
103
212
  }
213
+ // ─── Smart capture mode (no --type) ──────────────────────────────────────────
214
+ // Structure/execute wire shapes + the degraded/execute interpreters are shared
215
+ // with `synap import` in lib/capture-structure.ts (ONE mirror, no drift).
104
216
  /** Render the /capture/structure result as a compact human-readable summary. */
105
217
  function renderStructureResult(result) {
106
- const { proposals, relations, followUp, degraded } = result;
107
- if (degraded) {
108
- log.warn("AI structuring unavailable — degraded fallback.");
109
- }
218
+ const proposals = result.proposals ?? [];
219
+ const relations = result.relations ?? [];
220
+ const followUp = result.followUp;
110
221
  if (proposals.length === 0) {
111
222
  log.dim("No entity proposals extracted.");
112
223
  return;
@@ -138,17 +249,49 @@ function renderStructureResult(result) {
138
249
  log.blank();
139
250
  log.dim(` ${relations.length} relation${relations.length !== 1 ? "s" : ""} will be created.`);
140
251
  }
141
- if (followUp?.question) {
252
+ if (result.targetWorkspaceId || result.targetProjectId) {
142
253
  log.blank();
143
- log.info(`Follow-up: ${followUp.question}`);
144
- if (followUp.suggestions && followUp.suggestions.length > 0) {
145
- for (const s of followUp.suggestions) {
146
- log.dim(` · ${s}`);
254
+ if (result.targetWorkspaceId) {
255
+ const conf = typeof result.targetWorkspaceConfidence === "number"
256
+ ? ` (${Math.round(result.targetWorkspaceConfidence * 100)}%)`
257
+ : "";
258
+ log.dim(` → workspace: ${result.targetWorkspaceId}${conf}`);
259
+ if (result.targetWorkspaceReason) {
260
+ log.dim(` ${result.targetWorkspaceReason.slice(0, 90)}`);
261
+ }
262
+ }
263
+ if (result.targetProjectId) {
264
+ const conf = typeof result.targetProjectConfidence === "number"
265
+ ? ` (${Math.round(result.targetProjectConfidence * 100)}%)`
266
+ : "";
267
+ log.dim(` → project: ${result.targetProjectId}${conf}`);
268
+ if (result.targetProjectReason) {
269
+ log.dim(` ${result.targetProjectReason.slice(0, 90)}`);
270
+ }
271
+ }
272
+ }
273
+ // followUp may be a bare string (previously dropped — the `.question` guard
274
+ // never matched) or a { question, suggestions[] } object (chips previously
275
+ // rendered as "[object Object]"). Handle both; render each chip by its label.
276
+ if (followUp) {
277
+ const question = typeof followUp === "string" ? followUp : followUp.question;
278
+ if (question) {
279
+ log.blank();
280
+ log.info(`Follow-up: ${question}`);
281
+ const chips = typeof followUp === "string" ? [] : followUp.suggestions ?? [];
282
+ for (const c of chips) {
283
+ log.dim(` · ${c.label ?? c.value}`);
147
284
  }
148
285
  }
149
286
  }
150
287
  }
151
- async function runSmartCapture(text, opts) {
288
+ async function runSmartCapture(rawText, opts) {
289
+ const guarded = await guardLength("Capture text", rawText, SMART_TEXT_MAX, opts);
290
+ if (guarded === undefined) {
291
+ log.dim("Aborted.");
292
+ return;
293
+ }
294
+ const text = guarded;
152
295
  const cfg = await resolveHubConfig();
153
296
  const userId = await resolveUserId(cfg);
154
297
  const { workspaceId, source } = await resolveKnowledgeWorkspace(opts, cfg, cfg.workspaceId);
@@ -158,9 +301,67 @@ async function runSmartCapture(text, opts) {
158
301
  " synap use <workspace-id> (manual override)"));
159
302
  process.exit(1);
160
303
  }
304
+ // Project pin: explicit --project (id or name) wins; otherwise the ambient
305
+ // lens (SYNAP_PROJECT_ID / the active Claude session's pinned project,
306
+ // already resolved into cfg.projectId by resolveHubConfig).
307
+ let projectId;
308
+ try {
309
+ projectId = opts.project ? await resolveProjectArg(opts.project, cfg) : cfg.projectId;
310
+ }
311
+ catch (e) {
312
+ console.error(chalk.red(e.message));
313
+ process.exit(1);
314
+ }
161
315
  // 1. Structure
162
- const structureBody = { userId, text, workspaceId };
316
+ const smartSessionId = opts.session ? readActiveSessionId() : undefined;
317
+ const structureBody = { userId, text, workspaceId, ...(smartSessionId ? { sessionId: smartSessionId } : {}) };
163
318
  const structureRes = await hubPost("/capture/structure", structureBody, cfg);
319
+ // Degraded: the IS structurer is down. The server returns a raw `item`
320
+ // stand-in, but we create nothing (browser does the same via
321
+ // offlineFallback:false) — tell the user, don't silently downgrade the
322
+ // capture into an unstructured blob behind a success line.
323
+ if (isDegraded(structureRes)) {
324
+ if (opts.json) {
325
+ console.log(JSON.stringify({
326
+ degraded: true,
327
+ degradedReason: structureRes.degradedReason ?? null,
328
+ created: 0,
329
+ message: degradedMessage(structureRes),
330
+ }, null, 2));
331
+ }
332
+ else {
333
+ log.warn(degradedMessage(structureRes));
334
+ }
335
+ return;
336
+ }
337
+ // Explicit --workspace is a deliberate pin: send it as-is, no AI routing hints.
338
+ // Otherwise forward the AI's routing signal and let the backend decide
339
+ // (auto = AI target wins over ambient when confidence is high enough AND the
340
+ // user is a member).
341
+ const isExplicitOverride = Boolean(opts.workspace);
342
+ const routingFields = isExplicitOverride
343
+ ? {}
344
+ : {
345
+ workspaceRouting: "auto",
346
+ aiWorkspaceId: structureRes.targetWorkspaceId,
347
+ aiWorkspaceConfidence: structureRes.targetWorkspaceConfidence,
348
+ aiWorkspaceReason: structureRes.targetWorkspaceReason,
349
+ };
350
+ // Project: the explicit pin (--project / ambient lens) is the ONE
351
+ // deterministic field and always wins when present. The AI's own guess is
352
+ // forwarded ONLY as advisory (aiProjectId) — never promoted to the
353
+ // deterministic `projectId` field. That promotion was a real bug here
354
+ // (an AI guess would auto-link and widen cross-workspace access before the
355
+ // user ever confirmed it); the backend's aiProjectId path records it as a
356
+ // suggestion instead and never auto-links it.
357
+ if (projectId) {
358
+ routingFields.projectId = projectId;
359
+ }
360
+ else if (structureRes.targetProjectId) {
361
+ routingFields.aiProjectId = structureRes.targetProjectId;
362
+ routingFields.aiProjectConfidence = structureRes.targetProjectConfidence;
363
+ routingFields.aiProjectReason = structureRes.targetProjectReason;
364
+ }
164
365
  if (opts.json) {
165
366
  // --json without --yes: print structure result and exit
166
367
  if (!opts.yes) {
@@ -171,11 +372,18 @@ async function runSmartCapture(text, opts) {
171
372
  const executeRes = await hubPost("/capture/execute", {
172
373
  userId,
173
374
  workspaceId,
375
+ ...(smartSessionId ? { sessionId: smartSessionId } : {}),
376
+ ...routingFields,
174
377
  entities: structureRes.proposals,
175
378
  relations: structureRes.relations ?? [],
176
379
  }, cfg);
177
380
  const report = await buildSmartLaneReport(executeRes, workspaceId, source, cfg);
178
- console.log(JSON.stringify({ structure: structureRes, execute: executeRes, ...laneJsonFields(report) }, null, 2));
381
+ console.log(JSON.stringify({
382
+ structure: structureRes,
383
+ execute: executeRes,
384
+ ...(projectId ? { requestedProjectId: projectId } : {}),
385
+ ...laneJsonFields(report),
386
+ }, null, 2));
179
387
  return;
180
388
  }
181
389
  // 2. Render proposals
@@ -204,33 +412,49 @@ async function runSmartCapture(text, opts) {
204
412
  const executeRes = await hubPost("/capture/execute", {
205
413
  userId,
206
414
  workspaceId,
415
+ ...(smartSessionId ? { sessionId: smartSessionId } : {}),
416
+ ...routingFields,
207
417
  entities: structureRes.proposals,
208
418
  relations: structureRes.relations ?? [],
209
419
  }, cfg);
210
- const created = executeRes.entitiesCreated
211
- ?? executeRes.created
212
- ?? count;
213
- log.success(`${created} entr${created !== 1 ? "ies" : "y"} created.`);
214
- if (executeRes.relationsCreated) {
215
- log.dim(` ${executeRes.relationsCreated} relation${Number(executeRes.relationsCreated) !== 1 ? "s" : ""} created.`);
216
- }
420
+ // Report what the pod ACTUALLY returned — applied vs proposed vs
421
+ // nothing-new — never the planned proposal count.
422
+ const outcome = readCaptureExecute(executeRes);
217
423
  const report = await buildSmartLaneReport(executeRes, workspaceId, source, cfg);
424
+ if (outcome.proposed) {
425
+ log.info("Capture proposed — under review, not yet stored.");
426
+ if (outcome.proposalId)
427
+ log.dim(` proposal: ${outcome.proposalId}`);
428
+ if (outcome.reviewUrl)
429
+ log.dim(` review: ${outcome.reviewUrl}`);
430
+ }
431
+ else {
432
+ const n = outcome.entitiesCreated;
433
+ log.success(`${n} entr${n !== 1 ? "ies" : "y"} created.`);
434
+ if (outcome.entitiesLinked) {
435
+ log.dim(` ${outcome.entitiesLinked} linked to existing entit${outcome.entitiesLinked !== 1 ? "ies" : "y"}.`);
436
+ }
437
+ if (outcome.relationsCreated) {
438
+ log.dim(` ${outcome.relationsCreated} relation${outcome.relationsCreated !== 1 ? "s" : ""} created.`);
439
+ }
440
+ if (outcome.movedToWorkspace) {
441
+ log.dim(` → filed into workspace ${outcome.movedToWorkspace}`);
442
+ }
443
+ }
218
444
  console.log(" " + formatLaneLine(report));
445
+ renderProjectReceipt(executeRes, projectId, outcome.proposed);
219
446
  }
220
447
  /**
221
- * Build the lane report for a smart-capture execute response. Smart capture may
222
- * land directly or be queued as proposals — detect the latter from the execute
223
- * payload (proposed/proposalsCreated/status) and fall back to auto otherwise.
448
+ * Build the lane report for a smart-capture execute response. Governance
449
+ * (auto vs proposed) is derived by the ONE shared interpreter so this doesn't
450
+ * re-implement a third detector.
224
451
  */
225
452
  async function buildSmartLaneReport(executeRes, workspaceId, source, cfg) {
226
- const isProposed = executeRes.status === "proposed" ||
227
- Boolean(executeRes.proposalId) ||
228
- Number(executeRes.proposalsCreated ?? 0) > 0;
229
453
  return {
230
454
  lane: laneFromSource(source),
231
455
  workspaceId,
232
456
  workspaceName: await resolveWorkspaceName(workspaceId, cfg),
233
- governance: isProposed ? "proposed" : "auto",
457
+ governance: readCaptureExecute(executeRes).proposed ? "proposed" : "auto",
234
458
  };
235
459
  }
236
460
  // ─── Legacy engineering-memory capture ────────────────────────────────────────
@@ -258,6 +482,31 @@ export async function captureKnowledge(opts) {
258
482
  console.error(chalk.red("Missing required option: --claim <text>"));
259
483
  process.exit(1);
260
484
  }
485
+ // Client-side length guard — catch the "String length N > maximum 1000"
486
+ // server rejection BEFORE it fires, with a chance to truncate/abort
487
+ // instead of a mid-flight failure after composing + confirming.
488
+ const guardedClaim = await guardLength("--claim", opts.claim, CLAIM_MAX, opts);
489
+ if (guardedClaim === undefined) {
490
+ log.dim("Aborted.");
491
+ return;
492
+ }
493
+ opts.claim = guardedClaim;
494
+ if (opts.why) {
495
+ const guardedWhy = await guardLength("--why", opts.why, WHY_MAX, opts);
496
+ if (guardedWhy === undefined) {
497
+ log.dim("Aborted.");
498
+ return;
499
+ }
500
+ opts.why = guardedWhy;
501
+ }
502
+ if (opts.evidence) {
503
+ const guardedEvidence = await guardLength("--evidence", opts.evidence, EVIDENCE_MAX, opts);
504
+ if (guardedEvidence === undefined) {
505
+ log.dim("Aborted.");
506
+ return;
507
+ }
508
+ opts.evidence = guardedEvidence;
509
+ }
261
510
  const cfg = await resolveHubConfig();
262
511
  const userId = await resolveUserId(cfg);
263
512
  // GLOBAL lane: pod-wide procedural runbook → knowledge_keys.
@@ -272,6 +521,18 @@ export async function captureKnowledge(opts) {
272
521
  " synap use <workspace-id> (manual override)"));
273
522
  process.exit(1);
274
523
  }
524
+ // Project pin: explicit --project (id or name) wins; otherwise the ambient
525
+ // lens already resolved by resolveHubConfig (SYNAP_PROJECT_ID / the active
526
+ // Claude session's pinned project). Previously this coordinate was simply
527
+ // dropped by `capture` — --pod resolved url+key but never the project lens.
528
+ let projectId;
529
+ try {
530
+ projectId = opts.project ? await resolveProjectArg(opts.project, cfg) : cfg.projectId;
531
+ }
532
+ catch (e) {
533
+ console.error(chalk.red(e.message));
534
+ process.exit(1);
535
+ }
275
536
  const tags = opts.tags
276
537
  ? opts.tags.split(",").map((t) => t.trim()).filter(Boolean)
277
538
  : [];
@@ -282,11 +543,14 @@ export async function captureKnowledge(opts) {
282
543
  // lens that supplies its domain (so no `engineering_knowledge`). A structured
283
544
  // decision RECORD (rationale/alternatives/status) is a different artifact, reached
284
545
  // via smart `capture "<text>"` or `create entity --profile=decision`.
546
+ const sessionId = opts.session ? readActiveSessionId() : undefined;
285
547
  const res = await hubPost("/entities", {
286
548
  userId,
287
549
  workspaceId,
288
550
  profileSlug: "knowledge",
289
551
  title,
552
+ ...(sessionId ? { sessionId } : {}),
553
+ ...(projectId ? { projectId } : {}),
290
554
  properties: {
291
555
  ek_type: opts.type,
292
556
  ek_claim: opts.claim,
@@ -295,8 +559,9 @@ export async function captureKnowledge(opts) {
295
559
  ...(tags.length > 0 ? { ek_tags: tags } : {}),
296
560
  },
297
561
  }, cfg);
298
- // Governance may queue the write as a proposal rather than creating directly
299
- const isProposed = res.status === "proposed" || Boolean(res.proposalId);
562
+ // Governance may queue the write as a proposal rather than creating
563
+ // directly — read the real outcome via the ONE shared detector.
564
+ const isProposed = writeGovernance(res) === "proposed";
300
565
  // Declare which lane + workspace + governance this capture took, so the
301
566
  // caller always knows where its knowledge landed.
302
567
  const report = {
@@ -306,17 +571,25 @@ export async function captureKnowledge(opts) {
306
571
  governance: isProposed ? "proposed" : "auto",
307
572
  };
308
573
  if (opts.json) {
574
+ const writeReceipt = res.writeReceipt;
309
575
  if (isProposed) {
310
576
  console.log(JSON.stringify({
311
577
  proposed: true,
312
578
  proposalId: res.proposalId ?? res.id,
313
579
  reviewUrl: res.reviewUrl ?? null,
314
580
  message: "Write queued for approval — not yet stored.",
581
+ ...(projectId ? { requestedProjectId: projectId } : {}),
315
582
  ...laneJsonFields(report),
316
583
  }, null, 2));
317
584
  }
318
585
  else {
319
- console.log(JSON.stringify({ id: res.id, stored: true, workspace: source, ...laneJsonFields(report) }, null, 2));
586
+ console.log(JSON.stringify({
587
+ id: res.id,
588
+ stored: true,
589
+ workspace: source,
590
+ ...(projectId ? { requestedProjectId: projectId, linkedProjectId: writeReceipt?.projectId ?? null } : {}),
591
+ ...laneJsonFields(report),
592
+ }, null, 2));
320
593
  }
321
594
  return;
322
595
  }
@@ -328,15 +601,17 @@ export async function captureKnowledge(opts) {
328
601
  else
329
602
  log.dim(` Open Synap and approve the pending proposal to persist this entry.`);
330
603
  console.log(" " + formatLaneLine(report));
604
+ renderProjectReceipt(res, projectId, true);
331
605
  }
332
606
  else {
333
607
  log.success(`[${opts.type}] ${opts.claim.slice(0, 80)}`);
334
608
  log.dim(` workspace: ${source} id: ${String(res.id ?? "")}`);
335
609
  console.log(" " + formatLaneLine(report));
610
+ renderProjectReceipt(res, projectId, false);
336
611
  }
337
612
  }
338
613
  catch (e) {
339
- console.error(chalk.red("Error: " + e.message));
614
+ renderHubError(e);
340
615
  process.exit(1);
341
616
  }
342
617
  }
@@ -366,7 +641,7 @@ export async function provisionAgentWorkspace(opts) {
366
641
  }
367
642
  }
368
643
  catch (e) {
369
- console.error(chalk.red("Error: " + e.message));
644
+ renderHubError(e);
370
645
  process.exit(1);
371
646
  }
372
647
  }
@@ -1 +1 @@
1
- {"version":3,"file":"knowledge.js","sourceRoot":"","sources":["../../src/commands/knowledge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"knowledge.js","sourceRoot":"","sources":["../../src/commands/knowledge.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,50 @@
1
+ /**
2
+ * `synap launch` — nothing → a working company.
3
+ *
4
+ * This is NOT a template browser. It is the opinionated, guided, run-once
5
+ * command that turns an empty pod into a company: one PROJECT (the cross-cutting
6
+ * lens) + N domain WORKSPACES, provisioned from templates and linked together.
7
+ * Browsing "what else could I add?" lives in the marketplace UI; `synap orient`
8
+ * shows what you already have.
9
+ *
10
+ * Interactive flow:
11
+ * 1. Ask the company/project name → attach to an existing PROJECT or create one
12
+ * 2. Describe the company → suggest domains → pick/adjust the set
13
+ * 3. Disclose the FULL plan (incl. dependencies) → confirm
14
+ * 4. For each template → POST /packages/apply → report the real outcome
15
+ *
16
+ * Discovery is TWO-SOURCE, merged through the ONE `mergeCatalog` door:
17
+ * • PUBLIC templates ship BUNDLED in @synap-core/workspace-templates — always
18
+ * present, zero network, offline.
19
+ * • PRIVATE templates live in the control plane behind the user's login and are
20
+ * fetched from `GET /api/packages/mine` (Bearer). Logged out or CP-unreachable
21
+ * degrades HONESTLY to bundled-only + a "private needs login" note — it never
22
+ * fails open empty.
23
+ * The bundle still carries the private YAMLs today, so a private template that
24
+ * arrives as a remote entry is installed from the identical, offline bundled
25
+ * definition; once a later wave drops those YAMLs it is installed from the CP.
26
+ *
27
+ * Dependencies are resolved SERVER-side: `toPackageDefinition` carries the
28
+ * template's `dependencies` into the body, and the apply endpoint ensures each
29
+ * one is present first (installing missing bases topologically) and LAYERS a
30
+ * `compose` template onto its base instead of creating a second workspace. So
31
+ * this command's job is to DISCLOSE the graph before the user commits — never to
32
+ * install the extras itself.
33
+ *
34
+ * Installs are GOVERNED: /packages/apply answers 202 `{status:"proposed"}` when
35
+ * the write needs review. That is normal, not a failure — but it means nothing is
36
+ * live until the proposal is approved, so we never print "ready" for it.
37
+ */
38
+ export declare function launchList(opts: {
39
+ json?: boolean;
40
+ search?: string;
41
+ type?: string;
42
+ }): Promise<void>;
43
+ export declare function launch(opts: {
44
+ podUrl?: string;
45
+ apiKey?: string;
46
+ json?: boolean;
47
+ list?: boolean;
48
+ search?: string;
49
+ type?: string;
50
+ }): Promise<void>;