@mrpatronz/nexusflow 2.9.0 → 2.10.1

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 (744) hide show
  1. package/README.md +177 -113
  2. package/desktop/assets/icon.png +0 -0
  3. package/dist/agent/AcpCliAdapter.d.ts +2 -0
  4. package/dist/agent/AcpCliAdapter.d.ts.map +1 -1
  5. package/dist/agent/AcpCliAdapter.js +50 -4
  6. package/dist/agent/AcpCliAdapter.js.map +1 -1
  7. package/dist/agent/AntigravityCliAdapter.d.ts +44 -2
  8. package/dist/agent/AntigravityCliAdapter.d.ts.map +1 -1
  9. package/dist/agent/AntigravityCliAdapter.js +363 -16
  10. package/dist/agent/AntigravityCliAdapter.js.map +1 -1
  11. package/dist/agent/ClaudeCliAdapter.d.ts +5 -2
  12. package/dist/agent/ClaudeCliAdapter.d.ts.map +1 -1
  13. package/dist/agent/ClaudeCliAdapter.js +43 -14
  14. package/dist/agent/ClaudeCliAdapter.js.map +1 -1
  15. package/dist/agent/ClaudeSdkAdapter.d.ts +1 -0
  16. package/dist/agent/ClaudeSdkAdapter.d.ts.map +1 -1
  17. package/dist/agent/ClaudeSdkAdapter.js +38 -11
  18. package/dist/agent/ClaudeSdkAdapter.js.map +1 -1
  19. package/dist/agent/CliAdapterBase.d.ts +2 -0
  20. package/dist/agent/CliAdapterBase.d.ts.map +1 -1
  21. package/dist/agent/CliAdapterBase.js +12 -1
  22. package/dist/agent/CliAdapterBase.js.map +1 -1
  23. package/dist/agent/CodexCliAdapter.d.ts +1 -1
  24. package/dist/agent/CodexCliAdapter.d.ts.map +1 -1
  25. package/dist/agent/CodexCliAdapter.js +5 -4
  26. package/dist/agent/CodexCliAdapter.js.map +1 -1
  27. package/dist/agent/CodexSdkAdapter.d.ts.map +1 -1
  28. package/dist/agent/CodexSdkAdapter.js +4 -1
  29. package/dist/agent/CodexSdkAdapter.js.map +1 -1
  30. package/dist/agent/CopilotAcpAdapter.d.ts.map +1 -1
  31. package/dist/agent/CopilotAcpAdapter.js +2 -2
  32. package/dist/agent/CopilotAcpAdapter.js.map +1 -1
  33. package/dist/agent/ProviderRegistry.d.ts +8 -1
  34. package/dist/agent/ProviderRegistry.d.ts.map +1 -1
  35. package/dist/agent/ProviderRegistry.js.map +1 -1
  36. package/dist/agent/TurnSessionManager.d.ts +65 -0
  37. package/dist/agent/TurnSessionManager.d.ts.map +1 -0
  38. package/dist/agent/TurnSessionManager.js +330 -0
  39. package/dist/agent/TurnSessionManager.js.map +1 -0
  40. package/dist/agent/adapters.d.ts.map +1 -1
  41. package/dist/agent/adapters.js +23 -6
  42. package/dist/agent/adapters.js.map +1 -1
  43. package/dist/agent/cliAvailability.d.ts +2 -5
  44. package/dist/agent/cliAvailability.d.ts.map +1 -1
  45. package/dist/agent/cliAvailability.js +18 -41
  46. package/dist/agent/cliAvailability.js.map +1 -1
  47. package/dist/agent/mcp-config.d.ts +0 -5
  48. package/dist/agent/mcp-config.d.ts.map +1 -1
  49. package/dist/agent/mcp-config.js +2 -1
  50. package/dist/agent/mcp-config.js.map +1 -1
  51. package/dist/agent/models.d.ts +13 -0
  52. package/dist/agent/models.d.ts.map +1 -1
  53. package/dist/agent/models.js +262 -8
  54. package/dist/agent/models.js.map +1 -1
  55. package/dist/agent/nativeTools.d.ts.map +1 -1
  56. package/dist/agent/nativeTools.js +1 -0
  57. package/dist/agent/nativeTools.js.map +1 -1
  58. package/dist/agent/orchestrator.d.ts.map +1 -1
  59. package/dist/agent/orchestrator.js +3 -2
  60. package/dist/agent/orchestrator.js.map +1 -1
  61. package/dist/agent/session.d.ts +6 -0
  62. package/dist/agent/session.d.ts.map +1 -1
  63. package/dist/agent/session.js +8 -0
  64. package/dist/agent/session.js.map +1 -1
  65. package/dist/analyzers/detect-deps.js +16 -1
  66. package/dist/analyzers/detect-deps.js.map +1 -1
  67. package/dist/analyzers/run-analyzer.d.ts.map +1 -1
  68. package/dist/analyzers/run-analyzer.js.map +1 -1
  69. package/dist/commands/adapter.d.ts.map +1 -1
  70. package/dist/commands/adapter.js +15 -14
  71. package/dist/commands/adapter.js.map +1 -1
  72. package/dist/commands/add-repo.d.ts.map +1 -1
  73. package/dist/commands/add-repo.js +6 -5
  74. package/dist/commands/add-repo.js.map +1 -1
  75. package/dist/commands/commit.js +6 -8
  76. package/dist/commands/commit.js.map +1 -1
  77. package/dist/commands/config.d.ts.map +1 -1
  78. package/dist/commands/config.js +2 -1
  79. package/dist/commands/config.js.map +1 -1
  80. package/dist/commands/create.d.ts +4 -4
  81. package/dist/commands/create.d.ts.map +1 -1
  82. package/dist/commands/create.js +48 -7
  83. package/dist/commands/create.js.map +1 -1
  84. package/dist/commands/desktop.d.ts +46 -3
  85. package/dist/commands/desktop.d.ts.map +1 -1
  86. package/dist/commands/desktop.js +343 -33
  87. package/dist/commands/desktop.js.map +1 -1
  88. package/dist/commands/diff.d.ts.map +1 -1
  89. package/dist/commands/diff.js +3 -2
  90. package/dist/commands/diff.js.map +1 -1
  91. package/dist/commands/doctor.d.ts.map +1 -1
  92. package/dist/commands/doctor.js +3 -2
  93. package/dist/commands/doctor.js.map +1 -1
  94. package/dist/commands/finish.js +2 -1
  95. package/dist/commands/finish.js.map +1 -1
  96. package/dist/commands/handoff.d.ts.map +1 -1
  97. package/dist/commands/handoff.js +12 -12
  98. package/dist/commands/handoff.js.map +1 -1
  99. package/dist/commands/init.d.ts +2 -2
  100. package/dist/commands/init.d.ts.map +1 -1
  101. package/dist/commands/init.js +8 -7
  102. package/dist/commands/init.js.map +1 -1
  103. package/dist/commands/isolate.d.ts.map +1 -1
  104. package/dist/commands/isolate.js +2 -1
  105. package/dist/commands/isolate.js.map +1 -1
  106. package/dist/commands/knowledge.d.ts.map +1 -1
  107. package/dist/commands/knowledge.js +3 -2
  108. package/dist/commands/knowledge.js.map +1 -1
  109. package/dist/commands/list.d.ts.map +1 -1
  110. package/dist/commands/list.js +3 -2
  111. package/dist/commands/list.js.map +1 -1
  112. package/dist/commands/logs.js +3 -3
  113. package/dist/commands/logs.js.map +1 -1
  114. package/dist/commands/mcp.d.ts +1 -2
  115. package/dist/commands/mcp.d.ts.map +1 -1
  116. package/dist/commands/mcp.js +19 -12
  117. package/dist/commands/mcp.js.map +1 -1
  118. package/dist/commands/migrate.d.ts +12 -0
  119. package/dist/commands/migrate.d.ts.map +1 -0
  120. package/dist/commands/migrate.js +128 -0
  121. package/dist/commands/migrate.js.map +1 -0
  122. package/dist/commands/open.d.ts.map +1 -1
  123. package/dist/commands/open.js +2 -1
  124. package/dist/commands/open.js.map +1 -1
  125. package/dist/commands/progress.d.ts.map +1 -1
  126. package/dist/commands/progress.js +2 -1
  127. package/dist/commands/progress.js.map +1 -1
  128. package/dist/commands/project.d.ts.map +1 -1
  129. package/dist/commands/project.js +7 -6
  130. package/dist/commands/project.js.map +1 -1
  131. package/dist/commands/refresh.d.ts.map +1 -1
  132. package/dist/commands/refresh.js +8 -11
  133. package/dist/commands/refresh.js.map +1 -1
  134. package/dist/commands/remove.d.ts.map +1 -1
  135. package/dist/commands/remove.js +2 -1
  136. package/dist/commands/remove.js.map +1 -1
  137. package/dist/commands/schedule.js +16 -18
  138. package/dist/commands/schedule.js.map +1 -1
  139. package/dist/commands/start.d.ts.map +1 -1
  140. package/dist/commands/start.js +9 -8
  141. package/dist/commands/start.js.map +1 -1
  142. package/dist/commands/status.d.ts.map +1 -1
  143. package/dist/commands/status.js +2 -1
  144. package/dist/commands/status.js.map +1 -1
  145. package/dist/commands/stop.d.ts.map +1 -1
  146. package/dist/commands/stop.js +2 -1
  147. package/dist/commands/stop.js.map +1 -1
  148. package/dist/commands/strategy.d.ts.map +1 -1
  149. package/dist/commands/strategy.js +6 -5
  150. package/dist/commands/strategy.js.map +1 -1
  151. package/dist/commands/sync.js +8 -10
  152. package/dist/commands/sync.js.map +1 -1
  153. package/dist/commands/tui.d.ts.map +1 -1
  154. package/dist/commands/tui.js +11 -10
  155. package/dist/commands/tui.js.map +1 -1
  156. package/dist/commands/ui.d.ts.map +1 -1
  157. package/dist/commands/ui.js +4 -3
  158. package/dist/commands/ui.js.map +1 -1
  159. package/dist/core/adapters/local-storage.d.ts +3 -1
  160. package/dist/core/adapters/local-storage.d.ts.map +1 -1
  161. package/dist/core/adapters/local-storage.js +62 -4
  162. package/dist/core/adapters/local-storage.js.map +1 -1
  163. package/dist/core/analysis-cache.d.ts.map +1 -1
  164. package/dist/core/analysis-cache.js +8 -7
  165. package/dist/core/analysis-cache.js.map +1 -1
  166. package/dist/core/brand-config.d.ts +261 -0
  167. package/dist/core/brand-config.d.ts.map +1 -0
  168. package/dist/core/brand-config.js +514 -0
  169. package/dist/core/brand-config.js.map +1 -0
  170. package/dist/core/config.d.ts +1 -1
  171. package/dist/core/config.d.ts.map +1 -1
  172. package/dist/core/config.js +18 -8
  173. package/dist/core/config.js.map +1 -1
  174. package/dist/core/constants.d.ts +88 -0
  175. package/dist/core/constants.d.ts.map +1 -0
  176. package/dist/core/constants.js +103 -0
  177. package/dist/core/constants.js.map +1 -0
  178. package/dist/core/doctor.d.ts.map +1 -1
  179. package/dist/core/doctor.js +11 -3
  180. package/dist/core/doctor.js.map +1 -1
  181. package/dist/core/generation-lock.d.ts +2 -2
  182. package/dist/core/generation-lock.d.ts.map +1 -1
  183. package/dist/core/generation-lock.js +49 -22
  184. package/dist/core/generation-lock.js.map +1 -1
  185. package/dist/core/knowledge.d.ts +19 -0
  186. package/dist/core/knowledge.d.ts.map +1 -1
  187. package/dist/core/knowledge.js +150 -24
  188. package/dist/core/knowledge.js.map +1 -1
  189. package/dist/core/migrate.d.ts +53 -0
  190. package/dist/core/migrate.d.ts.map +1 -0
  191. package/dist/core/migrate.js +607 -0
  192. package/dist/core/migrate.js.map +1 -0
  193. package/dist/core/new-repo.js +1 -1
  194. package/dist/core/new-repo.js.map +1 -1
  195. package/dist/core/projects.d.ts.map +1 -1
  196. package/dist/core/projects.js +13 -4
  197. package/dist/core/projects.js.map +1 -1
  198. package/dist/core/refresh.d.ts.map +1 -1
  199. package/dist/core/refresh.js +6 -4
  200. package/dist/core/refresh.js.map +1 -1
  201. package/dist/core/scheduler.d.ts +1 -1
  202. package/dist/core/scheduler.d.ts.map +1 -1
  203. package/dist/core/scheduler.js +11 -9
  204. package/dist/core/scheduler.js.map +1 -1
  205. package/dist/core/sync.js +1 -1
  206. package/dist/core/sync.js.map +1 -1
  207. package/dist/core/workspace-git.d.ts.map +1 -1
  208. package/dist/core/workspace-git.js +34 -10
  209. package/dist/core/workspace-git.js.map +1 -1
  210. package/dist/core/workspace-state.d.ts +4 -0
  211. package/dist/core/workspace-state.d.ts.map +1 -1
  212. package/dist/core/workspace-state.js +8 -8
  213. package/dist/core/workspace-state.js.map +1 -1
  214. package/dist/core/workspace.d.ts +13 -5
  215. package/dist/core/workspace.d.ts.map +1 -1
  216. package/dist/core/workspace.js +83 -34
  217. package/dist/core/workspace.js.map +1 -1
  218. package/dist/core/worktree.d.ts +10 -4
  219. package/dist/core/worktree.d.ts.map +1 -1
  220. package/dist/core/worktree.js +34 -47
  221. package/dist/core/worktree.js.map +1 -1
  222. package/dist/desktop-server.js +6 -3
  223. package/dist/desktop-server.js.map +1 -1
  224. package/dist/generators/base.d.ts.map +1 -1
  225. package/dist/generators/base.js +6 -5
  226. package/dist/generators/base.js.map +1 -1
  227. package/dist/generators/claude.d.ts.map +1 -1
  228. package/dist/generators/claude.js +2 -1
  229. package/dist/generators/claude.js.map +1 -1
  230. package/dist/generators/cursor.d.ts +1 -1
  231. package/dist/generators/cursor.d.ts.map +1 -1
  232. package/dist/generators/cursor.js +9 -4
  233. package/dist/generators/cursor.js.map +1 -1
  234. package/dist/generators/index.d.ts +4 -8
  235. package/dist/generators/index.d.ts.map +1 -1
  236. package/dist/generators/index.js +34 -69
  237. package/dist/generators/index.js.map +1 -1
  238. package/dist/generators/plan-generator.d.ts.map +1 -1
  239. package/dist/generators/plan-generator.js +20 -11
  240. package/dist/generators/plan-generator.js.map +1 -1
  241. package/dist/generators/skills-generator.d.ts.map +1 -1
  242. package/dist/generators/skills-generator.js +26 -11
  243. package/dist/generators/skills-generator.js.map +1 -1
  244. package/dist/gui/app_logo.png +0 -0
  245. package/dist/gui/assets/AgentsPage-DbivhmK0.js +3 -0
  246. package/dist/gui/assets/DashboardPage-D50Qrm3e.js +1 -0
  247. package/dist/gui/assets/GettingStartedPage-1MOTng3B.js +1 -0
  248. package/dist/gui/assets/NullStore-tdPen1kp.js +1 -0
  249. package/dist/gui/assets/ProjectsPage-srKgf7VN.js +1 -0
  250. package/dist/gui/assets/ScaffoldRepoInline-CP0yn5mw.js +1 -0
  251. package/dist/gui/assets/SettingsPage-DWmrLV8o.js +1 -0
  252. package/dist/gui/assets/SkillsPage-CKjTXdrd.js +6 -0
  253. package/dist/gui/assets/StartWorkPage-BCUnJ9k8.js +1 -0
  254. package/dist/gui/assets/{StrategiesPage-C36TZgDX.js → StrategiesPage-CdCbbIu-.js} +2 -2
  255. package/dist/gui/assets/WorkroomsPage-BcT-mGtT.js +4 -0
  256. package/dist/gui/assets/WorkspacesPage-CYFCm-7_.js +2 -0
  257. package/dist/gui/assets/alert-QnMXzwpU.js +1 -0
  258. package/dist/gui/assets/alert-dialog-u7qgb9Hq.js +1 -0
  259. package/dist/gui/assets/badge-DwXvB44H.js +1 -0
  260. package/dist/gui/assets/brand-hHByyyzq.js +1 -0
  261. package/dist/gui/assets/button-CREn1mup.js +1 -0
  262. package/dist/gui/assets/card-yrg6ov8B.js +1 -0
  263. package/dist/gui/assets/chevron-down-B_Mwbim8.js +1 -0
  264. package/dist/gui/assets/chunk-BV7QT456-DfUBKG-z.js +3 -0
  265. package/dist/gui/assets/{circle-plus-lmU1yNJd.js → circle-plus--zM3-3r3.js} +1 -1
  266. package/dist/gui/assets/{code-xml-jFAa3-TT.js → code-xml-DH-38Tt7.js} +1 -1
  267. package/dist/gui/assets/{git-branch-Cfj9D8yW.js → git-branch-Ce0I2663.js} +1 -1
  268. package/dist/gui/assets/index-3tD_IeyQ.js +55 -0
  269. package/dist/gui/assets/index-CK5YRfPV.css +2 -0
  270. package/dist/gui/assets/label-DC730X8s.js +1 -0
  271. package/dist/gui/assets/layers-j_brOuoa.js +1 -0
  272. package/dist/gui/assets/shield-check-Dd1Yv3l2.js +1 -0
  273. package/dist/gui/assets/square-check-big-BSIiYXPI.js +1 -0
  274. package/dist/gui/assets/tabs-BrHKp5bD.js +1 -0
  275. package/dist/gui/assets/{trash-2-CtR35_eF.js → trash-2-CMdv3eD3.js} +1 -1
  276. package/dist/gui/assets/useAriaLabelledBy-C4zV-1Ra.js +1 -0
  277. package/dist/gui/assets/{vsc-DFh0-53h.js → vsc-D80c4gBT.js} +1 -1
  278. package/dist/gui/favicon-aurora.svg +8 -0
  279. package/dist/gui/favicon.ico +0 -0
  280. package/dist/gui/favicon.svg +8 -1
  281. package/dist/gui/index.html +18 -12
  282. package/dist/harness/claude.d.ts.map +1 -1
  283. package/dist/harness/claude.js +97 -7
  284. package/dist/harness/claude.js.map +1 -1
  285. package/dist/harness/codex.d.ts +1 -0
  286. package/dist/harness/codex.d.ts.map +1 -1
  287. package/dist/harness/codex.js +51 -34
  288. package/dist/harness/codex.js.map +1 -1
  289. package/dist/index.js +57 -27
  290. package/dist/index.js.map +1 -1
  291. package/dist/mcp/server.d.ts +12 -1
  292. package/dist/mcp/server.d.ts.map +1 -1
  293. package/dist/mcp/server.js +24 -6
  294. package/dist/mcp/server.js.map +1 -1
  295. package/dist/mcp/tools.d.ts +4 -2
  296. package/dist/mcp/tools.d.ts.map +1 -1
  297. package/dist/mcp/tools.js +372 -17
  298. package/dist/mcp/tools.js.map +1 -1
  299. package/dist/orchestration/detect.d.ts.map +1 -1
  300. package/dist/orchestration/detect.js +12 -5
  301. package/dist/orchestration/detect.js.map +1 -1
  302. package/dist/orchestration/log-tail.js +17 -17
  303. package/dist/orchestration/log-tail.js.map +1 -1
  304. package/dist/orchestration/runner.d.ts +1 -1
  305. package/dist/orchestration/runner.d.ts.map +1 -1
  306. package/dist/orchestration/runner.js +41 -18
  307. package/dist/orchestration/runner.js.map +1 -1
  308. package/dist/resources/agents-catalog.d.ts +3 -1
  309. package/dist/resources/agents-catalog.d.ts.map +1 -1
  310. package/dist/resources/agents-catalog.js +12 -6
  311. package/dist/resources/agents-catalog.js.map +1 -1
  312. package/dist/resources/contracts.d.ts +7 -0
  313. package/dist/resources/contracts.d.ts.map +1 -1
  314. package/dist/resources/contracts.js +8 -1
  315. package/dist/resources/contracts.js.map +1 -1
  316. package/dist/resources/fs-safety.d.ts +7 -1
  317. package/dist/resources/fs-safety.d.ts.map +1 -1
  318. package/dist/resources/fs-safety.js +44 -1
  319. package/dist/resources/fs-safety.js.map +1 -1
  320. package/dist/resources/materializer.d.ts +1 -0
  321. package/dist/resources/materializer.d.ts.map +1 -1
  322. package/dist/resources/materializer.js +48 -17
  323. package/dist/resources/materializer.js.map +1 -1
  324. package/dist/resources/service.d.ts.map +1 -1
  325. package/dist/resources/service.js +3 -2
  326. package/dist/resources/service.js.map +1 -1
  327. package/dist/server.d.ts +2 -19
  328. package/dist/server.d.ts.map +1 -1
  329. package/dist/server.js +1294 -348
  330. package/dist/server.js.map +1 -1
  331. package/dist/static-resources/workflows/cost-aware-sol-luna.md +95 -0
  332. package/dist/storage/db.d.ts +94 -0
  333. package/dist/storage/db.d.ts.map +1 -0
  334. package/dist/storage/db.js +609 -0
  335. package/dist/storage/db.js.map +1 -0
  336. package/dist/types.d.ts +19 -0
  337. package/dist/types.d.ts.map +1 -1
  338. package/dist/utils/detect-ai.d.ts.map +1 -1
  339. package/dist/utils/detect-ai.js +1 -3
  340. package/dist/utils/detect-ai.js.map +1 -1
  341. package/dist/utils/multi-git.d.ts +0 -8
  342. package/dist/utils/multi-git.d.ts.map +1 -1
  343. package/dist/utils/multi-git.js +12 -4
  344. package/dist/utils/multi-git.js.map +1 -1
  345. package/dist/utils/pr.d.ts.map +1 -1
  346. package/dist/utils/pr.js +10 -5
  347. package/dist/utils/pr.js.map +1 -1
  348. package/dist/utils/repo-freshness.d.ts +106 -0
  349. package/dist/utils/repo-freshness.d.ts.map +1 -0
  350. package/dist/utils/repo-freshness.js +405 -0
  351. package/dist/utils/repo-freshness.js.map +1 -0
  352. package/dist/utils/resolve-workspace.d.ts +1 -1
  353. package/dist/utils/resolve-workspace.d.ts.map +1 -1
  354. package/dist/utils/resolve-workspace.js +10 -3
  355. package/dist/utils/resolve-workspace.js.map +1 -1
  356. package/dist/utils/session-finder.d.ts +12 -1
  357. package/dist/utils/session-finder.d.ts.map +1 -1
  358. package/dist/utils/session-finder.js +206 -8
  359. package/dist/utils/session-finder.js.map +1 -1
  360. package/dist/utils/skills-catalog.d.ts +5 -1
  361. package/dist/utils/skills-catalog.d.ts.map +1 -1
  362. package/dist/utils/skills-catalog.js +131 -75
  363. package/dist/utils/skills-catalog.js.map +1 -1
  364. package/dist/utils/terminal-launch.d.ts +8 -2
  365. package/dist/utils/terminal-launch.d.ts.map +1 -1
  366. package/dist/utils/terminal-launch.js +88 -19
  367. package/dist/utils/terminal-launch.js.map +1 -1
  368. package/dist/utils/update-check.d.ts +4 -1
  369. package/dist/utils/update-check.d.ts.map +1 -1
  370. package/dist/utils/update-check.js +66 -19
  371. package/dist/utils/update-check.js.map +1 -1
  372. package/dist/utils/user-paths.d.ts +23 -0
  373. package/dist/utils/user-paths.d.ts.map +1 -0
  374. package/dist/utils/user-paths.js +126 -0
  375. package/dist/utils/user-paths.js.map +1 -0
  376. package/dist/utils/workflows.d.ts +4 -1
  377. package/dist/utils/workflows.d.ts.map +1 -1
  378. package/dist/utils/workflows.js +51 -21
  379. package/dist/utils/workflows.js.map +1 -1
  380. package/dist/workrooms/client.d.ts +54 -0
  381. package/dist/workrooms/client.d.ts.map +1 -0
  382. package/dist/workrooms/client.js +191 -0
  383. package/dist/workrooms/client.js.map +1 -0
  384. package/dist/workrooms/contracts.d.ts +579 -0
  385. package/dist/workrooms/contracts.d.ts.map +1 -0
  386. package/dist/workrooms/contracts.js +231 -0
  387. package/dist/workrooms/contracts.js.map +1 -0
  388. package/dist/workrooms/crypto.d.ts +30 -0
  389. package/dist/workrooms/crypto.d.ts.map +1 -0
  390. package/dist/workrooms/crypto.js +72 -0
  391. package/dist/workrooms/crypto.js.map +1 -0
  392. package/dist/workrooms/host.d.ts +61 -0
  393. package/dist/workrooms/host.d.ts.map +1 -0
  394. package/dist/workrooms/host.js +747 -0
  395. package/dist/workrooms/host.js.map +1 -0
  396. package/dist/workrooms/local-resources.d.ts +26 -0
  397. package/dist/workrooms/local-resources.d.ts.map +1 -0
  398. package/dist/workrooms/local-resources.js +367 -0
  399. package/dist/workrooms/local-resources.js.map +1 -0
  400. package/dist/workrooms/manager.d.ts +228 -0
  401. package/dist/workrooms/manager.d.ts.map +1 -0
  402. package/dist/workrooms/manager.js +768 -0
  403. package/dist/workrooms/manager.js.map +1 -0
  404. package/dist/workrooms/milestones.d.ts +42 -0
  405. package/dist/workrooms/milestones.d.ts.map +1 -0
  406. package/dist/workrooms/milestones.js +94 -0
  407. package/dist/workrooms/milestones.js.map +1 -0
  408. package/dist/workrooms/portable.d.ts +21 -0
  409. package/dist/workrooms/portable.d.ts.map +1 -0
  410. package/dist/workrooms/portable.js +201 -0
  411. package/dist/workrooms/portable.js.map +1 -0
  412. package/dist/workrooms/resource-package.d.ts +7 -0
  413. package/dist/workrooms/resource-package.d.ts.map +1 -0
  414. package/dist/workrooms/resource-package.js +260 -0
  415. package/dist/workrooms/resource-package.js.map +1 -0
  416. package/dist/workrooms/service.d.ts +92 -0
  417. package/dist/workrooms/service.d.ts.map +1 -0
  418. package/dist/workrooms/service.js +788 -0
  419. package/dist/workrooms/service.js.map +1 -0
  420. package/dist/workrooms/sqlite-store.d.ts +31 -0
  421. package/dist/workrooms/sqlite-store.d.ts.map +1 -0
  422. package/dist/workrooms/sqlite-store.js +511 -0
  423. package/dist/workrooms/sqlite-store.js.map +1 -0
  424. package/dist/workrooms/store.d.ts +542 -0
  425. package/dist/workrooms/store.d.ts.map +1 -0
  426. package/dist/workrooms/store.js +71 -0
  427. package/dist/workrooms/store.js.map +1 -0
  428. package/package.json +21 -11
  429. package/resources/workflows/cost-aware-sol-luna.md +95 -0
  430. package/dist/agent/AcpCliAdapter.test.d.ts +0 -2
  431. package/dist/agent/AcpCliAdapter.test.d.ts.map +0 -1
  432. package/dist/agent/AcpCliAdapter.test.js +0 -235
  433. package/dist/agent/AcpCliAdapter.test.js.map +0 -1
  434. package/dist/agent/AntigravityCliAdapter.test.d.ts +0 -2
  435. package/dist/agent/AntigravityCliAdapter.test.d.ts.map +0 -1
  436. package/dist/agent/AntigravityCliAdapter.test.js +0 -222
  437. package/dist/agent/AntigravityCliAdapter.test.js.map +0 -1
  438. package/dist/agent/ClaudeCliAdapter.test.d.ts +0 -2
  439. package/dist/agent/ClaudeCliAdapter.test.d.ts.map +0 -1
  440. package/dist/agent/ClaudeCliAdapter.test.js +0 -320
  441. package/dist/agent/ClaudeCliAdapter.test.js.map +0 -1
  442. package/dist/agent/ClaudeSdkAdapter.test.d.ts +0 -2
  443. package/dist/agent/ClaudeSdkAdapter.test.d.ts.map +0 -1
  444. package/dist/agent/ClaudeSdkAdapter.test.js +0 -155
  445. package/dist/agent/ClaudeSdkAdapter.test.js.map +0 -1
  446. package/dist/agent/CliAdapterBase.test.d.ts +0 -2
  447. package/dist/agent/CliAdapterBase.test.d.ts.map +0 -1
  448. package/dist/agent/CliAdapterBase.test.js +0 -240
  449. package/dist/agent/CliAdapterBase.test.js.map +0 -1
  450. package/dist/agent/CodexCliAdapter.test.d.ts +0 -2
  451. package/dist/agent/CodexCliAdapter.test.d.ts.map +0 -1
  452. package/dist/agent/CodexCliAdapter.test.js +0 -331
  453. package/dist/agent/CodexCliAdapter.test.js.map +0 -1
  454. package/dist/agent/CodexSdkAdapter.test.d.ts +0 -2
  455. package/dist/agent/CodexSdkAdapter.test.d.ts.map +0 -1
  456. package/dist/agent/CodexSdkAdapter.test.js +0 -76
  457. package/dist/agent/CodexSdkAdapter.test.js.map +0 -1
  458. package/dist/agent/ProviderRegistry.test.d.ts +0 -2
  459. package/dist/agent/ProviderRegistry.test.d.ts.map +0 -1
  460. package/dist/agent/ProviderRegistry.test.js +0 -129
  461. package/dist/agent/ProviderRegistry.test.js.map +0 -1
  462. package/dist/agent/adapters.test.d.ts +0 -2
  463. package/dist/agent/adapters.test.d.ts.map +0 -1
  464. package/dist/agent/adapters.test.js +0 -71
  465. package/dist/agent/adapters.test.js.map +0 -1
  466. package/dist/agent/cliAvailability.test.d.ts +0 -2
  467. package/dist/agent/cliAvailability.test.d.ts.map +0 -1
  468. package/dist/agent/cliAvailability.test.js +0 -217
  469. package/dist/agent/cliAvailability.test.js.map +0 -1
  470. package/dist/agent/mcp-config.test.d.ts +0 -2
  471. package/dist/agent/mcp-config.test.d.ts.map +0 -1
  472. package/dist/agent/mcp-config.test.js +0 -22
  473. package/dist/agent/mcp-config.test.js.map +0 -1
  474. package/dist/agent/models.test.d.ts +0 -2
  475. package/dist/agent/models.test.d.ts.map +0 -1
  476. package/dist/agent/models.test.js +0 -40
  477. package/dist/agent/models.test.js.map +0 -1
  478. package/dist/agent/nativeAgent.test.d.ts +0 -2
  479. package/dist/agent/nativeAgent.test.d.ts.map +0 -1
  480. package/dist/agent/nativeAgent.test.js +0 -35
  481. package/dist/agent/nativeAgent.test.js.map +0 -1
  482. package/dist/agent/nativeTools.test.d.ts +0 -2
  483. package/dist/agent/nativeTools.test.d.ts.map +0 -1
  484. package/dist/agent/nativeTools.test.js +0 -67
  485. package/dist/agent/nativeTools.test.js.map +0 -1
  486. package/dist/agent/orchestrator.test.d.ts +0 -2
  487. package/dist/agent/orchestrator.test.d.ts.map +0 -1
  488. package/dist/agent/orchestrator.test.js +0 -284
  489. package/dist/agent/orchestrator.test.js.map +0 -1
  490. package/dist/agent/session.test.d.ts +0 -2
  491. package/dist/agent/session.test.d.ts.map +0 -1
  492. package/dist/agent/session.test.js +0 -74
  493. package/dist/agent/session.test.js.map +0 -1
  494. package/dist/agent/smoke-chat.test.d.ts +0 -2
  495. package/dist/agent/smoke-chat.test.d.ts.map +0 -1
  496. package/dist/agent/smoke-chat.test.js +0 -166
  497. package/dist/agent/smoke-chat.test.js.map +0 -1
  498. package/dist/commands/add-repo.test.d.ts +0 -2
  499. package/dist/commands/add-repo.test.d.ts.map +0 -1
  500. package/dist/commands/add-repo.test.js +0 -30
  501. package/dist/commands/add-repo.test.js.map +0 -1
  502. package/dist/commands/commands.test.d.ts +0 -2
  503. package/dist/commands/commands.test.d.ts.map +0 -1
  504. package/dist/commands/commands.test.js +0 -156
  505. package/dist/commands/commands.test.js.map +0 -1
  506. package/dist/commands/commit.test.d.ts +0 -2
  507. package/dist/commands/commit.test.d.ts.map +0 -1
  508. package/dist/commands/commit.test.js +0 -54
  509. package/dist/commands/commit.test.js.map +0 -1
  510. package/dist/commands/isolate.test.d.ts +0 -2
  511. package/dist/commands/isolate.test.d.ts.map +0 -1
  512. package/dist/commands/isolate.test.js +0 -59
  513. package/dist/commands/isolate.test.js.map +0 -1
  514. package/dist/commands/knowledge.test.d.ts +0 -2
  515. package/dist/commands/knowledge.test.d.ts.map +0 -1
  516. package/dist/commands/knowledge.test.js +0 -90
  517. package/dist/commands/knowledge.test.js.map +0 -1
  518. package/dist/commands/status.test.d.ts +0 -2
  519. package/dist/commands/status.test.d.ts.map +0 -1
  520. package/dist/commands/status.test.js +0 -31
  521. package/dist/commands/status.test.js.map +0 -1
  522. package/dist/commands/ui.test.d.ts +0 -2
  523. package/dist/commands/ui.test.d.ts.map +0 -1
  524. package/dist/commands/ui.test.js +0 -58
  525. package/dist/commands/ui.test.js.map +0 -1
  526. package/dist/core/adapters/storage.test.d.ts +0 -2
  527. package/dist/core/adapters/storage.test.d.ts.map +0 -1
  528. package/dist/core/adapters/storage.test.js +0 -65
  529. package/dist/core/adapters/storage.test.js.map +0 -1
  530. package/dist/core/analysis-cache.test.d.ts +0 -2
  531. package/dist/core/analysis-cache.test.d.ts.map +0 -1
  532. package/dist/core/analysis-cache.test.js +0 -163
  533. package/dist/core/analysis-cache.test.js.map +0 -1
  534. package/dist/core/config.test.d.ts +0 -2
  535. package/dist/core/config.test.d.ts.map +0 -1
  536. package/dist/core/config.test.js +0 -90
  537. package/dist/core/config.test.js.map +0 -1
  538. package/dist/core/finish.test.d.ts +0 -2
  539. package/dist/core/finish.test.d.ts.map +0 -1
  540. package/dist/core/finish.test.js +0 -110
  541. package/dist/core/finish.test.js.map +0 -1
  542. package/dist/core/generation-lock.test.d.ts +0 -2
  543. package/dist/core/generation-lock.test.d.ts.map +0 -1
  544. package/dist/core/generation-lock.test.js +0 -134
  545. package/dist/core/generation-lock.test.js.map +0 -1
  546. package/dist/core/isolate.test.d.ts +0 -2
  547. package/dist/core/isolate.test.d.ts.map +0 -1
  548. package/dist/core/isolate.test.js +0 -320
  549. package/dist/core/isolate.test.js.map +0 -1
  550. package/dist/core/knowledge.test.d.ts +0 -2
  551. package/dist/core/knowledge.test.d.ts.map +0 -1
  552. package/dist/core/knowledge.test.js +0 -287
  553. package/dist/core/knowledge.test.js.map +0 -1
  554. package/dist/core/locks.test.d.ts +0 -2
  555. package/dist/core/locks.test.d.ts.map +0 -1
  556. package/dist/core/locks.test.js +0 -143
  557. package/dist/core/locks.test.js.map +0 -1
  558. package/dist/core/new-repo.test.d.ts +0 -2
  559. package/dist/core/new-repo.test.d.ts.map +0 -1
  560. package/dist/core/new-repo.test.js +0 -78
  561. package/dist/core/new-repo.test.js.map +0 -1
  562. package/dist/core/progress.test.d.ts +0 -2
  563. package/dist/core/progress.test.d.ts.map +0 -1
  564. package/dist/core/progress.test.js +0 -52
  565. package/dist/core/progress.test.js.map +0 -1
  566. package/dist/core/projects.test.d.ts +0 -2
  567. package/dist/core/projects.test.d.ts.map +0 -1
  568. package/dist/core/projects.test.js +0 -165
  569. package/dist/core/projects.test.js.map +0 -1
  570. package/dist/core/refresh.test.d.ts +0 -2
  571. package/dist/core/refresh.test.d.ts.map +0 -1
  572. package/dist/core/refresh.test.js +0 -93
  573. package/dist/core/refresh.test.js.map +0 -1
  574. package/dist/core/scanner.test.d.ts +0 -2
  575. package/dist/core/scanner.test.d.ts.map +0 -1
  576. package/dist/core/scanner.test.js +0 -53
  577. package/dist/core/scanner.test.js.map +0 -1
  578. package/dist/core/scheduler.test.d.ts +0 -2
  579. package/dist/core/scheduler.test.d.ts.map +0 -1
  580. package/dist/core/scheduler.test.js +0 -169
  581. package/dist/core/scheduler.test.js.map +0 -1
  582. package/dist/core/sync.test.d.ts +0 -2
  583. package/dist/core/sync.test.d.ts.map +0 -1
  584. package/dist/core/sync.test.js +0 -128
  585. package/dist/core/sync.test.js.map +0 -1
  586. package/dist/core/workspace-git.test.d.ts +0 -2
  587. package/dist/core/workspace-git.test.d.ts.map +0 -1
  588. package/dist/core/workspace-git.test.js +0 -52
  589. package/dist/core/workspace-git.test.js.map +0 -1
  590. package/dist/core/workspace-skills-workflow.integration.test.d.ts +0 -2
  591. package/dist/core/workspace-skills-workflow.integration.test.d.ts.map +0 -1
  592. package/dist/core/workspace-skills-workflow.integration.test.js +0 -177
  593. package/dist/core/workspace-skills-workflow.integration.test.js.map +0 -1
  594. package/dist/core/workspace-state.test.d.ts +0 -2
  595. package/dist/core/workspace-state.test.d.ts.map +0 -1
  596. package/dist/core/workspace-state.test.js +0 -84
  597. package/dist/core/workspace-state.test.js.map +0 -1
  598. package/dist/core/workspace.create.test.d.ts +0 -2
  599. package/dist/core/workspace.create.test.d.ts.map +0 -1
  600. package/dist/core/workspace.create.test.js +0 -224
  601. package/dist/core/workspace.create.test.js.map +0 -1
  602. package/dist/core/workspace.test.d.ts +0 -2
  603. package/dist/core/workspace.test.d.ts.map +0 -1
  604. package/dist/core/workspace.test.js +0 -53
  605. package/dist/core/workspace.test.js.map +0 -1
  606. package/dist/core/worktree.test.d.ts +0 -2
  607. package/dist/core/worktree.test.d.ts.map +0 -1
  608. package/dist/core/worktree.test.js +0 -153
  609. package/dist/core/worktree.test.js.map +0 -1
  610. package/dist/generators/base.test.d.ts +0 -2
  611. package/dist/generators/base.test.d.ts.map +0 -1
  612. package/dist/generators/base.test.js +0 -287
  613. package/dist/generators/base.test.js.map +0 -1
  614. package/dist/generators/knowledge-migration.test.d.ts +0 -2
  615. package/dist/generators/knowledge-migration.test.d.ts.map +0 -1
  616. package/dist/generators/knowledge-migration.test.js +0 -22
  617. package/dist/generators/knowledge-migration.test.js.map +0 -1
  618. package/dist/generators/plan-generator.test.d.ts +0 -2
  619. package/dist/generators/plan-generator.test.d.ts.map +0 -1
  620. package/dist/generators/plan-generator.test.js +0 -220
  621. package/dist/generators/plan-generator.test.js.map +0 -1
  622. package/dist/generators/skills-generator.test.d.ts +0 -2
  623. package/dist/generators/skills-generator.test.d.ts.map +0 -1
  624. package/dist/generators/skills-generator.test.js +0 -79
  625. package/dist/generators/skills-generator.test.js.map +0 -1
  626. package/dist/gui/assets/AgentsPage-B4fx43rd.js +0 -3
  627. package/dist/gui/assets/CSPContext-DBUu9tE0.js +0 -1
  628. package/dist/gui/assets/DashboardPage-DH52G8IG.js +0 -1
  629. package/dist/gui/assets/GettingStartedPage-BlTrQhvi.js +0 -1
  630. package/dist/gui/assets/ProjectsPage-BPVSLPXv.js +0 -1
  631. package/dist/gui/assets/ScaffoldRepoInline-ywcpq9PX.js +0 -1
  632. package/dist/gui/assets/SettingsPage-RQr8SalV.js +0 -1
  633. package/dist/gui/assets/SkillsPage-CYoSRrwx.js +0 -6
  634. package/dist/gui/assets/StartWorkPage-DBKK4lFi.js +0 -1
  635. package/dist/gui/assets/WorkspacesPage-DxEONvSq.js +0 -6
  636. package/dist/gui/assets/alert-dialog-CQAX2yRx.js +0 -1
  637. package/dist/gui/assets/badge-CAohJGj6.js +0 -1
  638. package/dist/gui/assets/bot-C2HWrAft.js +0 -1
  639. package/dist/gui/assets/button-BDDZnIHx.js +0 -1
  640. package/dist/gui/assets/card-BKXzd_5L.js +0 -1
  641. package/dist/gui/assets/chevron-down-qTL8HPug.js +0 -1
  642. package/dist/gui/assets/cpu-Cdwd84Jz.js +0 -1
  643. package/dist/gui/assets/empty-BdlgbifD.js +0 -1
  644. package/dist/gui/assets/index-BF6pre6G.css +0 -2
  645. package/dist/gui/assets/index-C_rwnBzF.js +0 -52
  646. package/dist/gui/assets/isElementDisabled-uy_EOitH.js +0 -1
  647. package/dist/gui/assets/label-CG5exjag.js +0 -1
  648. package/dist/gui/assets/square-DlIYnlSq.js +0 -1
  649. package/dist/gui/assets/textarea-ByfoCb54.js +0 -1
  650. package/dist/gui/assets/useAriaLabelledBy-ClesgjMe.js +0 -1
  651. package/dist/gui/assets/useValueChanged-DeYvGnKs.js +0 -1
  652. package/dist/gui/assets/zap-CWG_Lvki.js +0 -1
  653. package/dist/harness/contract.test.d.ts +0 -2
  654. package/dist/harness/contract.test.d.ts.map +0 -1
  655. package/dist/harness/contract.test.js +0 -426
  656. package/dist/harness/contract.test.js.map +0 -1
  657. package/dist/harness/harness.test.d.ts +0 -2
  658. package/dist/harness/harness.test.d.ts.map +0 -1
  659. package/dist/harness/harness.test.js +0 -215
  660. package/dist/harness/harness.test.js.map +0 -1
  661. package/dist/mcp/tools.test.d.ts +0 -2
  662. package/dist/mcp/tools.test.d.ts.map +0 -1
  663. package/dist/mcp/tools.test.js +0 -194
  664. package/dist/mcp/tools.test.js.map +0 -1
  665. package/dist/orchestration/log-tail.test.d.ts +0 -2
  666. package/dist/orchestration/log-tail.test.d.ts.map +0 -1
  667. package/dist/orchestration/log-tail.test.js +0 -72
  668. package/dist/orchestration/log-tail.test.js.map +0 -1
  669. package/dist/orchestration/orchestrator.test.d.ts +0 -2
  670. package/dist/orchestration/orchestrator.test.d.ts.map +0 -1
  671. package/dist/orchestration/orchestrator.test.js +0 -85
  672. package/dist/orchestration/orchestrator.test.js.map +0 -1
  673. package/dist/orchestration/runner.test.d.ts +0 -2
  674. package/dist/orchestration/runner.test.d.ts.map +0 -1
  675. package/dist/orchestration/runner.test.js +0 -233
  676. package/dist/orchestration/runner.test.js.map +0 -1
  677. package/dist/resources/agents-catalog.test.d.ts +0 -2
  678. package/dist/resources/agents-catalog.test.d.ts.map +0 -1
  679. package/dist/resources/agents-catalog.test.js +0 -50
  680. package/dist/resources/agents-catalog.test.js.map +0 -1
  681. package/dist/resources/codex-agent.test.d.ts +0 -2
  682. package/dist/resources/codex-agent.test.d.ts.map +0 -1
  683. package/dist/resources/codex-agent.test.js +0 -27
  684. package/dist/resources/codex-agent.test.js.map +0 -1
  685. package/dist/resources/materializer.test.d.ts +0 -2
  686. package/dist/resources/materializer.test.d.ts.map +0 -1
  687. package/dist/resources/materializer.test.js +0 -149
  688. package/dist/resources/materializer.test.js.map +0 -1
  689. package/dist/resources/service.test.d.ts +0 -2
  690. package/dist/resources/service.test.d.ts.map +0 -1
  691. package/dist/resources/service.test.js +0 -58
  692. package/dist/resources/service.test.js.map +0 -1
  693. package/dist/server.test.d.ts +0 -2
  694. package/dist/server.test.d.ts.map +0 -1
  695. package/dist/server.test.js +0 -1697
  696. package/dist/server.test.js.map +0 -1
  697. package/dist/utils/detect-ai.test.d.ts +0 -2
  698. package/dist/utils/detect-ai.test.d.ts.map +0 -1
  699. package/dist/utils/detect-ai.test.js +0 -70
  700. package/dist/utils/detect-ai.test.js.map +0 -1
  701. package/dist/utils/detect-editors.test.d.ts +0 -2
  702. package/dist/utils/detect-editors.test.d.ts.map +0 -1
  703. package/dist/utils/detect-editors.test.js +0 -85
  704. package/dist/utils/detect-editors.test.js.map +0 -1
  705. package/dist/utils/git.test.d.ts +0 -2
  706. package/dist/utils/git.test.d.ts.map +0 -1
  707. package/dist/utils/git.test.js +0 -125
  708. package/dist/utils/git.test.js.map +0 -1
  709. package/dist/utils/multi-git.test.d.ts +0 -2
  710. package/dist/utils/multi-git.test.d.ts.map +0 -1
  711. package/dist/utils/multi-git.test.js +0 -330
  712. package/dist/utils/multi-git.test.js.map +0 -1
  713. package/dist/utils/pr.test.d.ts +0 -2
  714. package/dist/utils/pr.test.d.ts.map +0 -1
  715. package/dist/utils/pr.test.js +0 -47
  716. package/dist/utils/pr.test.js.map +0 -1
  717. package/dist/utils/session-finder.test.d.ts +0 -2
  718. package/dist/utils/session-finder.test.d.ts.map +0 -1
  719. package/dist/utils/session-finder.test.js +0 -304
  720. package/dist/utils/session-finder.test.js.map +0 -1
  721. package/dist/utils/skills-catalog.test.d.ts +0 -2
  722. package/dist/utils/skills-catalog.test.d.ts.map +0 -1
  723. package/dist/utils/skills-catalog.test.js +0 -281
  724. package/dist/utils/skills-catalog.test.js.map +0 -1
  725. package/dist/utils/system-scanner.test.d.ts +0 -2
  726. package/dist/utils/system-scanner.test.d.ts.map +0 -1
  727. package/dist/utils/system-scanner.test.js +0 -73
  728. package/dist/utils/system-scanner.test.js.map +0 -1
  729. package/dist/utils/terminal-launch.test.d.ts +0 -2
  730. package/dist/utils/terminal-launch.test.d.ts.map +0 -1
  731. package/dist/utils/terminal-launch.test.js +0 -117
  732. package/dist/utils/terminal-launch.test.js.map +0 -1
  733. package/dist/utils/update-check.test.d.ts +0 -2
  734. package/dist/utils/update-check.test.d.ts.map +0 -1
  735. package/dist/utils/update-check.test.js +0 -30
  736. package/dist/utils/update-check.test.js.map +0 -1
  737. package/dist/utils/workflows.test.d.ts +0 -2
  738. package/dist/utils/workflows.test.d.ts.map +0 -1
  739. package/dist/utils/workflows.test.js +0 -86
  740. package/dist/utils/workflows.test.js.map +0 -1
  741. package/dist/utils/workspace-launch.test.d.ts +0 -2
  742. package/dist/utils/workspace-launch.test.d.ts.map +0 -1
  743. package/dist/utils/workspace-launch.test.js +0 -128
  744. package/dist/utils/workspace-launch.test.js.map +0 -1
@@ -11,11 +11,13 @@ import { execa } from 'execa';
11
11
  import { isInPlace, normalizeFeature } from '../utils/feature.js';
12
12
  import { createWorktree, removeWorktree } from './worktree.js';
13
13
  import { detectDefaultBranch } from '../utils/git.js';
14
+ import { fastForwardRepos } from '../utils/repo-freshness.js';
14
15
  import { analyzeAllRepos } from '../analyzers/index.js';
15
16
  import { generateContextFiles } from '../generators/index.js';
16
17
  import { deleteWorkspaceFiles } from './storage.js';
18
+ import { PRIMARY_MANIFEST_FILE, LEGACY_MANIFEST_FILE, BRAND_CONFIG } from './constants.js';
17
19
  /** Name of the per-workspace manifest file. */
18
- const MANIFEST_FILE = 'nexusflow.json';
20
+ const MANIFEST_FILE = PRIMARY_MANIFEST_FILE;
19
21
  /**
20
22
  * Derives the workspace directory path for a given branch name.
21
23
  *
@@ -106,6 +108,11 @@ async function scaffoldWorkspaceDir(feature, repos) {
106
108
  // analysis/runtime state from the workspace artifact repository.
107
109
  const gitignoreLines = [
108
110
  ...(!inPlace ? repos.map((repo) => `/${repo.name}/`) : []),
111
+ '/.contextspace-analysis-cache.json',
112
+ '/.contextspace/workspace-state.json',
113
+ '/.contextspace/*.lock',
114
+ '/.contextspace/resource-staging-*',
115
+ '/.contextspace/logs/',
109
116
  '/.nexusflow-analysis-cache.json',
110
117
  '/.nexusflow/workspace-state.json',
111
118
  '/.nexusflow/*.lock',
@@ -156,9 +163,9 @@ async function scaffoldWorkspaceDir(feature, repos) {
156
163
  await fs.mkdir(cursorDir, { recursive: true });
157
164
  const cursorMcp = {
158
165
  "mcpServers": {
159
- "nexusflow": {
166
+ [BRAND_CONFIG.mcp.serverName]: {
160
167
  "command": "npx",
161
- "args": ["-y", "@mrpatronz/nexusflow", "mcp", "run"]
168
+ "args": ["-y", BRAND_CONFIG.mcp.packageName, "mcp", "run"]
162
169
  }
163
170
  }
164
171
  };
@@ -173,7 +180,7 @@ async function scaffoldWorkspaceDir(feature, repos) {
173
180
  * rollback action per worktree into `rollbackActions` as it goes (so the
174
181
  * caller can roll back exactly what was created when a later step fails).
175
182
  */
176
- async function materializeWorktrees(feature, repos, rollbackActions, onProgress) {
183
+ async function materializeWorktrees(feature, repos, rollbackActions, onProgress, options) {
177
184
  const workspacePath = feature.workspacePath;
178
185
  for (let i = 0; i < repos.length; i++) {
179
186
  const repo = repos[i];
@@ -183,7 +190,10 @@ async function materializeWorktrees(feature, repos, rollbackActions, onProgress)
183
190
  const { createdBranch } = await createWorktree(repo.path, worktreeTarget, branchName, repo.defaultBranch,
184
191
  // An explicitly chosen branch must exist — silently creating a fresh
185
192
  // one would defeat the point of picking it.
186
- { mustExist: repo.existingBranch !== undefined });
193
+ {
194
+ mustExist: repo.existingBranch !== undefined,
195
+ autoUpdateBase: options?.autoUpdateBase,
196
+ });
187
197
  rollbackActions.push({ repoPath: repo.path, worktreePath: worktreeTarget, branchName, createdBranch });
188
198
  }
189
199
  }
@@ -217,15 +227,28 @@ async function finalizeWorkspace(feature) {
217
227
  * repo with `existingBranch` set checks out that branch
218
228
  * (which must exist) instead of the feature branch.
219
229
  * @param onProgress - Optional per-repo progress callback (repo name, index, total).
230
+ * @param options - See {@link CreateWorkspaceOptions}.
220
231
  * @returns The absolute path to the newly created workspace.
221
232
  */
222
- export async function createWorkspace(feature, repos, onProgress) {
233
+ export async function createWorkspace(feature, repos, onProgress, options) {
223
234
  const workspacePath = feature.workspacePath;
235
+ // In-place mode operates directly in source repos; fast-forward them if requested
236
+ if (isInPlace(feature) && options?.autoUpdateBase !== false) {
237
+ try {
238
+ await fastForwardRepos(repos.map((r) => ({
239
+ path: r.path,
240
+ branch: r.existingBranch ?? r.defaultBranch,
241
+ })));
242
+ }
243
+ catch {
244
+ // Best-effort update
245
+ }
246
+ }
224
247
  await scaffoldWorkspaceDir(feature, repos);
225
248
  const rollbackActions = [];
226
249
  try {
227
250
  if (!isInPlace(feature)) {
228
- await materializeWorktrees(feature, repos, rollbackActions, onProgress);
251
+ await materializeWorktrees(feature, repos, rollbackActions, onProgress, options);
229
252
  }
230
253
  await finalizeWorkspace(feature);
231
254
  }
@@ -257,8 +280,8 @@ export async function listWorkspaces(workspacesDir) {
257
280
  catch {
258
281
  return;
259
282
  }
260
- // Check if current directory contains a nexusflow.json manifest
261
- const hasManifest = entries.some((e) => e.isFile() && e.name === MANIFEST_FILE);
283
+ // Check if current directory contains a contextspace.json or legacy nexusflow.json manifest
284
+ const hasManifest = entries.some((e) => e.isFile() && (e.name === PRIMARY_MANIFEST_FILE || e.name === LEGACY_MANIFEST_FILE));
262
285
  if (hasManifest) {
263
286
  const loaded = await loadFeatureConfig(dir);
264
287
  if (loaded) {
@@ -277,7 +300,7 @@ export async function listWorkspaces(workspacesDir) {
277
300
  return features;
278
301
  }
279
302
  /**
280
- * Saves a {@link Feature} as `nexusflow.json` inside the given workspace.
303
+ * Saves a {@link Feature} as `contextspace.json` inside the given workspace.
281
304
  *
282
305
  * @param workspacePath - Absolute path to the workspace directory.
283
306
  * @param feature - The feature definition to persist.
@@ -292,8 +315,7 @@ export async function saveFeatureConfig(workspacePath, feature) {
292
315
  await fs.writeFile(path.join(workspacePath, MANIFEST_FILE), data, 'utf-8');
293
316
  }
294
317
  /**
295
- * Loads a {@link Feature} from the `nexusflow.json` manifest inside a
296
- * workspace directory.
318
+ * Loads a {@link Feature} from the manifest inside a workspace directory.
297
319
  *
298
320
  * @param workspacePath - Absolute path to the workspace directory.
299
321
  * @returns The loaded feature, or `null` if the manifest doesn't exist or is
@@ -306,12 +328,18 @@ export async function loadFeatureConfig(workspacePath) {
306
328
  const featureId = path.basename(workspacePath);
307
329
  // 2. Legacy fallback: manifests written into the central vault before the
308
330
  // manifest was pinned to the workspace root.
309
- const vaultManifest = path.join(os.homedir(), '.nexusflow', 'vault', featureId, MANIFEST_FILE);
331
+ const vaultManifest = path.join(os.homedir(), '.contextspace', 'vault', featureId, MANIFEST_FILE);
310
332
  try {
311
333
  const raw = await fs.readFile(vaultManifest, 'utf-8');
312
334
  return normalizeFeature(JSON.parse(raw));
313
335
  }
314
336
  catch { }
337
+ const legacyVaultManifest = path.join(os.homedir(), '.nexusflow', 'vault', featureId, LEGACY_MANIFEST_FILE);
338
+ try {
339
+ const raw = await fs.readFile(legacyVaultManifest, 'utf-8');
340
+ return normalizeFeature(JSON.parse(raw));
341
+ }
342
+ catch { }
315
343
  // 3. Traverse parent directories
316
344
  const rootDir = await findWorkspaceRoot(workspacePath);
317
345
  if (rootDir && rootDir !== workspacePath) {
@@ -325,9 +353,21 @@ export async function loadFeatureConfig(workspacePath) {
325
353
  * so it is suitable for boundaries that can launch local processes.
326
354
  */
327
355
  export async function loadWorkspaceManifest(workspacePath) {
356
+ let manifestPath = path.join(workspacePath, PRIMARY_MANIFEST_FILE);
357
+ let raw = null;
358
+ try {
359
+ raw = await fs.readFile(manifestPath, 'utf-8');
360
+ }
361
+ catch {
362
+ manifestPath = path.join(workspacePath, LEGACY_MANIFEST_FILE);
363
+ try {
364
+ raw = await fs.readFile(manifestPath, 'utf-8');
365
+ }
366
+ catch {
367
+ return null;
368
+ }
369
+ }
328
370
  try {
329
- const manifestPath = path.join(workspacePath, MANIFEST_FILE);
330
- const raw = await fs.readFile(manifestPath, 'utf-8');
331
371
  const feature = JSON.parse(raw);
332
372
  if (!feature.createdAt) {
333
373
  try {
@@ -345,7 +385,7 @@ export async function loadWorkspaceManifest(workspacePath) {
345
385
  }
346
386
  }
347
387
  /**
348
- * Traverses up parent directories to find a directory containing `nexusflow.json`.
388
+ * Traverses up parent directories to find a directory containing `contextspace.json` or `nexusflow.json`.
349
389
  *
350
390
  * @param startPath - Path to start searching from.
351
391
  * @returns Absolute path to the workspace root directory, or null if not found.
@@ -353,17 +393,24 @@ export async function loadWorkspaceManifest(workspacePath) {
353
393
  export async function findWorkspaceRoot(startPath) {
354
394
  let current = path.resolve(startPath);
355
395
  while (true) {
356
- const manifestPath = path.join(current, MANIFEST_FILE);
396
+ const primary = path.join(current, PRIMARY_MANIFEST_FILE);
397
+ const legacy = path.join(current, LEGACY_MANIFEST_FILE);
357
398
  try {
358
- await fs.access(manifestPath);
399
+ await fs.access(primary);
359
400
  return current;
360
401
  }
361
402
  catch {
362
- const parent = path.dirname(current);
363
- if (parent === current) {
364
- break; // Reached root directory
403
+ try {
404
+ await fs.access(legacy);
405
+ return current;
406
+ }
407
+ catch {
408
+ const parent = path.dirname(current);
409
+ if (parent === current) {
410
+ break; // Reached root directory
411
+ }
412
+ current = parent;
365
413
  }
366
- current = parent;
367
414
  }
368
415
  }
369
416
  return null;
@@ -459,14 +506,11 @@ export async function deleteWorkspace(workspacePath) {
459
506
  const subPath = path.join(workspacePath, entry.name);
460
507
  const gitFilePath = path.join(subPath, '.git');
461
508
  try {
462
- const stat = await fs.stat(gitFilePath);
463
- if (stat.isFile()) {
464
- const content = await fs.readFile(gitFilePath, 'utf-8');
465
- const match = content.match(/gitdir:\s*(.+)[/\\]\.git[/\\]worktrees/i);
466
- if (match && match[1]) {
467
- const mainRepoPath = path.resolve(match[1].trim());
468
- await removeWorktree(mainRepoPath, subPath, true);
469
- }
509
+ const content = await fs.readFile(gitFilePath, 'utf-8');
510
+ const match = content.match(/gitdir:\s*(.+)[/\\]\.git[/\\]worktrees/i);
511
+ if (match && match[1]) {
512
+ const mainRepoPath = path.resolve(match[1].trim());
513
+ await removeWorktree(mainRepoPath, subPath, true);
470
514
  }
471
515
  }
472
516
  catch { }
@@ -631,10 +675,15 @@ export async function excludeNexusFlowFiles(workspacePath, feature) {
631
675
  'CLAUDE.md',
632
676
  'AGENTS.md',
633
677
  'WORKSPACE.md',
634
- 'nexusflow-knowledge.md',
635
- 'nexusflow-plan.md',
678
+ BRAND_CONFIG.files.knowledge.primary,
679
+ BRAND_CONFIG.files.knowledge.legacy,
680
+ BRAND_CONFIG.files.plan.primary,
681
+ BRAND_CONFIG.files.plan.legacy,
682
+ 'contextspace-conventions-*.md',
636
683
  'nexusflow-conventions-*.md',
684
+ 'contextspace-map-*.md',
637
685
  'nexusflow-map-*.md',
686
+ 'contextspace-diff-context.md',
638
687
  'nexusflow-diff-context.md',
639
688
  '.cursor/rules/',
640
689
  '.vscode/settings.json'
@@ -643,14 +692,14 @@ export async function excludeNexusFlowFiles(workspacePath, feature) {
643
692
  try {
644
693
  const gitDir = path.join(repoPath, '.git');
645
694
  let worktreeGitDir = gitDir;
646
- const stat = await fs.stat(gitDir);
647
- if (stat.isFile()) {
695
+ try {
648
696
  const fileContent = await fs.readFile(gitDir, 'utf8');
649
697
  const match = fileContent.match(/gitdir:\s*(.+)/);
650
698
  if (match) {
651
699
  worktreeGitDir = match[1].trim();
652
700
  }
653
701
  }
702
+ catch { }
654
703
  // git reads info/exclude from the *common* git dir, not the per-worktree
655
704
  // gitdir. For a worktree the per-worktree gitdir has a `commondir` pointer
656
705
  // to it; resolve that so the excludes actually take effect.
@@ -1 +1 @@
1
- {"version":3,"file":"workspace.js","sourceRoot":"","sources":["../../src/core/workspace.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workspace.js","sourceRoot":"","sources":["../../src/core/workspace.ts"],"names":[],"mappings":"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"}
@@ -19,15 +19,21 @@ export interface CreateWorktreeOptions {
19
19
  * existing branch, where silently creating a fresh one would be wrong.
20
20
  */
21
21
  mustExist?: boolean;
22
+ /**
23
+ * Whether to attempt fast-forwarding the base branch to remote tracking before branching.
24
+ * Defaults to true.
25
+ */
26
+ autoUpdateBase?: boolean;
22
27
  }
23
28
  /**
24
29
  * Creates a git worktree for a branch, materializing the branch as needed:
25
30
  *
26
- * 1. `git fetch origin` — ensure we have the latest remote refs.
27
- * 2. If `branchName` exists locally, check it out into the worktree.
28
- * 3. Else if `origin/<branchName>` exists, create a tracking local branch
31
+ * 1. Resolves remote tracking branch (origin, upstream, etc.) and fetches remote refs.
32
+ * 2. Safely fast-forwards the local base branch if clean and autoUpdateBase is not false.
33
+ * 3. If `branchName` exists locally, check it out into the worktree.
34
+ * 4. Else if `<remote>/<branchName>` exists, create a tracking local branch
29
35
  * from it in the worktree.
30
- * 4. Else create a new branch from `origin/<baseBranch>` (or the local
36
+ * 5. Else create a new branch from `<remote>/<baseBranch>` (or the local
31
37
  * `baseBranch` when there is no remote).
32
38
  *
33
39
  * @param repoPath - Absolute path to the main repo checkout.
@@ -1 +1 @@
1
- {"version":3,"file":"worktree.d.ts","sourceRoot":"","sources":["../../src/core/worktree.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,qCAAqC;AACrC,MAAM,WAAW,oBAAoB;IACnC;;;;OAIG;IACH,aAAa,EAAE,OAAO,CAAC;CACxB;AAED,0CAA0C;AAC1C,MAAM,WAAW,qBAAqB;IACpC;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,cAAc,CAClC,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,OAAO,GAAE,qBAA0B,GAClC,OAAO,CAAC,oBAAoB,CAAC,CA0G/B;AAED;;;;;;;;GAQG;AACH,wBAAsB,cAAc,CAClC,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,EACpB,KAAK,UAAQ,GACZ,OAAO,CAAC,IAAI,CAAC,CAOf"}
1
+ {"version":3,"file":"worktree.d.ts","sourceRoot":"","sources":["../../src/core/worktree.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,qCAAqC;AACrC,MAAM,WAAW,oBAAoB;IACnC;;;;OAIG;IACH,aAAa,EAAE,OAAO,CAAC;CACxB;AAED,0CAA0C;AAC1C,MAAM,WAAW,qBAAqB;IACpC;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,cAAc,CAClC,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,OAAO,GAAE,qBAA0B,GAClC,OAAO,CAAC,oBAAoB,CAAC,CA+F/B;AAED;;;;;;;;GAQG;AACH,wBAAsB,cAAc,CAClC,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,EACpB,KAAK,UAAQ,GACZ,OAAO,CAAC,IAAI,CAAC,CAOf"}
@@ -4,14 +4,16 @@
4
4
  */
5
5
  import { execa } from 'execa';
6
6
  import { isValidBranchName } from '../utils/git.js';
7
+ import { resolveTrackingBranch, fastForwardBranch } from '../utils/repo-freshness.js';
7
8
  /**
8
9
  * Creates a git worktree for a branch, materializing the branch as needed:
9
10
  *
10
- * 1. `git fetch origin` — ensure we have the latest remote refs.
11
- * 2. If `branchName` exists locally, check it out into the worktree.
12
- * 3. Else if `origin/<branchName>` exists, create a tracking local branch
11
+ * 1. Resolves remote tracking branch (origin, upstream, etc.) and fetches remote refs.
12
+ * 2. Safely fast-forwards the local base branch if clean and autoUpdateBase is not false.
13
+ * 3. If `branchName` exists locally, check it out into the worktree.
14
+ * 4. Else if `<remote>/<branchName>` exists, create a tracking local branch
13
15
  * from it in the worktree.
14
- * 4. Else create a new branch from `origin/<baseBranch>` (or the local
16
+ * 5. Else create a new branch from `<remote>/<baseBranch>` (or the local
15
17
  * `baseBranch` when there is no remote).
16
18
  *
17
19
  * @param repoPath - Absolute path to the main repo checkout.
@@ -28,47 +30,25 @@ export async function createWorktree(repoPath, targetPath, branchName, baseBranc
28
30
  if (!isValidBranchName(baseBranch)) {
29
31
  throw new Error(`Invalid base branch name "${baseBranch}".`);
30
32
  }
31
- let fetched = false;
32
- // Fetch latest remote state.
33
- try {
34
- await execa('git', ['fetch', 'origin'], { cwd: repoPath });
35
- fetched = true;
36
- }
37
- catch {
38
- // Silently ignore fetch failures (e.g., offline or no remote origin)
39
- }
40
- // Update local base branch, main, and master to keep them in sync with remote before branching
41
- if (fetched) {
33
+ // Resolve tracking branch for baseBranch (checks origin, upstream, etc.)
34
+ const { trackingBranch, remoteName, hasRemote } = await resolveTrackingBranch(repoPath, baseBranch);
35
+ // If remote exists and autoUpdateBase is enabled, safely fast-forward clean repos
36
+ if (hasRemote && options.autoUpdateBase !== false) {
42
37
  try {
43
- const { stdout: currentBranchRaw } = await execa('git', ['branch', '--show-current'], { cwd: repoPath });
44
- const currentBranch = currentBranchRaw.trim();
45
- const branchesToUpdate = Array.from(new Set([baseBranch, 'main', 'master']));
46
- for (const branch of branchesToUpdate) {
47
- try {
48
- if (currentBranch === branch) {
49
- // Safe fast-forward merge from remote tracking branch for the currently checked-out branch
50
- await execa('git', ['merge', '--ff-only', `origin/${branch}`], { cwd: repoPath });
51
- }
52
- else {
53
- // Fast-forward local ref from remote ref without checkout
54
- await execa('git', ['fetch', 'origin', `${branch}:${branch}`], { cwd: repoPath });
55
- }
56
- }
57
- catch {
58
- // Ignore individual branch update failures
59
- }
60
- }
38
+ await fastForwardBranch(repoPath, baseBranch);
61
39
  }
62
40
  catch {
63
- // Ignore failures
41
+ // Best-effort fast-forward; uncommitted work is preserved on dirty trees
64
42
  }
65
43
  }
66
- // Determine starting point: remote branch if fetched successfully and exists, else local branch.
44
+ // Determine starting point: remote tracking ref if verified, else local baseBranch
67
45
  let startPoint = baseBranch;
68
- if (fetched) {
46
+ if (hasRemote && trackingBranch) {
69
47
  try {
70
- await execa('git', ['rev-parse', '--verify', `origin/${baseBranch}`], { cwd: repoPath });
71
- startPoint = `origin/${baseBranch}`;
48
+ await execa('git', ['rev-parse', '--verify', `refs/remotes/${trackingBranch}`], {
49
+ cwd: repoPath,
50
+ });
51
+ startPoint = trackingBranch;
72
52
  }
73
53
  catch {
74
54
  // remote tracking branch does not exist, fallback to local branch
@@ -83,15 +63,22 @@ export async function createWorktree(repoPath, targetPath, branchName, baseBranc
83
63
  catch {
84
64
  // Branch does not exist locally
85
65
  }
86
- // Check for a remote-only branch (origin/<branchName> without a local ref).
66
+ // Check for a remote-only branch (<remote>/<branchName> without a local ref).
87
67
  let remoteBranchExists = false;
88
- if (!branchExists) {
89
- try {
90
- await execa('git', ['rev-parse', '--verify', `refs/remotes/origin/${branchName}`], { cwd: repoPath });
91
- remoteBranchExists = true;
92
- }
93
- catch {
94
- // Branch does not exist on origin either
68
+ let remoteRefToTrack = `origin/${branchName}`;
69
+ if (!branchExists && hasRemote) {
70
+ const targetTracking = await resolveTrackingBranch(repoPath, branchName);
71
+ if (targetTracking.trackingBranch) {
72
+ try {
73
+ await execa('git', ['rev-parse', '--verify', `refs/remotes/${targetTracking.trackingBranch}`], {
74
+ cwd: repoPath,
75
+ });
76
+ remoteBranchExists = true;
77
+ remoteRefToTrack = targetTracking.trackingBranch;
78
+ }
79
+ catch {
80
+ // Branch does not exist on remote either
81
+ }
95
82
  }
96
83
  }
97
84
  if (options.mustExist && !branchExists && !remoteBranchExists) {
@@ -105,7 +92,7 @@ export async function createWorktree(repoPath, targetPath, branchName, baseBranc
105
92
  else if (remoteBranchExists) {
106
93
  // Materialize the remote-only branch as a local tracking branch. The local
107
94
  // ref is new, so rollback may delete it — the remote still has the branch.
108
- await execa('git', ['worktree', 'add', '--track', '-b', branchName, targetPath, `origin/${branchName}`], { cwd: repoPath });
95
+ await execa('git', ['worktree', 'add', '--track', '-b', branchName, targetPath, remoteRefToTrack], { cwd: repoPath });
109
96
  }
110
97
  else {
111
98
  // If the branch does not exist, create a new branch based on the start point without tracking it
@@ -1 +1 @@
1
- {"version":3,"file":"worktree.js","sourceRoot":"","sources":["../../src/core/worktree.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"worktree.js","sourceRoot":"","sources":["../../src/core/worktree.ts"],"names":[],"mappings":"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"}
@@ -10,11 +10,14 @@
10
10
  * ancient nested commander (v2, no `.hook`) and crash at startup.
11
11
  */
12
12
  import { startServer } from './server.js';
13
- const port = Number(process.env.NF_PORT ?? process.argv[2] ?? 0) || 0;
13
+ import { getDesktopReadyTokens, BRAND_CONFIG, resolveFirstEnv } from './core/constants.js';
14
+ const port = Number(resolveFirstEnv(BRAND_CONFIG.env.port) ?? process.argv[2] ?? 0) || 0;
14
15
  startServer(port, { strictPort: false })
15
16
  .then(({ port: actualPort }) => {
16
- // The Electron shell watches stdout for this token to know the server is up.
17
- console.log(`NEXUSFLOW_READY_PORT=${actualPort}`);
17
+ // The Electron shell watches stdout for these tokens to know the server is up.
18
+ for (const token of getDesktopReadyTokens(actualPort)) {
19
+ console.log(token);
20
+ }
18
21
  console.log(`Dashboard running at: http://localhost:${actualPort}`);
19
22
  })
20
23
  .catch((err) => {
@@ -1 +1 @@
1
- {"version":3,"file":"desktop-server.js","sourceRoot":"","sources":["../src/desktop-server.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;AAEtE,WAAW,CAAC,IAAI,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;KACrC,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE;IAC7B,6EAA6E;IAC7E,OAAO,CAAC,GAAG,CAAC,wBAAwB,UAAU,EAAE,CAAC,CAAC;IAClD,OAAO,CAAC,GAAG,CAAC,0CAA0C,UAAU,EAAE,CAAC,CAAC;AACtE,CAAC,CAAC;KACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IACb,OAAO,CAAC,KAAK,CAAC,mCAAmC,EAAE,GAAG,CAAC,CAAC;IACxD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"desktop-server.js","sourceRoot":"","sources":["../src/desktop-server.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,qBAAqB,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAE3F,MAAM,IAAI,GAAG,MAAM,CAAC,eAAe,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;AAEzF,WAAW,CAAC,IAAI,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;KACrC,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE;IAC7B,+EAA+E;IAC/E,KAAK,MAAM,KAAK,IAAI,qBAAqB,CAAC,UAAU,CAAC,EAAE,CAAC;QACtD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,0CAA0C,UAAU,EAAE,CAAC,CAAC;AACtE,CAAC,CAAC;KACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IACb,OAAO,CAAC,KAAK,CAAC,mCAAmC,EAAE,GAAG,CAAC,CAAC;IACxD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/generators/base.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAMpD,4DAA4D;AAC5D,MAAM,WAAW,aAAa;IAC5B,2CAA2C;IAC3C,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,+CAA+C;IAC/C,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,kCAAkC;IAClC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAmFD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,mBAAmB,CAAC,GAAG,EAAE,gBAAgB,GAAG,OAAO,CAAC,MAAM,CAAC,CAkHhF"}
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/generators/base.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAMpD,4DAA4D;AAC5D,MAAM,WAAW,aAAa;IAC5B,2CAA2C;IAC3C,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,+CAA+C;IAC/C,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,kCAAkC;IAClC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAmFD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,mBAAmB,CAAC,GAAG,EAAE,gBAAgB,GAAG,OAAO,CAAC,MAAM,CAAC,CAmHhF"}
@@ -151,8 +151,8 @@ export async function buildContextContent(ctx) {
151
151
  const hasIsolated = inPlace && Boolean(feature.isolatedRepos && Object.keys(feature.isolatedRepos).length > 0);
152
152
  const structureRule = inPlace
153
153
  ? (hasIsolated
154
- ? '**RULE**: Repos marked `[isolated worktree]` MUST be edited inside their dedicated worktree path. Unisolated repos are in READ-ONLY reference mode: before modifying files in any unisolated repository, you MUST invoke the `isolate_repo` MCP tool (or run `nexusflow isolate <repo>`).'
155
- : '**RULE**: These repositories are in READ-ONLY reference mode on host branches. Before making ANY file modifications, you MUST invoke the `isolate_repo` MCP tool (or run `nexusflow isolate <repo>`) to create a dedicated feature worktree.')
154
+ ? '**RULE**: Repos marked `[isolated worktree]` MUST be edited inside their dedicated worktree path. Unisolated repos are in READ-ONLY reference mode: before modifying files in any unisolated repository, you MUST invoke the `isolate_repo` MCP tool (or run `ctxspace isolate <repo>`).'
155
+ : '**RULE**: These repositories are in READ-ONLY reference mode on host branches. Before making ANY file modifications, you MUST invoke the `isolate_repo` MCP tool (or run `ctxspace isolate <repo>`) to create a dedicated feature worktree.')
156
156
  : `Each repo above is a separate git worktree on \`${feature.branchName}\`. **Do not edit the original repositories elsewhere on disk** — that is a different checkout and changes there are not part of this feature.`;
157
157
  // Repos that already ship their own assistant instructions; those override
158
158
  // anything here for that repo, so it is worth naming them. Walked via `repos`
@@ -195,7 +195,7 @@ export async function buildContextContent(ctx) {
195
195
  ${rows.join('\n')}
196
196
 
197
197
  ${structureRule}${startHint}`
198
- : `This workspace has no repositories yet — add one with \`nexusflow add-repo\`.`;
198
+ : `This workspace has no repositories yet — add one with \`ctxspace add-repo\`.`;
199
199
  const freshness = ctx.generation ? `${renderFreshnessBanner(ctx.generation)}\n\n` : '';
200
200
  return `${freshness}# ${feature.id}
201
201
 
@@ -205,8 +205,9 @@ ${reposSection}
205
205
 
206
206
  ## Where to look
207
207
 
208
- - \`nexusflow-knowledge.md\` — decisions and gotchas from earlier sessions, one per \`###\` heading. It grows every session and is often long, so search the headings for your topic and read only those entries, not the whole file. Add with \`nexusflow knowledge add -t decision|gotcha --title "..." -m "..."\`, keeping each entry to a rule and its reason
209
- - \`nexusflow-plan.md\` — cross-repo package merge order only; runtime and intra-repo contracts are represented by scoped knowledge entries
208
+ - \`contextspace-knowledge.md\` — decisions and gotchas from earlier sessions, one per \`###\` heading. Use MCP \`search_knowledge\` for fast lookup or search headings for your topic and read only those entries, not the whole file. Add with \`ctxspace knowledge add -t decision|gotcha --title "..." -m "..."\`, keeping each entry to a rule and its reason
209
+ - \`contextspace-plan.md\` — cross-repo package merge order only; runtime and intra-repo contracts are represented by scoped knowledge entries
210
+ - \`.agents/skills/\` — procedural playbooks and specialized skills for this workspace (also mirrored to \`.codex/skills/\`, \`.claude/skills/\`, \`.github/skills/\`, \`.cursor/skills/\` where supported)
210
211
  ${ownInstructions}${customCommands}${teamwork}`;
211
212
  }
212
213
  //# sourceMappingURL=base.js.map