@automaton-labs/aib 0.0.6 → 0.0.8

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 (586) hide show
  1. package/README.md +36 -257
  2. package/config/agent-dx-policy.default.json +31 -0
  3. package/config/control-plane-client.default.json +3 -0
  4. package/dist/agent-dx/agent-dx.js +805 -0
  5. package/dist/agent-dx/presentation.js +32 -0
  6. package/dist/alias-advisor/analyze.js +982 -0
  7. package/dist/alias-advisor/exact-text-cost.js +74 -0
  8. package/dist/alias-advisor/lexical.js +240 -0
  9. package/dist/alias-advisor/model.js +2 -0
  10. package/dist/alias-advisor/path-identity.js +49 -0
  11. package/dist/alias-advisor/ranking.js +171 -0
  12. package/dist/alias-advisor/token-estimator.js +85 -0
  13. package/dist/bin/aib.js +5 -1
  14. package/dist/bin/cli.js +811 -2
  15. package/dist/commands/add-missing-imports-preview-cache.js +99 -2
  16. package/dist/commands/add-missing-imports.js +241 -2
  17. package/dist/commands/apply-module-plan.js +1319 -3
  18. package/dist/commands/background-command.js +378 -0
  19. package/dist/commands/captured-input.js +74 -2
  20. package/dist/commands/config-command.js +314 -2
  21. package/dist/commands/config-output.js +357 -10
  22. package/dist/commands/control-plane-command.js +183 -0
  23. package/dist/commands/declaration-command.js +1209 -0
  24. package/dist/commands/declaration-execution-cache.js +79 -0
  25. package/dist/commands/declaration-format.js +221 -0
  26. package/dist/commands/declaration-preview-cache.js +114 -0
  27. package/dist/commands/diagnostics-command.js +70 -3
  28. package/dist/commands/doctor.js +137 -2
  29. package/dist/commands/execution-command.js +117 -1
  30. package/dist/commands/exports-star-collapse-command.js +178 -0
  31. package/dist/commands/exports-star-command.js +252 -0
  32. package/dist/commands/exports-star-preview-cache.js +84 -0
  33. package/dist/commands/feedback-command.js +176 -3
  34. package/dist/commands/file-move-to-dir-execution-cache.js +92 -0
  35. package/dist/commands/file-move-to-dir-preview-cache.js +125 -0
  36. package/dist/commands/file-move-to-dir-worker.js +54 -0
  37. package/dist/commands/file-move-to-dir.js +1073 -0
  38. package/dist/commands/file-mutation-runtime.js +102 -0
  39. package/dist/commands/file-mutation-worker-apply.js +180 -0
  40. package/dist/commands/file-refactor-batch-execution-cache.js +90 -0
  41. package/dist/commands/file-refactor-batch-preview-cache.js +125 -0
  42. package/dist/commands/file-refactor-batch-worker.js +54 -0
  43. package/dist/commands/file-refactor-batch.js +1154 -0
  44. package/dist/commands/file-rename-execution-cache.js +92 -0
  45. package/dist/commands/file-rename-preview-cache.js +125 -0
  46. package/dist/commands/file-rename-worker.js +54 -0
  47. package/dist/commands/file-rename.js +1053 -0
  48. package/dist/commands/file-text-edit-executor.js +205 -0
  49. package/dist/commands/find-importers.js +52 -1
  50. package/dist/commands/find-unused-imports.js +55 -1
  51. package/dist/commands/generate-docs-command.js +244 -6
  52. package/dist/commands/help-command.js +460 -7
  53. package/dist/commands/import-specifier-policy.js +391 -0
  54. package/dist/commands/imports-command.js +68 -1
  55. package/dist/commands/imports-rebase.js +1138 -0
  56. package/dist/commands/init-skill-usage.js +92 -3
  57. package/dist/commands/init-workspace.js +30 -1
  58. package/dist/commands/inspect-alias-candidates.js +413 -0
  59. package/dist/commands/inspect-cycles.js +811 -5
  60. package/dist/commands/inspect-direct-usages.js +98 -0
  61. package/dist/commands/inspect-duplicates-format.js +229 -0
  62. package/dist/commands/inspect-format-primitives.js +127 -0
  63. package/dist/commands/inspect-format.js +1590 -18
  64. package/dist/commands/inspect-graph.js +1553 -9
  65. package/dist/commands/inspect-imports.js +339 -2
  66. package/dist/commands/inspect-mixed-format.js +524 -0
  67. package/dist/commands/inspect-module-plan-format.js +216 -0
  68. package/dist/commands/inspect-module-plan-serialization.js +402 -0
  69. package/dist/commands/inspect-reference-path-format.js +157 -0
  70. package/dist/commands/inspect-request-values.js +599 -0
  71. package/dist/commands/inspect-selector-kind.js +21 -0
  72. package/dist/commands/inspect-selector.js +50 -0
  73. package/dist/commands/inspect-symbol-format.js +90 -0
  74. package/dist/commands/inspect-topology.js +435 -0
  75. package/dist/commands/inspect-tree.js +827 -5
  76. package/dist/commands/inspect-usages-detail.js +793 -0
  77. package/dist/commands/inspect-usages-evidence.js +31 -0
  78. package/dist/commands/inspect-usages-format.js +367 -0
  79. package/dist/commands/inspect.js +1450 -16
  80. package/dist/commands/internal-command.js +64 -0
  81. package/dist/commands/json-file-input.js +60 -1
  82. package/dist/commands/module-plan-cache.js +156 -2
  83. package/dist/commands/module-plan-standalone.js +208 -0
  84. package/dist/commands/module-plan-timeout.js +77 -1
  85. package/dist/commands/move-preview-cache.js +101 -2
  86. package/dist/commands/mutate-aggregate-output.js +996 -0
  87. package/dist/commands/mutate-child-execution.js +374 -0
  88. package/dist/commands/mutate-command.js +1394 -0
  89. package/dist/commands/mutate-declaration-output.js +313 -0
  90. package/dist/commands/mutate-domain-adapters.js +638 -0
  91. package/dist/commands/mutate-execution-cache.js +114 -0
  92. package/dist/commands/mutate-execution-status.js +598 -0
  93. package/dist/commands/mutate-failure-output.js +531 -0
  94. package/dist/commands/mutate-file-view.js +151 -0
  95. package/dist/commands/mutate-object-output.js +91 -0
  96. package/dist/commands/mutate-output-values.js +97 -0
  97. package/dist/commands/mutate-preview-cache.js +86 -0
  98. package/dist/commands/mutate-response-replay.js +153 -0
  99. package/dist/commands/mutate-result-projection.js +818 -0
  100. package/dist/commands/mutation-eta.js +28 -0
  101. package/dist/commands/mutation-execution-cache.js +140 -3
  102. package/dist/commands/mutation-recovery-journal.js +195 -0
  103. package/dist/commands/normalize-imports.js +1120 -4
  104. package/dist/commands/object-pack-command.js +546 -0
  105. package/dist/commands/object-pack-preview-cache.js +88 -0
  106. package/dist/commands/observability-command.js +47 -3
  107. package/dist/commands/ota-command.js +403 -0
  108. package/dist/commands/print-config.js +10 -1
  109. package/dist/commands/quick-read.js +1113 -11
  110. package/dist/commands/refactor-batch-builder.js +265 -1
  111. package/dist/commands/refactor-batch-execution-cache.js +85 -1
  112. package/dist/commands/refactor-batch-preview-cache.js +96 -2
  113. package/dist/commands/refactor-batch.js +461 -4
  114. package/dist/commands/rename-entities.js +794 -4
  115. package/dist/commands/rename-execution-cache.js +49 -1
  116. package/dist/commands/rename-input.js +22 -1
  117. package/dist/commands/rename-polling-policy.js +68 -0
  118. package/dist/commands/rename-preview-cache.js +96 -2
  119. package/dist/commands/result-view.js +993 -6
  120. package/dist/commands/reveal-command.js +445 -5
  121. package/dist/commands/selector-suggestions.js +93 -0
  122. package/dist/commands/session-workspace.js +1836 -31
  123. package/dist/commands/shared.js +2 -1
  124. package/dist/commands/skills-command.js +315 -0
  125. package/dist/commands/sync-command.js +59 -2
  126. package/dist/commands/worker-command.js +173 -0
  127. package/dist/commands/workspace-cache.js +55 -1
  128. package/dist/config/defaults.js +26 -1
  129. package/dist/config/env-vars.js +77 -1
  130. package/dist/config/glob-match.js +44 -1
  131. package/dist/config/import-rules.js +165 -1
  132. package/dist/config/local-config.js +293 -3
  133. package/dist/config/mutation-comments.js +51 -1
  134. package/dist/config/path-aliases.js +165 -1
  135. package/dist/config/path-display.js +84 -1
  136. package/dist/config/product-storage.js +37 -1
  137. package/dist/config/request-env.js +21 -0
  138. package/dist/config/request-routing-context.js +23 -0
  139. package/dist/config/resolve-command-alias.js +74 -1
  140. package/dist/config/resolve.js +24 -1
  141. package/dist/config/tsconfig-discovery.js +113 -1
  142. package/dist/config/typescript-preferences.js +131 -0
  143. package/dist/config/workspace-root.js +310 -3
  144. package/dist/config/workspace-state.js +254 -1
  145. package/dist/content/content-bundle.js +88 -1
  146. package/dist/diagnostics/module-plan-timeline.js +75 -2
  147. package/dist/diagnostics/readiness-text.js +45 -8
  148. package/dist/dsl/aib-dsl.js +838 -1
  149. package/dist/dsl/declaration-dsl.js +264 -0
  150. package/dist/dsl/file-move-to-dir-dsl.js +123 -0
  151. package/dist/dsl/file-refactor-batch-dsl.js +203 -0
  152. package/dist/dsl/file-rename-dsl.js +135 -0
  153. package/dist/dsl/mutate-dsl.js +746 -0
  154. package/dist/help/bootstrap.bash.md +742 -0
  155. package/dist/help/bootstrap.md +236 -437
  156. package/dist/help/bootstrap.pwsh.md +742 -0
  157. package/dist/help/docs/basics.md +1 -1
  158. package/dist/help/docs/config-setup.import-normalize.md +65 -65
  159. package/dist/help/docs/config-setup.import-rules.md +6 -5
  160. package/dist/help/docs/dsl.md +4 -3
  161. package/dist/help/docs/first-setup.md +6 -5
  162. package/dist/help/docs/help-protocol.md +4 -3
  163. package/dist/help/docs/import.base.md +38 -0
  164. package/dist/help/docs/import.rebase.md +85 -0
  165. package/dist/help/docs/inspect.aliasCandidates.md +39 -0
  166. package/dist/help/docs/inspect.code.md +5 -11
  167. package/dist/help/docs/inspect.deps.md +7 -7
  168. package/dist/help/docs/inspect.file.md +10 -18
  169. package/dist/help/docs/inspect.graph.md +6 -20
  170. package/dist/help/docs/{inspect.md → inspect.shared.md} +18 -17
  171. package/dist/help/docs/modulePlan.md +24 -28
  172. package/dist/help/docs/move.md +19 -22
  173. package/dist/help/docs/moveToDir.md +46 -0
  174. package/dist/help/docs/mutate.mixed.md +34 -0
  175. package/dist/help/docs/mutation.shared.md +55 -0
  176. package/dist/help/docs/patterns.md +3 -16
  177. package/dist/help/docs/qr.md +13 -22
  178. package/dist/help/docs/quick-map.md +36 -23
  179. package/dist/help/docs/recipe.file-layout.md +15 -0
  180. package/dist/help/docs/recipe.import-boundary.md +92 -0
  181. package/dist/help/docs/recipe.safe-artifact-probing.md +68 -0
  182. package/dist/help/docs/recipe.unfamiliar-area.md +64 -0
  183. package/dist/help/docs/recipes.md +20 -0
  184. package/dist/help/docs/rename.md +19 -27
  185. package/dist/help/docs/renameFile.md +36 -0
  186. package/dist/help/docs/rg.md +22 -0
  187. package/dist/help/docs/rules.md +26 -0
  188. package/dist/help/docs/selectors.md +3 -2
  189. package/dist/help/docs/session.md +1 -1
  190. package/dist/help/dsl/bootstrap.bash.md +742 -0
  191. package/dist/help/dsl/bootstrap.md +236 -437
  192. package/dist/help/dsl/bootstrap.pwsh.md +742 -0
  193. package/dist/help/dsl/docs/basics.md +1 -1
  194. package/dist/help/dsl/docs/config-setup.import-normalize.md +65 -65
  195. package/dist/help/dsl/docs/config-setup.import-rules.md +6 -5
  196. package/dist/help/dsl/docs/dsl.md +4 -3
  197. package/dist/help/dsl/docs/first-setup.md +6 -5
  198. package/dist/help/dsl/docs/help-protocol.md +4 -3
  199. package/dist/help/dsl/docs/import.base.md +38 -0
  200. package/dist/help/dsl/docs/import.rebase.md +85 -0
  201. package/dist/help/dsl/docs/inspect.aliasCandidates.md +39 -0
  202. package/dist/help/dsl/docs/inspect.code.md +5 -11
  203. package/dist/help/dsl/docs/inspect.deps.md +7 -7
  204. package/dist/help/dsl/docs/inspect.file.md +10 -18
  205. package/dist/help/dsl/docs/inspect.graph.md +6 -20
  206. package/dist/help/dsl/docs/{inspect.md → inspect.shared.md} +18 -17
  207. package/dist/help/dsl/docs/modulePlan.md +24 -28
  208. package/dist/help/dsl/docs/move.md +19 -22
  209. package/dist/help/dsl/docs/moveToDir.md +46 -0
  210. package/dist/help/dsl/docs/mutate.mixed.md +34 -0
  211. package/dist/help/dsl/docs/mutation.shared.md +55 -0
  212. package/dist/help/dsl/docs/patterns.md +3 -16
  213. package/dist/help/dsl/docs/qr.md +13 -22
  214. package/dist/help/dsl/docs/quick-map.md +36 -23
  215. package/dist/help/dsl/docs/recipe.file-layout.md +15 -0
  216. package/dist/help/dsl/docs/recipe.import-boundary.md +92 -0
  217. package/dist/help/dsl/docs/recipe.safe-artifact-probing.md +68 -0
  218. package/dist/help/dsl/docs/recipe.unfamiliar-area.md +64 -0
  219. package/dist/help/dsl/docs/recipes.md +20 -0
  220. package/dist/help/dsl/docs/rename.md +19 -27
  221. package/dist/help/dsl/docs/renameFile.md +36 -0
  222. package/dist/help/dsl/docs/rg.md +22 -0
  223. package/dist/help/dsl/docs/rules.md +26 -0
  224. package/dist/help/dsl/docs/selectors.md +3 -2
  225. package/dist/help/dsl/docs/session.md +1 -1
  226. package/dist/help/dsl/full.md +236 -437
  227. package/dist/help/dsl/help-index.md +49 -0
  228. package/dist/help/dsl/snippets/agents.md +2 -2
  229. package/dist/help/dsl/tokens/qr.inline.examples.md +2 -0
  230. package/dist/help/dsl/tokens/stdin.examples.bash.md +8 -0
  231. package/dist/help/dsl/tokens/stdin.examples.pwsh.md +8 -0
  232. package/dist/help/dsl/tokens/stdin.examples.with-qr.bash.md +12 -0
  233. package/dist/help/dsl/tokens/stdin.examples.with-qr.pwsh.md +12 -0
  234. package/dist/help/dsl/topics/basics.md +1 -1
  235. package/dist/help/dsl/topics/config-setup.import-normalize.md +65 -65
  236. package/dist/help/dsl/topics/config-setup.import-rules.md +6 -5
  237. package/dist/help/dsl/topics/dsl.md +4 -3
  238. package/dist/help/dsl/topics/first-setup.md +6 -5
  239. package/dist/help/dsl/topics/help-protocol.md +4 -3
  240. package/dist/help/dsl/topics/import.base.md +36 -0
  241. package/dist/help/dsl/topics/import.rebase.md +83 -0
  242. package/dist/help/dsl/topics/inspect.aliasCandidates.md +37 -0
  243. package/dist/help/dsl/topics/inspect.code.md +5 -11
  244. package/dist/help/dsl/topics/inspect.deps.md +7 -7
  245. package/dist/help/dsl/topics/inspect.file.md +10 -18
  246. package/dist/help/dsl/topics/inspect.graph.md +6 -20
  247. package/dist/help/dsl/topics/{inspect.md → inspect.shared.md} +18 -17
  248. package/dist/help/dsl/topics/modulePlan.md +21 -26
  249. package/dist/help/dsl/topics/move.md +17 -18
  250. package/dist/help/dsl/topics/moveToDir.md +44 -0
  251. package/dist/help/dsl/topics/mutate.mixed.md +32 -0
  252. package/dist/help/dsl/topics/mutation.shared.md +53 -0
  253. package/dist/help/dsl/topics/patterns.md +3 -16
  254. package/dist/help/dsl/topics/qr.md +13 -22
  255. package/dist/help/dsl/topics/quick-map.md +36 -23
  256. package/dist/help/dsl/topics/recipe.file-layout.md +13 -0
  257. package/dist/help/dsl/topics/recipe.import-boundary.md +90 -0
  258. package/dist/help/dsl/topics/recipe.safe-artifact-probing.md +66 -0
  259. package/dist/help/dsl/topics/recipe.unfamiliar-area.md +62 -0
  260. package/dist/help/dsl/topics/recipes.md +18 -0
  261. package/dist/help/dsl/topics/rename.md +15 -15
  262. package/dist/help/dsl/topics/renameFile.md +34 -0
  263. package/dist/help/dsl/topics/rg.md +20 -0
  264. package/dist/help/dsl/topics/rules.md +24 -0
  265. package/dist/help/dsl/topics/selectors.md +3 -2
  266. package/dist/help/dsl/topics/session.md +1 -1
  267. package/dist/help/full.md +236 -437
  268. package/dist/help/help-index.md +49 -0
  269. package/dist/help/help-meta.json +114 -48
  270. package/dist/help/index.md +76 -87
  271. package/dist/help/snippets/agents.md +2 -2
  272. package/dist/help/tokens/qr.inline.examples.md +2 -0
  273. package/dist/help/tokens/stdin.examples.bash.md +8 -0
  274. package/dist/help/tokens/stdin.examples.pwsh.md +8 -0
  275. package/dist/help/tokens/stdin.examples.with-qr.bash.md +12 -0
  276. package/dist/help/tokens/stdin.examples.with-qr.pwsh.md +12 -0
  277. package/dist/help/topics/basics.md +1 -1
  278. package/dist/help/topics/config-setup.import-normalize.md +65 -65
  279. package/dist/help/topics/config-setup.import-rules.md +6 -5
  280. package/dist/help/topics/dsl.md +4 -3
  281. package/dist/help/topics/first-setup.md +6 -5
  282. package/dist/help/topics/help-protocol.md +4 -3
  283. package/dist/help/topics/import.base.md +36 -0
  284. package/dist/help/topics/import.rebase.md +83 -0
  285. package/dist/help/topics/inspect.aliasCandidates.md +37 -0
  286. package/dist/help/topics/inspect.code.md +5 -11
  287. package/dist/help/topics/inspect.deps.md +7 -7
  288. package/dist/help/topics/inspect.file.md +10 -18
  289. package/dist/help/topics/inspect.graph.md +6 -20
  290. package/dist/help/topics/{inspect.md → inspect.shared.md} +18 -17
  291. package/dist/help/topics/modulePlan.md +21 -26
  292. package/dist/help/topics/move.md +17 -18
  293. package/dist/help/topics/moveToDir.md +44 -0
  294. package/dist/help/topics/mutate.mixed.md +32 -0
  295. package/dist/help/topics/mutation.shared.md +53 -0
  296. package/dist/help/topics/patterns.md +3 -16
  297. package/dist/help/topics/qr.md +13 -22
  298. package/dist/help/topics/quick-map.md +36 -23
  299. package/dist/help/topics/recipe.file-layout.md +13 -0
  300. package/dist/help/topics/recipe.import-boundary.md +90 -0
  301. package/dist/help/topics/recipe.safe-artifact-probing.md +66 -0
  302. package/dist/help/topics/recipe.unfamiliar-area.md +62 -0
  303. package/dist/help/topics/recipes.md +18 -0
  304. package/dist/help/topics/rename.md +15 -15
  305. package/dist/help/topics/renameFile.md +34 -0
  306. package/dist/help/topics/rg.md +20 -0
  307. package/dist/help/topics/rules.md +24 -0
  308. package/dist/help/topics/selectors.md +3 -2
  309. package/dist/help/topics/session.md +1 -1
  310. package/dist/host/capabilities.js +56 -0
  311. package/dist/imports/standalone-import-analysis.js +602 -0
  312. package/dist/imports/standalone-import-model.js +2 -0
  313. package/dist/imports/standalone-import-process.js +66 -0
  314. package/dist/imports/standalone-import-worker.js +27 -0
  315. package/dist/imports/standalone-ts-project.js +147 -0
  316. package/dist/inspect/inspect-duplicates-service.js +526 -0
  317. package/dist/inspect/inspect-reverse-module-closure.js +338 -0
  318. package/dist/inspect/inspect-source-ranges.js +82 -0
  319. package/dist/inspect/inspect-source-shape.js +649 -0
  320. package/dist/inspect/standalone-inspect-analysis.js +319 -0
  321. package/dist/inspect/standalone-inspect-model.js +9 -0
  322. package/dist/inspect/standalone-inspect-process.js +55 -0
  323. package/dist/inspect/standalone-inspect-usages.js +274 -0
  324. package/dist/inspect/standalone-inspect-worker.js +13 -0
  325. package/dist/metrics/central-metrics.js +101 -2
  326. package/dist/mutation/concrete-edit-plan.js +157 -0
  327. package/dist/mutation/exports-star-collapse-preview.js +361 -0
  328. package/dist/mutation/exports-star-expand-apply.js +373 -0
  329. package/dist/mutation/exports-star-expand-preview.js +807 -0
  330. package/dist/mutation/file-impact-scan.js +182 -0
  331. package/dist/mutation/file-mutation-discovery.js +674 -0
  332. package/dist/mutation/file-mutation-eta.js +99 -0
  333. package/dist/mutation/file-mutation-standalone-apply.js +584 -0
  334. package/dist/mutation/file-mutation-standalone-planner.js +500 -0
  335. package/dist/mutation/file-mutation-tsserver-session.js +473 -0
  336. package/dist/mutation/mutation-estimate.js +45 -0
  337. package/dist/mutation/mutation-plan.js +467 -0
  338. package/dist/mutation/object-mutation-foundation.js +2 -0
  339. package/dist/mutation/object-mutation-partition.js +148 -0
  340. package/dist/mutation/object-pack-semantic-apply.js +507 -0
  341. package/dist/mutation/object-pack-semantic-preview.js +984 -0
  342. package/dist/mutation/object-unpack-semantic-preview.js +993 -0
  343. package/dist/mutation/package-manifest-impact.js +176 -0
  344. package/dist/mutation/rename-owner-worker-child.js +37 -0
  345. package/dist/mutation/rename-owner-worker.js +122 -0
  346. package/dist/mutation/runtime-cycle-query.js +66 -0
  347. package/dist/mutation/semantic-execution-progress.js +63 -0
  348. package/dist/mutation/semantic-export-index.js +474 -0
  349. package/dist/mutation/semantic-impact-scan.js +434 -0
  350. package/dist/mutation/semantic-model.js +2 -0
  351. package/dist/mutation/semantic-move-best-effort-planner.js +209 -0
  352. package/dist/mutation/semantic-move-config-worker-child.js +61 -0
  353. package/dist/mutation/semantic-move-config-worker.js +449 -0
  354. package/dist/mutation/semantic-move-declarations.js +94 -0
  355. package/dist/mutation/semantic-move-metrics.js +119 -0
  356. package/dist/mutation/semantic-move-model.js +2 -0
  357. package/dist/mutation/semantic-move-owner-authority.js +122 -0
  358. package/dist/mutation/semantic-move-owner-candidates.js +300 -0
  359. package/dist/mutation/semantic-move-owner-divergence-harness.js +474 -0
  360. package/dist/mutation/semantic-move-owner-divergence-runner.js +162 -0
  361. package/dist/mutation/semantic-move-plan-hash.js +56 -0
  362. package/dist/mutation/semantic-move-policy.js +360 -0
  363. package/dist/mutation/semantic-move-process.js +218 -0
  364. package/dist/mutation/semantic-move-provider-diagnostics.js +27 -0
  365. package/dist/mutation/semantic-move-standalone-engine.js +919 -0
  366. package/dist/mutation/semantic-move-standalone-planner.js +1553 -0
  367. package/dist/mutation/semantic-move-transaction.js +639 -0
  368. package/dist/mutation/semantic-mutation-engine.js +478 -0
  369. package/dist/mutation/semantic-mutation-runtime.js +521 -0
  370. package/dist/mutation/semantic-planner-retry.js +26 -0
  371. package/dist/mutation/semantic-program-roots.js +69 -0
  372. package/dist/mutation/semantic-rename-commonjs.js +229 -0
  373. package/dist/mutation/semantic-rename-config-worker-child.js +46 -0
  374. package/dist/mutation/semantic-rename-config-worker.js +498 -0
  375. package/dist/mutation/semantic-rename-locations.js +192 -0
  376. package/dist/mutation/semantic-rename-model.js +2 -0
  377. package/dist/mutation/semantic-rename-process.js +210 -0
  378. package/dist/mutation/semantic-rename-standalone-engine.js +302 -0
  379. package/dist/mutation/semantic-rename-standalone-planner.js +567 -0
  380. package/dist/mutation/semantic-rename-transaction.js +333 -0
  381. package/dist/mutation/semantic-unused-import-cleanup.js +248 -0
  382. package/dist/mutation/semantic-worker-retry.js +40 -0
  383. package/dist/mutation/semantic-workspace.js +804 -0
  384. package/dist/mutation/targeted-import-canonicalizer.js +359 -0
  385. package/dist/observability/config.js +206 -1
  386. package/dist/observability/context.js +59 -1
  387. package/dist/observability/failure-snapshot.js +124 -2
  388. package/dist/observability/recent.js +63 -2
  389. package/dist/payloads/read-stdin-json.js +212 -1
  390. package/dist/rg-wrapper/core.js +714 -0
  391. package/dist/rg-wrapper/options.js +125 -0
  392. package/dist/rtk-wrapper/core.js +144 -0
  393. package/dist/rtk-wrapper/git-safety.js +203 -0
  394. package/dist/rtk-wrapper/output-adapter.js +106 -0
  395. package/dist/runtime/buffered-process.js +114 -0
  396. package/dist/runtime/bundled-node.js +97 -1
  397. package/dist/runtime/command-lifecycle.js +2 -0
  398. package/dist/runtime/input-source.js +238 -1
  399. package/dist/runtime/node-cli-identity.js +37 -0
  400. package/dist/runtime/run-command.js +191 -1
  401. package/dist/selectors/parse-entities.js +84 -1
  402. package/dist/semantic/semantic-context-pool.js +830 -0
  403. package/dist/semantic/semantic-context-provider.js +416 -0
  404. package/dist/semantic/semantic-resident-admission.js +38 -0
  405. package/dist/semantic/semantic-worker-child.js +40 -0
  406. package/dist/semantic/semantic-worker-manager.js +460 -0
  407. package/dist/semantic/semantic-worker-protocol.js +2 -0
  408. package/dist/semantic/semantic-worker-runtime.js +38 -0
  409. package/dist/semantic/workspace-semantic-context-pools.js +136 -0
  410. package/dist/session/client.js +359 -1
  411. package/dist/session/daemon-state.js +185 -0
  412. package/dist/session/external-tool-coordinator.js +88 -0
  413. package/dist/session/external-tool-request.js +52 -0
  414. package/dist/session/lane-owner.js +116 -0
  415. package/dist/session/paths.js +71 -1
  416. package/dist/session/runtime-lifecycle.js +225 -0
  417. package/dist/session/runtime-shutdown.js +95 -0
  418. package/dist/session/server.js +1194 -8
  419. package/dist/session/session-health.js +27 -0
  420. package/dist/shared/agent-text.js +29 -1
  421. package/dist/shared/errors.js +496 -30
  422. package/dist/shared/event-loop.js +6 -1
  423. package/dist/shared/hints.js +37 -1
  424. package/dist/shared/metrics.js +43 -1
  425. package/dist/shared/presentation.js +69 -4
  426. package/dist/shared/stdin-examples.js +77 -3
  427. package/dist/shared/stdout.js +6 -2
  428. package/dist/shared/types.js +23 -1
  429. package/dist/tool-runtime/runtime-tools.js +120 -0
  430. package/dist/topology/availability.js +663 -0
  431. package/dist/topology/cache.js +130 -0
  432. package/dist/topology/candidates.js +372 -0
  433. package/dist/topology/core.js +903 -0
  434. package/dist/topology/dependency-snapshot.js +189 -0
  435. package/dist/topology/model.js +2 -0
  436. package/dist/topology/scope.js +100 -0
  437. package/dist/topology/ts-oracle-batch.js +529 -0
  438. package/dist/topology/ts-oracle-host.js +69 -0
  439. package/dist/topology/ts-oracle-model.js +2 -0
  440. package/dist/topology/ts-oracle.js +224 -0
  441. package/dist/topology/tsconfig-loader.js +105 -0
  442. package/dist/topology/workspace-project-index.js +542 -0
  443. package/dist/tracing/config.js +192 -2
  444. package/dist/tracing/failure-summary.js +100 -0
  445. package/dist/tracing/trace.js +318 -5
  446. package/dist/tsc-wrapper/core.js +697 -0
  447. package/dist/workers/control-plane/aib-control-plane-worker.cjs +80 -0
  448. package/dist/workers/control-plane/client-config.default.json +3 -0
  449. package/dist/workers/lexical-worker-child.js +27 -0
  450. package/dist/workers/lexical-worker-manager.js +394 -0
  451. package/dist/workers/lexical-worker-protocol.js +2 -0
  452. package/dist/workers/lexical-worker-runtime.js +25 -0
  453. package/dist/workers/owned-one-shot-process.js +115 -0
  454. package/dist/workers/product-storage.js +23 -0
  455. package/dist/workers/registry.js +241 -0
  456. package/package.json +8 -11
  457. package/runtimes/tools/rg/darwin-arm64/rg +0 -0
  458. package/runtimes/tools/rg/darwin-x64/rg +0 -0
  459. package/runtimes/tools/rg/linux-arm64/rg +0 -0
  460. package/runtimes/tools/rg/linux-x64/rg +0 -0
  461. package/runtimes/tools/rg/manifest.json +36 -0
  462. package/runtimes/tools/rg/win32-x64/rg.exe +0 -0
  463. package/runtimes/tools/rtk/darwin-arm64/rtk +0 -0
  464. package/runtimes/tools/rtk/darwin-x64/rtk +0 -0
  465. package/runtimes/tools/rtk/linux-arm64/rtk +0 -0
  466. package/runtimes/tools/rtk/linux-x64/rtk +0 -0
  467. package/runtimes/tools/rtk/manifest.json +36 -0
  468. package/runtimes/tools/rtk/win32-x64/rtk.exe +0 -0
  469. package/scripts/postinstall.cjs +29 -29
  470. package/scripts/provision-runtime.cjs +411 -459
  471. package/dist/client/http-client.js +0 -1
  472. package/dist/client/transport-options.js +0 -1
  473. package/dist/client/websocket-client.js +0 -1
  474. package/dist/commands/entity-resolution.js +0 -1
  475. package/dist/commands/inspect-symbol-query.js +0 -1
  476. package/dist/commands/list-instances.js +0 -1
  477. package/dist/commands/module-plan-command.js +0 -1
  478. package/dist/commands/move-command.js +0 -1
  479. package/dist/commands/move-to-file.js +0 -2
  480. package/dist/commands/ping.js +0 -1
  481. package/dist/commands/refactor-command.js +0 -1
  482. package/dist/commands/rename-command.js +0 -1
  483. package/dist/commands/runtime-command.js +0 -4
  484. package/dist/commands/runtime-info.js +0 -1
  485. package/dist/commands/validate-module-plan.js +0 -2
  486. package/dist/compatibility/policy.js +0 -1
  487. package/dist/config/auto-start-ide.js +0 -1
  488. package/dist/discovery/registry.js +0 -1
  489. package/dist/discovery/select-instance.js +0 -1
  490. package/dist/help/docs/mutation.md +0 -50
  491. package/dist/help/docs/refactor.batch.md +0 -44
  492. package/dist/help/dsl/docs/mutation.md +0 -50
  493. package/dist/help/dsl/docs/refactor.batch.md +0 -44
  494. package/dist/help/dsl/topics/mutation.md +0 -48
  495. package/dist/help/dsl/topics/refactor.batch.md +0 -33
  496. package/dist/help/json/bootstrap.md +0 -1085
  497. package/dist/help/json/docs/basics.md +0 -15
  498. package/dist/help/json/docs/config-setup.aliases.md +0 -56
  499. package/dist/help/json/docs/config-setup.excludes.md +0 -45
  500. package/dist/help/json/docs/config-setup.import-normalize.md +0 -86
  501. package/dist/help/json/docs/config-setup.import-rules.md +0 -96
  502. package/dist/help/json/docs/config-setup.tsconfigs.md +0 -33
  503. package/dist/help/json/docs/dsl.md +0 -25
  504. package/dist/help/json/docs/first-setup.md +0 -292
  505. package/dist/help/json/docs/help-format.md +0 -9
  506. package/dist/help/json/docs/help-protocol.md +0 -26
  507. package/dist/help/json/docs/imports.normalize.md +0 -47
  508. package/dist/help/json/docs/inspect.code.md +0 -41
  509. package/dist/help/json/docs/inspect.cycles.md +0 -38
  510. package/dist/help/json/docs/inspect.deps.md +0 -46
  511. package/dist/help/json/docs/inspect.duplicates.md +0 -65
  512. package/dist/help/json/docs/inspect.exports.md +0 -40
  513. package/dist/help/json/docs/inspect.file.md +0 -38
  514. package/dist/help/json/docs/inspect.graph.md +0 -139
  515. package/dist/help/json/docs/inspect.imports.md +0 -15
  516. package/dist/help/json/docs/inspect.md +0 -88
  517. package/dist/help/json/docs/inspect.members.md +0 -32
  518. package/dist/help/json/docs/inspect.tree.md +0 -32
  519. package/dist/help/json/docs/inspect.usages.md +0 -61
  520. package/dist/help/json/docs/modulePlan.md +0 -73
  521. package/dist/help/json/docs/move.md +0 -56
  522. package/dist/help/json/docs/mutation.md +0 -65
  523. package/dist/help/json/docs/patterns.md +0 -76
  524. package/dist/help/json/docs/prefs.md +0 -40
  525. package/dist/help/json/docs/qr.md +0 -37
  526. package/dist/help/json/docs/quick-map.md +0 -30
  527. package/dist/help/json/docs/refactor.batch.md +0 -72
  528. package/dist/help/json/docs/rename.md +0 -47
  529. package/dist/help/json/docs/reveal.md +0 -30
  530. package/dist/help/json/docs/selectors.md +0 -23
  531. package/dist/help/json/docs/session.md +0 -77
  532. package/dist/help/json/docs/view.md +0 -30
  533. package/dist/help/json/full.md +0 -1085
  534. package/dist/help/json/snippets/agents.md +0 -14
  535. package/dist/help/json/topics/basics.md +0 -13
  536. package/dist/help/json/topics/config-setup.aliases.md +0 -54
  537. package/dist/help/json/topics/config-setup.excludes.md +0 -43
  538. package/dist/help/json/topics/config-setup.import-normalize.md +0 -84
  539. package/dist/help/json/topics/config-setup.import-rules.md +0 -94
  540. package/dist/help/json/topics/config-setup.tsconfigs.md +0 -31
  541. package/dist/help/json/topics/dsl.md +0 -23
  542. package/dist/help/json/topics/first-setup.md +0 -290
  543. package/dist/help/json/topics/help-format.md +0 -7
  544. package/dist/help/json/topics/help-protocol.md +0 -24
  545. package/dist/help/json/topics/imports.normalize.md +0 -45
  546. package/dist/help/json/topics/inspect.code.md +0 -39
  547. package/dist/help/json/topics/inspect.cycles.md +0 -36
  548. package/dist/help/json/topics/inspect.deps.md +0 -44
  549. package/dist/help/json/topics/inspect.duplicates.md +0 -37
  550. package/dist/help/json/topics/inspect.exports.md +0 -38
  551. package/dist/help/json/topics/inspect.file.md +0 -36
  552. package/dist/help/json/topics/inspect.graph.md +0 -137
  553. package/dist/help/json/topics/inspect.imports.md +0 -13
  554. package/dist/help/json/topics/inspect.md +0 -86
  555. package/dist/help/json/topics/inspect.members.md +0 -30
  556. package/dist/help/json/topics/inspect.tree.md +0 -22
  557. package/dist/help/json/topics/inspect.usages.md +0 -59
  558. package/dist/help/json/topics/modulePlan.md +0 -60
  559. package/dist/help/json/topics/move.md +0 -46
  560. package/dist/help/json/topics/mutation.md +0 -63
  561. package/dist/help/json/topics/patterns.md +0 -74
  562. package/dist/help/json/topics/prefs.md +0 -38
  563. package/dist/help/json/topics/qr.md +0 -35
  564. package/dist/help/json/topics/quick-map.md +0 -28
  565. package/dist/help/json/topics/refactor.batch.md +0 -61
  566. package/dist/help/json/topics/rename.md +0 -42
  567. package/dist/help/json/topics/reveal.md +0 -28
  568. package/dist/help/json/topics/selectors.md +0 -21
  569. package/dist/help/json/topics/session.md +0 -59
  570. package/dist/help/json/topics/view.md +0 -28
  571. package/dist/help/topics/mutation.md +0 -48
  572. package/dist/help/topics/refactor.batch.md +0 -33
  573. package/dist/ide-launch/common.cjs +0 -162
  574. package/dist/managed-host/extension-vsix-resolver.js +0 -1
  575. package/dist/managed-host/manage-serve-web-host.cjs +0 -141
  576. package/dist/managed-host/serve-web-autostart.js +0 -1
  577. package/dist/managed-host/serve-web-host.cjs +0 -1904
  578. package/dist/runtime/managed-runtime-provisioning.js +0 -1
  579. package/dist/shared/diagnostic-catalog.js +0 -1
  580. package/dist/shared/diagnostics.js +0 -1
  581. package/dist/shared/operations.js +0 -1
  582. package/dist/shared/protocol.js +0 -1
  583. package/dist/shared/routes.js +0 -1
  584. package/extension/vscode-refactor-bridge-extension.vsix +0 -0
  585. package/runtimes/launcher/linux-x64/aib +0 -0
  586. package/runtimes/launcher/win-x64/aib.exe +0 -0
package/dist/help/full.md CHANGED
@@ -6,12 +6,12 @@ It can inspect symbols, usages, dependencies, duplicates, focused code, and run
6
6
  aib is designed for agent workflows:
7
7
  batch requests, compact text output, session handles, and reusable artifacts.
8
8
 
9
- Inline commands omit the aib prefix.
10
- When you see:
11
- session prefs get
12
-
13
- Run:
14
- aib session prefs get
9
+ Inline commands omit the aib prefix.
10
+ When you see:
11
+ session clear
12
+
13
+ Run:
14
+ aib session clear
15
15
 
16
16
  Stdin examples show command and input separately to avoid shell-specific syntax.
17
17
  Stdin Run lines include the aib prefix to avoid confusion.
@@ -30,50 +30,18 @@ Prefer batch DSL instead of one-off inline calls.
30
30
  One request can inspect/mutate several files/entities and save reusable artifacts when supported.
31
31
  Use one-off commands only for small checks/changes.
32
32
 
33
- For mutations, aib asks TS/IDE refactors to update affected references and imports.
33
+ For mutations, aib asks TypeScript semantic refactors to update affected references and imports.
34
34
  After a successful mutation, do not manually patch the same imports unless aib reports a follow-up or the build/checks show a real issue.
35
35
 
36
- Working patterns
37
-
38
- Help refresh
39
-
40
- After context compaction, always run:
41
- aib help help-protocol quick-map
42
- aib config aliases
43
-
44
- Use focused help when you would otherwise guess how a known AIB capability works.
45
-
46
- Reread bootstrap when you need to restore the overall AIB workflow faster than piecing it together from focused topics.
47
- If you just reread bootstrap, do not also read focused topics unless you need details that bootstrap does not cover.
48
-
49
- Do not reread bootstrap automatically if focused help is enough.
50
- When refreshing multiple areas, request them together instead of one by one.
51
-
52
- Example:
53
- aib help patterns mutation inspect inspect.file inspect.code imports.normalize
54
-
55
- Use aib before broad file reads when the question is about TS/JS structure, references, dependencies, or focused code.
56
- Use qr for cross-OS quick reads of text files, logs, JSON, scripts, and line windows.
57
- It is not a replacement for inspect.
58
- Use normal text search when the question is just text.
59
-
60
- For a first pass in a new codebase, map directories before reading files:
61
-
62
- tree src depth=5 +onlyDirs limit=200
63
-
64
- Start compact for broad scans.
65
- Use summary, locations, or local graph views first when output could be large.
66
- Expand to code or wider graph views only for the parts that matter now.
67
- If output hides data and shows `view: aib:res_<id>`, use `aib view ...` to fetch only the hidden part instead of repeating the original request.
68
-
69
- Compact output is a starting point, not a substitute for needed code.
36
+ Working patterns
37
+
38
+ Use aib before broad file reads when the question is about TS/JS structure, references, dependencies, or focused code.
39
+ If output hides data and shows `view: aib:res_<id>`, use `aib view ...` to fetch only the hidden part instead of repeating the original request.
40
+
41
+ Compact output is a starting point, not a substitute for needed code.
70
42
  Fetch exact code when correctness depends on implementation details.
71
43
 
72
- Use prefs when the current phase repeats the same output shape.
73
- Turn details off when they stop helping.
74
- Turn them back on when they matter.
75
-
76
- For mutation commands, set the shell/tool harness timeout to 3 minutes.
44
+ Set the command timeout to 5 minutes for AIB requests.
77
45
 
78
46
  If a mutation command times out or returns no final output, use:
79
47
 
@@ -81,38 +49,37 @@ aib execution status last
81
49
 
82
50
  This is an escape hatch for recovering the latest mutation status/result.
83
51
 
84
- After reading bootstrap for the first time in a repo, run:
85
-
86
- aib config
87
-
88
- Use the output as the repo-local AIB map:
89
- - pathAliases show short paths to use in AIB requests;
90
- - importRules show how move/modulePlan should create imports;
91
- - importNormalize shows defaults for explicit imports normalize;
92
- - excludes show which noise is intentionally hidden from tree/graph/sync.
93
-
94
- If pathAliases are missing, stale, or weak for repeated paths, run:
95
- aib help config-setup.aliases
96
-
97
- If move/modulePlan imports do not match the repo style, run:
98
- aib help config-setup.import-rules
99
-
100
- If you are about to change import style across files, add or adopt tsconfig aliases, or clean imports repeatedly, run:
101
- aib help config-setup.import-normalize
102
-
103
- If tree/graph output includes known repo noise, run:
104
- aib help config-setup.excludes
105
-
106
- If sync or reveal shows too many visible TypeScript configs, run:
52
+ After reading bootstrap for the first time in a repo, run:
53
+
54
+ aib config; aib help help-protocol recipes rules
55
+
56
+ Use the output as the repo-local AIB map:
57
+ - pathAliases show short paths to use in AIB requests;
58
+ - importRules show how move/modulePlan should create imports;
59
+ - importNormalize shows defaults for explicit imports normalize;
60
+ - excludes show which noise is intentionally hidden from tree/graph/sync.
61
+
62
+ If pathAliases are missing, stale, or weak for repeated paths, run:
63
+ aib help config-setup.aliases
64
+
65
+ If move/modulePlan imports do not match the repo style, run:
66
+ aib help config-setup.import-rules
67
+
68
+ If you are about to change import style across files, add or adopt tsconfig aliases, or clean imports repeatedly, run:
69
+ aib help config-setup.import-normalize imports.normalize
70
+
71
+ If tree/graph output includes known repo noise, run:
72
+ aib help config-setup.excludes
73
+
74
+ If sync or reveal shows too many visible TypeScript configs, run:
107
75
  aib help config-setup.tsconfigs
108
76
 
109
77
  Example aib.json config:
110
78
 
111
79
  {
112
80
  "pathAliases": {
113
- "svc": "src/services",
114
- "cli": "packages/cli/src",
115
- "ext": "packages/extension/src"
81
+ "svc": "src/services",
82
+ "cli": "packages/cli/src"
116
83
  },
117
84
  "importRules": [
118
85
  {
@@ -141,17 +108,18 @@ Use them to reduce input tokens for repeated inspect and mutation work.
141
108
  Aliases are for aib request paths. They do not change TypeScript imports by themselves.
142
109
  For import style after mutations, use importRules.
143
110
 
144
- importRules control imports created or expanded by move/modulePlan mutation cleanup.
145
- They do not rewrite the whole project.
146
-
147
- AIB starts from IDE/TS import preferences.
148
- For mutation cleanup, matching importRules in aib.json take priority.
149
-
150
- Do not assume IDE/TS defaults match the repo style.
111
+ importRules control imports created or expanded by move/modulePlan mutation cleanup.
112
+ They do not rewrite the whole project.
113
+
114
+ A non-empty importRules block in aib.json is the complete AIB import-style authority.
115
+ Omitted fields keep TypeScript/AIB defaults; they are not filled from editor settings.
116
+ When importRules is empty, AIB may reuse explicit workspace-local IDE/TS preferences.
117
+
118
+ Do not assume IDE/TS defaults match the repo style.
151
119
  Set importRules before large move/modulePlan work so imports do not need manual cleanup.
152
120
 
153
- importNormalize defines default rules for explicit aib imports normalize commands.
154
-
121
+ importNormalize defines default rules for explicit aib imports normalize commands.
122
+
155
123
  It does not run automatically during move/modulePlan; use importRules for mutation-time cleanup.
156
124
 
157
125
  AIB has four config exclude fields:
@@ -169,31 +137,13 @@ Tree excludes affect directory/file discovery output.
169
137
  AIB syncs and watches visible tsconfigs.
170
138
  sync.tsconfig.exclude affects which TypeScript configs AIB syncs and watches.
171
139
 
172
- Important: leave feedback while working.
173
-
174
- aib is built for agents. Agent feedback is the main signal for improving output, docs, mutations, and token efficiency.
175
-
176
- Use feedback when something is wrong, unclear, noisy, or could be more efficient.
177
-
178
- Format:
179
- feedback "kind | message"
180
- feedback "kind | topic | message"
181
-
182
- Kinds:
183
- bug, confusion, friction, idea, other
184
-
185
- Topic is optional. Choose any short topic that helps classify the feedback.
186
-
187
- Example:
188
- feedback "friction | imports | normalize required manual cleanup"
189
-
190
140
  Session
191
141
 
192
142
  Start by creating or selecting your session.
193
143
  Create it once, then reuse it.
194
144
  Do not create a new session for every command or subtask.
195
145
 
196
- Session stores saved artifacts, aliases, and prefs.
146
+ Session stores saved artifacts and aliases.
197
147
 
198
148
  Prefer short session names:
199
149
  aa, tr, qa, a2
@@ -221,39 +171,6 @@ Reusable index handles look like:
221
171
 
222
172
  Pass index handles back to the matching inspect command with `--from-file` or `from` in DSL.
223
173
 
224
- Prefs
225
-
226
- Prefs change defaults for the active session.
227
- Use them when you want repeated CLI behavior without repeating request fields.
228
-
229
- Set prefs:
230
- session prefs set <name> <value> [<name> <value>...]
231
-
232
- Example:
233
- session prefs set inspect.graph.hubs false inspect.graph.leaves false
234
-
235
- Show prefs:
236
- session prefs get [prefix] [--all]
237
-
238
- By default, get shows session overrides.
239
- --all includes defaults.
240
- prefix filters keys.
241
-
242
- boolean = true|false
243
- N = integer
244
-
245
- Available prefs:
246
- inspect.code.maxNonEmptyLines N
247
- inspect.usages.maxLocations N
248
- inspect.usages.maxCodeBlocks N
249
- inspect.members.maxItems N
250
- inspect.members.all boolean
251
- inspect.graph.hubs boolean
252
- inspect.graph.entrypoints boolean
253
- inspect.graph.leaves boolean
254
- inspect.graph.edges boolean
255
- inspect.graph.symbolUsage boolean
256
-
257
174
  Selectors identify symbols when names are ambiguous.
258
175
  Use plain names when they are unambiguous.
259
176
  Use selectors when aib reports ambiguity or when different symbol kinds share a name.
@@ -272,8 +189,9 @@ c-Name class
272
189
  i-Name interface
273
190
  t-Name type
274
191
  v-name variable
275
- e-Name enum
276
- m-name method, usually with parent
192
+ e-Name enum
193
+ ns-Name namespace
194
+ m-name method, usually with parent
277
195
  p-name property, usually with parent
278
196
 
279
197
  DSL request model:
@@ -286,9 +204,10 @@ DSL request model:
286
204
  - For one-off file operations, pass the path directly.
287
205
 
288
206
  Syntax:
289
- @file <path> default file
290
- @source <path> default sourceFile for mutations
291
- op arg arg key=value request
207
+ @file <path> default file
208
+ @source <path> default sourceFile for mutations
209
+ @base <dir> default base dir for file mutations
210
+ op arg arg key=value request
292
211
  +flag boolean true
293
212
  -flag boolean false
294
213
  >name save reusable artifact when supported
@@ -313,18 +232,19 @@ map: learn what exists and how it connects
313
232
  focus: choose files/entities/usages that matter
314
233
  code: fetch exact code needed
315
234
 
316
- Choose inspect operation:
317
-
318
- declarations in one file file
319
- static/dynamic imports imports
320
- public API exports
321
- methods/properties of parent members
322
- exact implementation code
323
- outgoing deps of one entity deps
324
- incoming references/callers usages
325
- file/module connectivity graph
326
- compact directory layout tree
327
- repeated declarations/helpers duplicates
235
+ Choose inspect operation:
236
+
237
+ declarations in one file file
238
+ static/dynamic imports imports
239
+ public API exports
240
+ methods/properties of parent members
241
+ exact implementation code
242
+ outgoing deps of one entity deps
243
+ incoming references/callers usages
244
+ file/module connectivity graph
245
+ compact directory layout tree
246
+ path alias candidates aliasCandidates
247
+ repeated declarations/helpers duplicates
328
248
  local import cycles cycles
329
249
 
330
250
  Cycles are available but not expanded in bootstrap:
@@ -333,16 +253,16 @@ aib help inspect.cycles
333
253
  Prefer one batch DSL request for related questions.
334
254
 
335
255
  Batch example:
336
-
337
- Run:
338
- aib inspect --stdin
339
-
256
+
257
+ Run:
258
+ aib inspect --stdin
259
+
340
260
  Input:
341
261
  @file @svc/service.ts
342
262
  file
343
263
  file @svc/serviceB.ts
344
264
  members Service
345
- code entities=[Service.{render,reset},normalize]
265
+ code entities=[Service.{render,reset},normalize,default,IIFE#1]
346
266
  code @svc/serviceC.ts ServiceC -ranges
347
267
  usages target=@svc/service.ts normalize scope=src detail=loc
348
268
  duplicates scope=src/scripts detail=sum limit=20
@@ -382,33 +302,19 @@ Use file to map top-level declarations physically present in one file.
382
302
  Exported declarations are marked in the output.
383
303
  It shows what lives in the file before you decide whether to read code.
384
304
 
385
- Good for:
386
- - mapping an unfamiliar file
387
- - listing top-level declarations
305
+ Good for:
306
+ - mapping a file
307
+ - listing top-level declarations
308
+ - seeing default exports, decorators, IIFEs, and runtime calls
388
309
  - checking whether a file contains real declarations or mostly re-exports
389
310
 
390
- Do not add limit just in case.
391
- file output is compact and most files have far fewer than 100 top-level declarations.
392
- Use limit only after file output is actually too large.
393
-
394
- Controls:
395
- file, ranges, localOnly
396
-
397
- Specific:
398
- localOnly show local declarations and reexports without resolving facade API; +localOnly
399
-
400
- Defaults: +ranges
401
- Use -ranges to show names without ranges.
402
-
403
311
  Run:
404
312
  aib inspect --stdin
405
313
 
406
- Input:
407
- file @svc/service.ts +localOnly
314
+ Input:
315
+ file @svc/service.ts
408
316
  file src/index.ts
409
317
 
410
- inspect file src/service.ts [--ranges] [--local-only]
411
-
412
318
  Inspect Imports
413
319
 
414
320
  Use imports to inspect static and dynamic imports in a file.
@@ -481,50 +387,34 @@ members @svc/service.ts entities=[Service,ServiceOptions] +all +ranges
481
387
 
482
388
  inspect members src/service.ts Service [--limit N] [--offset N] [--all] [--ranges]
483
389
 
484
- Inspect Code
485
-
486
- Use code to fetch exact declarations or members.
487
- It returns focused code without reading the whole file.
488
-
489
- Good for:
490
- - reading a known function, class, method, or declaration
491
- - fetching several related code blocks in one request
492
- - keeping context focused on code needed for the current task
493
-
494
- Controls:
495
- file, entity, entities, parent, show, ranges
496
-
497
- Specific:
498
- show include source output
499
-
500
- Defaults: +show +ranges
501
- Use -show for names/ranges only.
502
- Use -ranges for source without ranges.
503
-
390
+ Inspect Code
391
+
392
+ Use code when you know file path and declaration/member selector, but do not know ranges.
393
+
504
394
  Run:
505
395
  aib inspect --stdin
506
396
 
507
- Input:
508
- code @svc/service.ts Service.{render,reset} normalize
509
- code @svc/serviceB.ts ServiceB.{constructor}
397
+ Input:
398
+ code @svc/service.ts Service.{render,reset} normalize
399
+ code @svc/serviceB.ts ServiceB.{constructor} default
510
400
 
511
401
  Inspect Deps
512
402
 
513
403
  Use deps to see what one entity depends on inside its file.
514
404
  It separates type-only dependencies from runtime value dependencies.
515
405
 
516
- Good for:
517
- - checking what a symbol may need when moved or extracted
518
- - spotting nearby types, constants, or helpers tied to one entity
519
- - deciding whether one symbol is standalone or tied to nearby declarations
406
+ Good for:
407
+ - checking what a symbol may need when moved or extracted
408
+ - spotting nearby types, constants, or helpers tied to one entity
409
+ - deciding whether one symbol is standalone or tied to nearby declarations
520
410
  - debugging mutation failures caused by local dependency shape
521
411
 
522
412
  Controls:
523
413
  file, entity, entities, parent
524
414
 
525
- Run:
526
- aib inspect --stdin
527
-
415
+ Run:
416
+ aib inspect --stdin
417
+
528
418
  Input:
529
419
  deps @svc/service.ts entities=[createService,normalize,Service.{render,reset}]
530
420
  deps @svc/serviceB.ts ServiceB.{constructor} getConfig
@@ -560,71 +450,14 @@ usages target=@svc/service.ts entities=[createService,normalize,Service.{render,
560
450
  Expand saved usages when needed:
561
451
  inspect usages --from-file aib:usages:service-usages --focus createService --detail code --limit 20
562
452
 
563
- Inspect Graph
564
-
565
- Use graph when the question is about file/module boundaries, not one symbol.
566
- It builds a reusable map of local import relationships, then lets you focus files inside that map.
567
-
568
- Good for:
569
- - mapping an unfamiliar directory or subsystem
570
- - seeing which files are hubs, entrypoints, or leaves
571
- - comparing a few known areas without mapping all src
572
- - choosing files/entities to inspect next
573
- - checking module boundaries when ownership is unclear
574
-
575
- Use deps for one entity's outgoing dependencies.
576
- Use usages for real incoming references.
577
- Use graph for file-level connectivity.
578
-
579
- Model:
580
- build graph: scope + view + save
581
- query graph: from + focus + output toggles
582
-
583
- view controls what enters the saved graph.
584
- focus only expands details for files already inside it.
585
- If focus misses a file, rebuild with wider scope or view.
586
-
587
- Default view:
588
- directory scope -> local
589
- file or multiple scopes -> neighbors
590
- from -> uses the saved graph
591
-
592
- Views:
593
- local only files inside scope; best directory map
594
- neighbors direct import neighborhood; best file-centered map
595
- expanded wider neighborhood; more output
596
-
597
- Scope choice:
598
- scope=src creates a broad reusable map for src.
599
- scope=src/services is cheaper for local work.
600
- scope=[src/services,src/components] compares known areas without mapping all src.
601
-
602
- After you understand which graph sections matter, hide the rest with flags or prefs.
603
- Graph can be noisy; shape it for the current task.
604
-
605
- Controls:
606
- scope, view, from, focus, symbolUsage, edges, hubs, entrypoints, leaves, exclude, save
607
-
608
- Specific:
609
- view local|neighbors|expanded
610
- from reuse saved graph index; from=aib:graph:<name>
611
- focus focus a file inside the graph; focus=path
612
- symbolUsage show imported symbols on edges; +symbolUsage
613
-
614
- edges/hubs/entrypoints/leaves output section toggles; +name or -name
615
-
616
- Run:
617
- aib inspect --stdin
618
-
619
- Input:
620
- graph scope=@svc view=local >services-graph
621
- graph from=aib:graph:services-graph focus=[@svc/users.ts,@svc/admins.ts] +symbolUsage -edges
453
+ Inspect Graph
622
454
 
623
- Focus saved graph later:
624
- inspect graph --from-file aib:graph:services-graph --focus @svc/messages.ts --focus @svc/posts.ts --symbol-usage
455
+ Graph is a strong tool for file/module connectivity.
456
+ Use it when the question is about boundaries, ownership, hubs, entrypoints, or how files relate through imports.
457
+ Do not use graph for one symbol; use deps/usages instead.
625
458
 
626
- Inline graph focus can add focus and symbolUsage.
627
- Use DSL, request files, or prefs to hide sections such as edges/hubs/entrypoints/leaves.
459
+ Focused topic:
460
+ aib help inspect.graph
628
461
 
629
462
  Inspect Tree
630
463
 
@@ -651,81 +484,68 @@ tree src depth=4 +onlyDirs limit=200 +ned +nec
651
484
  tree @svc depth=3 only=["**/*.ts"] exclude=["**/*.test.ts","**/* copy.ts"]
652
485
  tree src depth=3 only=["src/services/**"] limit=80
653
486
 
654
- Inspect Duplicates
655
-
487
+ Inspect Duplicates
488
+
656
489
  Use duplicates to find repeated top-level names and exact declaration copies.
657
- It is useful when many files may contain copied local helpers, duplicated types, or repeated declarations.
658
-
659
- Start with summary for broad scopes.
660
- Use locations when you need files/lines.
661
- Use code only for duplicate names you are ready to inspect.
490
+
491
+ Focused topic:
492
+ aib help inspect.duplicates
662
493
 
663
- Controls:
664
- scope, detail, limit, offset, kinds, entities, exclude, pathExclude
494
+ Mutation
665
495
 
666
- Specific:
667
- entities only these duplicate names/selectors
668
- exclude skip these names/selectors
669
- pathExclude skip files or path/glob-like patterns
670
- kinds selector kinds, e.g. f, t, c, etc.; kinds=[...]
496
+ Mutation commands change code and files through TS/IDE-backed operations.
497
+ Successful mutations update affected references and imports.
671
498
 
672
- Run:
673
- aib inspect --stdin
499
+ Semantic mutations change TypeScript symbols/declarations.
500
+ File mutations change file layout.
674
501
 
675
- Input:
676
- duplicates scope=src detail=sum exclude=[config,baseUrl] kinds=[t,i] limit=20
677
- duplicates scope=@svc detail=loc pathExclude=[src/generated,"**/* copy.ts"] limit=20
502
+ After a successful mutation, do not manually patch the same imports unless aib reports a follow-up or checks show a real issue.
503
+
504
+ If mutation imports do not match the repo style, run:
505
+ aib help config-setup.import-rules
678
506
 
679
- Mutation
507
+ AIB mutations are designed to reduce manual checking.
508
+ Your job is to express the intent in DSL.
509
+ AIB's job is to convert that intent into code changes.
680
510
 
681
- Mutation commands change code through TS/IDE refactors.
682
- Successful mutations update affected references and imports.
683
-
684
- After a successful mutation, do not manually patch the same imports unless aib reports a follow-up or checks show a real issue.
511
+ The DSL inside the request describes the intent:
512
+ rename rename TypeScript symbols
513
+ move move TypeScript declarations into target files
514
+ moveToDir move whole files into directories
515
+ renameFile rename whole files
516
+ module full-file split: move all declarations from one source into target modules
685
517
 
686
- If move/modulePlan imports do not match the repo style, run:
687
- aib help config-setup.import-rules
518
+ Mix rename, move, moveToDir, and renameFile when they belong to the same workflow.
519
+ Run module splits as a separate mutate request.
688
520
 
689
- AIB mutations are designed to reduce manual checking.
690
- Your job is to express the intent in DSL.
691
- AIB's job is to convert that intent into code changes.
692
-
693
- Do not read all changed files just because a mutation touched them.
694
- That defeats the purpose of using AIB for mechanical refactors.
695
-
696
- If the command succeeds, the requested mechanical change was applied.
521
+ Do not read all changed files just because a mutation touched them.
522
+ That defeats the purpose of using AIB for mechanical refactors.
523
+
524
+ When the command completes, use its output as the source of truth for what changed and what remains.
697
525
  After failure or partial success, use the output to decide the next request.
698
526
 
699
- When running mutation commands, set the harness timeout to 3 minutes.
527
+ Set the command timeout to 5 minutes for AIB requests.
700
528
  If the harness stops waiting before final output appears, recover with:
701
529
 
702
530
  aib execution status last
703
531
 
704
- Modes:
705
- preview inspect planned edits, then apply by id
706
- apply write a previewed change
707
- execute write immediately
708
-
709
- Use execute for routine rename/move/modulePlan requests.
710
-
711
- Use preview/apply when you are learning a mutation command, or when one request contains a large multi-step change that you want to inspect before writing files.
712
- Typical examples: a huge modulePlan or refactor batch.
713
-
714
- preview/apply uses more tool calls and more output tokens.
715
- preview validates input and planned edits, but writing files can still hit a TS/IDE refactor error.
716
- execute writes immediately and reports what changed.
717
-
718
- If a mutation cannot be completed, aib reports the failed part.
532
+ Modes:
533
+ preview review DSL intent, then apply by id
534
+ apply execute from preview
535
+ execute execute immediately
719
536
 
720
- Prefer batch DSL for related mutations.
721
- One request can describe several related changes.
537
+ Use preview/apply when you are learning a mutation command.
538
+ Use execute for routine requests.
722
539
 
723
- When a batch mutation partly fails, split the next request by failure type.
724
-
725
- If the failure is wrong input, fix the selector/entity/file and run the corrected remaining intent.
726
- If TS/IDE cannot apply one part of the batch, do not treat the whole intent as failed.
727
- Run the next request without the failed part and let aib report any later failures.
728
- Then decide whether failed parts need smaller requests or manual fallback.
540
+ preview/apply uses more tool calls and more output tokens.
541
+ preview checks the DSL intent; execute/apply writes files and can still hit mutation errors.
542
+ execute writes immediately and reports what changed.
543
+
544
+ Prefer one mutate DSL request for related changes.
545
+ For mixable operations, batch the ordered workflow instead of sending one command per symbol or file.
546
+
547
+ If a mutation cannot be fully completed, aib reports what failed, what was applied, and what did not run.
548
+ Fix wrong input before retrying; do not repeat provider/manual-extraction failures unchanged.
729
549
 
730
550
  Rename
731
551
 
@@ -733,129 +553,96 @@ Rename is for semantic symbol renames.
733
553
  It follows TypeScript references.
734
554
  It is not plain-text replacement.
735
555
 
736
- Run:
737
- aib rename execute --stdin
738
-
739
- Input:
740
- @file src/service.ts
556
+ Run:
557
+ aib mutate execute --stdin
558
+
559
+ Input:
560
+ @source src/service.ts
741
561
  rename oldName->newName OldService->NewService
742
562
 
743
563
  Move
744
564
 
745
- Move transfers one or more symbols from one file to another.
746
- Move is semantic; it moves supported declarations and updates affected imports/references.
747
- Use it for focused extraction into a single target file.
748
- For large file splitting across several target files, use modulePlan.
565
+ Move transfers declarations from one source file to target files.
566
+ Move is semantic; it moves supported declarations and updates affected imports/references.
567
+ Use move as the default operation for moving declarations, including multi-target extractions.
749
568
 
750
569
  If imports created by move do not match the repo style, run:
751
570
  aib help config-setup.import-rules
752
571
 
753
- Move several entities into one target:
754
- Run:
755
- aib move toFile execute --stdin
756
-
572
+ Run:
573
+ aib mutate execute --stdin
574
+
757
575
  Input:
758
576
  @source src/service.ts
759
577
  move src/service.helpers.ts: oldHelper OtherHelper
578
+ move src/service.types.ts: ServiceOptions
760
579
 
761
- Module Plan
762
-
763
- modulePlan is for splitting large files into smaller modules.
764
- Use it when a large file should be refactored into several target files.
580
+ Module Plan
765
581
 
766
- modulePlan orchestrates semantic moves and updates affected references/imports.
767
-
768
- If imports created by modulePlan do not match the repo style, run:
769
- aib help config-setup.import-rules
770
-
771
- Use +expectEmpty when your modulePlan intent is to move all declarations out of the source file.
772
- It does not change the move behavior; it only asks output to report remaining source declarations if any remain.
773
- Use it only when remaining declarations would mean the split did not match your intent.
774
- Do not use it for partial extractions.
775
-
776
- Split one large source file into several targets:
777
- Run:
778
- aib modulePlan execute --stdin
582
+ Use module only for a full-file split: moving all declarations from one source file into target modules.
779
583
 
780
- Input:
781
- @source src/large-service.ts +expectEmpty
782
- module src/large-service.types.ts: ServiceOptions ServiceMode
783
- module src/large-service.core.ts: LargeService createLargeService
584
+ Focused topic:
585
+ aib help modulePlan
784
586
 
785
- How inheritance works above:
786
- @source sets the source file once.
787
- +expectEmpty says no declarations should remain in the source after the plan.
788
- Each module line declares one target and the entities that should move there.
587
+ Mixed Mutation
789
588
 
790
- Refactor Batch
589
+ Use one mutate request for one ordered workflow.
590
+ Mix rename, move, moveToDir, and renameFile when they belong to the same workflow.
591
+ Order lines the way the workflow should run.
592
+ Do not include module lines in mixed requests.
791
593
 
792
- refactor batch runs related mutation requests together.
793
- Use it when one workflow needs ordered steps, such as rename plus move.
794
-
795
- Use modulePlan when the main intent is only to split one large file into target modules.
796
- Use refactor batch when the split also includes coordinated renames or mixed mutation steps.
594
+ Run:
595
+ aib mutate execute --stdin
797
596
 
798
- Example: rename and move in one request
799
-
800
- Run:
801
- aib refactor batch execute --stdin
802
-
803
597
  Input:
804
598
  @source src/service.ts
805
- rename oldHelper->newHelper oldType->newType
599
+ rename oldHelper->newHelper AUser->AdminUser
806
600
  move src/service.helpers.ts: newHelper
807
- move src/service.types.ts: newType
601
+ move src/service.types.ts: AdminUser
808
602
 
809
- This keeps related mutation intent together:
810
- rename first, then move the renamed symbols.
603
+ @base src/main
604
+ moveToDir facade: ../services/fileA.ts fileB.ts
605
+ moveToDir ../core/services: fileC.ts classes/main/fileD.ts
811
606
 
812
- Imports Normalize
607
+ @base src
608
+ renameFile svc/ws-cli.ts->cli.ts svc/ws-command.ts->command.ts
813
609
 
814
- Use imports normalize for explicit import-style cleanup.
815
- It rewrites resolved local import/export specifiers inside a chosen file or directory.
816
-
817
- Use importNormalize in aib.json for repeated defaults.
610
+ File Layout
818
611
 
819
- Good for:
820
- - converting one area to aliases or relative imports
821
- - cleaning import style after manual edits or broad refactors
822
- - applying the same import style to a directory without hand-editing files
823
- - applying new tsconfig aliases after they are added
824
-
825
- Controls:
826
- scope file/dir scope to normalize
827
- to relative|alias|shortestAlias
828
- preferAlias select one tsconfig paths pattern when several aliases can resolve the same file
829
- exclude files, directories, or glob-like patterns to skip
830
- all show all planned edits; avoid on broad directory scopes
612
+ Use moveToDir and renameFile when the filesystem layout is the intent.
613
+ Do not change filesystem layout manually.
831
614
 
832
- Run:
833
- aib imports normalize preview --stdin
834
-
835
- Input:
836
- imports.normalize scope=@svc to=shortestAlias exclude=[@svc/generated,"**/* copy.ts"]
837
-
838
- Rewrite imports found inside src/core.
839
- When an imported file can be expressed through @features/*, prefer that alias.
615
+ Focused topics:
616
+ aib help moveToDir renameFile
840
617
 
841
- Input:
842
- imports.normalize scope=src/core to=alias preferAlias=@features/*
618
+ Layout smell trigger:
619
+ If a directory has many related files sharing a prefix, mixed responsibilities, or files that should be grouped by feature, read:
620
+ aib help recipe.file-layout
621
+
622
+ Imports Normalize
623
+
624
+ Use imports normalize for explicit import-style cleanup.
625
+
626
+ Focused topic:
627
+ aib help imports.normalize
628
+
629
+ Import Boundaries
843
630
 
844
- With matching importNormalize config for this scope or a parent scope, use inline CLI commands:
631
+ When you create a barrel/index file and want consumers to import through it,
632
+ or when consumers import through a barrel but should use direct source imports, read:
845
633
 
846
- imports normalize preview @svc
847
- imports normalize execute @svc
634
+ aib help recipe.import-boundary
848
635
 
849
636
  JS/TS compatibility
850
637
 
851
- With tsconfig:
852
- TS/TSX inspect + rename + move + modulePlan
853
- JS/MJS/JSX ESM inspect + rename + move + modulePlan
854
- CJS / JS CommonJS inspect + rename
855
-
856
- Without tsconfig:
857
- JS/MJS/JSX/CJS inspect only
858
- rename/move/modulePlan require tsconfig
638
+ With tsconfig:
639
+ TS/TSX inspect + mutate rename/move/module
640
+ JS/MJS/JSX ESM inspect + mutate rename/move/module
641
+ CJS / JS CommonJS inspect + mutate rename
642
+
643
+ Without tsconfig:
644
+ JS/MJS/JSX/CJS inspect only
645
+ mutate rename/move/module require tsconfig
859
646
 
860
647
  CommonJS means .cjs or module.exports / exports.*.
861
648
 
@@ -896,37 +683,49 @@ Use qr for cross-OS quick reads of text files: ts, js, cmd, sh, json, log, txt,
896
683
  Use it for compact line windows and batching.
897
684
  qr supports AIB path aliases.
898
685
 
899
- It is not a replacement for inspect.
686
+ It is not a replacement for aib inspect in TS/JS cases.
900
687
  Use it as a token-efficient way to read text data when semantic inspect is not needed.
901
688
 
902
689
  For focused text reads, prefer qr over cat/Get-Content/type, especially when aliases, line windows, or batching help.
903
690
  Use shell reads only when piping into shell tooling or qr is unavailable.
904
691
 
905
692
  Controls:
906
- -h N head; first N lines
907
- -t N tail; last N lines
908
- -o N offset; starting line, 1-based
909
- -l N limit; line count for offset reads
910
- -a all; whole file
693
+ h=N head; first N lines
694
+ t=N tail; last N lines
695
+ r=A:B,C:D,E ranges; A with next B lines, C with next D lines, E with default 80 lines
696
+ s=A:B,C:D,E slices; inclusive A through B, C through D, and line E
697
+ all whole file
911
698
 
912
- If no window is provided, qr uses -h 80.
913
- If -a is present, it wins over other window flags.
699
+ If no window is provided, qr uses h=80.
700
+ If all is present, it reads the whole file.
701
+ Avoid `all` for files whose size/content is unknown; it can dump unnecessary context.
702
+ Overlapping windows are merged.
914
703
 
915
- Run:
916
- aib qr --stdin
704
+ Use s= when copying ranges from inspect file.
705
+ Combine windows for the same file instead of repeating the path.
917
706
 
918
- Input:
919
- qr @scripts/a.txt h=80
920
- qr @scripts/b.py o=300 l=50
921
- qr @scripts/c.md t=120
922
- qr @logs/app.log all
707
+ {{qr.inline.examples}}
923
708
 
924
- Inline:
925
- aib qr @scripts/a.txt -h 80
926
- aib qr @scripts/b.py -o 300 -l 50
927
- aib qr @logs/app.log -a
709
+ aib rg
710
+
711
+ Run ripgrep through AIB.
712
+
713
+ Regular rg:
714
+ rg <args>
715
+
716
+ AIB rg:
717
+ aib rg -- <args>
718
+
719
+ Everything after `--` is passed as normal ripgrep arguments.
720
+ Use the same args you would pass to `rg`.
721
+ Use normal paths in input. Do not use AIB path aliases here.
722
+
723
+ Examples:
724
+ rg -n "TODO" src/core
725
+ aib rg -- -n "TODO" src/core
928
726
 
929
- Use stdin for several reads.
727
+ rg -n --column "SomeValue" ws/commands ws/config
728
+ aib rg -- -n --column "SomeValue" ws/commands ws/config
930
729
 
931
730
  Need to see TypeScript configs in the repo:
932
731
  aib reveal tsconfigs