@automaton-labs/aib 0.0.7 → 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.
- package/README.md +36 -257
- package/config/agent-dx-policy.default.json +31 -0
- package/config/control-plane-client.default.json +3 -0
- package/dist/agent-dx/agent-dx.js +805 -0
- package/dist/agent-dx/presentation.js +32 -0
- package/dist/alias-advisor/analyze.js +982 -0
- package/dist/alias-advisor/exact-text-cost.js +74 -0
- package/dist/alias-advisor/lexical.js +240 -0
- package/dist/alias-advisor/model.js +2 -0
- package/dist/alias-advisor/path-identity.js +49 -0
- package/dist/alias-advisor/ranking.js +171 -0
- package/dist/alias-advisor/token-estimator.js +85 -0
- package/dist/bin/aib.js +5 -1
- package/dist/bin/cli.js +811 -4
- package/dist/commands/add-missing-imports-preview-cache.js +99 -2
- package/dist/commands/add-missing-imports.js +241 -2
- package/dist/commands/apply-module-plan.js +1319 -3
- package/dist/commands/background-command.js +378 -2
- package/dist/commands/captured-input.js +74 -1
- package/dist/commands/config-command.js +314 -2
- package/dist/commands/config-output.js +357 -10
- package/dist/commands/control-plane-command.js +183 -1
- package/dist/commands/declaration-command.js +1209 -7
- package/dist/commands/declaration-execution-cache.js +79 -1
- package/dist/commands/declaration-format.js +221 -1
- package/dist/commands/declaration-preview-cache.js +114 -2
- package/dist/commands/diagnostics-command.js +70 -3
- package/dist/commands/doctor.js +137 -3
- package/dist/commands/execution-command.js +117 -1
- package/dist/commands/exports-star-collapse-command.js +178 -0
- package/dist/commands/exports-star-command.js +252 -0
- package/dist/commands/exports-star-preview-cache.js +84 -0
- package/dist/commands/feedback-command.js +176 -3
- package/dist/commands/file-move-to-dir-execution-cache.js +92 -1
- package/dist/commands/file-move-to-dir-preview-cache.js +125 -2
- package/dist/commands/file-move-to-dir-worker.js +54 -0
- package/dist/commands/file-move-to-dir.js +1073 -5
- package/dist/commands/file-mutation-runtime.js +102 -1
- package/dist/commands/file-mutation-worker-apply.js +180 -0
- package/dist/commands/file-refactor-batch-execution-cache.js +90 -1
- package/dist/commands/file-refactor-batch-preview-cache.js +125 -2
- package/dist/commands/file-refactor-batch-worker.js +54 -0
- package/dist/commands/file-refactor-batch.js +1154 -5
- package/dist/commands/file-rename-execution-cache.js +92 -1
- package/dist/commands/file-rename-preview-cache.js +125 -2
- package/dist/commands/file-rename-worker.js +54 -0
- package/dist/commands/file-rename.js +1053 -5
- package/dist/commands/file-text-edit-executor.js +205 -0
- package/dist/commands/find-importers.js +52 -1
- package/dist/commands/find-unused-imports.js +55 -1
- package/dist/commands/generate-docs-command.js +244 -6
- package/dist/commands/help-command.js +460 -7
- package/dist/commands/import-specifier-policy.js +391 -0
- package/dist/commands/imports-command.js +68 -1
- package/dist/commands/imports-rebase.js +1138 -0
- package/dist/commands/init-skill-usage.js +92 -3
- package/dist/commands/init-workspace.js +30 -1
- package/dist/commands/inspect-alias-candidates.js +413 -0
- package/dist/commands/inspect-cycles.js +811 -5
- package/dist/commands/inspect-direct-usages.js +98 -0
- package/dist/commands/inspect-duplicates-format.js +229 -0
- package/dist/commands/inspect-format-primitives.js +127 -0
- package/dist/commands/inspect-format.js +1590 -18
- package/dist/commands/inspect-graph.js +1553 -9
- package/dist/commands/inspect-imports.js +339 -2
- package/dist/commands/inspect-mixed-format.js +524 -0
- package/dist/commands/inspect-module-plan-format.js +216 -0
- package/dist/commands/inspect-module-plan-serialization.js +402 -0
- package/dist/commands/inspect-reference-path-format.js +157 -0
- package/dist/commands/inspect-request-values.js +599 -0
- package/dist/commands/inspect-selector-kind.js +21 -0
- package/dist/commands/inspect-selector.js +50 -0
- package/dist/commands/inspect-symbol-format.js +90 -0
- package/dist/commands/inspect-topology.js +435 -0
- package/dist/commands/inspect-tree.js +827 -5
- package/dist/commands/inspect-usages-detail.js +793 -0
- package/dist/commands/inspect-usages-evidence.js +31 -0
- package/dist/commands/inspect-usages-format.js +367 -0
- package/dist/commands/inspect.js +1450 -16
- package/dist/commands/internal-command.js +64 -0
- package/dist/commands/json-file-input.js +60 -1
- package/dist/commands/module-plan-cache.js +156 -2
- package/dist/commands/module-plan-standalone.js +208 -0
- package/dist/commands/module-plan-timeout.js +77 -1
- package/dist/commands/move-preview-cache.js +101 -2
- package/dist/commands/mutate-aggregate-output.js +996 -0
- package/dist/commands/mutate-child-execution.js +374 -0
- package/dist/commands/mutate-command.js +1394 -0
- package/dist/commands/mutate-declaration-output.js +313 -0
- package/dist/commands/mutate-domain-adapters.js +638 -0
- package/dist/commands/mutate-execution-cache.js +114 -0
- package/dist/commands/mutate-execution-status.js +598 -0
- package/dist/commands/mutate-failure-output.js +531 -0
- package/dist/commands/mutate-file-view.js +151 -0
- package/dist/commands/mutate-object-output.js +91 -0
- package/dist/commands/mutate-output-values.js +97 -0
- package/dist/commands/mutate-preview-cache.js +86 -0
- package/dist/commands/mutate-response-replay.js +153 -0
- package/dist/commands/mutate-result-projection.js +818 -0
- package/dist/commands/mutation-eta.js +28 -0
- package/dist/commands/mutation-execution-cache.js +140 -3
- package/dist/commands/mutation-recovery-journal.js +195 -0
- package/dist/commands/normalize-imports.js +1120 -4
- package/dist/commands/object-pack-command.js +546 -0
- package/dist/commands/object-pack-preview-cache.js +88 -0
- package/dist/commands/observability-command.js +47 -3
- package/dist/commands/ota-command.js +403 -2
- package/dist/commands/print-config.js +10 -1
- package/dist/commands/quick-read.js +1113 -11
- package/dist/commands/refactor-batch-builder.js +265 -1
- package/dist/commands/refactor-batch-execution-cache.js +85 -1
- package/dist/commands/refactor-batch-preview-cache.js +96 -2
- package/dist/commands/refactor-batch.js +461 -4
- package/dist/commands/rename-entities.js +794 -4
- package/dist/commands/rename-execution-cache.js +49 -1
- package/dist/commands/rename-input.js +22 -1
- package/dist/commands/rename-polling-policy.js +68 -0
- package/dist/commands/rename-preview-cache.js +96 -2
- package/dist/commands/result-view.js +993 -7
- package/dist/commands/reveal-command.js +445 -5
- package/dist/commands/selector-suggestions.js +93 -0
- package/dist/commands/session-workspace.js +1836 -31
- package/dist/commands/shared.js +2 -1
- package/dist/commands/skills-command.js +315 -0
- package/dist/commands/sync-command.js +59 -2
- package/dist/commands/worker-command.js +173 -1
- package/dist/commands/workspace-cache.js +55 -1
- package/dist/config/defaults.js +26 -1
- package/dist/config/env-vars.js +77 -1
- package/dist/config/glob-match.js +44 -1
- package/dist/config/import-rules.js +165 -1
- package/dist/config/local-config.js +293 -3
- package/dist/config/mutation-comments.js +51 -1
- package/dist/config/path-aliases.js +165 -1
- package/dist/config/path-display.js +84 -1
- package/dist/config/product-storage.js +37 -1
- package/dist/config/request-env.js +21 -0
- package/dist/config/request-routing-context.js +23 -0
- package/dist/config/resolve-command-alias.js +74 -1
- package/dist/config/resolve.js +24 -1
- package/dist/config/tsconfig-discovery.js +113 -1
- package/dist/config/typescript-preferences.js +131 -0
- package/dist/config/workspace-root.js +310 -3
- package/dist/config/workspace-state.js +254 -1
- package/dist/content/content-bundle.js +88 -1
- package/dist/diagnostics/module-plan-timeline.js +75 -2
- package/dist/diagnostics/readiness-text.js +45 -8
- package/dist/dsl/aib-dsl.js +838 -1
- package/dist/dsl/declaration-dsl.js +264 -1
- package/dist/dsl/file-move-to-dir-dsl.js +123 -1
- package/dist/dsl/file-refactor-batch-dsl.js +203 -1
- package/dist/dsl/file-rename-dsl.js +135 -1
- package/dist/dsl/mutate-dsl.js +746 -0
- package/dist/help/bootstrap.bash.md +176 -341
- package/dist/help/bootstrap.md +175 -340
- package/dist/help/bootstrap.pwsh.md +176 -341
- package/dist/help/docs/basics.md +1 -1
- package/dist/help/docs/config-setup.import-normalize.md +65 -65
- package/dist/help/docs/config-setup.import-rules.md +6 -5
- package/dist/help/docs/first-setup.md +6 -5
- package/dist/help/docs/help-protocol.md +4 -3
- package/dist/help/docs/import.base.md +38 -0
- package/dist/help/docs/import.rebase.md +85 -0
- package/dist/help/docs/inspect.aliasCandidates.md +39 -0
- package/dist/help/docs/inspect.code.md +1 -7
- package/dist/help/docs/inspect.file.md +10 -19
- package/dist/help/docs/inspect.graph.md +3 -17
- package/dist/help/{dsl/docs/inspect.md → docs/inspect.shared.md} +13 -12
- package/dist/help/docs/modulePlan.md +24 -28
- package/dist/help/docs/move.md +19 -22
- package/dist/help/{dsl/topics/file.move.md → docs/moveToDir.md} +36 -34
- package/dist/help/docs/mutate.mixed.md +34 -0
- package/dist/help/docs/mutation.shared.md +55 -0
- package/dist/help/docs/patterns.md +3 -12
- package/dist/help/docs/qr.md +12 -6
- package/dist/help/docs/quick-map.md +36 -24
- package/dist/help/docs/recipe.file-layout.md +10 -10
- package/dist/help/docs/recipe.import-boundary.md +92 -0
- package/dist/help/docs/recipe.safe-artifact-probing.md +68 -0
- package/dist/help/docs/recipe.unfamiliar-area.md +64 -0
- package/dist/help/docs/recipes.md +20 -0
- package/dist/help/docs/rename.md +19 -27
- package/dist/help/docs/renameFile.md +36 -0
- package/dist/help/docs/rules.md +26 -0
- package/dist/help/dsl/bootstrap.bash.md +176 -341
- package/dist/help/dsl/bootstrap.md +175 -340
- package/dist/help/dsl/bootstrap.pwsh.md +176 -341
- package/dist/help/dsl/docs/basics.md +1 -1
- package/dist/help/dsl/docs/config-setup.import-normalize.md +65 -65
- package/dist/help/dsl/docs/config-setup.import-rules.md +6 -5
- package/dist/help/dsl/docs/first-setup.md +6 -5
- package/dist/help/dsl/docs/help-protocol.md +4 -3
- package/dist/help/dsl/docs/import.base.md +38 -0
- package/dist/help/dsl/docs/import.rebase.md +85 -0
- package/dist/help/dsl/docs/inspect.aliasCandidates.md +39 -0
- package/dist/help/dsl/docs/inspect.code.md +1 -7
- package/dist/help/dsl/docs/inspect.file.md +10 -19
- package/dist/help/dsl/docs/inspect.graph.md +3 -17
- package/dist/help/{docs/inspect.md → dsl/docs/inspect.shared.md} +13 -12
- package/dist/help/dsl/docs/modulePlan.md +24 -28
- package/dist/help/dsl/docs/move.md +19 -22
- package/dist/help/{topics/file.move.md → dsl/docs/moveToDir.md} +36 -34
- package/dist/help/dsl/docs/mutate.mixed.md +34 -0
- package/dist/help/dsl/docs/mutation.shared.md +55 -0
- package/dist/help/dsl/docs/patterns.md +3 -12
- package/dist/help/dsl/docs/qr.md +12 -6
- package/dist/help/dsl/docs/quick-map.md +36 -24
- package/dist/help/dsl/docs/recipe.file-layout.md +10 -10
- package/dist/help/dsl/docs/recipe.import-boundary.md +92 -0
- package/dist/help/dsl/docs/recipe.safe-artifact-probing.md +68 -0
- package/dist/help/dsl/docs/recipe.unfamiliar-area.md +64 -0
- package/dist/help/dsl/docs/recipes.md +20 -0
- package/dist/help/dsl/docs/rename.md +19 -27
- package/dist/help/dsl/docs/renameFile.md +36 -0
- package/dist/help/dsl/docs/rules.md +26 -0
- package/dist/help/dsl/full.md +175 -340
- package/dist/help/dsl/help-index.md +48 -43
- package/dist/help/dsl/snippets/agents.md +2 -2
- package/dist/help/dsl/tokens/qr.inline.examples.md +1 -1
- package/dist/help/dsl/topics/basics.md +1 -1
- package/dist/help/dsl/topics/config-setup.import-normalize.md +65 -65
- package/dist/help/dsl/topics/config-setup.import-rules.md +6 -5
- package/dist/help/dsl/topics/first-setup.md +6 -5
- package/dist/help/dsl/topics/help-protocol.md +4 -3
- package/dist/help/dsl/topics/import.base.md +36 -0
- package/dist/help/dsl/topics/import.rebase.md +83 -0
- package/dist/help/dsl/topics/inspect.aliasCandidates.md +37 -0
- package/dist/help/dsl/topics/inspect.code.md +1 -7
- package/dist/help/dsl/topics/inspect.file.md +10 -19
- package/dist/help/dsl/topics/inspect.graph.md +3 -17
- package/dist/help/dsl/topics/{inspect.md → inspect.shared.md} +13 -12
- package/dist/help/dsl/topics/modulePlan.md +21 -26
- package/dist/help/dsl/topics/move.md +17 -18
- package/dist/help/{docs/file.move.md → dsl/topics/moveToDir.md} +33 -35
- package/dist/help/dsl/topics/mutate.mixed.md +32 -0
- package/dist/help/dsl/topics/mutation.shared.md +53 -0
- package/dist/help/dsl/topics/patterns.md +3 -12
- package/dist/help/dsl/topics/qr.md +12 -6
- package/dist/help/dsl/topics/quick-map.md +36 -24
- package/dist/help/dsl/topics/recipe.file-layout.md +10 -10
- package/dist/help/dsl/topics/recipe.import-boundary.md +90 -0
- package/dist/help/dsl/topics/recipe.safe-artifact-probing.md +66 -0
- package/dist/help/dsl/topics/recipe.unfamiliar-area.md +62 -0
- package/dist/help/dsl/topics/recipes.md +18 -0
- package/dist/help/dsl/topics/rename.md +15 -15
- package/dist/help/dsl/topics/renameFile.md +34 -0
- package/dist/help/dsl/topics/rules.md +24 -0
- package/dist/help/full.md +175 -340
- package/dist/help/help-index.md +48 -43
- package/dist/help/help-meta.json +98 -48
- package/dist/help/index.md +52 -20
- package/dist/help/snippets/agents.md +2 -2
- package/dist/help/tokens/qr.inline.examples.md +1 -1
- package/dist/help/topics/basics.md +1 -1
- package/dist/help/topics/config-setup.import-normalize.md +65 -65
- package/dist/help/topics/config-setup.import-rules.md +6 -5
- package/dist/help/topics/first-setup.md +6 -5
- package/dist/help/topics/help-protocol.md +4 -3
- package/dist/help/topics/import.base.md +36 -0
- package/dist/help/topics/import.rebase.md +83 -0
- package/dist/help/topics/inspect.aliasCandidates.md +37 -0
- package/dist/help/topics/inspect.code.md +1 -7
- package/dist/help/topics/inspect.file.md +10 -19
- package/dist/help/topics/inspect.graph.md +3 -17
- package/dist/help/topics/{inspect.md → inspect.shared.md} +13 -12
- package/dist/help/topics/modulePlan.md +21 -26
- package/dist/help/topics/move.md +17 -18
- package/dist/help/{dsl/docs/file.move.md → topics/moveToDir.md} +33 -35
- package/dist/help/topics/mutate.mixed.md +32 -0
- package/dist/help/topics/mutation.shared.md +53 -0
- package/dist/help/topics/patterns.md +3 -12
- package/dist/help/topics/qr.md +12 -6
- package/dist/help/topics/quick-map.md +36 -24
- package/dist/help/topics/recipe.file-layout.md +10 -10
- package/dist/help/topics/recipe.import-boundary.md +90 -0
- package/dist/help/topics/recipe.safe-artifact-probing.md +66 -0
- package/dist/help/topics/recipe.unfamiliar-area.md +62 -0
- package/dist/help/topics/recipes.md +18 -0
- package/dist/help/topics/rename.md +15 -15
- package/dist/help/topics/renameFile.md +34 -0
- package/dist/help/topics/rules.md +24 -0
- package/dist/host/capabilities.js +56 -1
- package/dist/imports/standalone-import-analysis.js +602 -0
- package/dist/imports/standalone-import-model.js +2 -0
- package/dist/imports/standalone-import-process.js +66 -0
- package/dist/imports/standalone-import-worker.js +27 -0
- package/dist/imports/standalone-ts-project.js +147 -0
- package/dist/inspect/inspect-duplicates-service.js +526 -0
- package/dist/inspect/inspect-reverse-module-closure.js +338 -0
- package/dist/inspect/inspect-source-ranges.js +82 -0
- package/dist/inspect/inspect-source-shape.js +649 -0
- package/dist/inspect/standalone-inspect-analysis.js +319 -0
- package/dist/inspect/standalone-inspect-model.js +9 -0
- package/dist/inspect/standalone-inspect-process.js +55 -0
- package/dist/inspect/standalone-inspect-usages.js +274 -0
- package/dist/inspect/standalone-inspect-worker.js +13 -0
- package/dist/metrics/central-metrics.js +101 -2
- package/dist/mutation/concrete-edit-plan.js +157 -0
- package/dist/mutation/exports-star-collapse-preview.js +361 -0
- package/dist/mutation/exports-star-expand-apply.js +373 -0
- package/dist/mutation/exports-star-expand-preview.js +807 -0
- package/dist/mutation/file-impact-scan.js +182 -0
- package/dist/mutation/file-mutation-discovery.js +674 -0
- package/dist/mutation/file-mutation-eta.js +99 -0
- package/dist/mutation/file-mutation-standalone-apply.js +584 -0
- package/dist/mutation/file-mutation-standalone-planner.js +500 -0
- package/dist/mutation/file-mutation-tsserver-session.js +473 -0
- package/dist/mutation/mutation-estimate.js +45 -0
- package/dist/mutation/mutation-plan.js +467 -0
- package/dist/mutation/object-mutation-foundation.js +2 -0
- package/dist/mutation/object-mutation-partition.js +148 -0
- package/dist/mutation/object-pack-semantic-apply.js +507 -0
- package/dist/mutation/object-pack-semantic-preview.js +984 -0
- package/dist/mutation/object-unpack-semantic-preview.js +993 -0
- package/dist/mutation/package-manifest-impact.js +176 -0
- package/dist/mutation/rename-owner-worker-child.js +37 -0
- package/dist/mutation/rename-owner-worker.js +122 -0
- package/dist/mutation/runtime-cycle-query.js +66 -0
- package/dist/mutation/semantic-execution-progress.js +63 -0
- package/dist/mutation/semantic-export-index.js +474 -0
- package/dist/mutation/semantic-impact-scan.js +434 -0
- package/dist/mutation/semantic-model.js +2 -0
- package/dist/mutation/semantic-move-best-effort-planner.js +209 -0
- package/dist/mutation/semantic-move-config-worker-child.js +61 -0
- package/dist/mutation/semantic-move-config-worker.js +449 -0
- package/dist/mutation/semantic-move-declarations.js +94 -0
- package/dist/mutation/semantic-move-metrics.js +119 -0
- package/dist/mutation/semantic-move-model.js +2 -0
- package/dist/mutation/semantic-move-owner-authority.js +122 -0
- package/dist/mutation/semantic-move-owner-candidates.js +300 -0
- package/dist/mutation/semantic-move-owner-divergence-harness.js +474 -0
- package/dist/mutation/semantic-move-owner-divergence-runner.js +162 -0
- package/dist/mutation/semantic-move-plan-hash.js +56 -0
- package/dist/mutation/semantic-move-policy.js +360 -0
- package/dist/mutation/semantic-move-process.js +218 -0
- package/dist/mutation/semantic-move-provider-diagnostics.js +27 -0
- package/dist/mutation/semantic-move-standalone-engine.js +919 -0
- package/dist/mutation/semantic-move-standalone-planner.js +1553 -0
- package/dist/mutation/semantic-move-transaction.js +639 -0
- package/dist/mutation/semantic-mutation-engine.js +478 -0
- package/dist/mutation/semantic-mutation-runtime.js +521 -0
- package/dist/mutation/semantic-planner-retry.js +26 -0
- package/dist/mutation/semantic-program-roots.js +69 -0
- package/dist/mutation/semantic-rename-commonjs.js +229 -0
- package/dist/mutation/semantic-rename-config-worker-child.js +46 -0
- package/dist/mutation/semantic-rename-config-worker.js +498 -0
- package/dist/mutation/semantic-rename-locations.js +192 -0
- package/dist/mutation/semantic-rename-model.js +2 -0
- package/dist/mutation/semantic-rename-process.js +210 -0
- package/dist/mutation/semantic-rename-standalone-engine.js +302 -0
- package/dist/mutation/semantic-rename-standalone-planner.js +567 -0
- package/dist/mutation/semantic-rename-transaction.js +333 -0
- package/dist/mutation/semantic-unused-import-cleanup.js +248 -0
- package/dist/mutation/semantic-worker-retry.js +40 -0
- package/dist/mutation/semantic-workspace.js +804 -0
- package/dist/mutation/targeted-import-canonicalizer.js +359 -0
- package/dist/observability/config.js +206 -1
- package/dist/observability/context.js +59 -1
- package/dist/observability/failure-snapshot.js +124 -2
- package/dist/observability/recent.js +63 -2
- package/dist/payloads/read-stdin-json.js +212 -1
- package/dist/rg-wrapper/core.js +714 -6
- package/dist/rg-wrapper/options.js +125 -1
- package/dist/rtk-wrapper/core.js +144 -2
- package/dist/rtk-wrapper/git-safety.js +203 -0
- package/dist/rtk-wrapper/output-adapter.js +106 -0
- package/dist/runtime/buffered-process.js +114 -0
- package/dist/runtime/bundled-node.js +97 -1
- package/dist/runtime/command-lifecycle.js +2 -0
- package/dist/runtime/input-source.js +238 -1
- package/dist/runtime/node-cli-identity.js +37 -0
- package/dist/runtime/run-command.js +191 -1
- package/dist/selectors/parse-entities.js +84 -1
- package/dist/semantic/semantic-context-pool.js +830 -0
- package/dist/semantic/semantic-context-provider.js +416 -0
- package/dist/semantic/semantic-resident-admission.js +38 -0
- package/dist/semantic/semantic-worker-child.js +40 -0
- package/dist/semantic/semantic-worker-manager.js +460 -0
- package/dist/semantic/semantic-worker-protocol.js +2 -0
- package/dist/semantic/semantic-worker-runtime.js +38 -0
- package/dist/semantic/workspace-semantic-context-pools.js +136 -0
- package/dist/session/client.js +359 -1
- package/dist/session/daemon-state.js +185 -2
- package/dist/session/external-tool-coordinator.js +88 -0
- package/dist/session/external-tool-request.js +52 -0
- package/dist/session/lane-owner.js +116 -0
- package/dist/session/paths.js +71 -1
- package/dist/session/runtime-lifecycle.js +225 -0
- package/dist/session/runtime-shutdown.js +95 -0
- package/dist/session/server.js +1194 -7
- package/dist/session/session-health.js +27 -0
- package/dist/shared/agent-text.js +29 -1
- package/dist/shared/errors.js +496 -30
- package/dist/shared/event-loop.js +6 -1
- package/dist/shared/hints.js +37 -1
- package/dist/shared/metrics.js +43 -1
- package/dist/shared/presentation.js +69 -4
- package/dist/shared/stdin-examples.js +77 -1
- package/dist/shared/stdout.js +6 -2
- package/dist/shared/types.js +23 -1
- package/dist/tool-runtime/runtime-tools.js +120 -1
- package/dist/topology/availability.js +663 -0
- package/dist/topology/cache.js +130 -0
- package/dist/topology/candidates.js +372 -0
- package/dist/topology/core.js +903 -0
- package/dist/topology/dependency-snapshot.js +189 -0
- package/dist/topology/model.js +2 -0
- package/dist/topology/scope.js +100 -0
- package/dist/topology/ts-oracle-batch.js +529 -0
- package/dist/topology/ts-oracle-host.js +69 -0
- package/dist/topology/ts-oracle-model.js +2 -0
- package/dist/topology/ts-oracle.js +224 -0
- package/dist/topology/tsconfig-loader.js +105 -0
- package/dist/topology/workspace-project-index.js +542 -0
- package/dist/tracing/config.js +192 -2
- package/dist/tracing/failure-summary.js +100 -0
- package/dist/tracing/trace.js +318 -5
- package/dist/tsc-wrapper/core.js +697 -0
- package/dist/workers/control-plane/aib-control-plane-worker.cjs +32 -32
- package/dist/workers/control-plane/client-config.default.json +3 -3
- package/dist/workers/lexical-worker-child.js +27 -0
- package/dist/workers/lexical-worker-manager.js +394 -0
- package/dist/workers/lexical-worker-protocol.js +2 -0
- package/dist/workers/lexical-worker-runtime.js +25 -0
- package/dist/workers/owned-one-shot-process.js +115 -0
- package/dist/workers/product-storage.js +23 -1
- package/dist/workers/registry.js +241 -1
- package/package.json +8 -13
- package/scripts/postinstall.cjs +29 -29
- package/scripts/provision-runtime.cjs +411 -459
- package/dist/client/http-client.js +0 -1
- package/dist/client/transport-options.js +0 -1
- package/dist/client/websocket-client.js +0 -1
- package/dist/commands/entity-resolution.js +0 -1
- package/dist/commands/file-command.js +0 -1
- package/dist/commands/host-command.js +0 -1
- package/dist/commands/inspect-symbol-query.js +0 -1
- package/dist/commands/list-instances.js +0 -1
- package/dist/commands/module-plan-command.js +0 -1
- package/dist/commands/move-command.js +0 -1
- package/dist/commands/move-to-file.js +0 -2
- package/dist/commands/ping.js +0 -1
- package/dist/commands/refactor-command.js +0 -1
- package/dist/commands/rename-command.js +0 -1
- package/dist/commands/runtime-command.js +0 -4
- package/dist/commands/runtime-info.js +0 -1
- package/dist/commands/validate-module-plan.js +0 -2
- package/dist/compatibility/policy.js +0 -1
- package/dist/config/auto-start-ide.js +0 -1
- package/dist/discovery/registry.js +0 -1
- package/dist/discovery/select-instance.js +0 -1
- package/dist/help/docs/file.rename.md +0 -35
- package/dist/help/docs/mutation.md +0 -60
- package/dist/help/docs/refactor.batch.md +0 -44
- package/dist/help/dsl/docs/file.rename.md +0 -35
- package/dist/help/dsl/docs/mutation.md +0 -60
- package/dist/help/dsl/docs/refactor.batch.md +0 -44
- package/dist/help/dsl/topics/file.rename.md +0 -33
- package/dist/help/dsl/topics/mutation.md +0 -58
- package/dist/help/dsl/topics/refactor.batch.md +0 -33
- package/dist/help/topics/file.rename.md +0 -33
- package/dist/help/topics/mutation.md +0 -58
- package/dist/help/topics/refactor.batch.md +0 -33
- package/dist/ide-launch/common.cjs +0 -162
- package/dist/managed-host/extension-vsix-resolver.js +0 -1
- package/dist/managed-host/manage-serve-web-host.cjs +0 -141
- package/dist/managed-host/serve-web-autostart.js +0 -1
- package/dist/managed-host/serve-web-host.cjs +0 -2115
- package/dist/runtime/managed-runtime-provisioning.js +0 -1
- package/dist/shared/diagnostic-catalog.js +0 -1
- package/dist/shared/diagnostics.js +0 -1
- package/dist/shared/operations.js +0 -1
- package/dist/shared/protocol.js +0 -1
- package/dist/shared/routes.js +0 -1
- package/extension/vscode-refactor-bridge-extension.vsix +0 -0
- package/runtimes/launcher/linux-x64/aib +0 -0
- package/runtimes/launcher/win-x64/aib.exe +0 -0
|
@@ -37,46 +37,18 @@ Prefer batch DSL instead of one-off inline calls.
|
|
|
37
37
|
One request can inspect/mutate several files/entities and save reusable artifacts when supported.
|
|
38
38
|
Use one-off commands only for small checks/changes.
|
|
39
39
|
|
|
40
|
-
For mutations, aib asks
|
|
40
|
+
For mutations, aib asks TypeScript semantic refactors to update affected references and imports.
|
|
41
41
|
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.
|
|
42
42
|
|
|
43
|
-
Working patterns
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
aib config aliases
|
|
50
|
-
|
|
51
|
-
Use focused help when you would otherwise guess how a known AIB capability works.
|
|
52
|
-
|
|
53
|
-
Reread bootstrap when you need to restore the overall AIB workflow faster than piecing it together from focused topics.
|
|
54
|
-
If you just reread bootstrap, do not also read focused topics unless you need details that bootstrap does not cover.
|
|
55
|
-
|
|
56
|
-
Do not reread bootstrap automatically if focused help is enough.
|
|
57
|
-
When refreshing multiple areas, request them together instead of one by one.
|
|
58
|
-
|
|
59
|
-
Example:
|
|
60
|
-
aib help patterns mutation inspect inspect.file inspect.code imports.normalize
|
|
61
|
-
|
|
62
|
-
Use aib before broad file reads when the question is about TS/JS structure, references, dependencies, or focused code.
|
|
63
|
-
Use qr for cross-OS quick reads of text files, logs, JSON, scripts, and line windows.
|
|
64
|
-
It is not a replacement for inspect.
|
|
65
|
-
Use normal text search when the question is just text.
|
|
66
|
-
|
|
67
|
-
For a first pass in a new codebase, map directories before reading files:
|
|
68
|
-
|
|
69
|
-
aib inspect tree src --depth 5 --only-dirs --limit 200
|
|
70
|
-
|
|
71
|
-
Start compact for broad scans.
|
|
72
|
-
Use summary, locations, or local graph views first when output could be large.
|
|
73
|
-
Expand to code or wider graph views only for the parts that matter now.
|
|
74
|
-
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.
|
|
75
|
-
|
|
76
|
-
Compact output is a starting point, not a substitute for needed code.
|
|
43
|
+
Working patterns
|
|
44
|
+
|
|
45
|
+
Use aib before broad file reads when the question is about TS/JS structure, references, dependencies, or focused code.
|
|
46
|
+
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.
|
|
47
|
+
|
|
48
|
+
Compact output is a starting point, not a substitute for needed code.
|
|
77
49
|
Fetch exact code when correctness depends on implementation details.
|
|
78
50
|
|
|
79
|
-
|
|
51
|
+
Set the command timeout to 5 minutes for AIB requests.
|
|
80
52
|
|
|
81
53
|
If a mutation command times out or returns no final output, use:
|
|
82
54
|
|
|
@@ -84,38 +56,37 @@ aib execution status last
|
|
|
84
56
|
|
|
85
57
|
This is an escape hatch for recovering the latest mutation status/result.
|
|
86
58
|
|
|
87
|
-
After reading bootstrap for the first time in a repo, run:
|
|
88
|
-
|
|
89
|
-
aib config
|
|
90
|
-
|
|
91
|
-
Use the output as the repo-local AIB map:
|
|
92
|
-
- pathAliases show short paths to use in AIB requests;
|
|
93
|
-
- importRules show how move/modulePlan should create imports;
|
|
94
|
-
- importNormalize shows defaults for explicit imports normalize;
|
|
95
|
-
- excludes show which noise is intentionally hidden from tree/graph/sync.
|
|
96
|
-
|
|
97
|
-
If pathAliases are missing, stale, or weak for repeated paths, run:
|
|
98
|
-
aib help config-setup.aliases
|
|
99
|
-
|
|
100
|
-
If move/modulePlan imports do not match the repo style, run:
|
|
101
|
-
aib help config-setup.import-rules
|
|
102
|
-
|
|
103
|
-
If you are about to change import style across files, add or adopt tsconfig aliases, or clean imports repeatedly, run:
|
|
104
|
-
aib help config-setup.import-normalize imports.normalize
|
|
105
|
-
|
|
106
|
-
If tree/graph output includes known repo noise, run:
|
|
107
|
-
aib help config-setup.excludes
|
|
108
|
-
|
|
109
|
-
If sync or reveal shows too many visible TypeScript configs, run:
|
|
59
|
+
After reading bootstrap for the first time in a repo, run:
|
|
60
|
+
|
|
61
|
+
aib config; aib help help-protocol recipes rules
|
|
62
|
+
|
|
63
|
+
Use the output as the repo-local AIB map:
|
|
64
|
+
- pathAliases show short paths to use in AIB requests;
|
|
65
|
+
- importRules show how move/modulePlan should create imports;
|
|
66
|
+
- importNormalize shows defaults for explicit imports normalize;
|
|
67
|
+
- excludes show which noise is intentionally hidden from tree/graph/sync.
|
|
68
|
+
|
|
69
|
+
If pathAliases are missing, stale, or weak for repeated paths, run:
|
|
70
|
+
aib help config-setup.aliases
|
|
71
|
+
|
|
72
|
+
If move/modulePlan imports do not match the repo style, run:
|
|
73
|
+
aib help config-setup.import-rules
|
|
74
|
+
|
|
75
|
+
If you are about to change import style across files, add or adopt tsconfig aliases, or clean imports repeatedly, run:
|
|
76
|
+
aib help config-setup.import-normalize imports.normalize
|
|
77
|
+
|
|
78
|
+
If tree/graph output includes known repo noise, run:
|
|
79
|
+
aib help config-setup.excludes
|
|
80
|
+
|
|
81
|
+
If sync or reveal shows too many visible TypeScript configs, run:
|
|
110
82
|
aib help config-setup.tsconfigs
|
|
111
83
|
|
|
112
84
|
Example aib.json config:
|
|
113
85
|
|
|
114
86
|
{
|
|
115
87
|
"pathAliases": {
|
|
116
|
-
"svc": "src/services",
|
|
117
|
-
"cli": "packages/cli/src"
|
|
118
|
-
"ext": "packages/extension/src"
|
|
88
|
+
"svc": "src/services",
|
|
89
|
+
"cli": "packages/cli/src"
|
|
119
90
|
},
|
|
120
91
|
"importRules": [
|
|
121
92
|
{
|
|
@@ -144,17 +115,18 @@ Use them to reduce input tokens for repeated inspect and mutation work.
|
|
|
144
115
|
Aliases are for aib request paths. They do not change TypeScript imports by themselves.
|
|
145
116
|
For import style after mutations, use importRules.
|
|
146
117
|
|
|
147
|
-
importRules control imports created or expanded by move/modulePlan mutation cleanup.
|
|
148
|
-
They do not rewrite the whole project.
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
118
|
+
importRules control imports created or expanded by move/modulePlan mutation cleanup.
|
|
119
|
+
They do not rewrite the whole project.
|
|
120
|
+
|
|
121
|
+
A non-empty importRules block in aib.json is the complete AIB import-style authority.
|
|
122
|
+
Omitted fields keep TypeScript/AIB defaults; they are not filled from editor settings.
|
|
123
|
+
When importRules is empty, AIB may reuse explicit workspace-local IDE/TS preferences.
|
|
124
|
+
|
|
125
|
+
Do not assume IDE/TS defaults match the repo style.
|
|
154
126
|
Set importRules before large move/modulePlan work so imports do not need manual cleanup.
|
|
155
127
|
|
|
156
|
-
importNormalize defines default rules for explicit aib imports normalize commands.
|
|
157
|
-
|
|
128
|
+
importNormalize defines default rules for explicit aib imports normalize commands.
|
|
129
|
+
|
|
158
130
|
It does not run automatically during move/modulePlan; use importRules for mutation-time cleanup.
|
|
159
131
|
|
|
160
132
|
AIB has four config exclude fields:
|
|
@@ -172,24 +144,6 @@ Tree excludes affect directory/file discovery output.
|
|
|
172
144
|
AIB syncs and watches visible tsconfigs.
|
|
173
145
|
sync.tsconfig.exclude affects which TypeScript configs AIB syncs and watches.
|
|
174
146
|
|
|
175
|
-
Important: leave feedback while working.
|
|
176
|
-
|
|
177
|
-
aib is built for agents. Agent feedback is the main signal for improving output, docs, mutations, and token efficiency.
|
|
178
|
-
|
|
179
|
-
Use feedback when something is wrong, unclear, noisy, or could be more efficient.
|
|
180
|
-
|
|
181
|
-
Format:
|
|
182
|
-
feedback "kind | message"
|
|
183
|
-
feedback "kind | topic | message"
|
|
184
|
-
|
|
185
|
-
Kinds:
|
|
186
|
-
bug, confusion, friction, idea, other
|
|
187
|
-
|
|
188
|
-
Topic is optional. Choose any short topic that helps classify the feedback.
|
|
189
|
-
|
|
190
|
-
Example:
|
|
191
|
-
feedback "friction | imports | normalize required manual cleanup"
|
|
192
|
-
|
|
193
147
|
Session
|
|
194
148
|
|
|
195
149
|
Start by creating or selecting your session.
|
|
@@ -285,18 +239,19 @@ map: learn what exists and how it connects
|
|
|
285
239
|
focus: choose files/entities/usages that matter
|
|
286
240
|
code: fetch exact code needed
|
|
287
241
|
|
|
288
|
-
Choose inspect operation:
|
|
289
|
-
|
|
290
|
-
declarations in one file file
|
|
291
|
-
static/dynamic imports imports
|
|
292
|
-
public API exports
|
|
293
|
-
methods/properties of parent members
|
|
294
|
-
exact implementation code
|
|
295
|
-
outgoing deps of one entity deps
|
|
296
|
-
incoming references/callers usages
|
|
297
|
-
file/module connectivity graph
|
|
298
|
-
compact directory layout tree
|
|
299
|
-
|
|
242
|
+
Choose inspect operation:
|
|
243
|
+
|
|
244
|
+
declarations in one file file
|
|
245
|
+
static/dynamic imports imports
|
|
246
|
+
public API exports
|
|
247
|
+
methods/properties of parent members
|
|
248
|
+
exact implementation code
|
|
249
|
+
outgoing deps of one entity deps
|
|
250
|
+
incoming references/callers usages
|
|
251
|
+
file/module connectivity graph
|
|
252
|
+
compact directory layout tree
|
|
253
|
+
path alias candidates aliasCandidates
|
|
254
|
+
repeated declarations/helpers duplicates
|
|
300
255
|
local import cycles cycles
|
|
301
256
|
|
|
302
257
|
Cycles are available but not expanded in bootstrap:
|
|
@@ -354,34 +309,19 @@ Use file to map top-level declarations physically present in one file.
|
|
|
354
309
|
Exported declarations are marked in the output.
|
|
355
310
|
It shows what lives in the file before you decide whether to read code.
|
|
356
311
|
|
|
357
|
-
Good for:
|
|
358
|
-
- mapping a file
|
|
359
|
-
- listing top-level declarations
|
|
360
|
-
- seeing default exports, decorators, IIFEs, and runtime calls
|
|
312
|
+
Good for:
|
|
313
|
+
- mapping a file
|
|
314
|
+
- listing top-level declarations
|
|
315
|
+
- seeing default exports, decorators, IIFEs, and runtime calls
|
|
361
316
|
- checking whether a file contains real declarations or mostly re-exports
|
|
362
317
|
|
|
363
|
-
Do not add limit just in case.
|
|
364
|
-
file output is compact and most files have far fewer than 100 top-level declarations.
|
|
365
|
-
Use limit only after file output is actually too large.
|
|
366
|
-
|
|
367
|
-
Controls:
|
|
368
|
-
file, ranges, localOnly
|
|
369
|
-
|
|
370
|
-
Specific:
|
|
371
|
-
localOnly show local declarations and reexports without resolving facade API; +localOnly
|
|
372
|
-
|
|
373
|
-
Defaults: +ranges
|
|
374
|
-
Use -ranges to show names without ranges.
|
|
375
|
-
|
|
376
318
|
Run:
|
|
377
319
|
aib inspect --stdin
|
|
378
320
|
|
|
379
|
-
Input:
|
|
380
|
-
file @svc/service.ts
|
|
321
|
+
Input:
|
|
322
|
+
file @svc/service.ts
|
|
381
323
|
file src/index.ts
|
|
382
324
|
|
|
383
|
-
inspect file src/service.ts [--ranges] [--local-only]
|
|
384
|
-
|
|
385
325
|
Inspect Imports
|
|
386
326
|
|
|
387
327
|
Use imports to inspect static and dynamic imports in a file.
|
|
@@ -454,32 +394,16 @@ members @svc/service.ts entities=[Service,ServiceOptions] +all +ranges
|
|
|
454
394
|
|
|
455
395
|
inspect members src/service.ts Service [--limit N] [--offset N] [--all] [--ranges]
|
|
456
396
|
|
|
457
|
-
Inspect Code
|
|
458
|
-
|
|
459
|
-
Use code
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
Controls:
|
|
468
|
-
file, entity, entities, parent, show, ranges
|
|
469
|
-
|
|
470
|
-
Specific:
|
|
471
|
-
show include source output
|
|
472
|
-
|
|
473
|
-
Defaults: +show +ranges
|
|
474
|
-
Use -show for names/ranges only.
|
|
475
|
-
Use -ranges for source without ranges.
|
|
476
|
-
|
|
477
|
-
Run:
|
|
478
|
-
aib inspect --stdin
|
|
479
|
-
|
|
480
|
-
Input:
|
|
481
|
-
code @svc/service.ts Service.{render,reset} normalize
|
|
482
|
-
code @svc/serviceB.ts ServiceB.{constructor} default IIFE#1
|
|
397
|
+
Inspect Code
|
|
398
|
+
|
|
399
|
+
Use code when you know file path and declaration/member selector, but do not know ranges.
|
|
400
|
+
|
|
401
|
+
Run:
|
|
402
|
+
aib inspect --stdin
|
|
403
|
+
|
|
404
|
+
Input:
|
|
405
|
+
code @svc/service.ts Service.{render,reset} normalize
|
|
406
|
+
code @svc/serviceB.ts ServiceB.{constructor} default
|
|
483
407
|
|
|
484
408
|
Inspect Deps
|
|
485
409
|
|
|
@@ -533,71 +457,14 @@ usages target=@svc/service.ts entities=[createService,normalize,Service.{render,
|
|
|
533
457
|
Expand saved usages when needed:
|
|
534
458
|
inspect usages --from-file aib:usages:service-usages --focus createService --detail code --limit 20
|
|
535
459
|
|
|
536
|
-
Inspect Graph
|
|
537
|
-
|
|
538
|
-
Use graph when the question is about file/module boundaries, not one symbol.
|
|
539
|
-
It builds a reusable map of local import relationships, then lets you focus files inside that map.
|
|
540
|
-
|
|
541
|
-
Good for:
|
|
542
|
-
- mapping an unfamiliar directory or subsystem
|
|
543
|
-
- seeing which files are hubs, entrypoints, or leaves
|
|
544
|
-
- comparing a few known areas without mapping all src
|
|
545
|
-
- choosing files/entities to inspect next
|
|
546
|
-
- checking module boundaries when ownership is unclear
|
|
547
|
-
|
|
548
|
-
Use deps for one entity's outgoing dependencies.
|
|
549
|
-
Use usages for real incoming references.
|
|
550
|
-
Use graph for file-level connectivity.
|
|
551
|
-
|
|
552
|
-
Model:
|
|
553
|
-
build graph: scope + view + save
|
|
554
|
-
query graph: from + focus + output toggles
|
|
555
|
-
|
|
556
|
-
view controls what enters the saved graph.
|
|
557
|
-
focus only expands details for files already inside it.
|
|
558
|
-
If focus misses a file, rebuild with wider scope or view.
|
|
559
|
-
|
|
560
|
-
Default view:
|
|
561
|
-
directory scope -> local
|
|
562
|
-
file or multiple scopes -> neighbors
|
|
563
|
-
from -> uses the saved graph
|
|
564
|
-
|
|
565
|
-
Views:
|
|
566
|
-
local only files inside scope; best directory map
|
|
567
|
-
neighbors direct import neighborhood; best file-centered map
|
|
568
|
-
expanded wider neighborhood; more output
|
|
569
|
-
|
|
570
|
-
Scope choice:
|
|
571
|
-
scope=src creates a broad reusable map for src.
|
|
572
|
-
scope=src/services is cheaper for local work.
|
|
573
|
-
scope=[src/services,src/components] compares known areas without mapping all src.
|
|
574
|
-
|
|
575
|
-
After you understand which graph sections matter, hide the rest with flags.
|
|
576
|
-
Graph can be noisy; shape it for the current task.
|
|
577
|
-
|
|
578
|
-
Controls:
|
|
579
|
-
scope, view, from, focus, symbolUsage, edges, hubs, entrypoints, leaves, exclude, save
|
|
580
|
-
|
|
581
|
-
Specific:
|
|
582
|
-
view local|neighbors|expanded
|
|
583
|
-
from reuse saved graph index; from=aib:graph:<name>
|
|
584
|
-
focus focus a file inside the graph; focus=path
|
|
585
|
-
symbolUsage show imported symbols on edges; +symbolUsage
|
|
586
|
-
|
|
587
|
-
edges/hubs/entrypoints/leaves output section toggles; +name or -name
|
|
588
|
-
|
|
589
|
-
Run:
|
|
590
|
-
aib inspect --stdin
|
|
460
|
+
Inspect Graph
|
|
591
461
|
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
462
|
+
Graph is a strong tool for file/module connectivity.
|
|
463
|
+
Use it when the question is about boundaries, ownership, hubs, entrypoints, or how files relate through imports.
|
|
464
|
+
Do not use graph for one symbol; use deps/usages instead.
|
|
595
465
|
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
Inline graph focus can add focus and symbolUsage.
|
|
600
|
-
Use DSL or request flags to hide sections such as edges/hubs/entrypoints/leaves.
|
|
466
|
+
Focused topic:
|
|
467
|
+
aib help inspect.graph
|
|
601
468
|
|
|
602
469
|
Inspect Tree
|
|
603
470
|
|
|
@@ -624,30 +491,12 @@ tree src depth=4 +onlyDirs limit=200 +ned +nec
|
|
|
624
491
|
tree @svc depth=3 only=["**/*.ts"] exclude=["**/*.test.ts","**/* copy.ts"]
|
|
625
492
|
tree src depth=3 only=["src/services/**"] limit=80
|
|
626
493
|
|
|
627
|
-
Inspect Duplicates
|
|
628
|
-
|
|
494
|
+
Inspect Duplicates
|
|
495
|
+
|
|
629
496
|
Use duplicates to find repeated top-level names and exact declaration copies.
|
|
630
|
-
It is useful when many files may contain copied local helpers, duplicated types, or repeated declarations.
|
|
631
|
-
|
|
632
|
-
Start with summary for broad scopes.
|
|
633
|
-
Use locations when you need files/lines.
|
|
634
|
-
Use code only for duplicate names you are ready to inspect.
|
|
635
|
-
|
|
636
|
-
Controls:
|
|
637
|
-
scope, detail, limit, offset, kinds, entities, exclude, pathExclude
|
|
638
|
-
|
|
639
|
-
Specific:
|
|
640
|
-
entities only these duplicate names/selectors
|
|
641
|
-
exclude skip these names/selectors
|
|
642
|
-
pathExclude skip files or path/glob-like patterns
|
|
643
|
-
kinds selector kinds, e.g. f, t, c, etc.; kinds=[...]
|
|
644
|
-
|
|
645
|
-
Run:
|
|
646
|
-
aib inspect --stdin
|
|
647
497
|
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
duplicates scope=@svc detail=loc pathExclude=[src/generated,"**/* copy.ts"] limit=20
|
|
498
|
+
Focused topic:
|
|
499
|
+
aib help inspect.duplicates
|
|
651
500
|
|
|
652
501
|
Mutation
|
|
653
502
|
|
|
@@ -656,59 +505,54 @@ Successful mutations update affected references and imports.
|
|
|
656
505
|
|
|
657
506
|
Semantic mutations change TypeScript symbols/declarations.
|
|
658
507
|
File mutations change file layout.
|
|
659
|
-
|
|
660
|
-
After a successful mutation, do not manually patch the same imports unless aib reports a follow-up or checks show a real issue.
|
|
661
|
-
|
|
662
|
-
If mutation imports do not match the repo style, run:
|
|
508
|
+
|
|
509
|
+
After a successful mutation, do not manually patch the same imports unless aib reports a follow-up or checks show a real issue.
|
|
510
|
+
|
|
511
|
+
If mutation imports do not match the repo style, run:
|
|
663
512
|
aib help config-setup.import-rules
|
|
664
513
|
|
|
665
514
|
AIB mutations are designed to reduce manual checking.
|
|
666
515
|
Your job is to express the intent in DSL.
|
|
667
516
|
AIB's job is to convert that intent into code changes.
|
|
668
517
|
|
|
669
|
-
|
|
670
|
-
rename
|
|
671
|
-
move
|
|
672
|
-
|
|
673
|
-
|
|
674
|
-
file
|
|
518
|
+
The DSL inside the request describes the intent:
|
|
519
|
+
rename rename TypeScript symbols
|
|
520
|
+
move move TypeScript declarations into target files
|
|
521
|
+
moveToDir move whole files into directories
|
|
522
|
+
renameFile rename whole files
|
|
523
|
+
module full-file split: move all declarations from one source into target modules
|
|
524
|
+
|
|
525
|
+
Mix rename, move, moveToDir, and renameFile when they belong to the same workflow.
|
|
526
|
+
Run module splits as a separate mutate request.
|
|
675
527
|
|
|
676
528
|
Do not read all changed files just because a mutation touched them.
|
|
677
529
|
That defeats the purpose of using AIB for mechanical refactors.
|
|
678
530
|
|
|
679
|
-
|
|
531
|
+
When the command completes, use its output as the source of truth for what changed and what remains.
|
|
680
532
|
After failure or partial success, use the output to decide the next request.
|
|
681
533
|
|
|
682
|
-
|
|
534
|
+
Set the command timeout to 5 minutes for AIB requests.
|
|
683
535
|
If the harness stops waiting before final output appears, recover with:
|
|
684
536
|
|
|
685
537
|
aib execution status last
|
|
686
538
|
|
|
687
|
-
Modes:
|
|
688
|
-
preview
|
|
689
|
-
apply
|
|
690
|
-
execute
|
|
691
|
-
|
|
539
|
+
Modes:
|
|
540
|
+
preview review DSL intent, then apply by id
|
|
541
|
+
apply execute from preview
|
|
542
|
+
execute execute immediately
|
|
543
|
+
|
|
544
|
+
Use preview/apply when you are learning a mutation command.
|
|
692
545
|
Use execute for routine requests.
|
|
693
|
-
|
|
694
|
-
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.
|
|
695
|
-
Typical examples: a huge modulePlan or refactor batch.
|
|
696
|
-
|
|
697
|
-
preview/apply uses more tool calls and more output tokens.
|
|
698
|
-
preview validates input and planned edits, but writing files can still hit a TS/IDE refactor error.
|
|
699
|
-
execute writes immediately and reports what changed.
|
|
700
|
-
|
|
701
|
-
If a mutation cannot be completed, aib reports the failed part.
|
|
702
546
|
|
|
703
|
-
|
|
704
|
-
|
|
547
|
+
preview/apply uses more tool calls and more output tokens.
|
|
548
|
+
preview checks the DSL intent; execute/apply writes files and can still hit mutation errors.
|
|
549
|
+
execute writes immediately and reports what changed.
|
|
705
550
|
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
If
|
|
710
|
-
|
|
711
|
-
Then decide whether failed parts need smaller requests or manual fallback.
|
|
551
|
+
Prefer one mutate DSL request for related changes.
|
|
552
|
+
For mixable operations, batch the ordered workflow instead of sending one command per symbol or file.
|
|
553
|
+
|
|
554
|
+
If a mutation cannot be fully completed, aib reports what failed, what was applied, and what did not run.
|
|
555
|
+
Fix wrong input before retrying; do not repeat provider/manual-extraction failures unchanged.
|
|
712
556
|
|
|
713
557
|
Rename
|
|
714
558
|
|
|
@@ -716,92 +560,70 @@ Rename is for semantic symbol renames.
|
|
|
716
560
|
It follows TypeScript references.
|
|
717
561
|
It is not plain-text replacement.
|
|
718
562
|
|
|
719
|
-
Run:
|
|
720
|
-
aib
|
|
721
|
-
|
|
722
|
-
Input:
|
|
723
|
-
@
|
|
563
|
+
Run:
|
|
564
|
+
aib mutate execute --stdin
|
|
565
|
+
|
|
566
|
+
Input:
|
|
567
|
+
@source src/service.ts
|
|
724
568
|
rename oldName->newName OldService->NewService
|
|
725
569
|
|
|
726
570
|
Move
|
|
727
571
|
|
|
728
|
-
Move transfers
|
|
729
|
-
Move is semantic; it moves supported declarations and updates affected imports/references.
|
|
730
|
-
Use
|
|
731
|
-
For large file splitting across several target files, use modulePlan.
|
|
572
|
+
Move transfers declarations from one source file to target files.
|
|
573
|
+
Move is semantic; it moves supported declarations and updates affected imports/references.
|
|
574
|
+
Use move as the default operation for moving declarations, including multi-target extractions.
|
|
732
575
|
|
|
733
576
|
If imports created by move do not match the repo style, run:
|
|
734
577
|
aib help config-setup.import-rules
|
|
735
578
|
|
|
736
|
-
|
|
737
|
-
|
|
738
|
-
|
|
739
|
-
|
|
579
|
+
Run:
|
|
580
|
+
aib mutate execute --stdin
|
|
581
|
+
|
|
740
582
|
Input:
|
|
741
583
|
@source src/service.ts
|
|
742
584
|
move src/service.helpers.ts: oldHelper OtherHelper
|
|
585
|
+
move src/service.types.ts: ServiceOptions
|
|
743
586
|
|
|
744
|
-
Module Plan
|
|
745
|
-
|
|
746
|
-
modulePlan is for splitting large files into smaller modules.
|
|
747
|
-
Use it when a large file should be refactored into several target files.
|
|
587
|
+
Module Plan
|
|
748
588
|
|
|
749
|
-
|
|
750
|
-
|
|
751
|
-
If imports created by modulePlan do not match the repo style, run:
|
|
752
|
-
aib help config-setup.import-rules
|
|
753
|
-
|
|
754
|
-
Use +expectEmpty when your modulePlan intent is to move all declarations out of the source file.
|
|
755
|
-
It does not change the move behavior; it only asks output to report remaining source declarations if any remain.
|
|
756
|
-
Use it only when remaining declarations would mean the split did not match your intent.
|
|
757
|
-
Do not use it for partial extractions.
|
|
758
|
-
|
|
759
|
-
Split one large source file into several targets:
|
|
760
|
-
Run:
|
|
761
|
-
aib modulePlan execute --stdin
|
|
589
|
+
Use module only for a full-file split: moving all declarations from one source file into target modules.
|
|
762
590
|
|
|
763
|
-
|
|
764
|
-
|
|
765
|
-
module src/large-service.types.ts: ServiceOptions ServiceMode
|
|
766
|
-
module src/large-service.core.ts: LargeService createLargeService
|
|
591
|
+
Focused topic:
|
|
592
|
+
aib help modulePlan
|
|
767
593
|
|
|
768
|
-
|
|
769
|
-
@source sets the source file once.
|
|
770
|
-
+expectEmpty says no declarations should remain in the source after the plan.
|
|
771
|
-
Each module line declares one target and the entities that should move there.
|
|
594
|
+
Mixed Mutation
|
|
772
595
|
|
|
773
|
-
|
|
596
|
+
Use one mutate request for one ordered workflow.
|
|
597
|
+
Mix rename, move, moveToDir, and renameFile when they belong to the same workflow.
|
|
598
|
+
Order lines the way the workflow should run.
|
|
599
|
+
Do not include module lines in mixed requests.
|
|
774
600
|
|
|
775
|
-
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
Use modulePlan when the main intent is only to split one large file into target modules.
|
|
779
|
-
Use refactor batch when the split also includes coordinated renames or mixed mutation steps.
|
|
601
|
+
Run:
|
|
602
|
+
aib mutate execute --stdin
|
|
780
603
|
|
|
781
|
-
Example: rename and move in one request
|
|
782
|
-
|
|
783
|
-
Run:
|
|
784
|
-
aib refactor batch execute --stdin
|
|
785
|
-
|
|
786
604
|
Input:
|
|
787
605
|
@source src/service.ts
|
|
788
|
-
rename oldHelper->newHelper
|
|
606
|
+
rename oldHelper->newHelper AUser->AdminUser
|
|
789
607
|
move src/service.helpers.ts: newHelper
|
|
790
|
-
move src/service.types.ts:
|
|
608
|
+
move src/service.types.ts: AdminUser
|
|
609
|
+
|
|
610
|
+
@base src/main
|
|
611
|
+
moveToDir facade: ../services/fileA.ts fileB.ts
|
|
612
|
+
moveToDir ../core/services: fileC.ts classes/main/fileD.ts
|
|
791
613
|
|
|
792
|
-
|
|
793
|
-
|
|
614
|
+
@base src
|
|
615
|
+
renameFile svc/ws-cli.ts->cli.ts svc/ws-command.ts->command.ts
|
|
794
616
|
|
|
795
|
-
File
|
|
617
|
+
File Layout
|
|
796
618
|
|
|
797
|
-
Use
|
|
619
|
+
Use moveToDir and renameFile when the filesystem layout is the intent.
|
|
798
620
|
Do not change filesystem layout manually.
|
|
799
621
|
|
|
800
622
|
Focused topics:
|
|
801
|
-
aib help
|
|
802
|
-
|
|
803
|
-
Layout smell trigger:
|
|
804
|
-
If a directory has many related files sharing a prefix, mixed responsibilities, or files that should be grouped by feature, read:
|
|
623
|
+
aib help moveToDir renameFile
|
|
624
|
+
|
|
625
|
+
Layout smell trigger:
|
|
626
|
+
If a directory has many related files sharing a prefix, mixed responsibilities, or files that should be grouped by feature, read:
|
|
805
627
|
aib help recipe.file-layout
|
|
806
628
|
|
|
807
629
|
Imports Normalize
|
|
@@ -811,16 +633,23 @@ Use imports normalize for explicit import-style cleanup.
|
|
|
811
633
|
Focused topic:
|
|
812
634
|
aib help imports.normalize
|
|
813
635
|
|
|
814
|
-
|
|
636
|
+
Import Boundaries
|
|
637
|
+
|
|
638
|
+
When you create a barrel/index file and want consumers to import through it,
|
|
639
|
+
or when consumers import through a barrel but should use direct source imports, read:
|
|
815
640
|
|
|
816
|
-
|
|
817
|
-
|
|
818
|
-
JS/
|
|
819
|
-
CJS / JS CommonJS inspect + rename
|
|
641
|
+
aib help recipe.import-boundary
|
|
642
|
+
|
|
643
|
+
JS/TS compatibility
|
|
820
644
|
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
rename/move/
|
|
645
|
+
With tsconfig:
|
|
646
|
+
TS/TSX inspect + mutate rename/move/module
|
|
647
|
+
JS/MJS/JSX ESM inspect + mutate rename/move/module
|
|
648
|
+
CJS / JS CommonJS inspect + mutate rename
|
|
649
|
+
|
|
650
|
+
Without tsconfig:
|
|
651
|
+
JS/MJS/JSX/CJS inspect only
|
|
652
|
+
mutate rename/move/module require tsconfig
|
|
824
653
|
|
|
825
654
|
CommonJS means .cjs or module.exports / exports.*.
|
|
826
655
|
|
|
@@ -861,23 +690,29 @@ Use qr for cross-OS quick reads of text files: ts, js, cmd, sh, json, log, txt,
|
|
|
861
690
|
Use it for compact line windows and batching.
|
|
862
691
|
qr supports AIB path aliases.
|
|
863
692
|
|
|
864
|
-
It is not a replacement for inspect.
|
|
693
|
+
It is not a replacement for aib inspect in TS/JS cases.
|
|
865
694
|
Use it as a token-efficient way to read text data when semantic inspect is not needed.
|
|
866
695
|
|
|
867
696
|
For focused text reads, prefer qr over cat/Get-Content/type, especially when aliases, line windows, or batching help.
|
|
868
697
|
Use shell reads only when piping into shell tooling or qr is unavailable.
|
|
869
698
|
|
|
870
699
|
Controls:
|
|
871
|
-
h=N
|
|
872
|
-
t=N
|
|
873
|
-
|
|
874
|
-
|
|
700
|
+
h=N head; first N lines
|
|
701
|
+
t=N tail; last N lines
|
|
702
|
+
r=A:B,C:D,E ranges; A with next B lines, C with next D lines, E with default 80 lines
|
|
703
|
+
s=A:B,C:D,E slices; inclusive A through B, C through D, and line E
|
|
704
|
+
all whole file
|
|
875
705
|
|
|
876
706
|
If no window is provided, qr uses h=80.
|
|
877
|
-
If all is present, it
|
|
707
|
+
If all is present, it reads the whole file.
|
|
708
|
+
Avoid `all` for files whose size/content is unknown; it can dump unnecessary context.
|
|
709
|
+
Overlapping windows are merged.
|
|
710
|
+
|
|
711
|
+
Use s= when copying ranges from inspect file.
|
|
712
|
+
Combine windows for the same file instead of repeating the path.
|
|
878
713
|
|
|
879
714
|
Inline:
|
|
880
|
-
aib qr @scripts/a.txt h=80 @scripts/b.py
|
|
715
|
+
aib qr @svc/users.ts s=3:42,66:84,92 @scripts/a.txt h=80 @scripts/b.py r=300:50,500 .prettierrc all
|
|
881
716
|
|
|
882
717
|
aib rg
|
|
883
718
|
|