@automaton-labs/aib 0.0.6 → 0.0.7

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 (247) hide show
  1. package/dist/bin/cli.js +4 -2
  2. package/dist/commands/apply-module-plan.js +3 -3
  3. package/dist/commands/background-command.js +2 -0
  4. package/dist/commands/captured-input.js +1 -2
  5. package/dist/commands/config-command.js +2 -2
  6. package/dist/commands/config-output.js +10 -10
  7. package/dist/commands/control-plane-command.js +1 -0
  8. package/dist/commands/declaration-command.js +7 -0
  9. package/dist/commands/declaration-execution-cache.js +1 -0
  10. package/dist/commands/declaration-format.js +1 -0
  11. package/dist/commands/declaration-preview-cache.js +2 -0
  12. package/dist/commands/doctor.js +3 -2
  13. package/dist/commands/execution-command.js +1 -1
  14. package/dist/commands/file-command.js +1 -0
  15. package/dist/commands/file-move-to-dir-execution-cache.js +1 -0
  16. package/dist/commands/file-move-to-dir-preview-cache.js +2 -0
  17. package/dist/commands/file-move-to-dir.js +5 -0
  18. package/dist/commands/file-mutation-runtime.js +1 -0
  19. package/dist/commands/file-refactor-batch-execution-cache.js +1 -0
  20. package/dist/commands/file-refactor-batch-preview-cache.js +2 -0
  21. package/dist/commands/file-refactor-batch.js +5 -0
  22. package/dist/commands/file-rename-execution-cache.js +1 -0
  23. package/dist/commands/file-rename-preview-cache.js +2 -0
  24. package/dist/commands/file-rename.js +5 -0
  25. package/dist/commands/help-command.js +5 -5
  26. package/dist/commands/host-command.js +1 -0
  27. package/dist/commands/inspect-cycles.js +3 -3
  28. package/dist/commands/inspect-format.js +15 -15
  29. package/dist/commands/inspect-tree.js +2 -2
  30. package/dist/commands/inspect.js +12 -12
  31. package/dist/commands/move-to-file.js +2 -2
  32. package/dist/commands/ota-command.js +2 -0
  33. package/dist/commands/quick-read.js +4 -4
  34. package/dist/commands/refactor-batch.js +4 -4
  35. package/dist/commands/rename-entities.js +4 -4
  36. package/dist/commands/result-view.js +6 -5
  37. package/dist/commands/worker-command.js +1 -0
  38. package/dist/config/defaults.js +1 -1
  39. package/dist/config/env-vars.js +1 -1
  40. package/dist/config/path-aliases.js +1 -1
  41. package/dist/config/resolve-command-alias.js +1 -1
  42. package/dist/content/content-bundle.js +1 -1
  43. package/dist/dsl/aib-dsl.js +1 -1
  44. package/dist/dsl/declaration-dsl.js +1 -0
  45. package/dist/dsl/file-move-to-dir-dsl.js +1 -0
  46. package/dist/dsl/file-refactor-batch-dsl.js +1 -0
  47. package/dist/dsl/file-rename-dsl.js +1 -0
  48. package/dist/help/{json/bootstrap.md → bootstrap.bash.md} +214 -392
  49. package/dist/help/bootstrap.md +101 -137
  50. package/dist/help/{json/full.md → bootstrap.pwsh.md} +214 -392
  51. package/dist/help/docs/dsl.md +4 -3
  52. package/dist/help/docs/file.move.md +46 -0
  53. package/dist/help/docs/file.rename.md +35 -0
  54. package/dist/help/docs/inspect.code.md +5 -5
  55. package/dist/help/docs/inspect.deps.md +7 -7
  56. package/dist/help/docs/inspect.file.md +2 -1
  57. package/dist/help/docs/inspect.graph.md +3 -3
  58. package/dist/help/docs/inspect.md +5 -5
  59. package/dist/help/docs/mutation.md +23 -13
  60. package/dist/help/docs/patterns.md +1 -5
  61. package/dist/help/docs/qr.md +7 -22
  62. package/dist/help/docs/quick-map.md +1 -0
  63. package/dist/help/docs/recipe.file-layout.md +15 -0
  64. package/dist/help/docs/rg.md +22 -0
  65. package/dist/help/docs/selectors.md +3 -2
  66. package/dist/help/docs/session.md +1 -1
  67. package/dist/help/dsl/bootstrap.bash.md +907 -0
  68. package/dist/help/dsl/bootstrap.md +101 -137
  69. package/dist/help/dsl/bootstrap.pwsh.md +907 -0
  70. package/dist/help/dsl/docs/dsl.md +4 -3
  71. package/dist/help/dsl/docs/file.move.md +46 -0
  72. package/dist/help/dsl/docs/file.rename.md +35 -0
  73. package/dist/help/dsl/docs/inspect.code.md +5 -5
  74. package/dist/help/dsl/docs/inspect.deps.md +7 -7
  75. package/dist/help/dsl/docs/inspect.file.md +2 -1
  76. package/dist/help/dsl/docs/inspect.graph.md +3 -3
  77. package/dist/help/dsl/docs/inspect.md +5 -5
  78. package/dist/help/dsl/docs/mutation.md +23 -13
  79. package/dist/help/dsl/docs/patterns.md +1 -5
  80. package/dist/help/dsl/docs/qr.md +7 -22
  81. package/dist/help/dsl/docs/quick-map.md +1 -0
  82. package/dist/help/dsl/docs/recipe.file-layout.md +15 -0
  83. package/dist/help/dsl/docs/rg.md +22 -0
  84. package/dist/help/dsl/docs/selectors.md +3 -2
  85. package/dist/help/dsl/docs/session.md +1 -1
  86. package/dist/help/dsl/full.md +101 -137
  87. package/dist/help/dsl/help-index.md +44 -0
  88. package/dist/help/dsl/tokens/qr.inline.examples.md +2 -0
  89. package/dist/help/dsl/tokens/stdin.examples.bash.md +8 -0
  90. package/dist/help/dsl/tokens/stdin.examples.pwsh.md +8 -0
  91. package/dist/help/dsl/tokens/stdin.examples.with-qr.bash.md +12 -0
  92. package/dist/help/dsl/tokens/stdin.examples.with-qr.pwsh.md +12 -0
  93. package/dist/help/dsl/topics/dsl.md +4 -3
  94. package/dist/help/dsl/topics/file.move.md +44 -0
  95. package/dist/help/dsl/topics/file.rename.md +33 -0
  96. package/dist/help/dsl/topics/inspect.code.md +5 -5
  97. package/dist/help/dsl/topics/inspect.deps.md +7 -7
  98. package/dist/help/dsl/topics/inspect.file.md +2 -1
  99. package/dist/help/dsl/topics/inspect.graph.md +3 -3
  100. package/dist/help/dsl/topics/inspect.md +5 -5
  101. package/dist/help/dsl/topics/mutation.md +23 -13
  102. package/dist/help/dsl/topics/patterns.md +1 -5
  103. package/dist/help/dsl/topics/qr.md +7 -22
  104. package/dist/help/dsl/topics/quick-map.md +1 -0
  105. package/dist/help/dsl/topics/recipe.file-layout.md +13 -0
  106. package/dist/help/dsl/topics/rg.md +20 -0
  107. package/dist/help/dsl/topics/selectors.md +3 -2
  108. package/dist/help/dsl/topics/session.md +1 -1
  109. package/dist/help/full.md +101 -137
  110. package/dist/help/help-index.md +44 -0
  111. package/dist/help/help-meta.json +43 -27
  112. package/dist/help/index.md +32 -75
  113. package/dist/help/tokens/qr.inline.examples.md +2 -0
  114. package/dist/help/tokens/stdin.examples.bash.md +8 -0
  115. package/dist/help/tokens/stdin.examples.pwsh.md +8 -0
  116. package/dist/help/tokens/stdin.examples.with-qr.bash.md +12 -0
  117. package/dist/help/tokens/stdin.examples.with-qr.pwsh.md +12 -0
  118. package/dist/help/topics/dsl.md +4 -3
  119. package/dist/help/topics/file.move.md +44 -0
  120. package/dist/help/topics/file.rename.md +33 -0
  121. package/dist/help/topics/inspect.code.md +5 -5
  122. package/dist/help/topics/inspect.deps.md +7 -7
  123. package/dist/help/topics/inspect.file.md +2 -1
  124. package/dist/help/topics/inspect.graph.md +3 -3
  125. package/dist/help/topics/inspect.md +5 -5
  126. package/dist/help/topics/mutation.md +23 -13
  127. package/dist/help/topics/patterns.md +1 -5
  128. package/dist/help/topics/qr.md +7 -22
  129. package/dist/help/topics/quick-map.md +1 -0
  130. package/dist/help/topics/recipe.file-layout.md +13 -0
  131. package/dist/help/topics/rg.md +20 -0
  132. package/dist/help/topics/selectors.md +3 -2
  133. package/dist/help/topics/session.md +1 -1
  134. package/dist/host/capabilities.js +1 -0
  135. package/dist/ide-launch/common.cjs +162 -162
  136. package/dist/managed-host/extension-vsix-resolver.js +1 -1
  137. package/dist/managed-host/manage-serve-web-host.cjs +141 -141
  138. package/dist/managed-host/serve-web-autostart.js +1 -1
  139. package/dist/managed-host/serve-web-host.cjs +1781 -1570
  140. package/dist/payloads/read-stdin-json.js +1 -1
  141. package/dist/rg-wrapper/core.js +6 -0
  142. package/dist/rg-wrapper/options.js +1 -0
  143. package/dist/rtk-wrapper/core.js +2 -0
  144. package/dist/runtime/input-source.js +1 -1
  145. package/dist/runtime/run-command.js +1 -1
  146. package/dist/selectors/parse-entities.js +1 -1
  147. package/dist/session/daemon-state.js +2 -0
  148. package/dist/session/server.js +7 -8
  149. package/dist/shared/operations.js +1 -1
  150. package/dist/shared/protocol.js +1 -1
  151. package/dist/shared/routes.js +1 -1
  152. package/dist/shared/stdin-examples.js +1 -3
  153. package/dist/shared/types.js +1 -1
  154. package/dist/tool-runtime/runtime-tools.js +1 -0
  155. package/dist/workers/control-plane/aib-control-plane-worker.cjs +80 -0
  156. package/dist/workers/control-plane/client-config.default.json +3 -0
  157. package/dist/workers/product-storage.js +1 -0
  158. package/dist/workers/registry.js +1 -0
  159. package/extension/vscode-refactor-bridge-extension.vsix +0 -0
  160. package/package.json +6 -4
  161. package/runtimes/launcher/linux-x64/aib +0 -0
  162. package/runtimes/launcher/win-x64/aib.exe +0 -0
  163. package/runtimes/tools/rg/darwin-arm64/rg +0 -0
  164. package/runtimes/tools/rg/darwin-x64/rg +0 -0
  165. package/runtimes/tools/rg/linux-arm64/rg +0 -0
  166. package/runtimes/tools/rg/linux-x64/rg +0 -0
  167. package/runtimes/tools/rg/manifest.json +36 -0
  168. package/runtimes/tools/rg/win32-x64/rg.exe +0 -0
  169. package/runtimes/tools/rtk/darwin-arm64/rtk +0 -0
  170. package/runtimes/tools/rtk/darwin-x64/rtk +0 -0
  171. package/runtimes/tools/rtk/linux-arm64/rtk +0 -0
  172. package/runtimes/tools/rtk/linux-x64/rtk +0 -0
  173. package/runtimes/tools/rtk/manifest.json +36 -0
  174. package/runtimes/tools/rtk/win32-x64/rtk.exe +0 -0
  175. package/dist/help/json/docs/basics.md +0 -15
  176. package/dist/help/json/docs/config-setup.aliases.md +0 -56
  177. package/dist/help/json/docs/config-setup.excludes.md +0 -45
  178. package/dist/help/json/docs/config-setup.import-normalize.md +0 -86
  179. package/dist/help/json/docs/config-setup.import-rules.md +0 -96
  180. package/dist/help/json/docs/config-setup.tsconfigs.md +0 -33
  181. package/dist/help/json/docs/dsl.md +0 -25
  182. package/dist/help/json/docs/first-setup.md +0 -292
  183. package/dist/help/json/docs/help-format.md +0 -9
  184. package/dist/help/json/docs/help-protocol.md +0 -26
  185. package/dist/help/json/docs/imports.normalize.md +0 -47
  186. package/dist/help/json/docs/inspect.code.md +0 -41
  187. package/dist/help/json/docs/inspect.cycles.md +0 -38
  188. package/dist/help/json/docs/inspect.deps.md +0 -46
  189. package/dist/help/json/docs/inspect.duplicates.md +0 -65
  190. package/dist/help/json/docs/inspect.exports.md +0 -40
  191. package/dist/help/json/docs/inspect.file.md +0 -38
  192. package/dist/help/json/docs/inspect.graph.md +0 -139
  193. package/dist/help/json/docs/inspect.imports.md +0 -15
  194. package/dist/help/json/docs/inspect.md +0 -88
  195. package/dist/help/json/docs/inspect.members.md +0 -32
  196. package/dist/help/json/docs/inspect.tree.md +0 -32
  197. package/dist/help/json/docs/inspect.usages.md +0 -61
  198. package/dist/help/json/docs/modulePlan.md +0 -73
  199. package/dist/help/json/docs/move.md +0 -56
  200. package/dist/help/json/docs/mutation.md +0 -65
  201. package/dist/help/json/docs/patterns.md +0 -76
  202. package/dist/help/json/docs/prefs.md +0 -40
  203. package/dist/help/json/docs/qr.md +0 -37
  204. package/dist/help/json/docs/quick-map.md +0 -30
  205. package/dist/help/json/docs/refactor.batch.md +0 -72
  206. package/dist/help/json/docs/rename.md +0 -47
  207. package/dist/help/json/docs/reveal.md +0 -30
  208. package/dist/help/json/docs/selectors.md +0 -23
  209. package/dist/help/json/docs/session.md +0 -77
  210. package/dist/help/json/docs/view.md +0 -30
  211. package/dist/help/json/snippets/agents.md +0 -14
  212. package/dist/help/json/topics/basics.md +0 -13
  213. package/dist/help/json/topics/config-setup.aliases.md +0 -54
  214. package/dist/help/json/topics/config-setup.excludes.md +0 -43
  215. package/dist/help/json/topics/config-setup.import-normalize.md +0 -84
  216. package/dist/help/json/topics/config-setup.import-rules.md +0 -94
  217. package/dist/help/json/topics/config-setup.tsconfigs.md +0 -31
  218. package/dist/help/json/topics/dsl.md +0 -23
  219. package/dist/help/json/topics/first-setup.md +0 -290
  220. package/dist/help/json/topics/help-format.md +0 -7
  221. package/dist/help/json/topics/help-protocol.md +0 -24
  222. package/dist/help/json/topics/imports.normalize.md +0 -45
  223. package/dist/help/json/topics/inspect.code.md +0 -39
  224. package/dist/help/json/topics/inspect.cycles.md +0 -36
  225. package/dist/help/json/topics/inspect.deps.md +0 -44
  226. package/dist/help/json/topics/inspect.duplicates.md +0 -37
  227. package/dist/help/json/topics/inspect.exports.md +0 -38
  228. package/dist/help/json/topics/inspect.file.md +0 -36
  229. package/dist/help/json/topics/inspect.graph.md +0 -137
  230. package/dist/help/json/topics/inspect.imports.md +0 -13
  231. package/dist/help/json/topics/inspect.md +0 -86
  232. package/dist/help/json/topics/inspect.members.md +0 -30
  233. package/dist/help/json/topics/inspect.tree.md +0 -22
  234. package/dist/help/json/topics/inspect.usages.md +0 -59
  235. package/dist/help/json/topics/modulePlan.md +0 -60
  236. package/dist/help/json/topics/move.md +0 -46
  237. package/dist/help/json/topics/mutation.md +0 -63
  238. package/dist/help/json/topics/patterns.md +0 -74
  239. package/dist/help/json/topics/prefs.md +0 -38
  240. package/dist/help/json/topics/qr.md +0 -35
  241. package/dist/help/json/topics/quick-map.md +0 -28
  242. package/dist/help/json/topics/refactor.batch.md +0 -61
  243. package/dist/help/json/topics/rename.md +0 -42
  244. package/dist/help/json/topics/reveal.md +0 -28
  245. package/dist/help/json/topics/selectors.md +0 -21
  246. package/dist/help/json/topics/session.md +0 -59
  247. package/dist/help/json/topics/view.md +0 -28
@@ -1,37 +0,0 @@
1
- # Quick Read
2
-
3
- Use qr for cross-OS quick reads of text files: ts, js, cmd, sh, json, log, txt, ndjson, etc.
4
- Use it for compact line windows and batching.
5
- qr supports AIB path aliases.
6
-
7
- It is not a replacement for inspect.
8
- Use it as a token-efficient way to read text data when semantic inspect is not needed.
9
-
10
- For focused text reads, prefer qr over cat/Get-Content/type, especially when aliases, line windows, or batching help.
11
- Use shell reads only when piping into shell tooling or qr is unavailable.
12
-
13
- Controls:
14
- -h N head; first N lines
15
- -t N tail; last N lines
16
- -o N offset; starting line, 1-based
17
- -l N limit; line count for offset reads
18
- -a all; whole file
19
-
20
- If no window is provided, qr uses -h 80.
21
- If -a is present, it wins over other window flags.
22
-
23
- Run:
24
- aib qr --stdin
25
-
26
- Input:
27
- qr @scripts/a.txt h=80
28
- qr @scripts/b.py o=300 l=50
29
- qr @scripts/c.md t=120
30
- qr @logs/app.log all
31
-
32
- Inline:
33
- aib qr @scripts/a.txt -h 80
34
- aib qr @scripts/b.py -o 300 -l 50
35
- aib qr @logs/app.log -a
36
-
37
- Use stdin for several reads.
@@ -1,30 +0,0 @@
1
- # Quick Map
2
-
3
- Read:
4
- qr quick reads: ts, js, cmd, sh, json, log, txt, etc.
5
- view hidden/truncated output
6
-
7
- Inspect:
8
- file
9
- imports
10
- exports
11
- members
12
- code
13
- deps
14
- usages
15
- graph
16
- tree
17
- duplicates
18
- cycles
19
-
20
- Mutate:
21
- rename
22
- move
23
- modulePlan
24
- refactor batch
25
- imports normalize
26
-
27
- Other:
28
- config
29
- prefs
30
- reveal tsconfig and tsconfig alias discovery
@@ -1,72 +0,0 @@
1
- # Refactor Batch
2
-
3
- Modes: preview/apply or execute.
4
- Use execute for routine changes.
5
- Use preview/apply when learning a mutation command or inspecting a large multi-step request before writing files.
6
-
7
- If a name is ambiguous, use selectors.
8
- Run help selectors to refresh selector syntax.
9
-
10
- refactor batch runs related mutation requests together.
11
- Use it when one workflow needs ordered steps, such as rename plus move.
12
-
13
- Use modulePlan when the main intent is only to split one large file into target modules.
14
- Use refactor batch when the split also includes coordinated renames or mixed mutation steps.
15
-
16
- refactor batch preview --stdin
17
- refactor batch execute --stdin
18
- refactor batch apply --stdin
19
-
20
- Use preview/apply when you want to inspect a large mixed plan before writing files.
21
- Use execute when you want to write immediately.
22
- Use --from with captured input handles when rerunning edited large batches.
23
-
24
- Example: rename and move in one request
25
-
26
- Run:
27
- aib refactor batch execute --stdin
28
-
29
- Input:
30
- {
31
- "sourceFile": "src/service.ts",
32
- "requests": [
33
- {
34
- "op": "rename",
35
- "renames": {
36
- "oldHelper": "newHelper",
37
- "oldType": "newType"
38
- }
39
- },
40
- {
41
- "op": "move",
42
- "targetFile": "src/service.helpers.ts",
43
- "entities": ["newHelper"]
44
- },
45
- {
46
- "op": "move",
47
- "targetFile": "src/service.types.ts",
48
- "entities": ["newType"]
49
- }
50
- ]
51
- }
52
-
53
- Use top-level sourceFile when requests operate on the same file.
54
- Override file/sourceFile inside a request when one request targets another file.
55
-
56
- Supported request kinds:
57
- rename
58
- move
59
-
60
- Use separate command help when the workflow only needs one mutation kind.
61
-
62
- If a large or partial refactor batch fails, edit the captured input file and rerun with --from.
63
- For small one-off refactor requests, write a corrected request instead.
64
-
65
- Latest refactor input:
66
- <session-dir>/inputs/refactor/_last.json
67
-
68
- Handle:
69
- aib:input:refactor:last
70
-
71
- Example:
72
- refactor batch execute --from aib:input:refactor:last
@@ -1,47 +0,0 @@
1
- # Rename
2
-
3
- Modes: preview/apply or execute.
4
- Use execute for routine changes.
5
- Use preview/apply when learning a mutation command or inspecting a large multi-step request before writing files.
6
-
7
- If a name is ambiguous, use selectors.
8
- Run help selectors to refresh selector syntax.
9
-
10
- Rename is for semantic symbol renames.
11
- It follows TypeScript references.
12
- It is not plain-text replacement.
13
-
14
- Single rename:
15
- rename preview <file> <entity> <newName>
16
- rename execute <file> <entity> <newName>
17
- rename apply <previewId>
18
-
19
- Use preview/apply when you want to inspect the planned change before writing files.
20
- Use execute when you want to write immediately.
21
-
22
- Run:
23
- aib rename execute --stdin
24
-
25
- Input:
26
- {
27
- "file": "src/service.ts",
28
- "renames": {
29
- "oldName": "newName",
30
- "OldService": "NewService"
31
- }
32
- }
33
-
34
- Rename can use plain names or selectors.
35
- For methods and properties, prefer JSON so you can pass parent when needed.
36
-
37
- If a large rename request fails, edit the captured input file and rerun with --from.
38
- For small one-off rename requests, write a corrected request instead.
39
-
40
- Latest rename input:
41
- <session-dir>/inputs/rename/_last.json
42
-
43
- Handle:
44
- aib:input:rename:last
45
-
46
- Example:
47
- rename preview --from aib:input:rename:last
@@ -1,30 +0,0 @@
1
- # Reveal
2
-
3
- Use reveal to inspect TypeScript config discovery used by AIB.
4
-
5
- Reveal is for config/setup diagnosis.
6
- Use it when aliases, sync, imports normalize, or tsconfig excludes depend on which tsconfig files AIB sees.
7
-
8
- Commands:
9
- aib reveal tsconfigs
10
- aib reveal tsaliases
11
-
12
- tsconfigs shows visible TypeScript configs and config-excluded configs.
13
- tsaliases shows baseUrl, paths, extends, inherited paths, duplicated inherited paths, and overridden inherited paths.
14
-
15
- Controls:
16
- all show all output instead of compact output
17
- nec no config excludes; ignore sync.tsconfig.exclude
18
- ned no default excludes
19
- limit max visible groups/items before + N more
20
-
21
- Examples:
22
- aib reveal tsconfigs
23
- aib reveal tsconfigs +all
24
- aib reveal tsconfigs +nec limit=20
25
- aib reveal tsaliases
26
- aib reveal tsaliases +all
27
- aib reveal tsaliases +nec
28
-
29
- Use tsconfigs before tuning sync.tsconfig.exclude.
30
- Use tsaliases before creating AIB pathAliases or configuring import normalization.
@@ -1,23 +0,0 @@
1
- # Selectors
2
-
3
- Selectors identify symbols when names are ambiguous.
4
- Use plain names when they are unambiguous.
5
- Use selectors when aib reports ambiguity or when different symbol kinds share a name.
6
-
7
- Example:
8
- type WsOptions
9
- class WsOptions
10
-
11
- If aib needs the exact entity, use:
12
- t-WsOptions
13
- c-WsOptions
14
-
15
- Selectors list:
16
- f-name function
17
- c-Name class
18
- i-Name interface
19
- t-Name type
20
- v-name variable
21
- e-Name enum
22
- m-name method, usually with parent in JSON
23
- p-name property, usually with parent in JSON
@@ -1,77 +0,0 @@
1
- # Session
2
-
3
- Start by creating or selecting your session.
4
- Create it once, then reuse it.
5
- Do not create a new session for every command or subtask.
6
-
7
- Session stores captured inputs, saved outputs, aliases, and prefs.
8
-
9
- Prefer short session names:
10
- aa, tr, qa, a2
11
-
12
- Create:
13
- session init --name <name>
14
-
15
- Follow the command output.
16
- If aib says multiple sessions exist, use the session you created explicitly:
17
- aib -s <name> <command>
18
-
19
- Or bind this shell:
20
- AIB=<name>
21
-
22
- If you want to prune session inputs/outputs, use:
23
- session clear
24
-
25
- After clear, keep using the same session.
26
-
27
- Check:
28
- session status
29
-
30
- Handles:
31
- Commands may return handles for hidden output or reusable indexes.
32
-
33
- Hidden output:
34
- aib:res_<id>
35
-
36
- Use view to fetch only the hidden part without repeating the original request:
37
- aib view aib:res_<id>
38
-
39
- Reusable indexes:
40
- aib:usages:<name>
41
- aib:graph:<name>
42
-
43
- Usages and graph handles store computed indexes.
44
- Use them with --from-file to focus or expand the saved result:
45
-
46
- inspect usages --from-file aib:usages:service-usages --focus createService --detail code
47
- inspect graph --from-file aib:graph:services-graph --focus src/service.ts
48
-
49
- Escape hatch for latest mutation status/result:
50
- aib execution status last
51
-
52
- Every JSON stdin/from request is captured.
53
-
54
- Latest input per kind:
55
- <session-dir>/inputs/<kind>/_last.json
56
-
57
- Handle:
58
- aib:input:<kind>:last
59
-
60
- Use --from when editing the captured input costs less than rebuilding the request.
61
- For small one-off requests, write a corrected request instead.
62
- Do not read input handles into context unless you specifically need to inspect the payload.
63
-
64
- Examples:
65
- rename preview --from aib:input:rename:last
66
- refactor batch <command> --from aib:input:refactor:last
67
-
68
- Prefs are stored in the session.
69
- Use prefs when you want repeated CLI behavior without repeating request fields.
70
-
71
- Set several prefs:
72
- session prefs set inspect.graph.hubs false inspect.graph.leaves false
73
-
74
- Show current overrides:
75
- session prefs get
76
-
77
- See help prefs for the full list.
@@ -1,30 +0,0 @@
1
- # View Hidden Output
2
-
3
- AIB keeps large outputs compact.
4
- When part of a result is hidden, output may include:
5
-
6
- view: aib:res_<id>
7
-
8
- Use view to fetch the hidden part without repeating what you already saw.
9
-
10
- When a batch has several hidden results of the same kind, output may include:
11
-
12
- view all code: aib:res_<id>
13
- view all members: aib:res_<id>
14
-
15
- A `view all` handle covers hidden parts from all results of that kind.
16
-
17
- For code views, narrow what you fetch:
18
- only show only these hidden code entities
19
- except show all hidden code except these entities
20
-
21
- Run:
22
- aib view --stdin
23
-
24
- Input:
25
- view aib:res_<id_1> only=[ClassA.{bigA,bigB},bigQ,ClassB.bigB]
26
- view aib:res_<id_2> except=[ClassC.bigC]
27
-
28
- Inline:
29
- aib view aib:res_<id_1> --only bigQ --only "ClassA.{bigA,bigB}"
30
- aib view aib:res_<id_2> --except ClassB.bigB --except ClassC.bigC
@@ -1,14 +0,0 @@
1
- Recommended:
2
- For TS/JS code work, use aib. Start with {{docsPath}}.
3
-
4
- Strict:
5
- For TS/JS code work in this repo, prefer aib before broad file reads. Start with {{docsPath}}.
6
-
7
- Minimal:
8
- Use {{docsPath}} when working with TS/JS code.
9
-
10
- Help fallback:
11
- For TS/JS code work, use aib. Start with {{docsPath}}. If local docs are not enough, run `aib help bootstrap`.
12
-
13
- Refactor-focused:
14
- When changing TS/JS code, use aib for semantic discovery, usages, graph, rename, move, and modulePlan. Start with {{docsPath}}.
@@ -1,13 +0,0 @@
1
- Use the active session while you work.
2
- Reuse captured inputs when editing them is cheaper than rebuilding large JSON.
3
-
4
- Examples are patterns, not limits.
5
- Feature sections show common high-value uses, not every valid use.
6
- Adapt requests to the task: combine features, batch related questions, and skip steps when you already have enough context.
7
-
8
- Prefer batch JSON instead of inline calls.
9
- One request can inspect/mutate several files/entities and save reusable outputs.
10
- Use one-off commands only for small checks/changes.
11
-
12
- For mutations, aib asks TS/IDE refactors to update affected references and imports.
13
- 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.
@@ -1,54 +0,0 @@
1
- If you have not just checked the full config, check current aliases:
2
-
3
- aib config aliases
4
-
5
- pathAliases define short request aliases for paths agents repeat in AIB commands.
6
- Use them to reduce input tokens for repeated inspect and mutation work.
7
-
8
- Aliases are for AIB request paths.
9
- They do not change TypeScript imports by themselves.
10
- For import style after mutations, use importRules.
11
-
12
- Check TypeScript aliases for hints:
13
-
14
- aib reveal tsaliases
15
-
16
- Use this to see existing tsconfig paths and baseUrl values.
17
- They can reveal stable work areas, but they are not a list to copy.
18
-
19
- Add pathAliases for long paths that are likely to appear repeatedly in AIB requests.
20
- Prefer aliases for real work areas, package roots, or deep directories.
21
-
22
- A good alias:
23
- - saves meaningful path tokens;
24
- - points to a stable work area;
25
- - is easy to recognize later.
26
-
27
- A bad alias:
28
- - duplicates a short path like "src": "src", "packages": "packages", "scripts": "scripts";
29
- - points to a rarely used folder;
30
- - mirrors the directory tree without a workflow reason.
31
-
32
- Having 20-30 good aliases is fine for a large repo or monorepo.
33
-
34
- Example:
35
-
36
- "pathAliases": {
37
- "wstore": "apps/web/src/shared/store",
38
- "wapi": "apps/web/src/shared/api",
39
- "whooks": "apps/web/src/shared/utils/hooks",
40
- "pmail": "packages/email/src",
41
- "putils": "packages/utils/src",
42
- "arules": "docs/agent/rules"
43
- }
44
-
45
- After editing aib.json, run:
46
-
47
- aib sync
48
-
49
- Verify aliases with a small tree or inspect request:
50
-
51
- aib inspect --stdin
52
-
53
- Input:
54
- tree @<alias> depth=3 +onlyDirs limit=80
@@ -1,43 +0,0 @@
1
- Tree excludes affect directory and file discovery output.
2
- Graph excludes affect graph counts, hubs, entrypoints, leaves, edges, imports, importedBy, and saved graph views.
3
-
4
- Built-in excludes already skip common noise such as node_modules, .git, dist, build, out, and .tmp.
5
- Add config excludes for repository-specific noise.
6
-
7
- For example, if the user often creates hard-copy directories or backup files before risky edits, those copies can make tree and graph output noisy.
8
- Exclude them explicitly:
9
-
10
- "inspect.tree.onlyDirs.exclude": [
11
- "**/*copy",
12
- "**/*copy/**"
13
- ],
14
- "inspect.tree.files.exclude": [
15
- "**/* copy.ts",
16
- "**/*.generated.ts"
17
- ],
18
- "inspect.graph.exclude": [
19
- "**/* copy.ts",
20
- "**/*.generated.ts",
21
- "src/generated/**"
22
- ]
23
-
24
- Prefer narrow patterns for known noise:
25
- - generated files;
26
- - local copy/backup folders;
27
- - build artifacts not already skipped by defaults;
28
- - vendored or checked-in output.
29
-
30
- These are common cases, not mandatory rules.
31
- If the repository needs one of these areas for reasoning or mutation impact checks, do not exclude it.
32
-
33
- Do not exclude broad source areas to make output smaller.
34
- If output is too large, use scope, depth, limit, graph view, or graph toggles first.
35
-
36
- After editing aib.json, run:
37
-
38
- aib sync
39
-
40
- Then verify with a compact tree request and the graph view that was noisy.
41
-
42
- If excluded paths still appear, check the glob pattern against repo-relative paths.
43
- If important source disappeared, narrow or remove the exclude.
@@ -1,84 +0,0 @@
1
- Configure import normalization intent.
2
-
3
- importNormalize defines default normalization rules for explicit aib imports normalize commands.
4
- Use it before broad or important import cleanup so the scope, target style, preferred alias, and excludes are stored in aib.json instead of repeated in command arguments.
5
-
6
- It does not run automatically during move/modulePlan.
7
- Use importRules for mutation-time import cleanup.
8
-
9
- Set importNormalize when the intended cleanup has project meaning:
10
- - adopting a new tsconfig alias across a project area;
11
- - converting an area to aliases;
12
- - converting scripts/tools or extracted modules to relative imports;
13
- - excluding generated or bundled output from normalization.
14
-
15
- For tiny one-file checks, inline options are fine.
16
- Before wider cleanup, put the intended rule in config and preview the smallest useful scope.
17
-
18
- Fields:
19
- scope repo-relative file or directory scope; most specific scope wins
20
- to relative|alias|shortestAlias
21
- preferAlias tsconfig paths pattern used when to=alias
22
- exclude files, directories, or glob-like patterns to skip
23
-
24
- to:
25
- relative rewrite resolved local imports to relative paths
26
- alias rewrite resolved local imports to a matching tsconfig alias
27
- shortestAlias rewrite to the shortest valid alias specifier
28
-
29
- preferAlias:
30
- @shared/* prefer one alias pattern when several aliases can resolve the same file
31
-
32
- Alias cleanup:
33
-
34
- "importNormalize": [
35
- {
36
- "scope": "src",
37
- "to": "shortestAlias",
38
- "preferAlias": "@/*",
39
- "exclude": [
40
- "src/generated",
41
- "src/**/dist"
42
- ]
43
- }
44
- ]
45
-
46
- Relative cleanup for scripts/tools:
47
-
48
- "importNormalize": [
49
- {
50
- "scope": "scripts",
51
- "to": "relative",
52
- "exclude": [
53
- "scripts/**/*.cjs",
54
- "scripts/**/*.mjs"
55
- ]
56
- }
57
- ]
58
-
59
- If you have not just checked config rules, run:
60
-
61
- aib config rules
62
-
63
- After editing aib.json, run:
64
-
65
- aib sync
66
-
67
- Then preview the smallest useful scope before applying:
68
-
69
- aib imports normalize preview <scope>
70
-
71
- Preview shows counts, sample import rewrites, a planId, and the apply command.
72
- It does not change project files.
73
-
74
- If preview changes imports outside the intended area, narrow scope or add exclude.
75
-
76
- If preview does not use the expected alias, check tsconfig aliases:
77
-
78
- aib reveal tsaliases
79
-
80
- If the config and aliases look correct but preview still looks stale or strange, run:
81
-
82
- aib sync
83
-
84
- Then preview again.
@@ -1,94 +0,0 @@
1
- Use this when move/modulePlan creates imports that do not match the repository style.
2
-
3
- Do not keep fixing the same generated import style by hand.
4
- Tune importRules, sync config, then retry the smallest useful mutation before continuing larger mutation work.
5
-
6
- Check current config:
7
-
8
- aib config rules
9
-
10
- importRules control imports created or expanded by move/modulePlan mutation cleanup.
11
- They do not rewrite the whole project.
12
-
13
- AIB starts from IDE/TS import preferences.
14
- For mutation cleanup, matching importRules in aib.json take priority.
15
- Do not assume IDE/TS defaults match the repo style.
16
-
17
- Fields:
18
- scope repo-relative file or directory scope; most specific scope wins
19
- specifier relative|shortest|project-relative|non-relative
20
- ending auto|minimal|index|js
21
- builtin node|bare
22
- unusedImports remove|preserve
23
-
24
- Defaults:
25
- specifier omitted IDE/TS decides
26
- ending omitted IDE/TS decides
27
- builtin omitted keep TS/project builtin style
28
- unusedImports omitted keep unused imports
29
-
30
- specifier:
31
- relative best for local relative imports
32
- shortest best for shortest valid alias/path output
33
- project-relative best for root-relative project imports
34
- non-relative best for package or alias imports
35
-
36
- ending:
37
- minimal best for extensionless TS imports
38
- js best for ESM-style TS projects that require .js
39
- auto leaves the decision to TypeScript
40
- index best for explicit index import style
41
-
42
- builtin:
43
- node path -> node:path; best for explicit Node builtin imports
44
- bare node:path -> path; best for bare Node builtin imports
45
- omit field keeps TypeScript/project output; add builtin if agents keep fixing this manually
46
-
47
- unusedImports:
48
- remove clean unused imports in mutation-touched files
49
- preserve keep unused imports
50
- omit same as preserve
51
-
52
- Mutation-touched files are files where TS produced edits: source/target files and any reference/update files TS changed.
53
- Recommended value: remove
54
-
55
- If the repository has one import style, use one broad rule:
56
-
57
- "importRules": [
58
- {
59
- "scope": ".",
60
- "specifier": "shortest",
61
- "ending": "auto",
62
- "builtin": "node",
63
- "unusedImports": "remove"
64
- }
65
- ]
66
-
67
- Use scoped rules only when areas differ by style, for example packages use aliases but scripts use relative imports:
68
-
69
- "importRules": [
70
- {
71
- "scope": "packages",
72
- "specifier": "shortest",
73
- "ending": "auto",
74
- "builtin": "node",
75
- "unusedImports": "remove"
76
- },
77
- {
78
- "scope": "scripts",
79
- "specifier": "relative",
80
- "ending": "auto",
81
- "builtin": "node",
82
- "unusedImports": "remove"
83
- }
84
- ]
85
-
86
- Use the most specific scope that matches the real convention.
87
- Do not add scoped rules just because directories exist.
88
-
89
- After editing aib.json, run:
90
-
91
- aib sync
92
-
93
- Then rerun the smallest affected move/modulePlan preview or execute request.
94
- If imports are still wrong, update importRules again before doing more manual cleanup.
@@ -1,31 +0,0 @@
1
- AIB syncs and watches visible tsconfigs.
2
- Keep real app/package configs visible.
3
- Exclude nested workspaces, seed projects, snapshots, backups, copied apps, or other non-primary projects.
4
-
5
- Do not exclude real package/app configs just to reduce output.
6
-
7
- Check which TypeScript configs AIB will sync and watch:
8
-
9
- aib reveal tsconfigs +all
10
-
11
- If output includes non-primary projects, exclude them:
12
-
13
- "sync.tsconfig.exclude": [
14
- "dev-seed/**",
15
- "snapshots/**"
16
- ]
17
-
18
- After editing aib.json, run:
19
-
20
- aib sync
21
-
22
- Then check again:
23
-
24
- aib reveal tsconfigs +all
25
-
26
- Visible tsconfigs should describe the active project surface.
27
- Excluded tsconfigs should be things the agent should not use for setup decisions.
28
-
29
- Use +nec only when you need to compare visible configs with config-excluded configs:
30
-
31
- aib reveal tsconfigs +nec