@isaacriehm/cairn 0.1.0 → 0.1.3

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 (533) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/index.d.ts +0 -1
  3. package/dist/index.js +0 -1
  4. package/dist/index.js.map +1 -1
  5. package/package.json +4 -4
  6. package/dist/backprop/id.d.ts +0 -14
  7. package/dist/backprop/id.js +0 -40
  8. package/dist/backprop/id.js.map +0 -1
  9. package/dist/backprop/index.d.ts +0 -23
  10. package/dist/backprop/index.js +0 -21
  11. package/dist/backprop/index.js.map +0 -1
  12. package/dist/backprop/prompt.d.ts +0 -16
  13. package/dist/backprop/prompt.js +0 -101
  14. package/dist/backprop/prompt.js.map +0 -1
  15. package/dist/backprop/runner.d.ts +0 -18
  16. package/dist/backprop/runner.js +0 -95
  17. package/dist/backprop/runner.js.map +0 -1
  18. package/dist/backprop/schema.d.ts +0 -61
  19. package/dist/backprop/schema.js +0 -55
  20. package/dist/backprop/schema.js.map +0 -1
  21. package/dist/backprop/types.d.ts +0 -101
  22. package/dist/backprop/types.js +0 -24
  23. package/dist/backprop/types.js.map +0 -1
  24. package/dist/backprop/writer.d.ts +0 -27
  25. package/dist/backprop/writer.js +0 -301
  26. package/dist/backprop/writer.js.map +0 -1
  27. package/dist/claude/error.d.ts +0 -33
  28. package/dist/claude/error.js +0 -58
  29. package/dist/claude/error.js.map +0 -1
  30. package/dist/claude/index.d.ts +0 -3
  31. package/dist/claude/index.js +0 -3
  32. package/dist/claude/index.js.map +0 -1
  33. package/dist/claude/runner.d.ts +0 -11
  34. package/dist/claude/runner.js +0 -132
  35. package/dist/claude/runner.js.map +0 -1
  36. package/dist/claude/types.d.ts +0 -52
  37. package/dist/claude/types.js +0 -14
  38. package/dist/claude/types.js.map +0 -1
  39. package/dist/cli/daemon.d.ts +0 -54
  40. package/dist/cli/daemon.js +0 -351
  41. package/dist/cli/daemon.js.map +0 -1
  42. package/dist/cli/install.d.ts +0 -52
  43. package/dist/cli/install.js +0 -308
  44. package/dist/cli/install.js.map +0 -1
  45. package/dist/cli/mirror.d.ts +0 -1
  46. package/dist/cli/mirror.js +0 -97
  47. package/dist/cli/mirror.js.map +0 -1
  48. package/dist/cli/run.d.ts +0 -1
  49. package/dist/cli/run.js +0 -174
  50. package/dist/cli/run.js.map +0 -1
  51. package/dist/cli/task.d.ts +0 -18
  52. package/dist/cli/task.js +0 -137
  53. package/dist/cli/task.js.map +0 -1
  54. package/dist/cli/watch.d.ts +0 -1
  55. package/dist/cli/watch.js +0 -73
  56. package/dist/cli/watch.js.map +0 -1
  57. package/dist/decision-capture/capture.d.ts +0 -57
  58. package/dist/decision-capture/capture.js +0 -186
  59. package/dist/decision-capture/capture.js.map +0 -1
  60. package/dist/decision-capture/extractor.d.ts +0 -20
  61. package/dist/decision-capture/extractor.js +0 -103
  62. package/dist/decision-capture/extractor.js.map +0 -1
  63. package/dist/decision-capture/id.d.ts +0 -14
  64. package/dist/decision-capture/id.js +0 -44
  65. package/dist/decision-capture/id.js.map +0 -1
  66. package/dist/decision-capture/index.d.ts +0 -25
  67. package/dist/decision-capture/index.js +0 -21
  68. package/dist/decision-capture/index.js.map +0 -1
  69. package/dist/decision-capture/prompt.d.ts +0 -15
  70. package/dist/decision-capture/prompt.js +0 -68
  71. package/dist/decision-capture/prompt.js.map +0 -1
  72. package/dist/decision-capture/refinement-prompt.d.ts +0 -25
  73. package/dist/decision-capture/refinement-prompt.js +0 -146
  74. package/dist/decision-capture/refinement-prompt.js.map +0 -1
  75. package/dist/decision-capture/refinement-schema.d.ts +0 -52
  76. package/dist/decision-capture/refinement-schema.js +0 -61
  77. package/dist/decision-capture/refinement-schema.js.map +0 -1
  78. package/dist/decision-capture/refinement.d.ts +0 -60
  79. package/dist/decision-capture/refinement.js +0 -439
  80. package/dist/decision-capture/refinement.js.map +0 -1
  81. package/dist/decision-capture/schema.d.ts +0 -70
  82. package/dist/decision-capture/schema.js +0 -71
  83. package/dist/decision-capture/schema.js.map +0 -1
  84. package/dist/decision-capture/types.d.ts +0 -201
  85. package/dist/decision-capture/types.js +0 -20
  86. package/dist/decision-capture/types.js.map +0 -1
  87. package/dist/decision-capture/writer.d.ts +0 -90
  88. package/dist/decision-capture/writer.js +0 -267
  89. package/dist/decision-capture/writer.js.map +0 -1
  90. package/dist/frontend/discord/acl.d.ts +0 -6
  91. package/dist/frontend/discord/acl.js +0 -19
  92. package/dist/frontend/discord/acl.js.map +0 -1
  93. package/dist/frontend/discord/channels.d.ts +0 -29
  94. package/dist/frontend/discord/channels.js +0 -58
  95. package/dist/frontend/discord/channels.js.map +0 -1
  96. package/dist/frontend/discord/classifier.d.ts +0 -16
  97. package/dist/frontend/discord/classifier.js +0 -29
  98. package/dist/frontend/discord/classifier.js.map +0 -1
  99. package/dist/frontend/discord/index.d.ts +0 -118
  100. package/dist/frontend/discord/index.js +0 -1104
  101. package/dist/frontend/discord/index.js.map +0 -1
  102. package/dist/frontend/discord/slash.d.ts +0 -18
  103. package/dist/frontend/discord/slash.js +0 -90
  104. package/dist/frontend/discord/slash.js.map +0 -1
  105. package/dist/frontend/inbox.d.ts +0 -17
  106. package/dist/frontend/inbox.js +0 -30
  107. package/dist/frontend/inbox.js.map +0 -1
  108. package/dist/frontend/index.d.ts +0 -8
  109. package/dist/frontend/index.js +0 -6
  110. package/dist/frontend/index.js.map +0 -1
  111. package/dist/frontend/stub/index.d.ts +0 -58
  112. package/dist/frontend/stub/index.js +0 -144
  113. package/dist/frontend/stub/index.js.map +0 -1
  114. package/dist/frontend/types.d.ts +0 -247
  115. package/dist/frontend/types.js +0 -15
  116. package/dist/frontend/types.js.map +0 -1
  117. package/dist/gc/apply.d.ts +0 -26
  118. package/dist/gc/apply.js +0 -48
  119. package/dist/gc/apply.js.map +0 -1
  120. package/dist/gc/canary.d.ts +0 -42
  121. package/dist/gc/canary.js +0 -134
  122. package/dist/gc/canary.js.map +0 -1
  123. package/dist/gc/classify.d.ts +0 -25
  124. package/dist/gc/classify.js +0 -89
  125. package/dist/gc/classify.js.map +0 -1
  126. package/dist/gc/doc-gardening.d.ts +0 -29
  127. package/dist/gc/doc-gardening.js +0 -146
  128. package/dist/gc/doc-gardening.js.map +0 -1
  129. package/dist/gc/frontmatter.d.ts +0 -35
  130. package/dist/gc/frontmatter.js +0 -111
  131. package/dist/gc/frontmatter.js.map +0 -1
  132. package/dist/gc/generator-drift.d.ts +0 -28
  133. package/dist/gc/generator-drift.js +0 -53
  134. package/dist/gc/generator-drift.js.map +0 -1
  135. package/dist/gc/index.d.ts +0 -35
  136. package/dist/gc/index.js +0 -26
  137. package/dist/gc/index.js.map +0 -1
  138. package/dist/gc/quality-update.d.ts +0 -23
  139. package/dist/gc/quality-update.js +0 -69
  140. package/dist/gc/quality-update.js.map +0 -1
  141. package/dist/gc/stub-hits.d.ts +0 -31
  142. package/dist/gc/stub-hits.js +0 -125
  143. package/dist/gc/stub-hits.js.map +0 -1
  144. package/dist/gc/sweep.d.ts +0 -56
  145. package/dist/gc/sweep.js +0 -178
  146. package/dist/gc/sweep.js.map +0 -1
  147. package/dist/gc/types.d.ts +0 -129
  148. package/dist/gc/types.js +0 -26
  149. package/dist/gc/types.js.map +0 -1
  150. package/dist/ground/drift.d.ts +0 -8
  151. package/dist/ground/drift.js +0 -23
  152. package/dist/ground/drift.js.map +0 -1
  153. package/dist/ground/frontmatter.d.ts +0 -20
  154. package/dist/ground/frontmatter.js +0 -49
  155. package/dist/ground/frontmatter.js.map +0 -1
  156. package/dist/ground/glob.d.ts +0 -10
  157. package/dist/ground/glob.js +0 -46
  158. package/dist/ground/glob.js.map +0 -1
  159. package/dist/ground/index.d.ts +0 -14
  160. package/dist/ground/index.js +0 -10
  161. package/dist/ground/index.js.map +0 -1
  162. package/dist/ground/ledgers.d.ts +0 -18
  163. package/dist/ground/ledgers.js +0 -103
  164. package/dist/ground/ledgers.js.map +0 -1
  165. package/dist/ground/manifest.d.ts +0 -10
  166. package/dist/ground/manifest.js +0 -88
  167. package/dist/ground/manifest.js.map +0 -1
  168. package/dist/ground/paths.d.ts +0 -20
  169. package/dist/ground/paths.js +0 -61
  170. package/dist/ground/paths.js.map +0 -1
  171. package/dist/ground/quality-grades.d.ts +0 -11
  172. package/dist/ground/quality-grades.js +0 -98
  173. package/dist/ground/quality-grades.js.map +0 -1
  174. package/dist/ground/schemas.d.ts +0 -306
  175. package/dist/ground/schemas.js +0 -188
  176. package/dist/ground/schemas.js.map +0 -1
  177. package/dist/ground/walk.d.ts +0 -7
  178. package/dist/ground/walk.js +0 -53
  179. package/dist/ground/walk.js.map +0 -1
  180. package/dist/init/detect.d.ts +0 -25
  181. package/dist/init/detect.js +0 -336
  182. package/dist/init/detect.js.map +0 -1
  183. package/dist/init/index.d.ts +0 -14
  184. package/dist/init/index.js +0 -9
  185. package/dist/init/index.js.map +0 -1
  186. package/dist/init/init.d.ts +0 -68
  187. package/dist/init/init.js +0 -673
  188. package/dist/init/init.js.map +0 -1
  189. package/dist/init/mapper.d.ts +0 -160
  190. package/dist/init/mapper.js +0 -248
  191. package/dist/init/mapper.js.map +0 -1
  192. package/dist/init/prompts.d.ts +0 -70
  193. package/dist/init/prompts.js +0 -80
  194. package/dist/init/prompts.js.map +0 -1
  195. package/dist/init/secrets.d.ts +0 -18
  196. package/dist/init/secrets.js +0 -76
  197. package/dist/init/secrets.js.map +0 -1
  198. package/dist/init/seed.d.ts +0 -21
  199. package/dist/init/seed.js +0 -75
  200. package/dist/init/seed.js.map +0 -1
  201. package/dist/init/setup-runners.d.ts +0 -17
  202. package/dist/init/setup-runners.js +0 -70
  203. package/dist/init/setup-runners.js.map +0 -1
  204. package/dist/init/types.d.ts +0 -59
  205. package/dist/init/types.js +0 -10
  206. package/dist/init/types.js.map +0 -1
  207. package/dist/init/walker.d.ts +0 -53
  208. package/dist/init/walker.js +0 -460
  209. package/dist/init/walker.js.map +0 -1
  210. package/dist/init/workflow-block.d.ts +0 -34
  211. package/dist/init/workflow-block.js +0 -110
  212. package/dist/init/workflow-block.js.map +0 -1
  213. package/dist/logger.d.ts +0 -3
  214. package/dist/logger.js +0 -23
  215. package/dist/logger.js.map +0 -1
  216. package/dist/mcp/context.d.ts +0 -16
  217. package/dist/mcp/context.js +0 -8
  218. package/dist/mcp/context.js.map +0 -1
  219. package/dist/mcp/errors.d.ts +0 -17
  220. package/dist/mcp/errors.js +0 -23
  221. package/dist/mcp/errors.js.map +0 -1
  222. package/dist/mcp/index.d.ts +0 -10
  223. package/dist/mcp/index.js +0 -7
  224. package/dist/mcp/index.js.map +0 -1
  225. package/dist/mcp/path-allowlist.d.ts +0 -25
  226. package/dist/mcp/path-allowlist.js +0 -66
  227. package/dist/mcp/path-allowlist.js.map +0 -1
  228. package/dist/mcp/result.d.ts +0 -8
  229. package/dist/mcp/result.js +0 -18
  230. package/dist/mcp/result.js.map +0 -1
  231. package/dist/mcp/schemas.d.ts +0 -153
  232. package/dist/mcp/schemas.js +0 -135
  233. package/dist/mcp/schemas.js.map +0 -1
  234. package/dist/mcp/server.d.ts +0 -11
  235. package/dist/mcp/server.js +0 -58
  236. package/dist/mcp/server.js.map +0 -1
  237. package/dist/mcp/telemetry.d.ts +0 -15
  238. package/dist/mcp/telemetry.js +0 -13
  239. package/dist/mcp/telemetry.js.map +0 -1
  240. package/dist/mcp/tools/append.d.ts +0 -8
  241. package/dist/mcp/tools/append.js +0 -33
  242. package/dist/mcp/tools/append.js.map +0 -1
  243. package/dist/mcp/tools/archive.d.ts +0 -8
  244. package/dist/mcp/tools/archive.js +0 -49
  245. package/dist/mcp/tools/archive.js.map +0 -1
  246. package/dist/mcp/tools/ask-operator.d.ts +0 -34
  247. package/dist/mcp/tools/ask-operator.js +0 -93
  248. package/dist/mcp/tools/ask-operator.js.map +0 -1
  249. package/dist/mcp/tools/canonical-for-topic.d.ts +0 -6
  250. package/dist/mcp/tools/canonical-for-topic.js +0 -40
  251. package/dist/mcp/tools/canonical-for-topic.js.map +0 -1
  252. package/dist/mcp/tools/decision-get.d.ts +0 -6
  253. package/dist/mcp/tools/decision-get.js +0 -49
  254. package/dist/mcp/tools/decision-get.js.map +0 -1
  255. package/dist/mcp/tools/decisions-for-symbol.d.ts +0 -7
  256. package/dist/mcp/tools/decisions-for-symbol.js +0 -42
  257. package/dist/mcp/tools/decisions-for-symbol.js.map +0 -1
  258. package/dist/mcp/tools/decisions-in-scope.d.ts +0 -7
  259. package/dist/mcp/tools/decisions-in-scope.js +0 -47
  260. package/dist/mcp/tools/decisions-in-scope.js.map +0 -1
  261. package/dist/mcp/tools/drop-task.d.ts +0 -12
  262. package/dist/mcp/tools/drop-task.js +0 -47
  263. package/dist/mcp/tools/drop-task.js.map +0 -1
  264. package/dist/mcp/tools/get-full.d.ts +0 -7
  265. package/dist/mcp/tools/get-full.js +0 -46
  266. package/dist/mcp/tools/get-full.js.map +0 -1
  267. package/dist/mcp/tools/ground-get.d.ts +0 -7
  268. package/dist/mcp/tools/ground-get.js +0 -80
  269. package/dist/mcp/tools/ground-get.js.map +0 -1
  270. package/dist/mcp/tools/index.d.ts +0 -3
  271. package/dist/mcp/tools/index.js +0 -44
  272. package/dist/mcp/tools/index.js.map +0 -1
  273. package/dist/mcp/tools/invariant-get.d.ts +0 -6
  274. package/dist/mcp/tools/invariant-get.js +0 -49
  275. package/dist/mcp/tools/invariant-get.js.map +0 -1
  276. package/dist/mcp/tools/invariants-in-scope.d.ts +0 -7
  277. package/dist/mcp/tools/invariants-in-scope.js +0 -65
  278. package/dist/mcp/tools/invariants-in-scope.js.map +0 -1
  279. package/dist/mcp/tools/query-history.d.ts +0 -9
  280. package/dist/mcp/tools/query-history.js +0 -33
  281. package/dist/mcp/tools/query-history.js.map +0 -1
  282. package/dist/mcp/tools/record-decision.d.ts +0 -14
  283. package/dist/mcp/tools/record-decision.js +0 -101
  284. package/dist/mcp/tools/record-decision.js.map +0 -1
  285. package/dist/mcp/tools/record-run-event.d.ts +0 -10
  286. package/dist/mcp/tools/record-run-event.js +0 -28
  287. package/dist/mcp/tools/record-run-event.js.map +0 -1
  288. package/dist/mcp/tools/search.d.ts +0 -9
  289. package/dist/mcp/tools/search.js +0 -165
  290. package/dist/mcp/tools/search.js.map +0 -1
  291. package/dist/mcp/tools/supersedes-chain.d.ts +0 -6
  292. package/dist/mcp/tools/supersedes-chain.js +0 -66
  293. package/dist/mcp/tools/supersedes-chain.js.map +0 -1
  294. package/dist/mcp/tools/timeline.d.ts +0 -9
  295. package/dist/mcp/tools/timeline.js +0 -65
  296. package/dist/mcp/tools/timeline.js.map +0 -1
  297. package/dist/mcp/tools/types.d.ts +0 -9
  298. package/dist/mcp/tools/types.js +0 -2
  299. package/dist/mcp/tools/types.js.map +0 -1
  300. package/dist/mirror/clone.d.ts +0 -6
  301. package/dist/mirror/clone.js +0 -48
  302. package/dist/mirror/clone.js.map +0 -1
  303. package/dist/mirror/dirty-overlap.d.ts +0 -13
  304. package/dist/mirror/dirty-overlap.js +0 -77
  305. package/dist/mirror/dirty-overlap.js.map +0 -1
  306. package/dist/mirror/index.d.ts +0 -7
  307. package/dist/mirror/index.js +0 -7
  308. package/dist/mirror/index.js.map +0 -1
  309. package/dist/mirror/paths.d.ts +0 -18
  310. package/dist/mirror/paths.js +0 -45
  311. package/dist/mirror/paths.js.map +0 -1
  312. package/dist/mirror/push.d.ts +0 -9
  313. package/dist/mirror/push.js +0 -27
  314. package/dist/mirror/push.js.map +0 -1
  315. package/dist/mirror/state.d.ts +0 -4
  316. package/dist/mirror/state.js +0 -36
  317. package/dist/mirror/state.js.map +0 -1
  318. package/dist/mirror/sync.d.ts +0 -9
  319. package/dist/mirror/sync.js +0 -33
  320. package/dist/mirror/sync.js.map +0 -1
  321. package/dist/mirror/types.d.ts +0 -77
  322. package/dist/mirror/types.js +0 -2
  323. package/dist/mirror/types.js.map +0 -1
  324. package/dist/orchestrator/activity-summarizer.d.ts +0 -33
  325. package/dist/orchestrator/activity-summarizer.js +0 -120
  326. package/dist/orchestrator/activity-summarizer.js.map +0 -1
  327. package/dist/orchestrator/inbox.d.ts +0 -78
  328. package/dist/orchestrator/inbox.js +0 -115
  329. package/dist/orchestrator/inbox.js.map +0 -1
  330. package/dist/orchestrator/index.d.ts +0 -9
  331. package/dist/orchestrator/index.js +0 -7
  332. package/dist/orchestrator/index.js.map +0 -1
  333. package/dist/orchestrator/orchestrator.d.ts +0 -154
  334. package/dist/orchestrator/orchestrator.js +0 -2437
  335. package/dist/orchestrator/orchestrator.js.map +0 -1
  336. package/dist/orchestrator/prompt.d.ts +0 -19
  337. package/dist/orchestrator/prompt.js +0 -50
  338. package/dist/orchestrator/prompt.js.map +0 -1
  339. package/dist/orchestrator/queue.d.ts +0 -21
  340. package/dist/orchestrator/queue.js +0 -80
  341. package/dist/orchestrator/queue.js.map +0 -1
  342. package/dist/orchestrator/run-log.d.ts +0 -53
  343. package/dist/orchestrator/run-log.js +0 -92
  344. package/dist/orchestrator/run-log.js.map +0 -1
  345. package/dist/orchestrator/runner.d.ts +0 -56
  346. package/dist/orchestrator/runner.js +0 -172
  347. package/dist/orchestrator/runner.js.map +0 -1
  348. package/dist/orchestrator/tool-digest.d.ts +0 -35
  349. package/dist/orchestrator/tool-digest.js +0 -116
  350. package/dist/orchestrator/tool-digest.js.map +0 -1
  351. package/dist/orchestrator/types.d.ts +0 -263
  352. package/dist/orchestrator/types.js +0 -2
  353. package/dist/orchestrator/types.js.map +0 -1
  354. package/dist/orchestrator/workspace.d.ts +0 -21
  355. package/dist/orchestrator/workspace.js +0 -31
  356. package/dist/orchestrator/workspace.js.map +0 -1
  357. package/dist/profiles/index.d.ts +0 -3
  358. package/dist/profiles/index.js +0 -3
  359. package/dist/profiles/index.js.map +0 -1
  360. package/dist/profiles/registry.d.ts +0 -5
  361. package/dist/profiles/registry.js +0 -31
  362. package/dist/profiles/registry.js.map +0 -1
  363. package/dist/profiles/types.d.ts +0 -48
  364. package/dist/profiles/types.js +0 -11
  365. package/dist/profiles/types.js.map +0 -1
  366. package/dist/profiles/unknown.d.ts +0 -9
  367. package/dist/profiles/unknown.js +0 -17
  368. package/dist/profiles/unknown.js.map +0 -1
  369. package/dist/reviewer/index.d.ts +0 -6
  370. package/dist/reviewer/index.js +0 -5
  371. package/dist/reviewer/index.js.map +0 -1
  372. package/dist/reviewer/prompt.d.ts +0 -11
  373. package/dist/reviewer/prompt.js +0 -132
  374. package/dist/reviewer/prompt.js.map +0 -1
  375. package/dist/reviewer/remediation.d.ts +0 -15
  376. package/dist/reviewer/remediation.js +0 -61
  377. package/dist/reviewer/remediation.js.map +0 -1
  378. package/dist/reviewer/reviewer.d.ts +0 -9
  379. package/dist/reviewer/reviewer.js +0 -89
  380. package/dist/reviewer/reviewer.js.map +0 -1
  381. package/dist/reviewer/schema.d.ts +0 -45
  382. package/dist/reviewer/schema.js +0 -43
  383. package/dist/reviewer/schema.js.map +0 -1
  384. package/dist/reviewer/types.d.ts +0 -74
  385. package/dist/reviewer/types.js +0 -14
  386. package/dist/reviewer/types.js.map +0 -1
  387. package/dist/sensors/attestation.d.ts +0 -44
  388. package/dist/sensors/attestation.js +0 -262
  389. package/dist/sensors/attestation.js.map +0 -1
  390. package/dist/sensors/catalog.d.ts +0 -41
  391. package/dist/sensors/catalog.js +0 -123
  392. package/dist/sensors/catalog.js.map +0 -1
  393. package/dist/sensors/decisions.d.ts +0 -30
  394. package/dist/sensors/decisions.js +0 -393
  395. package/dist/sensors/decisions.js.map +0 -1
  396. package/dist/sensors/diff.d.ts +0 -27
  397. package/dist/sensors/diff.js +0 -148
  398. package/dist/sensors/diff.js.map +0 -1
  399. package/dist/sensors/index.d.ts +0 -13
  400. package/dist/sensors/index.js +0 -9
  401. package/dist/sensors/index.js.map +0 -1
  402. package/dist/sensors/remediation.d.ts +0 -20
  403. package/dist/sensors/remediation.js +0 -65
  404. package/dist/sensors/remediation.js.map +0 -1
  405. package/dist/sensors/runner.d.ts +0 -44
  406. package/dist/sensors/runner.js +0 -95
  407. package/dist/sensors/runner.js.map +0 -1
  408. package/dist/sensors/structural.d.ts +0 -30
  409. package/dist/sensors/structural.js +0 -204
  410. package/dist/sensors/structural.js.map +0 -1
  411. package/dist/sensors/stub-catalog.d.ts +0 -39
  412. package/dist/sensors/stub-catalog.js +0 -115
  413. package/dist/sensors/stub-catalog.js.map +0 -1
  414. package/dist/sensors/types.d.ts +0 -135
  415. package/dist/sensors/types.js +0 -14
  416. package/dist/sensors/types.js.map +0 -1
  417. package/dist/tier0/classify.d.ts +0 -5
  418. package/dist/tier0/classify.js +0 -91
  419. package/dist/tier0/classify.js.map +0 -1
  420. package/dist/tier0/index.d.ts +0 -3
  421. package/dist/tier0/index.js +0 -3
  422. package/dist/tier0/index.js.map +0 -1
  423. package/dist/tier0/ollama.d.ts +0 -22
  424. package/dist/tier0/ollama.js +0 -63
  425. package/dist/tier0/ollama.js.map +0 -1
  426. package/dist/tier0/types.d.ts +0 -24
  427. package/dist/tier0/types.js +0 -7
  428. package/dist/tier0/types.js.map +0 -1
  429. package/dist/tightener/index.d.ts +0 -4
  430. package/dist/tightener/index.js +0 -4
  431. package/dist/tightener/index.js.map +0 -1
  432. package/dist/tightener/prompt.d.ts +0 -3
  433. package/dist/tightener/prompt.js +0 -67
  434. package/dist/tightener/prompt.js.map +0 -1
  435. package/dist/tightener/schema.d.ts +0 -68
  436. package/dist/tightener/schema.js +0 -44
  437. package/dist/tightener/schema.js.map +0 -1
  438. package/dist/tightener/tighten.d.ts +0 -2
  439. package/dist/tightener/tighten.js +0 -66
  440. package/dist/tightener/tighten.js.map +0 -1
  441. package/dist/tightener/types.d.ts +0 -74
  442. package/dist/tightener/types.js +0 -6
  443. package/dist/tightener/types.js.map +0 -1
  444. package/dist/uat/bundle.d.ts +0 -68
  445. package/dist/uat/bundle.js +0 -168
  446. package/dist/uat/bundle.js.map +0 -1
  447. package/dist/uat/index.d.ts +0 -15
  448. package/dist/uat/index.js +0 -10
  449. package/dist/uat/index.js.map +0 -1
  450. package/dist/uat/persistent.d.ts +0 -64
  451. package/dist/uat/persistent.js +0 -206
  452. package/dist/uat/persistent.js.map +0 -1
  453. package/dist/uat/probes/cli.d.ts +0 -11
  454. package/dist/uat/probes/cli.js +0 -107
  455. package/dist/uat/probes/cli.js.map +0 -1
  456. package/dist/uat/probes/http.d.ts +0 -12
  457. package/dist/uat/probes/http.js +0 -139
  458. package/dist/uat/probes/http.js.map +0 -1
  459. package/dist/uat/probes/index.d.ts +0 -21
  460. package/dist/uat/probes/index.js +0 -30
  461. package/dist/uat/probes/index.js.map +0 -1
  462. package/dist/uat/probes/integration.d.ts +0 -18
  463. package/dist/uat/probes/integration.js +0 -188
  464. package/dist/uat/probes/integration.js.map +0 -1
  465. package/dist/uat/probes/sql/config.d.ts +0 -14
  466. package/dist/uat/probes/sql/config.js +0 -57
  467. package/dist/uat/probes/sql/config.js.map +0 -1
  468. package/dist/uat/probes/sql/index.d.ts +0 -29
  469. package/dist/uat/probes/sql/index.js +0 -43
  470. package/dist/uat/probes/sql/index.js.map +0 -1
  471. package/dist/uat/probes/sql/mysql.d.ts +0 -12
  472. package/dist/uat/probes/sql/mysql.js +0 -96
  473. package/dist/uat/probes/sql/mysql.js.map +0 -1
  474. package/dist/uat/probes/sql/pg.d.ts +0 -20
  475. package/dist/uat/probes/sql/pg.js +0 -102
  476. package/dist/uat/probes/sql/pg.js.map +0 -1
  477. package/dist/uat/probes/sql/sqlite.d.ts +0 -9
  478. package/dist/uat/probes/sql/sqlite.js +0 -58
  479. package/dist/uat/probes/sql/sqlite.js.map +0 -1
  480. package/dist/uat/probes/sql/types.d.ts +0 -46
  481. package/dist/uat/probes/sql/types.js +0 -10
  482. package/dist/uat/probes/sql/types.js.map +0 -1
  483. package/dist/uat/probes/sql.d.ts +0 -9
  484. package/dist/uat/probes/sql.js +0 -119
  485. package/dist/uat/probes/sql.js.map +0 -1
  486. package/dist/uat/probes/ui.d.ts +0 -19
  487. package/dist/uat/probes/ui.js +0 -244
  488. package/dist/uat/probes/ui.js.map +0 -1
  489. package/dist/uat/prompt.d.ts +0 -10
  490. package/dist/uat/prompt.js +0 -85
  491. package/dist/uat/prompt.js.map +0 -1
  492. package/dist/uat/question.d.ts +0 -50
  493. package/dist/uat/question.js +0 -139
  494. package/dist/uat/question.js.map +0 -1
  495. package/dist/uat/rejection.d.ts +0 -58
  496. package/dist/uat/rejection.js +0 -163
  497. package/dist/uat/rejection.js.map +0 -1
  498. package/dist/uat/runner.d.ts +0 -6
  499. package/dist/uat/runner.js +0 -96
  500. package/dist/uat/runner.js.map +0 -1
  501. package/dist/uat/schema.d.ts +0 -322
  502. package/dist/uat/schema.js +0 -189
  503. package/dist/uat/schema.js.map +0 -1
  504. package/dist/uat/types.d.ts +0 -268
  505. package/dist/uat/types.js +0 -18
  506. package/dist/uat/types.js.map +0 -1
  507. package/dist/uat/uat.d.ts +0 -89
  508. package/dist/uat/uat.js +0 -256
  509. package/dist/uat/uat.js.map +0 -1
  510. package/dist/voice/index.d.ts +0 -4
  511. package/dist/voice/index.js +0 -4
  512. package/dist/voice/index.js.map +0 -1
  513. package/dist/voice/model.d.ts +0 -23
  514. package/dist/voice/model.js +0 -46
  515. package/dist/voice/model.js.map +0 -1
  516. package/dist/voice/pipe.d.ts +0 -9
  517. package/dist/voice/pipe.js +0 -47
  518. package/dist/voice/pipe.js.map +0 -1
  519. package/dist/voice/transcribe.d.ts +0 -3
  520. package/dist/voice/transcribe.js +0 -43
  521. package/dist/voice/transcribe.js.map +0 -1
  522. package/dist/voice/types.d.ts +0 -26
  523. package/dist/voice/types.js +0 -9
  524. package/dist/voice/types.js.map +0 -1
  525. package/dist/watch/daemon.d.ts +0 -21
  526. package/dist/watch/daemon.js +0 -143
  527. package/dist/watch/daemon.js.map +0 -1
  528. package/dist/watch/index.d.ts +0 -4
  529. package/dist/watch/index.js +0 -3
  530. package/dist/watch/index.js.map +0 -1
  531. package/dist/watch/regenerate.d.ts +0 -25
  532. package/dist/watch/regenerate.js +0 -51
  533. package/dist/watch/regenerate.js.map +0 -1
@@ -1,336 +0,0 @@
1
- /**
2
- * Profile-free stack detection for `harness init`.
3
- *
4
- * Each detection function returns plain data; the wizard composes them.
5
- * No prompts, no side effects, no stdout writes. Detection is mechanical:
6
- * read filesystem signatures, return arrays of findings.
7
- */
8
- import { existsSync, readFileSync, statSync } from "node:fs";
9
- import { basename, join } from "node:path";
10
- import { simpleGit } from "simple-git";
11
- import { claudeIsAvailable } from "../claude/index.js";
12
- import { normalizeProjectName } from "../mirror/index.js";
13
- const WHISPER_MODEL_PATH = `${process.env["HOME"] ?? ""}/.local/harness/models/ggml-large-v3-turbo-q5_0.bin`;
14
- const OLLAMA_HOST = process.env["OLLAMA_HOST"] ?? "http://localhost:11434";
15
- export function detectProjectSlug(args) {
16
- const pkgPath = join(args.repoRoot, "package.json");
17
- if (existsSync(pkgPath)) {
18
- try {
19
- const pkg = JSON.parse(readFileSync(pkgPath, "utf8"));
20
- if (typeof pkg.name === "string" && pkg.name.length > 0) {
21
- return normalizeProjectName(pkg.name);
22
- }
23
- }
24
- catch {
25
- // fall through
26
- }
27
- }
28
- if (args.originUrl !== null) {
29
- const match = args.originUrl.match(/[/:]([^/]+?)(?:\.git)?$/);
30
- if (match?.[1])
31
- return normalizeProjectName(match[1]);
32
- }
33
- return normalizeProjectName(basename(args.repoRoot));
34
- }
35
- export async function detectOriginUrl(repoRoot) {
36
- if (!existsSync(join(repoRoot, ".git")))
37
- return null;
38
- try {
39
- const remotes = await simpleGit(repoRoot).getRemotes(true);
40
- const origin = remotes.find((r) => r.name === "origin");
41
- return origin?.refs?.fetch ?? null;
42
- }
43
- catch {
44
- return null;
45
- }
46
- }
47
- export function detectStackSignatures(repoRoot) {
48
- const signatures = [];
49
- const flag = (kind, marker) => {
50
- if (existsSync(join(repoRoot, marker))) {
51
- signatures.push({ kind, marker });
52
- }
53
- };
54
- flag("typescript", "package.json");
55
- flag("python", "pyproject.toml");
56
- if (signatures.find((s) => s.kind === "python") === undefined) {
57
- flag("python", "requirements.txt");
58
- }
59
- flag("ruby", "Gemfile");
60
- flag("go", "go.mod");
61
- flag("rust", "Cargo.toml");
62
- flag("elixir", "mix.exs");
63
- if (signatures.length === 0) {
64
- signatures.push({ kind: "unknown", marker: repoRoot });
65
- }
66
- return signatures;
67
- }
68
- export function detectAvailableSensors(args) {
69
- const sensors = [];
70
- const has = (path) => existsSync(join(args.repoRoot, path));
71
- const hasAny = (paths) => paths.some(has);
72
- // ── typescript ───────────────────────────────────────────
73
- if (args.signatures.some((s) => s.kind === "typescript")) {
74
- if (has("tsconfig.json") || has("tsconfig.base.json")) {
75
- sensors.push({
76
- id: "tsc",
77
- command: "pnpm",
78
- args: ["-w", "exec", "tsc", "-b", "--noEmit"],
79
- applies_to: ["typescript"],
80
- reason: "tsconfig.json present",
81
- });
82
- }
83
- if (hasAny([
84
- ".eslintrc",
85
- ".eslintrc.js",
86
- ".eslintrc.json",
87
- ".eslintrc.cjs",
88
- "eslint.config.js",
89
- "eslint.config.mjs",
90
- ])) {
91
- sensors.push({
92
- id: "eslint",
93
- command: "pnpm",
94
- args: ["-w", "exec", "eslint", "."],
95
- applies_to: ["typescript"],
96
- reason: "eslint config present",
97
- });
98
- }
99
- }
100
- // ── python ───────────────────────────────────────────────
101
- if (args.signatures.some((s) => s.kind === "python")) {
102
- const pyToml = readFileIfExists(join(args.repoRoot, "pyproject.toml"));
103
- if (has("ruff.toml") || (pyToml && /\[tool\.ruff\]/.test(pyToml))) {
104
- sensors.push({
105
- id: "ruff",
106
- command: "ruff",
107
- args: ["check", "."],
108
- applies_to: ["python"],
109
- reason: "ruff config present",
110
- });
111
- }
112
- if (has("mypy.ini") || (pyToml && /\[tool\.mypy\]/.test(pyToml))) {
113
- sensors.push({
114
- id: "mypy",
115
- command: "mypy",
116
- args: ["."],
117
- applies_to: ["python"],
118
- reason: "mypy config present",
119
- });
120
- }
121
- }
122
- // ── ruby ─────────────────────────────────────────────────
123
- if (args.signatures.some((s) => s.kind === "ruby")) {
124
- const gemfile = readFileIfExists(join(args.repoRoot, "Gemfile"));
125
- if (has(".rubocop.yml") || (gemfile && /\brubocop\b/.test(gemfile))) {
126
- sensors.push({
127
- id: "rubocop",
128
- command: "bundle",
129
- args: ["exec", "rubocop"],
130
- applies_to: ["ruby"],
131
- reason: "rubocop config / dep present",
132
- });
133
- }
134
- if (gemfile && /\brails\b/.test(gemfile)) {
135
- sensors.push({
136
- id: "brakeman",
137
- command: "bundle",
138
- args: ["exec", "brakeman", "--no-pager"],
139
- applies_to: ["ruby"],
140
- reason: "rails app detected",
141
- needs_install: true,
142
- });
143
- }
144
- }
145
- // ── go ───────────────────────────────────────────────────
146
- if (args.signatures.some((s) => s.kind === "go")) {
147
- sensors.push({
148
- id: "go-vet",
149
- command: "go",
150
- args: ["vet", "./..."],
151
- applies_to: ["go"],
152
- reason: "go.mod present",
153
- });
154
- sensors.push({
155
- id: "gofmt",
156
- command: "gofmt",
157
- args: ["-l", "."],
158
- applies_to: ["go"],
159
- reason: "go.mod present",
160
- });
161
- }
162
- // ── rust ─────────────────────────────────────────────────
163
- if (args.signatures.some((s) => s.kind === "rust")) {
164
- sensors.push({
165
- id: "cargo-check",
166
- command: "cargo",
167
- args: ["check"],
168
- applies_to: ["rust"],
169
- reason: "Cargo.toml present",
170
- });
171
- sensors.push({
172
- id: "cargo-clippy",
173
- command: "cargo",
174
- args: ["clippy", "--", "-D", "warnings"],
175
- applies_to: ["rust"],
176
- reason: "Cargo.toml present",
177
- });
178
- }
179
- // ── elixir ───────────────────────────────────────────────
180
- if (args.signatures.some((s) => s.kind === "elixir")) {
181
- sensors.push({
182
- id: "mix-compile-warnings",
183
- command: "mix",
184
- args: ["compile", "--warnings-as-errors"],
185
- applies_to: ["elixir"],
186
- reason: "mix.exs present",
187
- });
188
- }
189
- return sensors;
190
- }
191
- export function detectStartCommand(args) {
192
- // typescript: prefer package.json scripts.dev > scripts.start
193
- if (args.signatures.some((s) => s.kind === "typescript")) {
194
- const pkgPath = join(args.repoRoot, "package.json");
195
- if (existsSync(pkgPath)) {
196
- try {
197
- const pkg = JSON.parse(readFileSync(pkgPath, "utf8"));
198
- const script = pkg.scripts?.["dev"] ?? pkg.scripts?.["start"];
199
- const scriptName = pkg.scripts?.["dev"] !== undefined ? "dev" : "start";
200
- if (script !== undefined) {
201
- return {
202
- command: "pnpm",
203
- args: ["run", scriptName],
204
- reason: `package.json scripts.${scriptName}: \`${script}\``,
205
- };
206
- }
207
- }
208
- catch {
209
- // fall through
210
- }
211
- }
212
- }
213
- // python: manage.py runserver; FastAPI uvicorn from Procfile/dev.sh
214
- if (args.signatures.some((s) => s.kind === "python")) {
215
- if (existsSync(join(args.repoRoot, "manage.py"))) {
216
- return {
217
- command: "python",
218
- args: ["manage.py", "runserver"],
219
- reason: "Django manage.py detected",
220
- };
221
- }
222
- const procfile = readFileIfExists(join(args.repoRoot, "Procfile"));
223
- if (procfile) {
224
- const webLine = procfile.split(/\r?\n/).find((l) => /^web:/i.test(l));
225
- if (webLine) {
226
- const cmdRaw = webLine.replace(/^web:\s*/i, "").trim();
227
- const parts = cmdRaw.split(/\s+/);
228
- if (parts.length > 0 && parts[0] !== undefined) {
229
- return {
230
- command: parts[0],
231
- args: parts.slice(1),
232
- reason: `Procfile web: ${cmdRaw}`,
233
- };
234
- }
235
- }
236
- }
237
- }
238
- // ruby: bin/rails server
239
- if (args.signatures.some((s) => s.kind === "ruby")) {
240
- if (existsSync(join(args.repoRoot, "bin", "rails"))) {
241
- return {
242
- command: "bin/rails",
243
- args: ["server"],
244
- reason: "bin/rails detected",
245
- };
246
- }
247
- }
248
- // go: best-guess `go run ./...`
249
- if (args.signatures.some((s) => s.kind === "go")) {
250
- return {
251
- command: "go",
252
- args: ["run", "./..."],
253
- reason: "go.mod present",
254
- };
255
- }
256
- // rust: cargo run
257
- if (args.signatures.some((s) => s.kind === "rust")) {
258
- return {
259
- command: "cargo",
260
- args: ["run"],
261
- reason: "Cargo.toml present",
262
- };
263
- }
264
- return null;
265
- }
266
- export function detectHookCapability(repoRoot) {
267
- const claudeDir = join(repoRoot, ".claude");
268
- if (existsSync(claudeDir) && isDirectory(claudeDir))
269
- return "claude-code";
270
- if (existsSync(join(repoRoot, ".git")))
271
- return "git-hooks";
272
- return "cli-only";
273
- }
274
- async function probeOllama() {
275
- try {
276
- const res = await fetch(`${OLLAMA_HOST}/api/tags`, { method: "GET" });
277
- return res.ok;
278
- }
279
- catch {
280
- return false;
281
- }
282
- }
283
- export async function detectEnvironment() {
284
- return {
285
- claude_auth: claudeIsAvailable(),
286
- whisper_model: existsSync(WHISPER_MODEL_PATH),
287
- ollama_running: await probeOllama(),
288
- discord_token: typeof process.env["DISCORD_BOT_TOKEN"] === "string" &&
289
- process.env["DISCORD_BOT_TOKEN"].length > 0,
290
- discord_guild: typeof process.env["DISCORD_GUILD_ID"] === "string" &&
291
- process.env["DISCORD_GUILD_ID"].length > 0,
292
- };
293
- }
294
- export async function detectAll(repoRoot) {
295
- const originUrl = await detectOriginUrl(repoRoot);
296
- const project_slug = detectProjectSlug({ repoRoot, originUrl });
297
- const stack_signatures = detectStackSignatures(repoRoot);
298
- const proposed_sensors = detectAvailableSensors({
299
- repoRoot,
300
- signatures: stack_signatures,
301
- });
302
- const start_command = detectStartCommand({
303
- repoRoot,
304
- signatures: stack_signatures,
305
- });
306
- const hook_capability = detectHookCapability(repoRoot);
307
- const environment = await detectEnvironment();
308
- return {
309
- repo_root: repoRoot,
310
- project_slug,
311
- origin_url: originUrl,
312
- stack_signatures,
313
- proposed_sensors,
314
- start_command,
315
- hook_capability,
316
- environment,
317
- };
318
- }
319
- /* ───────────────────────── helpers ───────────────────────── */
320
- function readFileIfExists(path) {
321
- try {
322
- return readFileSync(path, "utf8");
323
- }
324
- catch {
325
- return null;
326
- }
327
- }
328
- function isDirectory(path) {
329
- try {
330
- return statSync(path).isDirectory();
331
- }
332
- catch {
333
- return false;
334
- }
335
- }
336
- //# sourceMappingURL=detect.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"detect.js","sourceRoot":"","sources":["../../src/init/detect.ts"],"names":[],"mappings":"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"}
@@ -1,14 +0,0 @@
1
- export { detectAll, detectAvailableSensors, detectEnvironment, detectHookCapability, detectOriginUrl, detectProjectSlug, detectStackSignatures, detectStartCommand, } from "./detect.js";
2
- export { runInit } from "./init.js";
3
- export type { InitResult, RunInitArgs } from "./init.js";
4
- export { buildMapperUserPrompt, MAPPER_OUTPUT_SCHEMA, MAPPER_SYSTEM_PROMPT, runMapper, validateMapperOutput, } from "./mapper.js";
5
- export type { MapperKeyModule, MapperOutput, MapperProposedSensor, MapperResult, RunMapperArgs, } from "./mapper.js";
6
- export { seedHarnessLayout, templatesRoot } from "./seed.js";
7
- export type { SeedOptions, SeedResult } from "./seed.js";
8
- export { editYaml, freeTextWithDefault, secretInput, squareIntoSquareHole, yesNo, type Choice, type EditorOptions, type PromptMode, type PromptOptions, } from "./prompts.js";
9
- export { harnessEnvPath, readHarnessEnv, upsertHarnessEnv, } from "./secrets.js";
10
- export type { DetectionResult, HookCapability, SensorProposal, StackKind, StackSignature, StartCommand, } from "./types.js";
11
- export { buildRepoSummary } from "./walker.js";
12
- export type { BuildRepoSummaryOptions, ManifestPreview, RepoSummary, } from "./walker.js";
13
- export { updateWorkflowSlugBlock } from "./workflow-block.js";
14
- export type { UpdateResult as WorkflowSlugUpdateResult, WorkflowSlugBlockUpdate, } from "./workflow-block.js";
@@ -1,9 +0,0 @@
1
- export { detectAll, detectAvailableSensors, detectEnvironment, detectHookCapability, detectOriginUrl, detectProjectSlug, detectStackSignatures, detectStartCommand, } from "./detect.js";
2
- export { runInit } from "./init.js";
3
- export { buildMapperUserPrompt, MAPPER_OUTPUT_SCHEMA, MAPPER_SYSTEM_PROMPT, runMapper, validateMapperOutput, } from "./mapper.js";
4
- export { seedHarnessLayout, templatesRoot } from "./seed.js";
5
- export { editYaml, freeTextWithDefault, secretInput, squareIntoSquareHole, yesNo, } from "./prompts.js";
6
- export { harnessEnvPath, readHarnessEnv, upsertHarnessEnv, } from "./secrets.js";
7
- export { buildRepoSummary } from "./walker.js";
8
- export { updateWorkflowSlugBlock } from "./workflow-block.js";
9
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/init/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,sBAAsB,EACtB,iBAAiB,EACjB,oBAAoB,EACpB,eAAe,EACf,iBAAiB,EACjB,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,oBAAoB,EACpB,SAAS,EACT,oBAAoB,GACrB,MAAM,aAAa,CAAC;AAQrB,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE7D,OAAO,EACL,QAAQ,EACR,mBAAmB,EACnB,WAAW,EACX,oBAAoB,EACpB,KAAK,GAKN,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,cAAc,EACd,cAAc,EACd,gBAAgB,GACjB,MAAM,cAAc,CAAC;AAStB,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAM/C,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC"}
@@ -1,68 +0,0 @@
1
- /**
2
- * `harness init` orchestrator — full guided setup.
3
- *
4
- * Stages:
5
- * 1. Detect → print summary
6
- * 2. Proceed dialog (cancel exits cleanly, no writes)
7
- * 3. Guided setup loop — for each missing prerequisite, prompt to fix:
8
- * • discord bot token + guild → write to ~/.local/harness/.env
9
- * • whisper model → curl download
10
- * • ollama service → brew install + ollama pull
11
- * • claude CLI → instruct (interactive auth, can't automate)
12
- * 4. Seed `.harness/` + .archive/ from templates with `<project_name>`
13
- * substituted. Write `.harness/config.yaml`.
14
- * 5. Mirror init (skippable).
15
- * 6. E2E dialog — now actually executes setup:uat-* via subprocess.
16
- *
17
- * Pre-configured environment skips guided setup dialogs entirely; init
18
- * for an already-set-up operator runs proceed + e2e and that's it.
19
- */
20
- import { type MapperOutput } from "./mapper.js";
21
- import { type PromptMode } from "./prompts.js";
22
- import type { DetectionResult } from "./types.js";
23
- export interface RunInitArgs {
24
- /** Repo root the operator wants to adopt. Default = process.cwd(). */
25
- repoRoot?: string;
26
- /** Override the detected slug. Useful for `harness init . --slug foo`. */
27
- slugOverride?: string;
28
- /** auto = no prompts (smoke / scripted adoption). interactive = real wizard. */
29
- mode?: PromptMode;
30
- /** Force-overwrite existing `.harness/` files. Default false. */
31
- force?: boolean;
32
- /** Skip mirror clone — useful for smoke and offline testing. */
33
- skipMirror?: boolean;
34
- /** Auto-pick the E2E setup answer when mode=auto. */
35
- autoE2e?: "now" | "defer" | "skip";
36
- /** Auto-pick proceed? when mode=auto. */
37
- autoProceed?: "a" | "b";
38
- /** Skip guided setup (claude/whisper/ollama/discord) — smoke convenience. */
39
- skipGuidedSetup?: boolean;
40
- /** Skip the Tier-2 init mapper. Default off in interactive mode (we run the
41
- * mapper unless operator declines or claude is missing); always off in auto
42
- * mode unless `mockMapperOutput` is provided. */
43
- skipMapper?: boolean;
44
- /**
45
- * Substitute a canned MapperOutput for the LLM call. Used by smokes and any
46
- * scripted adoption path that wants to exercise the apply-to-config and
47
- * apply-to-workflow.md path without burning Sonnet tokens.
48
- */
49
- mockMapperOutput?: MapperOutput;
50
- }
51
- export interface InitResult {
52
- detection: DetectionResult;
53
- decided_slug: string;
54
- proceed: boolean;
55
- seeded_files: string[];
56
- collisions: string[];
57
- config_path: string;
58
- mirror_path: string | null;
59
- e2e_setup: "now" | "defer" | "skip" | null;
60
- /** Mapper outcome — null when skipped/failed, full output when applied. */
61
- mapper_output: MapperOutput | null;
62
- /** Whether mapper output reached the workflow.md slug block. */
63
- mapper_applied_to_workflow: boolean;
64
- /** Whether mapper output reached the new .harness/config.yaml. */
65
- mapper_applied_to_config: boolean;
66
- warnings: string[];
67
- }
68
- export declare function runInit(args?: RunInitArgs): Promise<InitResult>;