@alwaysmeticulous/cli 2.326.1 → 2.328.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 (456) hide show
  1. package/dist/__tests__/commonjs-dependencies.spec.d.ts +2 -0
  2. package/dist/__tests__/commonjs-dependencies.spec.d.ts.map +1 -0
  3. package/dist/__tests__/commonjs-dependencies.spec.js +82 -0
  4. package/dist/__tests__/commonjs-dependencies.spec.js.map +1 -0
  5. package/dist/command-utils/__tests__/parse-rewrites.spec.js +2 -2
  6. package/dist/command-utils/__tests__/parse-rewrites.spec.js.map +1 -1
  7. package/dist/command-utils/__tests__/warn-regex-rewrites.spec.js +2 -2
  8. package/dist/command-utils/__tests__/warn-regex-rewrites.spec.js.map +1 -1
  9. package/dist/command-utils/common-options.js +2 -2
  10. package/dist/command-utils/common-options.js.map +1 -1
  11. package/dist/command-utils/detect-upload-mode.js +2 -2
  12. package/dist/command-utils/detect-upload-mode.js.map +1 -1
  13. package/dist/command-utils/detect-upload-mode.spec.js +2 -2
  14. package/dist/command-utils/detect-upload-mode.spec.js.map +1 -1
  15. package/dist/command-utils/download-session.utils.js +2 -2
  16. package/dist/command-utils/download-session.utils.js.map +1 -1
  17. package/dist/command-utils/json-args.js +2 -2
  18. package/dist/command-utils/json-args.js.map +1 -1
  19. package/dist/command-utils/json-args.spec.js +2 -2
  20. package/dist/command-utils/json-args.spec.js.map +1 -1
  21. package/dist/command-utils/parse-container-env.js +2 -2
  22. package/dist/command-utils/parse-container-env.js.map +1 -1
  23. package/dist/command-utils/parse-rewrites.js +2 -2
  24. package/dist/command-utils/parse-rewrites.js.map +1 -1
  25. package/dist/command-utils/print-json.js +2 -2
  26. package/dist/command-utils/print-json.js.map +1 -1
  27. package/dist/command-utils/sentry.utils.js +2 -2
  28. package/dist/command-utils/sentry.utils.js.map +1 -1
  29. package/dist/command-utils/warn-regex-rewrites.js +2 -2
  30. package/dist/command-utils/warn-regex-rewrites.js.map +1 -1
  31. package/dist/commands/agent/agent-review-writes.command.spec.js +2 -2
  32. package/dist/commands/agent/agent-review-writes.command.spec.js.map +1 -1
  33. package/dist/commands/agent/build-git-options.js +2 -2
  34. package/dist/commands/agent/build-git-options.js.map +1 -1
  35. package/dist/commands/agent/build-git-options.spec.js +2 -2
  36. package/dist/commands/agent/build-git-options.spec.js.map +1 -1
  37. package/dist/commands/agent/coverage-columns.util.js +2 -2
  38. package/dist/commands/agent/coverage-columns.util.js.map +1 -1
  39. package/dist/commands/agent/create-diff-comment.command.js +2 -2
  40. package/dist/commands/agent/create-diff-comment.command.js.map +1 -1
  41. package/dist/commands/agent/diff-comment-write.utils.js +2 -2
  42. package/dist/commands/agent/diff-comment-write.utils.js.map +1 -1
  43. package/dist/commands/agent/diff-comments.command.js +2 -2
  44. package/dist/commands/agent/diff-comments.command.js.map +1 -1
  45. package/dist/commands/agent/diff-comments.command.spec.js +2 -2
  46. package/dist/commands/agent/diff-comments.command.spec.js.map +1 -1
  47. package/dist/commands/agent/ignore-diff.command.js +2 -2
  48. package/dist/commands/agent/ignore-diff.command.js.map +1 -1
  49. package/dist/commands/agent/index.js +2 -2
  50. package/dist/commands/agent/index.js.map +1 -1
  51. package/dist/commands/agent/js-coverage-diff.command.js +2 -2
  52. package/dist/commands/agent/js-coverage-diff.command.js.map +1 -1
  53. package/dist/commands/agent/js-coverage.command.handler.spec.js +2 -2
  54. package/dist/commands/agent/js-coverage.command.handler.spec.js.map +1 -1
  55. package/dist/commands/agent/js-coverage.command.js +2 -2
  56. package/dist/commands/agent/js-coverage.command.js.map +1 -1
  57. package/dist/commands/agent/js-coverage.command.spec.js +2 -2
  58. package/dist/commands/agent/js-coverage.command.spec.js.map +1 -1
  59. package/dist/commands/agent/reject-diff.command.js +2 -2
  60. package/dist/commands/agent/reject-diff.command.js.map +1 -1
  61. package/dist/commands/agent/reject-diff.command.spec.js +2 -2
  62. package/dist/commands/agent/reject-diff.command.spec.js.map +1 -1
  63. package/dist/commands/agent/reply-to-diff-comment.command.js +2 -2
  64. package/dist/commands/agent/reply-to-diff-comment.command.js.map +1 -1
  65. package/dist/commands/agent/screenshot-dom-diff.command.js +2 -2
  66. package/dist/commands/agent/screenshot-dom-diff.command.js.map +1 -1
  67. package/dist/commands/agent/screenshot-image-files.command.js +2 -2
  68. package/dist/commands/agent/screenshot-image-files.command.js.map +1 -1
  69. package/dist/commands/agent/screenshot-image.command.js +2 -2
  70. package/dist/commands/agent/screenshot-image.command.js.map +1 -1
  71. package/dist/commands/agent/sessions.command.js +2 -2
  72. package/dist/commands/agent/sessions.command.js.map +1 -1
  73. package/dist/commands/agent/sessions.command.spec.js +2 -2
  74. package/dist/commands/agent/sessions.command.spec.js.map +1 -1
  75. package/dist/commands/agent/submit-feedback.command.js +2 -2
  76. package/dist/commands/agent/submit-feedback.command.js.map +1 -1
  77. package/dist/commands/agent/test-run-check.command.js +2 -2
  78. package/dist/commands/agent/test-run-check.command.js.map +1 -1
  79. package/dist/commands/agent/test-run-check.command.spec.js +2 -2
  80. package/dist/commands/agent/test-run-check.command.spec.js.map +1 -1
  81. package/dist/commands/agent/test-run-diffs.command.js +2 -2
  82. package/dist/commands/agent/test-run-diffs.command.js.map +1 -1
  83. package/dist/commands/agent/test-run-diffs.command.spec.js +2 -2
  84. package/dist/commands/agent/test-run-diffs.command.spec.js.map +1 -1
  85. package/dist/commands/agent/test-run-diffs.utils.js +2 -2
  86. package/dist/commands/agent/test-run-diffs.utils.js.map +1 -1
  87. package/dist/commands/agent/test-run-diffs.utils.spec.js +2 -2
  88. package/dist/commands/agent/test-run-diffs.utils.spec.js.map +1 -1
  89. package/dist/commands/agent/test-run-for-commit.command.js +2 -2
  90. package/dist/commands/agent/test-run-for-commit.command.js.map +1 -1
  91. package/dist/commands/agent/timeline.command.js +2 -2
  92. package/dist/commands/agent/timeline.command.js.map +1 -1
  93. package/dist/commands/agent/timeline.command.spec.js +2 -2
  94. package/dist/commands/agent/timeline.command.spec.js.map +1 -1
  95. package/dist/commands/agent/trigger-test-run.command.js +2 -2
  96. package/dist/commands/agent/trigger-test-run.command.js.map +1 -1
  97. package/dist/commands/agent/trigger-test-run.command.spec.js +2 -2
  98. package/dist/commands/agent/trigger-test-run.command.spec.js.map +1 -1
  99. package/dist/commands/agent/upload-build.command.js +2 -2
  100. package/dist/commands/agent/upload-build.command.js.map +1 -1
  101. package/dist/commands/all-commands.d.ts.map +1 -1
  102. package/dist/commands/all-commands.js +8 -6
  103. package/dist/commands/all-commands.js.map +1 -1
  104. package/dist/commands/auth/__tests__/get-project.command.spec.js +2 -2
  105. package/dist/commands/auth/__tests__/get-project.command.spec.js.map +1 -1
  106. package/dist/commands/auth/__tests__/list-projects.command.spec.js +2 -2
  107. package/dist/commands/auth/__tests__/list-projects.command.spec.js.map +1 -1
  108. package/dist/commands/auth/__tests__/login.command.spec.js +2 -2
  109. package/dist/commands/auth/__tests__/login.command.spec.js.map +1 -1
  110. package/dist/commands/auth/__tests__/logout.command.spec.js +2 -2
  111. package/dist/commands/auth/__tests__/logout.command.spec.js.map +1 -1
  112. package/dist/commands/auth/__tests__/set-project.command.spec.js +2 -2
  113. package/dist/commands/auth/__tests__/set-project.command.spec.js.map +1 -1
  114. package/dist/commands/auth/__tests__/whoami.command.spec.js +2 -2
  115. package/dist/commands/auth/__tests__/whoami.command.spec.js.map +1 -1
  116. package/dist/commands/auth/get-project.command.js +2 -2
  117. package/dist/commands/auth/get-project.command.js.map +1 -1
  118. package/dist/commands/auth/index.js +2 -2
  119. package/dist/commands/auth/index.js.map +1 -1
  120. package/dist/commands/auth/list-projects.command.js +2 -2
  121. package/dist/commands/auth/list-projects.command.js.map +1 -1
  122. package/dist/commands/auth/login.command.js +2 -2
  123. package/dist/commands/auth/login.command.js.map +1 -1
  124. package/dist/commands/auth/logout.command.js +2 -2
  125. package/dist/commands/auth/logout.command.js.map +1 -1
  126. package/dist/commands/auth/set-project.command.js +2 -2
  127. package/dist/commands/auth/set-project.command.js.map +1 -1
  128. package/dist/commands/auth/whoami.command.js +2 -2
  129. package/dist/commands/auth/whoami.command.js.map +1 -1
  130. package/dist/commands/ci/__tests__/label-commit.utils.spec.js +2 -2
  131. package/dist/commands/ci/__tests__/label-commit.utils.spec.js.map +1 -1
  132. package/dist/commands/ci/__tests__/session-filter.utils.spec.js +2 -2
  133. package/dist/commands/ci/__tests__/session-filter.utils.spec.js.map +1 -1
  134. package/dist/commands/ci/agent-test.command.d.ts +2 -0
  135. package/dist/commands/ci/agent-test.command.d.ts.map +1 -1
  136. package/dist/commands/ci/agent-test.command.js +28 -3
  137. package/dist/commands/ci/agent-test.command.js.map +1 -1
  138. package/dist/commands/ci/agent-test.command.spec.d.ts +2 -0
  139. package/dist/commands/ci/agent-test.command.spec.d.ts.map +1 -0
  140. package/dist/commands/ci/agent-test.command.spec.js +133 -0
  141. package/dist/commands/ci/agent-test.command.spec.js.map +1 -0
  142. package/dist/commands/ci/deprecated-trigger-options.js +2 -2
  143. package/dist/commands/ci/deprecated-trigger-options.js.map +1 -1
  144. package/dist/commands/ci/index.js +2 -2
  145. package/dist/commands/ci/index.js.map +1 -1
  146. package/dist/commands/ci/label-commit.command.js +2 -2
  147. package/dist/commands/ci/label-commit.command.js.map +1 -1
  148. package/dist/commands/ci/label-commit.core.js +2 -2
  149. package/dist/commands/ci/label-commit.core.js.map +1 -1
  150. package/dist/commands/ci/label-commit.types.js +2 -2
  151. package/dist/commands/ci/label-commit.types.js.map +1 -1
  152. package/dist/commands/ci/label-commit.utils.js +2 -2
  153. package/dist/commands/ci/label-commit.utils.js.map +1 -1
  154. package/dist/commands/ci/prepare.command.js +2 -2
  155. package/dist/commands/ci/prepare.command.js.map +1 -1
  156. package/dist/commands/ci/resolve-git-options.js +2 -2
  157. package/dist/commands/ci/resolve-git-options.js.map +1 -1
  158. package/dist/commands/ci/run-local.command.js +2 -2
  159. package/dist/commands/ci/run-local.command.js.map +1 -1
  160. package/dist/commands/ci/run-with-uploaded-asset-chunks.command.js +2 -2
  161. package/dist/commands/ci/run-with-uploaded-asset-chunks.command.js.map +1 -1
  162. package/dist/commands/ci/run-with-uploaded-asset-chunks.command.spec.js +2 -2
  163. package/dist/commands/ci/run-with-uploaded-asset-chunks.command.spec.js.map +1 -1
  164. package/dist/commands/ci/run-with-uploaded-asset-chunks.utils.js +2 -2
  165. package/dist/commands/ci/run-with-uploaded-asset-chunks.utils.js.map +1 -1
  166. package/dist/commands/ci/run.command.js +2 -2
  167. package/dist/commands/ci/run.command.js.map +1 -1
  168. package/dist/commands/ci/session-filter.utils.js +2 -2
  169. package/dist/commands/ci/session-filter.utils.js.map +1 -1
  170. package/dist/commands/ci/start-tunnel.command.js +2 -2
  171. package/dist/commands/ci/start-tunnel.command.js.map +1 -1
  172. package/dist/commands/ci/trigger-test-run.core.js +2 -2
  173. package/dist/commands/ci/trigger-test-run.core.js.map +1 -1
  174. package/dist/commands/ci/trigger-test-run.types.js +2 -2
  175. package/dist/commands/ci/trigger-test-run.types.js.map +1 -1
  176. package/dist/commands/ci/upload-asset-chunk.command.js +2 -2
  177. package/dist/commands/ci/upload-asset-chunk.command.js.map +1 -1
  178. package/dist/commands/ci/upload-assets.command.js +2 -2
  179. package/dist/commands/ci/upload-assets.command.js.map +1 -1
  180. package/dist/commands/ci/upload-container.command.js +2 -2
  181. package/dist/commands/ci/upload-container.command.js.map +1 -1
  182. package/dist/commands/crawl.command.js +2 -2
  183. package/dist/commands/crawl.command.js.map +1 -1
  184. package/dist/commands/debug/clean-workspaces.js +2 -2
  185. package/dist/commands/debug/clean-workspaces.js.map +1 -1
  186. package/dist/commands/debug/index.js +2 -2
  187. package/dist/commands/debug/index.js.map +1 -1
  188. package/dist/commands/debug/present-workspace.js +2 -2
  189. package/dist/commands/debug/present-workspace.js.map +1 -1
  190. package/dist/commands/debug/project-worktree.js +2 -2
  191. package/dist/commands/debug/project-worktree.js.map +1 -1
  192. package/dist/commands/deprecated-aliases.js +2 -2
  193. package/dist/commands/deprecated-aliases.js.map +1 -1
  194. package/dist/commands/download/index.js +2 -2
  195. package/dist/commands/download/index.js.map +1 -1
  196. package/dist/commands/download/replay.command.js +2 -2
  197. package/dist/commands/download/replay.command.js.map +1 -1
  198. package/dist/commands/download/session.command.js +2 -2
  199. package/dist/commands/download/session.command.js.map +1 -1
  200. package/dist/commands/download/test-run.command.js +2 -2
  201. package/dist/commands/download/test-run.command.js.map +1 -1
  202. package/dist/commands/local/get-edited-files.utils.js +2 -2
  203. package/dist/commands/local/get-edited-files.utils.js.map +1 -1
  204. package/dist/commands/local/get-edited-files.utils.spec.js +2 -2
  205. package/dist/commands/local/get-edited-files.utils.spec.js.map +1 -1
  206. package/dist/commands/local/index.js +2 -2
  207. package/dist/commands/local/index.js.map +1 -1
  208. package/dist/commands/local/relevant-sessions.command.js +2 -2
  209. package/dist/commands/local/relevant-sessions.command.js.map +1 -1
  210. package/dist/commands/onboard/__tests__/build-context.spec.d.ts +2 -0
  211. package/dist/commands/onboard/__tests__/build-context.spec.d.ts.map +1 -0
  212. package/dist/commands/onboard/__tests__/build-context.spec.js +179 -0
  213. package/dist/commands/onboard/__tests__/build-context.spec.js.map +1 -0
  214. package/dist/commands/onboard/__tests__/check-vcs-link.spec.d.ts +2 -0
  215. package/dist/commands/onboard/__tests__/check-vcs-link.spec.d.ts.map +1 -0
  216. package/dist/commands/onboard/__tests__/check-vcs-link.spec.js +164 -0
  217. package/dist/commands/onboard/__tests__/check-vcs-link.spec.js.map +1 -0
  218. package/dist/commands/onboard/__tests__/codex-mcp.spec.d.ts +2 -0
  219. package/dist/commands/onboard/__tests__/codex-mcp.spec.d.ts.map +1 -0
  220. package/dist/commands/onboard/__tests__/codex-mcp.spec.js +73 -0
  221. package/dist/commands/onboard/__tests__/codex-mcp.spec.js.map +1 -0
  222. package/dist/commands/onboard/__tests__/detect-framework.spec.d.ts +2 -0
  223. package/dist/commands/onboard/__tests__/detect-framework.spec.d.ts.map +1 -0
  224. package/dist/commands/onboard/__tests__/detect-framework.spec.js +277 -0
  225. package/dist/commands/onboard/__tests__/detect-framework.spec.js.map +1 -0
  226. package/dist/commands/onboard/__tests__/git-repo-info.spec.d.ts +2 -0
  227. package/dist/commands/onboard/__tests__/git-repo-info.spec.d.ts.map +1 -0
  228. package/dist/commands/onboard/__tests__/git-repo-info.spec.js +109 -0
  229. package/dist/commands/onboard/__tests__/git-repo-info.spec.js.map +1 -0
  230. package/dist/commands/onboard/__tests__/inline-doc-constants.spec.d.ts +2 -0
  231. package/dist/commands/onboard/__tests__/inline-doc-constants.spec.d.ts.map +1 -0
  232. package/dist/commands/onboard/__tests__/inline-doc-constants.spec.js +157 -0
  233. package/dist/commands/onboard/__tests__/inline-doc-constants.spec.js.map +1 -0
  234. package/dist/commands/onboard/__tests__/install-skills.spec.d.ts +2 -0
  235. package/dist/commands/onboard/__tests__/install-skills.spec.d.ts.map +1 -0
  236. package/dist/commands/onboard/__tests__/install-skills.spec.js +158 -0
  237. package/dist/commands/onboard/__tests__/install-skills.spec.js.map +1 -0
  238. package/dist/commands/onboard/__tests__/materialize-workspace.spec.d.ts +2 -0
  239. package/dist/commands/onboard/__tests__/materialize-workspace.spec.d.ts.map +1 -0
  240. package/dist/commands/onboard/__tests__/materialize-workspace.spec.js +116 -0
  241. package/dist/commands/onboard/__tests__/materialize-workspace.spec.js.map +1 -0
  242. package/dist/commands/onboard/__tests__/resolve-app.spec.d.ts +2 -0
  243. package/dist/commands/onboard/__tests__/resolve-app.spec.d.ts.map +1 -0
  244. package/dist/commands/onboard/__tests__/resolve-app.spec.js +166 -0
  245. package/dist/commands/onboard/__tests__/resolve-app.spec.js.map +1 -0
  246. package/dist/commands/onboard/__tests__/safe-repo-fs.spec.d.ts +2 -0
  247. package/dist/commands/onboard/__tests__/safe-repo-fs.spec.d.ts.map +1 -0
  248. package/dist/commands/onboard/__tests__/safe-repo-fs.spec.js +137 -0
  249. package/dist/commands/onboard/__tests__/safe-repo-fs.spec.js.map +1 -0
  250. package/dist/commands/onboard/__tests__/setup-agent-integrations.spec.d.ts +2 -0
  251. package/dist/commands/onboard/__tests__/setup-agent-integrations.spec.d.ts.map +1 -0
  252. package/dist/commands/onboard/__tests__/setup-agent-integrations.spec.js +286 -0
  253. package/dist/commands/onboard/__tests__/setup-agent-integrations.spec.js.map +1 -0
  254. package/dist/commands/onboard/build-context.d.ts +16 -0
  255. package/dist/commands/onboard/build-context.d.ts.map +1 -0
  256. package/dist/commands/onboard/build-context.js +104 -0
  257. package/dist/commands/onboard/build-context.js.map +1 -0
  258. package/dist/commands/onboard/check-vcs-link.d.ts +14 -0
  259. package/dist/commands/onboard/check-vcs-link.d.ts.map +1 -0
  260. package/dist/commands/onboard/check-vcs-link.js +111 -0
  261. package/dist/commands/onboard/check-vcs-link.js.map +1 -0
  262. package/dist/commands/onboard/codex-mcp.d.ts +24 -0
  263. package/dist/commands/onboard/codex-mcp.d.ts.map +1 -0
  264. package/dist/commands/onboard/codex-mcp.js +302 -0
  265. package/dist/commands/onboard/codex-mcp.js.map +1 -0
  266. package/dist/commands/onboard/customer-agents.d.ts +9 -0
  267. package/dist/commands/onboard/customer-agents.d.ts.map +1 -0
  268. package/dist/commands/onboard/customer-agents.js +19 -0
  269. package/dist/commands/onboard/customer-agents.js.map +1 -0
  270. package/dist/commands/onboard/customer-agents.json +17 -0
  271. package/dist/commands/onboard/customer-docs.d.ts +21 -0
  272. package/dist/commands/onboard/customer-docs.d.ts.map +1 -0
  273. package/dist/commands/onboard/customer-docs.js +31 -0
  274. package/dist/commands/onboard/customer-docs.js.map +1 -0
  275. package/dist/commands/onboard/customer-docs.json +35 -0
  276. package/dist/commands/onboard/detect-framework.d.ts +26 -0
  277. package/dist/commands/onboard/detect-framework.d.ts.map +1 -0
  278. package/dist/commands/onboard/detect-framework.js +305 -0
  279. package/dist/commands/onboard/detect-framework.js.map +1 -0
  280. package/dist/commands/onboard/discover-apps.d.ts +21 -0
  281. package/dist/commands/onboard/discover-apps.d.ts.map +1 -0
  282. package/dist/commands/onboard/discover-apps.js +318 -0
  283. package/dist/commands/onboard/discover-apps.js.map +1 -0
  284. package/dist/commands/onboard/docs-urls.d.ts +11 -0
  285. package/dist/commands/onboard/docs-urls.d.ts.map +1 -0
  286. package/dist/commands/onboard/docs-urls.js +17 -0
  287. package/dist/commands/onboard/docs-urls.js.map +1 -0
  288. package/dist/commands/onboard/git-repo-info.d.ts +15 -0
  289. package/dist/commands/onboard/git-repo-info.d.ts.map +1 -0
  290. package/dist/commands/onboard/git-repo-info.js +84 -0
  291. package/dist/commands/onboard/git-repo-info.js.map +1 -0
  292. package/dist/commands/onboard/index.d.ts +18 -0
  293. package/dist/commands/onboard/index.d.ts.map +1 -0
  294. package/dist/commands/onboard/index.js +164 -0
  295. package/dist/commands/onboard/index.js.map +1 -0
  296. package/dist/commands/onboard/inline-doc-constants.d.ts +21 -0
  297. package/dist/commands/onboard/inline-doc-constants.d.ts.map +1 -0
  298. package/dist/commands/onboard/inline-doc-constants.js +238 -0
  299. package/dist/commands/onboard/inline-doc-constants.js.map +1 -0
  300. package/dist/commands/onboard/launch-agent.d.ts +65 -0
  301. package/dist/commands/onboard/launch-agent.d.ts.map +1 -0
  302. package/dist/commands/onboard/launch-agent.js +311 -0
  303. package/dist/commands/onboard/launch-agent.js.map +1 -0
  304. package/dist/commands/onboard/materialize-workspace.d.ts +68 -0
  305. package/dist/commands/onboard/materialize-workspace.d.ts.map +1 -0
  306. package/dist/commands/onboard/materialize-workspace.js +177 -0
  307. package/dist/commands/onboard/materialize-workspace.js.map +1 -0
  308. package/dist/commands/onboard/print-summary.d.ts +10 -0
  309. package/dist/commands/onboard/print-summary.d.ts.map +1 -0
  310. package/dist/commands/onboard/print-summary.js +49 -0
  311. package/dist/commands/onboard/print-summary.js.map +1 -0
  312. package/dist/commands/onboard/resolve-app.d.ts +21 -0
  313. package/dist/commands/onboard/resolve-app.d.ts.map +1 -0
  314. package/dist/commands/onboard/resolve-app.js +78 -0
  315. package/dist/commands/onboard/resolve-app.js.map +1 -0
  316. package/dist/commands/onboard/resolve-project.d.ts +14 -0
  317. package/dist/commands/onboard/resolve-project.d.ts.map +1 -0
  318. package/dist/commands/onboard/resolve-project.js +92 -0
  319. package/dist/commands/onboard/resolve-project.js.map +1 -0
  320. package/dist/commands/onboard/safe-repo-fs.d.ts +59 -0
  321. package/dist/commands/onboard/safe-repo-fs.d.ts.map +1 -0
  322. package/dist/commands/onboard/safe-repo-fs.js +266 -0
  323. package/dist/commands/onboard/safe-repo-fs.js.map +1 -0
  324. package/dist/commands/onboard/setup-agent-integrations.d.ts +43 -0
  325. package/dist/commands/onboard/setup-agent-integrations.d.ts.map +1 -0
  326. package/dist/commands/onboard/setup-agent-integrations.js +324 -0
  327. package/dist/commands/onboard/setup-agent-integrations.js.map +1 -0
  328. package/dist/commands/onboard/templates/CLAUDE.md +213 -0
  329. package/dist/commands/onboard/templates/agents/auth-setup.md +117 -0
  330. package/dist/commands/onboard/templates/agents/ci-setup.md +742 -0
  331. package/dist/commands/onboard/templates/agents/csp-setup.md +78 -0
  332. package/dist/commands/onboard/templates/agents/false-positive-prevention.md +268 -0
  333. package/dist/commands/onboard/templates/agents/feature-flag-setup.md +133 -0
  334. package/dist/commands/onboard/templates/agents/local-simulation-verification.md +96 -0
  335. package/dist/commands/onboard/templates/agents/persisted-graphql-queries.md +150 -0
  336. package/dist/commands/onboard/templates/agents/recorder-installation.md +194 -0
  337. package/dist/commands/onboard/templates/agents/replay-fetch-retry-compatibility.md +252 -0
  338. package/dist/commands/onboard/templates/agents/reviewer.md +788 -0
  339. package/dist/commands/onboard/templates/agents/service-worker-compatibility.md +254 -0
  340. package/dist/commands/onboard/templates/agents/session-context.md +133 -0
  341. package/dist/commands/onboard/templates/agents/shared-worker-compatibility.md +187 -0
  342. package/dist/commands/onboard/templates/docs/additional-guides/backend-recorder.ts +340 -0
  343. package/dist/commands/onboard/templates/docs/ci/not-yet-run-checks.ts +58 -0
  344. package/dist/commands/onboard/templates/docs/ci.ts +19 -0
  345. package/dist/commands/onboard/templates/docs/cloud-replay.ts +145 -0
  346. package/dist/commands/onboard/templates/docs/constants.ts +37 -0
  347. package/dist/commands/onboard/templates/docs/github-actions-v2.ts +859 -0
  348. package/dist/commands/onboard/templates/docs/how-to/auth/bypassing-auth.ts +27 -0
  349. package/dist/commands/onboard/templates/docs/how-to/auth/enabling-full-auth.ts +91 -0
  350. package/dist/commands/onboard/templates/docs/how-to/configure-ignore-patterns.ts +77 -0
  351. package/dist/commands/onboard/templates/docs/how-to/enable-source-coverage.ts +84 -0
  352. package/dist/commands/onboard/templates/docs/how-to/fix-false-positive-diffs.ts +156 -0
  353. package/dist/commands/onboard/templates/docs/how-to/link-bitbucket.ts +15 -0
  354. package/dist/commands/onboard/templates/docs/how-to/link-gitlab.ts +22 -0
  355. package/dist/commands/onboard/templates/docs/how-to/record-session-context.ts +129 -0
  356. package/dist/commands/onboard/templates/docs/how-to/recorder-script.ts +139 -0
  357. package/dist/commands/onboard/templates/docs/how-to/testing-feature-flags.ts +97 -0
  358. package/dist/commands/onboard/templates/docs/how-to/testing-multiple-apps-or-app-variants.ts +40 -0
  359. package/dist/commands/onboard/templates/docs/how-to/troubleshoot-auth.ts +58 -0
  360. package/dist/commands/onboard/templates/docs/how-to/troubleshoot-failed-simulations.ts +97 -0
  361. package/dist/commands/onboard/templates/docs/how-to/typescript-types.ts +51 -0
  362. package/dist/commands/onboard/templates/docs/how-to/window-meticulous-object.ts +685 -0
  363. package/dist/commands/onboard/templates/docs/onboarding-guide.ts +415 -0
  364. package/dist/commands/onboard/templates/docs/recorder-getting-started.ts +24 -0
  365. package/dist/commands/onboard/templates/docs/recorder-snippets/constants.ts +1 -0
  366. package/dist/commands/onboard/templates/docs/recorder-snippets/explanation-of-methods-to-add-recorder.ts +21 -0
  367. package/dist/commands/onboard/templates/docs/recorder-snippets/npm-package-based-instructions/angular-instructions.ts +34 -0
  368. package/dist/commands/onboard/templates/docs/recorder-snippets/npm-package-based-instructions/any-other-framework-instructions.ts +118 -0
  369. package/dist/commands/onboard/templates/docs/recorder-snippets/npm-package-based-instructions/vue-instructions.ts +39 -0
  370. package/dist/commands/onboard/templates/docs/recorder-snippets/script-based-instructions/next-js-instructions.ts +49 -0
  371. package/dist/commands/onboard/templates/docs/recorder-snippets/script-based-instructions/nuxtjs-instructions.ts +68 -0
  372. package/dist/commands/onboard/templates/docs/recorder-snippets/script-based-instructions/rsbuild-instructions.ts +66 -0
  373. package/dist/commands/onboard/templates/docs/recorder-snippets/script-based-instructions/storybook-instructions.ts +59 -0
  374. package/dist/commands/onboard/templates/docs/recorder-snippets/script-based-instructions/sveltekit-instructions.ts +113 -0
  375. package/dist/commands/onboard/templates/docs/recorder-snippets/script-based-instructions/vite-instructions.ts +58 -0
  376. package/dist/commands/onboard/templates/docs/recorder-snippets/script-requirements.ts +51 -0
  377. package/dist/commands/onboard/templates/docs/recorder-snippets/steps-after-installing-recorder.ts +25 -0
  378. package/dist/commands/onboard/templates/docs/reference/cli-commands.ts +1324 -0
  379. package/dist/commands/onboard/templates/docs/session-recording/csp-exceptions.ts +17 -0
  380. package/dist/commands/onboard/templates/docs/session-recording/recorder-npm-dependency.ts +62 -0
  381. package/dist/commands/onboard/templates/docs-imports/src/lib/next/next.constants.ts +46 -0
  382. package/dist/commands/onboard/templates/docs-imports/src/lib/utils/internal-urls/docs-urls.utils.ts +254 -0
  383. package/dist/commands/onboard/templates/settings.json +14 -0
  384. package/dist/commands/project/index.js +2 -2
  385. package/dist/commands/project/index.js.map +1 -1
  386. package/dist/commands/project/show.command.js +2 -2
  387. package/dist/commands/project/show.command.js.map +1 -1
  388. package/dist/commands/project/upload-source.command.js +2 -2
  389. package/dist/commands/project/upload-source.command.js.map +1 -1
  390. package/dist/commands/record/__tests__/backend-dev-command.utils.spec.js +2 -2
  391. package/dist/commands/record/__tests__/backend-dev-command.utils.spec.js.map +1 -1
  392. package/dist/commands/record/__tests__/backend-sidecar.utils.spec.js +2 -2
  393. package/dist/commands/record/__tests__/backend-sidecar.utils.spec.js.map +1 -1
  394. package/dist/commands/record/__tests__/backend.command.spec.js +2 -2
  395. package/dist/commands/record/__tests__/backend.command.spec.js.map +1 -1
  396. package/dist/commands/record/__tests__/login.command.spec.js +2 -2
  397. package/dist/commands/record/__tests__/login.command.spec.js.map +1 -1
  398. package/dist/commands/record/__tests__/session.command.spec.js +2 -2
  399. package/dist/commands/record/__tests__/session.command.spec.js.map +1 -1
  400. package/dist/commands/record/backend-dev-command.utils.js +2 -2
  401. package/dist/commands/record/backend-dev-command.utils.js.map +1 -1
  402. package/dist/commands/record/backend-sidecar.utils.js +2 -2
  403. package/dist/commands/record/backend-sidecar.utils.js.map +1 -1
  404. package/dist/commands/record/backend.command.js +2 -2
  405. package/dist/commands/record/backend.command.js.map +1 -1
  406. package/dist/commands/record/index.js +2 -2
  407. package/dist/commands/record/index.js.map +1 -1
  408. package/dist/commands/record/login.command.js +2 -2
  409. package/dist/commands/record/login.command.js.map +1 -1
  410. package/dist/commands/record/session.command.js +2 -2
  411. package/dist/commands/record/session.command.js.map +1 -1
  412. package/dist/commands/replay-debugger.ui.js +2 -2
  413. package/dist/commands/replay-debugger.ui.js.map +1 -1
  414. package/dist/commands/replay.command.js +2 -2
  415. package/dist/commands/replay.command.js.map +1 -1
  416. package/dist/commands/schema.command.js +2 -2
  417. package/dist/commands/schema.command.js.map +1 -1
  418. package/dist/commands/schema.command.spec.js +2 -2
  419. package/dist/commands/schema.command.spec.js.map +1 -1
  420. package/dist/index.js +2 -2
  421. package/dist/index.js.map +1 -1
  422. package/dist/main.js +2 -2
  423. package/dist/main.js.map +1 -1
  424. package/dist/utils/__tests__/handle-auth-failure.spec.js +2 -2
  425. package/dist/utils/__tests__/handle-auth-failure.spec.js.map +1 -1
  426. package/dist/utils/__tests__/project-selection-hint.spec.js +2 -2
  427. package/dist/utils/__tests__/project-selection-hint.spec.js.map +1 -1
  428. package/dist/utils/__tests__/resolve-project-identifier.spec.js +2 -2
  429. package/dist/utils/__tests__/resolve-project-identifier.spec.js.map +1 -1
  430. package/dist/utils/__tests__/resolve-test-run-from-commit.spec.js +2 -2
  431. package/dist/utils/__tests__/resolve-test-run-from-commit.spec.js.map +1 -1
  432. package/dist/utils/__tests__/select-project.spec.js +5 -4
  433. package/dist/utils/__tests__/select-project.spec.js.map +1 -1
  434. package/dist/utils/cli-user-error.js +2 -2
  435. package/dist/utils/cli-user-error.js.map +1 -1
  436. package/dist/utils/constants.js +2 -2
  437. package/dist/utils/constants.js.map +1 -1
  438. package/dist/utils/environment.utils.js +2 -2
  439. package/dist/utils/environment.utils.js.map +1 -1
  440. package/dist/utils/format-coverage-ranges.js +2 -2
  441. package/dist/utils/format-coverage-ranges.js.map +1 -1
  442. package/dist/utils/handle-auth-failure.js +2 -2
  443. package/dist/utils/handle-auth-failure.js.map +1 -1
  444. package/dist/utils/out-of-date-client-error.js +2 -2
  445. package/dist/utils/out-of-date-client-error.js.map +1 -1
  446. package/dist/utils/project-selection-hint.js +2 -2
  447. package/dist/utils/project-selection-hint.js.map +1 -1
  448. package/dist/utils/resolve-project-identifier.js +2 -2
  449. package/dist/utils/resolve-project-identifier.js.map +1 -1
  450. package/dist/utils/resolve-test-run-from-commit.js +2 -2
  451. package/dist/utils/resolve-test-run-from-commit.js.map +1 -1
  452. package/dist/utils/select-project.d.ts +9 -0
  453. package/dist/utils/select-project.d.ts.map +1 -1
  454. package/dist/utils/select-project.js +58 -15
  455. package/dist/utils/select-project.js.map +1 -1
  456. package/package.json +14 -12
@@ -0,0 +1,311 @@
1
+ "use strict";
2
+ !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="cc77314d-aba3-5b50-b3e3-23beaef7d1ef")}catch(e){}}();
3
+
4
+ var __importDefault = (this && this.__importDefault) || function (mod) {
5
+ return (mod && mod.__esModule) ? mod : { "default": mod };
6
+ };
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.printManualLaunchInstructions = exports.printNextSteps = exports.launchOnboardTool = exports.resolveOnboardTool = exports.promptForTool = exports.isToolInstalled = exports.printPreLaunchNotice = exports.defaultOnboardPrompt = void 0;
9
+ const child_process_1 = require("child_process");
10
+ const fs_1 = require("fs");
11
+ const chalk_1 = __importDefault(require("chalk"));
12
+ const inquirer_1 = __importDefault(require("inquirer"));
13
+ const docs_urls_1 = require("./docs-urls");
14
+ const ONBOARD_PROMPT_BASE = "install meticulous (https://meticulous.ai) into this repository. " +
15
+ "first read `.meticulous-onboard/.claude/CLAUDE.md` and " +
16
+ "`.meticulous-onboard/.claude/onboard-context.json` — they define the workflow, the " +
17
+ "customer-facing specialist agents in `.claude/agents/`, and the project context. " +
18
+ "stay scoped to `selectedAppPath` from onboard-context.json (the cli already asked which " +
19
+ "monorepo app to use when needed). if review finds ssr that is not next.js pages router " +
20
+ "ssr, say so and let the user decide before you apply anything — the cli already asked the " +
21
+ "user whether to continue despite its ssr warning, so validate it and do not abort on your " +
22
+ "own guess. " +
23
+ "steps: (1) run the reviewer agent first (scoped to the selected app) and wait for its " +
24
+ "structured summary; " +
25
+ "(2) if `isMonorepo` is true but `selectedAppPath` is missing, ask which app to onboard " +
26
+ "and wait; otherwise do not re-ask; " +
27
+ "(3) dispatch every applicable specialist (recorder-installation, ci-setup, " +
28
+ "false-positive-prevention, local-simulation-verification, plus any conditional ones the " +
29
+ "reviewer flags) in a single parallel task message; " +
30
+ "(4) post a short plan (recorder approach, ci change, each conditional fix and the file it " +
31
+ "touches, anything needing meticulous-side setup, how you will split the prs, manual " +
32
+ "follow-ups) and wait for the user to approve or amend it before editing any repo file; " +
33
+ "(5) apply the approved plan in the real repo with small, correct diffs — install the " +
34
+ "recorder under the selected app, add the ci job at the repo root (monorepo-aware when " +
35
+ "needed), and only the conditional fixes the review says are needed. " +
36
+ "if anything needs work on the meticulous side rather than in the repo (websockets, unusual " +
37
+ "auth, central network mocking), write the file at the absolute path in " +
38
+ "`onboard-context.json` → `meticulousSideSetupPath` (never a relative path — your cwd is the " +
39
+ "onboard workspace, not the repo) describing what you found and what you need from " +
40
+ "meticulous, and tell the user to send that file to their meticulous contact, quoting its " +
41
+ "absolute path — do not commit it. " +
42
+ "the specialist playbooks cite docs as `.claude/docs/<path>.ts`; those files are bundled in " +
43
+ "this workspace — read them locally (they are the authoritative recorder snippet and ci yaml, " +
44
+ "including gitlab and bitbucket). only if one is missing, fetch " +
45
+ `\`${docs_urls_1.METICULOUS_DOCS_BASE_URL}/<path>\` (\`${docs_urls_1.METICULOUS_DOCS_HOST}\` is pre-approved for ` +
46
+ "webfetch), knowing fetched pages omit client-rendered snippet and non-default ci tab content " +
47
+ "— see the reference docs section of CLAUDE.md. " +
48
+ "this is a single pass: run the reviewer once and the specialists once, then apply and open " +
49
+ "the pr. after applying do not re-dispatch the reviewer or specialists to double-check, and " +
50
+ "do not build, run, or `meticulous simulate` the app yourself — verification (local " +
51
+ "simulation, first test run) is a post-merge step for the customer and goes only in the pr " +
52
+ "next steps. confirm edits with static read-backs, not by executing the app. " +
53
+ "the cli has already added project-scoped meticulous skills (for claude code, codex, and " +
54
+ "cursor), mcp configuration, and a `.gitignore` entry. you must include every path in " +
55
+ "`onboard-context.json` → `agentIntegrationPaths` in the onboarding pr (skills + mcp). " +
56
+ "the required final output is a pull request: create a new branch, commit your install " +
57
+ "changes plus those agent integration files " +
58
+ "(never the .meticulous-onboard workspace and never secrets), push to origin, and open a pr " +
59
+ "with `gh pr create` (or `glab mr create` on gitlab). default to one pr; only split into " +
60
+ "several (recorder + ci + skills first, compatibility fixes after, each cross-linked) if the " +
61
+ "user approved that split in the plan. the pr description must list what was " +
62
+ "installed first, then end with next steps for the reviewer (recording token and project " +
63
+ "api token from `meticulousTokensUrl` in onboard-context.json; recording token is a public " +
64
+ "read-only token suitable for build-time frontend env vars; api token stored in " +
65
+ "`secretsUrl` / `{secretsUrlLabel}`, and any remaining manual steps). if the pr cli is missing or " +
66
+ "unauthenticated, still commit and push the branch, then print the exact `gh pr create` " +
67
+ "command and compare url. finish by printing the pr url (or the branch name + command).";
68
+ /**
69
+ * The install prompt. Headless runs have nobody to approve the plan, so they
70
+ * post it and keep going instead of waiting.
71
+ */
72
+ const defaultOnboardPrompt = (options) => options.headless
73
+ ? `${ONBOARD_PROMPT_BASE} this run is non-interactive: post the plan in step 4 for the record and continue without waiting for approval.`
74
+ : ONBOARD_PROMPT_BASE;
75
+ exports.defaultOnboardPrompt = defaultOnboardPrompt;
76
+ /**
77
+ * Printed before the tool picker so the time cost and scope of the run are
78
+ * known before the user commits to a tool.
79
+ */
80
+ const printPreLaunchNotice = (options) => {
81
+ console.log(chalk_1.default.bold("What happens next"));
82
+ console.log(` An agent reviews ${chalk_1.default.cyan(options.selectedAppLabel)}, applies the Meticulous install, and opens a pull request.`);
83
+ console.log(` ${chalk_1.default.yellow("This usually takes 15–30 minutes")} depending on the size of the project — keep this terminal open.`);
84
+ console.log(chalk_1.default.dim(" Model usage is billed to your own Claude Code / Codex account."));
85
+ console.log("");
86
+ };
87
+ exports.printPreLaunchNotice = printPreLaunchNotice;
88
+ const TOOL_LABEL = {
89
+ claude: "Claude Code",
90
+ codex: "Codex",
91
+ };
92
+ const TOOL_COMMAND = {
93
+ claude: "claude",
94
+ codex: "codex",
95
+ };
96
+ const INSTALL_HINT = {
97
+ claude: "Install: npm install -g @anthropic-ai/claude-code — https://docs.anthropic.com/en/docs/claude-code/setup",
98
+ codex: "Install: npm install -g @openai/codex — https://github.com/openai/codex",
99
+ };
100
+ const isToolInstalled = (tool) => {
101
+ try {
102
+ (0, child_process_1.execSync)(`which ${TOOL_COMMAND[tool]}`, { stdio: "ignore" });
103
+ return true;
104
+ }
105
+ catch {
106
+ return false;
107
+ }
108
+ };
109
+ exports.isToolInstalled = isToolInstalled;
110
+ /**
111
+ * Interactively asks which tool to open the workspace in, defaulting to the
112
+ * first installed option. Installed tools are listed first; missing ones are
113
+ * shown disabled with an install hint. Returns null when the terminal is not
114
+ * interactive (caller should fall back to printed instructions).
115
+ */
116
+ const promptForTool = async () => {
117
+ if (!process.stdin.isTTY) {
118
+ return null;
119
+ }
120
+ // Cursor is intentionally omitted from the picker — Claude Code / Codex can
121
+ // drive the install end-to-end; Cursor still gets skills + MCP in the PR.
122
+ const order = ["claude", "codex"];
123
+ const installed = order.filter(exports.isToolInstalled);
124
+ const choices = order.map((tool) => {
125
+ const ready = installed.includes(tool);
126
+ return {
127
+ name: ready
128
+ ? TOOL_LABEL[tool]
129
+ : `${TOOL_LABEL[tool]} ${chalk_1.default.dim("(not installed)")}`,
130
+ value: tool,
131
+ };
132
+ });
133
+ const { tool } = await inquirer_1.default.prompt([
134
+ {
135
+ type: "list",
136
+ name: "tool",
137
+ message: "Which tool should apply the Meticulous install? (15–30 min run)",
138
+ choices,
139
+ default: installed[0] ?? "claude",
140
+ },
141
+ ]);
142
+ return tool;
143
+ };
144
+ exports.promptForTool = promptForTool;
145
+ /**
146
+ * Resolves the requested `--agent` choice to a concrete tool. `auto` prompts
147
+ * when interactive, otherwise falls back to the first installed agent. Returns
148
+ * null when no agent can be launched (caller prints manual instructions).
149
+ */
150
+ const resolveOnboardTool = async (requested) => {
151
+ if (requested !== "auto") {
152
+ return requested;
153
+ }
154
+ const picked = await (0, exports.promptForTool)();
155
+ if (picked) {
156
+ return picked;
157
+ }
158
+ if ((0, exports.isToolInstalled)("claude")) {
159
+ return "claude";
160
+ }
161
+ if ((0, exports.isToolInstalled)("codex")) {
162
+ return "codex";
163
+ }
164
+ console.log(chalk_1.default.yellow("Neither Claude Code nor Codex CLI found on PATH — printing manual instructions."));
165
+ return null;
166
+ };
167
+ exports.resolveOnboardTool = resolveOnboardTool;
168
+ const launchOnboardTool = (options) => {
169
+ const { tool, projectRoot, workspaceDir } = options;
170
+ if (!(0, exports.isToolInstalled)(tool)) {
171
+ console.error(chalk_1.default.red(`${TOOL_LABEL[tool]} is not installed (\`which ${TOOL_COMMAND[tool]}\` failed).`));
172
+ console.error(INSTALL_HINT[tool]);
173
+ return 1;
174
+ }
175
+ return launchAgent({
176
+ tool,
177
+ workspaceDir,
178
+ projectRoot,
179
+ model: options.model,
180
+ prompt: options.prompt,
181
+ headless: options.headless,
182
+ auto: options.auto,
183
+ });
184
+ };
185
+ exports.launchOnboardTool = launchOnboardTool;
186
+ const launchAgent = (options) => {
187
+ const { tool, workspaceDir, projectRoot, headless, auto, prompt } = options;
188
+ const model = options.model ?? (tool === "claude" ? "opus" : undefined);
189
+ const args = buildAgentArgs({
190
+ tool,
191
+ model,
192
+ prompt,
193
+ headless,
194
+ auto,
195
+ projectRoot,
196
+ });
197
+ console.log(chalk_1.default.bold(`Launching ${TOOL_LABEL[tool]}${headless ? " (headless)" : ""}…`));
198
+ console.log(chalk_1.default.dim(` Inference uses your local ${tool === "claude" ? "Anthropic" : "OpenAI"} credentials — Meticulous does not proxy the model.`));
199
+ console.log("");
200
+ const result = (0, child_process_1.spawnSync)(TOOL_COMMAND[tool], args, {
201
+ cwd: workspaceDir,
202
+ stdio: "inherit",
203
+ env: { ...process.env },
204
+ });
205
+ if (result.error) {
206
+ console.error(`Failed to launch ${TOOL_LABEL[tool]}: ${result.error.message}`);
207
+ return 1;
208
+ }
209
+ return result.status ?? 1;
210
+ };
211
+ const printNextSteps = (options) => {
212
+ const { tool, context } = options;
213
+ const projectLabel = context.orgAndProject ?? "your Meticulous project";
214
+ const tokensUrl = context.meticulousTokensUrl ??
215
+ "https://app.meticulous.ai (Project → Settings → Tokens)";
216
+ const secretsLabel = context.secretsUrlLabel ?? "your CI secrets";
217
+ const steps = [
218
+ `In ${TOOL_LABEL[tool]}, authenticate the Meticulous MCP when prompted (browser OAuth).`,
219
+ `Grab the recording token and project API token from ${chalk_1.default.cyan(tokensUrl)}.`,
220
+ `Put the recording token in a build-time frontend env var (it is a public, read-only token), and put the API token in ${secretsLabel}${context.secretsUrl ? ` (${chalk_1.default.cyan(context.secretsUrl)})` : ""} for ${chalk_1.default.cyan(projectLabel)}.`,
221
+ unresolvedVcsLinkStep(context),
222
+ meticulousSideSetupStep(context.meticulousSideSetupPath),
223
+ "Merge the PR, then confirm sessions appear in the Meticulous dashboard.",
224
+ ].filter((step) => step !== null);
225
+ console.log("");
226
+ console.log(chalk_1.default.bold("Next steps"));
227
+ steps.forEach((step, index) => {
228
+ console.log(` ${index + 1}. ${step}`);
229
+ });
230
+ console.log("");
231
+ };
232
+ exports.printNextSteps = printNextSteps;
233
+ /** Surfaces the hand-back file when the agent found work for us to do. */
234
+ const meticulousSideSetupStep = (setupPath) => {
235
+ if (!(0, fs_1.existsSync)(setupPath)) {
236
+ return null;
237
+ }
238
+ return (`Send ${chalk_1.default.cyan(setupPath)} to your Meticulous contact (or support@meticulous.ai) — ` +
239
+ "it lists setup this project needs on the Meticulous side.");
240
+ };
241
+ const unresolvedVcsLinkStep = (context) => {
242
+ switch (context.ciProvider) {
243
+ case "github-actions":
244
+ return linkStepFor(context.isGitHubIntegrationActive, docs_urls_1.GITHUB_ACTIONS_DOCS_URL);
245
+ case "gitlab-ci":
246
+ return linkStepFor(context.isGitLabIntegrationActive, context.gitlabConfigureProjectsUrl);
247
+ case "bitbucket-pipelines":
248
+ return linkStepFor(context.isBitbucketIntegrationActive, context.bitbucketConfigureProjectsUrl);
249
+ default:
250
+ return null;
251
+ }
252
+ };
253
+ const linkStepFor = (linked, configureUrl) => {
254
+ if (linked !== false) {
255
+ return null;
256
+ }
257
+ return configureUrl
258
+ ? `Link the repo to Meticulous at ${chalk_1.default.cyan(configureUrl)}.`
259
+ : "Link the repo to Meticulous in your project settings.";
260
+ };
261
+ const printManualLaunchInstructions = (options) => {
262
+ const { workspaceDir, projectRoot, prompt } = options;
263
+ const escapedPrompt = prompt.replace(/"/g, '\\"');
264
+ console.log("");
265
+ console.log(chalk_1.default.bold.green("Onboard workspace ready!"));
266
+ console.log("");
267
+ console.log(` ${chalk_1.default.cyan("Workspace:")} ${workspaceDir}`);
268
+ console.log(` ${chalk_1.default.cyan("Repo:")} ${projectRoot}`);
269
+ console.log("");
270
+ console.log(chalk_1.default.bold(" Open in your preferred tool:"));
271
+ console.log("");
272
+ console.log(chalk_1.default.dim(" This can take 15–30 minutes depending on the size of the project."));
273
+ console.log("");
274
+ console.log(` ${chalk_1.default.cyan("Claude Code:")} cd "${workspaceDir}" && claude "${escapedPrompt}" --add-dir "${projectRoot}"`);
275
+ console.log(` ${chalk_1.default.cyan("Codex:")} cd "${workspaceDir}" && codex "${escapedPrompt}" --sandbox workspace-write --add-dir "${projectRoot}"`);
276
+ console.log("");
277
+ console.log(chalk_1.default.dim(" The agent applies the install and opens a pull request with the changes."));
278
+ console.log(chalk_1.default.dim(" Model usage is billed to your own Claude Code / Codex account."));
279
+ console.log("");
280
+ };
281
+ exports.printManualLaunchInstructions = printManualLaunchInstructions;
282
+ /**
283
+ * `--add-dir <directories...>` is variadic in both CLIs, so the prompt must
284
+ * never follow it — it would be parsed as another directory (and a long prompt
285
+ * then fails with ENAMETOOLONG). Keep the prompt first and `--add-dir` last.
286
+ */
287
+ const buildAgentArgs = (options) => {
288
+ const { tool, model, prompt, headless, auto, projectRoot } = options;
289
+ const modelArgs = model ? ["--model", model] : [];
290
+ const addDir = ["--add-dir", projectRoot];
291
+ if (tool === "claude") {
292
+ const autoArgs = auto ? ["--permission-mode", "acceptEdits"] : [];
293
+ if (headless) {
294
+ return ["-p", prompt, ...modelArgs, ...autoArgs, ...addDir];
295
+ }
296
+ return [prompt, ...modelArgs, ...autoArgs, ...addDir];
297
+ }
298
+ // Codex. The primary workspace is `.meticulous-onboard`, so the repo itself
299
+ // is only writable via `--add-dir` — and Codex silently ignores that flag
300
+ // under its default read-only sandbox. workspace-write is therefore required,
301
+ // not just an `--auto` nicety; approvals still gate what actually runs.
302
+ const sandboxArgs = ["--sandbox", "workspace-write"];
303
+ if (headless) {
304
+ // `codex exec` is non-interactive and takes no approval policy.
305
+ return ["exec", prompt, ...modelArgs, ...sandboxArgs, ...addDir];
306
+ }
307
+ const autoArgs = auto ? ["--ask-for-approval", "on-request"] : [];
308
+ return [prompt, ...modelArgs, ...sandboxArgs, ...autoArgs, ...addDir];
309
+ };
310
+ //# sourceMappingURL=launch-agent.js.map
311
+ //# debugId=cc77314d-aba3-5b50-b3e3-23beaef7d1ef
@@ -0,0 +1 @@
1
+ {"version":3,"file":"launch-agent.js","sources":["../../../src/commands/onboard/launch-agent.ts"],"sourceRoot":"","names":[],"mappings":"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","debugId":"cc77314d-aba3-5b50-b3e3-23beaef7d1ef"}
@@ -0,0 +1,68 @@
1
+ export declare const ONBOARD_WORKDIR = ".meticulous-onboard";
2
+ /**
3
+ * Written by the install agent (not the CLI) when something needs setup on the
4
+ * Meticulous side, e.g. WebSocket support. The customer sends it back to us.
5
+ */
6
+ export declare const METICULOUS_SIDE_SETUP_FILE = "meticulous-side-setup.md";
7
+ export interface OnboardContextJson {
8
+ orgAndProject: string | null;
9
+ projectRoot: string;
10
+ /**
11
+ * Absolute path the agent must use for METICULOUS_SIDE_SETUP_FILE. The agent
12
+ * runs with the onboard workspace as its cwd rather than the repo, so a
13
+ * relative path lands somewhere neither it nor the user expects.
14
+ */
15
+ meticulousSideSetupPath: string;
16
+ repoUrl: string | null;
17
+ ciProvider: "github-actions" | "gitlab-ci" | "bitbucket-pipelines" | "unknown";
18
+ isGitHubIntegrationActive: boolean | null;
19
+ isGitLabIntegrationActive: boolean | null;
20
+ isBitbucketIntegrationActive: boolean | null;
21
+ meticulousSettingsUrl: string | null;
22
+ /** Recording token + project API token live on this Tokens settings page. */
23
+ meticulousTokensUrl: string | null;
24
+ meticulousSessionsUrl: string | null;
25
+ /** Org page to link/map the GitHub repo to this Meticulous project. */
26
+ githubConfigureProjectsUrl: string | null;
27
+ /** Project settings page where the GitLab access token is entered. */
28
+ gitlabConfigureProjectsUrl: string | null;
29
+ /** Project settings page where the Bitbucket access token is entered. */
30
+ bitbucketConfigureProjectsUrl: string | null;
31
+ secretsUrl: string | null;
32
+ secretsUrlLabel: string | null;
33
+ /**
34
+ * Repo-relative paths the CLI installed for skills/MCP. The agent MUST stage
35
+ * and commit these in the onboarding PR (when they exist).
36
+ */
37
+ agentIntegrationPaths: string[];
38
+ /** Whether the repo is a monorepo with multiple frontend apps. */
39
+ isMonorepo: boolean;
40
+ /** Repo-relative path of the selected frontend app (`.` if single-package). */
41
+ selectedAppPath: string;
42
+ selectedAppName: string;
43
+ selectedAppAbsolutePath: string;
44
+ frameworkDetection: {
45
+ framework: string;
46
+ rendering: string;
47
+ isUnsupportedSsr: boolean;
48
+ /** `"high"` or `"ambiguous"`; null unless `isUnsupportedSsr` is true. */
49
+ unsupportedSsrConfidence: string | null;
50
+ details: string[];
51
+ } | null;
52
+ }
53
+ /**
54
+ * Materializes a Claude Code workspace under `<projectRoot>/.meticulous-onboard`
55
+ * with CLAUDE.md, settings, customer-facing agents, and onboard-context.json.
56
+ * The customer repo is edited via `--add-dir` when launching the agent.
57
+ */
58
+ export declare const materializeOnboardWorkspace: (options: {
59
+ projectRoot: string;
60
+ context: OnboardContextJson;
61
+ }) => string;
62
+ /** Rewrites onboard-context.json in the materialized workspace (e.g. after skills/MCP install). */
63
+ export declare const updateOnboardContext: (options: {
64
+ projectRoot: string;
65
+ workspaceDir: string;
66
+ context: OnboardContextJson;
67
+ }) => void;
68
+ //# sourceMappingURL=materialize-workspace.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"materialize-workspace.d.ts","sourceRoot":"","sources":["../../../src/commands/onboard/materialize-workspace.ts"],"names":[],"mappings":"AAaA,eAAO,MAAM,eAAe,wBAAwB,CAAC;AAErD;;;GAGG;AACH,eAAO,MAAM,0BAA0B,6BAA6B,CAAC;AAErE,MAAM,WAAW,kBAAkB;IACjC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB;;;;OAIG;IACH,uBAAuB,EAAE,MAAM,CAAC;IAChC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,UAAU,EACN,gBAAgB,GAChB,WAAW,GACX,qBAAqB,GACrB,SAAS,CAAC;IACd,yBAAyB,EAAE,OAAO,GAAG,IAAI,CAAC;IAC1C,yBAAyB,EAAE,OAAO,GAAG,IAAI,CAAC;IAC1C,4BAA4B,EAAE,OAAO,GAAG,IAAI,CAAC;IAC7C,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,6EAA6E;IAC7E,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,uEAAuE;IACvE,0BAA0B,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1C,sEAAsE;IACtE,0BAA0B,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1C,yEAAyE;IACzE,6BAA6B,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7C,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B;;;OAGG;IACH,qBAAqB,EAAE,MAAM,EAAE,CAAC;IAChC,kEAAkE;IAClE,UAAU,EAAE,OAAO,CAAC;IACpB,+EAA+E;IAC/E,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,uBAAuB,EAAE,MAAM,CAAC;IAChC,kBAAkB,EAAE;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,gBAAgB,EAAE,OAAO,CAAC;QAC1B,yEAAyE;QACzE,wBAAwB,EAAE,MAAM,GAAG,IAAI,CAAC;QACxC,OAAO,EAAE,MAAM,EAAE,CAAC;KACnB,GAAG,IAAI,CAAC;CACV;AA+DD;;;;GAIG;AACH,eAAO,MAAM,2BAA2B,YAAa;IACnD,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,kBAAkB,CAAC;CAC7B,KAAG,MAiGH,CAAC;AAEF,mGAAmG;AACnG,eAAO,MAAM,oBAAoB,YAAa;IAC5C,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,kBAAkB,CAAC;CAC7B,KAAG,IAaH,CAAC"}
@@ -0,0 +1,177 @@
1
+ "use strict";
2
+ !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="d487abf0-d680-53cb-9665-4e716c731c92")}catch(e){}}();
3
+
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.updateOnboardContext = exports.materializeOnboardWorkspace = exports.METICULOUS_SIDE_SETUP_FILE = exports.ONBOARD_WORKDIR = void 0;
6
+ const fs_1 = require("fs");
7
+ const path_1 = require("path");
8
+ const customer_agents_1 = require("./customer-agents");
9
+ const customer_docs_1 = require("./customer-docs");
10
+ const inline_doc_constants_1 = require("./inline-doc-constants");
11
+ const safe_repo_fs_1 = require("./safe-repo-fs");
12
+ exports.ONBOARD_WORKDIR = ".meticulous-onboard";
13
+ /**
14
+ * Written by the install agent (not the CLI) when something needs setup on the
15
+ * Meticulous side, e.g. WebSocket support. The customer sends it back to us.
16
+ */
17
+ exports.METICULOUS_SIDE_SETUP_FILE = "meticulous-side-setup.md";
18
+ const templatesDir = () => (0, path_1.join)(__dirname, "templates");
19
+ const agentsDir = () => {
20
+ const bundled = (0, path_1.join)(templatesDir(), "agents");
21
+ // Prefer the postbuild-copied agents only when they actually contain files —
22
+ // an empty `templates/agents/` directory (e.g. from a partial local setup)
23
+ // must not block the source-mode fallback.
24
+ if ((0, fs_1.existsSync)(bundled) &&
25
+ (0, fs_1.readdirSync)(bundled).some((file) => file.endsWith(".md"))) {
26
+ return bundled;
27
+ }
28
+ // Source-mode fallback (`pnpm cli:dev`), which reads the canonical agents
29
+ // directly. That directory also holds internal-only agents, so the copy below
30
+ // is driven by CUSTOMER_AGENT_NAMES rather than by its contents. Published
31
+ // builds get the same subset pre-filtered into dist by
32
+ // scripts/copy-onboard-templates.mjs.
33
+ return (0, path_1.join)(__dirname, "..", "..", "..", "..", "..", "packages", "admin-cli", "src", "cli", "onboard", "templates", "agents");
34
+ };
35
+ const webappFrontendDir = () => (0, path_1.join)(__dirname, "..", "..", "..", "..", "..", "packages", "webapp-frontend");
36
+ const docsSrcDir = () => {
37
+ const bundled = (0, path_1.join)(templatesDir(), "docs");
38
+ if ((0, fs_1.existsSync)(bundled) && (0, fs_1.readdirSync)(bundled).length > 0) {
39
+ return bundled;
40
+ }
41
+ // Source-mode fallback: read the canonical docs content straight from
42
+ // webapp-frontend. Published builds get the CUSTOMER_DOC_FILES/DIRS subset
43
+ // pre-copied into dist by scripts/copy-onboard-templates.mjs.
44
+ return (0, path_1.join)(webappFrontendDir(), "src", "components", "docs", "content");
45
+ };
46
+ /**
47
+ * Root the docs' `src/...` imports resolve against while inlining constants.
48
+ * Published builds only ship the CUSTOMER_DOC_IMPORT_FILES subset, mirrored at
49
+ * the same paths so both modes resolve identically.
50
+ */
51
+ const docImportsRoot = () => {
52
+ const bundled = (0, path_1.join)(templatesDir(), "docs-imports");
53
+ return (0, fs_1.existsSync)(bundled) ? bundled : webappFrontendDir();
54
+ };
55
+ /**
56
+ * Materializes a Claude Code workspace under `<projectRoot>/.meticulous-onboard`
57
+ * with CLAUDE.md, settings, customer-facing agents, and onboard-context.json.
58
+ * The customer repo is edited via `--add-dir` when launching the agent.
59
+ */
60
+ const materializeOnboardWorkspace = (options) => {
61
+ const { projectRoot } = options;
62
+ const workspaceRelative = exports.ONBOARD_WORKDIR;
63
+ const claudeRelative = (0, path_1.join)(exports.ONBOARD_WORKDIR, ".claude");
64
+ const agentsRelative = (0, path_1.join)(claudeRelative, "agents");
65
+ const docsRelative = (0, path_1.join)(claudeRelative, "docs");
66
+ (0, safe_repo_fs_1.mkdirSafeSync)(projectRoot, agentsRelative);
67
+ const workspaceAbsolute = (0, safe_repo_fs_1.resolveSafeWritePath)(projectRoot, workspaceRelative);
68
+ (0, safe_repo_fs_1.writeFileSafeSync)(projectRoot, (0, path_1.join)(workspaceRelative, ".gitignore"), "*\n");
69
+ const templates = templatesDir();
70
+ (0, safe_repo_fs_1.writeFileSafeSync)(projectRoot, (0, path_1.join)(claudeRelative, "CLAUDE.md"), (0, fs_1.readFileSync)((0, path_1.join)(templates, "CLAUDE.md"), "utf8"));
71
+ (0, safe_repo_fs_1.copyFileSafeSync)(projectRoot, (0, path_1.join)(claudeRelative, "settings.json"), (0, path_1.join)(templates, "settings.json"));
72
+ const agentsSrc = agentsDir();
73
+ const missing = [];
74
+ for (const agentName of customer_agents_1.CUSTOMER_AGENT_NAMES) {
75
+ const file = `${agentName}.md`;
76
+ const src = (0, path_1.join)(agentsSrc, file);
77
+ if (!(0, fs_1.existsSync)(src)) {
78
+ missing.push(file);
79
+ continue;
80
+ }
81
+ (0, safe_repo_fs_1.copyFileSafeSync)(projectRoot, (0, path_1.join)(agentsRelative, file), src);
82
+ }
83
+ if (missing.length > 0) {
84
+ throw new Error(`Missing onboard agent template(s) in ${agentsSrc}: ${missing.join(", ")}. ` +
85
+ `Update customer-agents.json if these agents were renamed or removed.`);
86
+ }
87
+ // The agent playbooks cite these docs as `.claude/docs/<path>`; the live docs
88
+ // pages render the recorder snippets and non-default CI tabs client-side, so
89
+ // the files must be present locally rather than fetched.
90
+ const docsSrc = docsSrcDir();
91
+ const webappRoot = docImportsRoot();
92
+ const missingDocs = [];
93
+ for (const docPath of customer_docs_1.CUSTOMER_DOC_FILES) {
94
+ const src = (0, path_1.join)(docsSrc, docPath);
95
+ if (!(0, fs_1.existsSync)(src)) {
96
+ missingDocs.push(docPath);
97
+ continue;
98
+ }
99
+ const destRelative = (0, path_1.join)(docsRelative, docPath);
100
+ (0, safe_repo_fs_1.mkdirSafeSync)(projectRoot, (0, path_1.join)(destRelative, ".."));
101
+ copyDocIntoWorkspace(projectRoot, src, destRelative, webappRoot);
102
+ }
103
+ for (const docDir of customer_docs_1.CUSTOMER_DOC_DIRS) {
104
+ const srcDir = (0, path_1.join)(docsSrc, docDir);
105
+ if (!(0, fs_1.existsSync)(srcDir)) {
106
+ missingDocs.push(`${docDir}/`);
107
+ continue;
108
+ }
109
+ copyDocsDirIntoWorkspace(projectRoot, srcDir, (0, path_1.join)(docsRelative, docDir), webappRoot);
110
+ }
111
+ if (missingDocs.length > 0) {
112
+ throw new Error(`Missing onboard doc file(s) in ${docsSrc}: ${missingDocs.join(", ")}. ` +
113
+ `Update customer-docs.json if these docs were moved or renamed.`);
114
+ }
115
+ const contextPayload = JSON.stringify(options.context, null, 2) + "\n";
116
+ (0, safe_repo_fs_1.writeFileSafeSync)(projectRoot, (0, path_1.join)(claudeRelative, "onboard-context.json"), contextPayload);
117
+ // Convenience copy at workspace root for prompts that say "read onboard-context.json".
118
+ (0, safe_repo_fs_1.writeFileSafeSync)(projectRoot, (0, path_1.join)(workspaceRelative, "onboard-context.json"), contextPayload);
119
+ ensureGitignoreEntry(projectRoot, exports.ONBOARD_WORKDIR);
120
+ return workspaceAbsolute;
121
+ };
122
+ exports.materializeOnboardWorkspace = materializeOnboardWorkspace;
123
+ /** Rewrites onboard-context.json in the materialized workspace (e.g. after skills/MCP install). */
124
+ const updateOnboardContext = (options) => {
125
+ (0, safe_repo_fs_1.assertWorkspaceInsideProject)(options.projectRoot, options.workspaceDir);
126
+ const payload = JSON.stringify(options.context, null, 2) + "\n";
127
+ (0, safe_repo_fs_1.writeFileSafeSync)(options.projectRoot, (0, path_1.join)(exports.ONBOARD_WORKDIR, ".claude", "onboard-context.json"), payload);
128
+ (0, safe_repo_fs_1.writeFileSafeSync)(options.projectRoot, (0, path_1.join)(exports.ONBOARD_WORKDIR, "onboard-context.json"), payload);
129
+ };
130
+ exports.updateOnboardContext = updateOnboardContext;
131
+ /** Recursively copies a trusted docs dir into a repo-relative destination. */
132
+ const copyDocsDirIntoWorkspace = (projectRoot, srcDir, destRelative, webappRoot) => {
133
+ (0, safe_repo_fs_1.mkdirSafeSync)(projectRoot, destRelative);
134
+ for (const entry of (0, fs_1.readdirSync)(srcDir, { withFileTypes: true })) {
135
+ const src = (0, path_1.join)(srcDir, entry.name);
136
+ const dest = (0, path_1.join)(destRelative, entry.name);
137
+ if (entry.isDirectory()) {
138
+ copyDocsDirIntoWorkspace(projectRoot, src, dest, webappRoot);
139
+ }
140
+ else if (entry.isFile()) {
141
+ copyDocIntoWorkspace(projectRoot, src, dest, webappRoot);
142
+ }
143
+ }
144
+ };
145
+ /**
146
+ * Copies one doc, inlining the constants it imports from other doc modules so
147
+ * the agent reads the same content the docs site renders.
148
+ */
149
+ const copyDocIntoWorkspace = (projectRoot, src, destRelative, webappRoot) => {
150
+ (0, safe_repo_fs_1.writeFileSafeSync)(projectRoot, destRelative, (0, inline_doc_constants_1.inlineImportedDocConstants)({
151
+ source: (0, fs_1.readFileSync)(src, "utf8"),
152
+ docPath: src,
153
+ webappRoot,
154
+ }));
155
+ };
156
+ const ensureGitignoreEntry = (projectRoot, entry) => {
157
+ const relativeGitignore = ".gitignore";
158
+ const line = `${entry}/`;
159
+ let content = "";
160
+ let existedAsSafeFile = false;
161
+ const gitignorePath = (0, safe_repo_fs_1.resolveSafeWritePath)(projectRoot, relativeGitignore);
162
+ if ((0, fs_1.existsSync)(gitignorePath)) {
163
+ content = (0, fs_1.readFileSync)(gitignorePath, "utf8");
164
+ existedAsSafeFile = true;
165
+ }
166
+ if (!existedAsSafeFile) {
167
+ (0, safe_repo_fs_1.writeFileSafeSync)(projectRoot, relativeGitignore, `${line}\n`);
168
+ return;
169
+ }
170
+ if (content.split(/\r?\n/).some((l) => l.trim() === line || l.trim() === entry)) {
171
+ return;
172
+ }
173
+ const suffix = content.endsWith("\n") ? "" : "\n";
174
+ (0, safe_repo_fs_1.writeFileSafeSync)(projectRoot, relativeGitignore, `${content}${suffix}\n# Meticulous AI onboard workspace\n${line}\n`);
175
+ };
176
+ //# sourceMappingURL=materialize-workspace.js.map
177
+ //# debugId=d487abf0-d680-53cb-9665-4e716c731c92
@@ -0,0 +1 @@
1
+ {"version":3,"file":"materialize-workspace.js","sources":["../../../src/commands/onboard/materialize-workspace.ts"],"sourceRoot":"","names":[],"mappings":"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","debugId":"d487abf0-d680-53cb-9665-4e716c731c92"}
@@ -0,0 +1,10 @@
1
+ import type { FrameworkDetection } from "./detect-framework";
2
+ import type { OnboardContextJson } from "./materialize-workspace";
3
+ /** Prints what the onboard run resolved, before any agent takes over the terminal. */
4
+ export declare const printOnboardSummary: (options: {
5
+ context: OnboardContextJson;
6
+ frameworkDetection: FrameworkDetection;
7
+ projectRoot: string;
8
+ workspaceDir: string;
9
+ }) => void;
10
+ //# sourceMappingURL=print-summary.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"print-summary.d.ts","sourceRoot":"","sources":["../../../src/commands/onboard/print-summary.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAElE,sFAAsF;AACtF,eAAO,MAAM,mBAAmB,YAAa;IAC3C,OAAO,EAAE,kBAAkB,CAAC;IAC5B,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;CACtB,KAAG,IAyBH,CAAC"}