agentic-qe 3.8.13 → 3.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/skills/skills-manifest.json +1 -1
- package/CHANGELOG.md +48 -0
- package/dist/adapters/a2ui/integration/agui-sync.js +2 -1
- package/dist/audit/witness-chain.js +15 -3
- package/dist/boot/fast-paths.d.ts +24 -0
- package/dist/boot/fast-paths.js +43 -0
- package/dist/boot/parallel-prefetch.d.ts +26 -0
- package/dist/boot/parallel-prefetch.js +36 -0
- package/dist/cli/bundle.js +12 -9431
- package/dist/cli/chunks/adapter-WBR5NXS3.js +2 -0
- package/dist/cli/chunks/agent-booster-wasm-PQYB7VRU.js +2 -0
- package/dist/cli/chunks/agent-handler-QDAB5NQS.js +33 -0
- package/dist/cli/chunks/aqe-learning-engine-TK4JQCGT.js +2 -0
- package/dist/cli/chunks/audit-S7JUYYVP.js +3 -0
- package/dist/cli/chunks/base-2WXOSMBQ.js +2 -0
- package/dist/cli/chunks/better-sqlite3-7KY2RDXO.js +2 -0
- package/dist/cli/chunks/brain-handler-PPEGDCN4.js +68 -0
- package/dist/cli/chunks/branch-enumerator-XK4V5W7L.js +7 -0
- package/dist/cli/chunks/browser-PALA5PL3.js +4 -0
- package/dist/cli/chunks/browser-workflow-42F7GK5T.js +2 -0
- package/dist/cli/chunks/chunk-24FKIJNC.js +15 -0
- package/dist/cli/chunks/chunk-263XS447.js +2 -0
- package/dist/cli/chunks/chunk-2BZFNEN2.js +4 -0
- package/dist/cli/chunks/chunk-2E5NQNSU.js +180 -0
- package/dist/cli/chunks/chunk-2I7J3O6V.js +2 -0
- package/dist/cli/chunks/chunk-3ADGXLTM.js +14 -0
- package/dist/cli/chunks/chunk-3IHG3WOY.js +12 -0
- package/dist/cli/chunks/chunk-3IUNFTIF.js +2 -0
- package/dist/cli/chunks/chunk-3JPRUND5.js +2 -0
- package/dist/cli/chunks/chunk-3NZLZHJI.js +2 -0
- package/dist/cli/chunks/chunk-3THRQEZ2.js +95 -0
- package/dist/cli/chunks/chunk-3ZOONQG6.js +2 -0
- package/dist/cli/chunks/chunk-4B6NCELM.js +2 -0
- package/dist/cli/chunks/chunk-4I2IOUS4.js +2 -0
- package/dist/cli/chunks/chunk-4VBTXZRM.js +2 -0
- package/dist/cli/chunks/chunk-4VUPRTVX.js +3 -0
- package/dist/cli/chunks/chunk-4YOMLWEK.js +70 -0
- package/dist/cli/chunks/chunk-4YS3IJ45.js +2 -0
- package/dist/cli/chunks/chunk-5SKGFSKD.js +2 -0
- package/dist/cli/chunks/chunk-5T2ZQWKF.js +27 -0
- package/dist/cli/chunks/chunk-62ADTHV7.js +2 -0
- package/dist/cli/chunks/chunk-6EOS7KX2.js +2 -0
- package/dist/cli/chunks/chunk-6SVX4DJC.js +6 -0
- package/dist/cli/chunks/chunk-72WOAVK6.js +2 -0
- package/dist/cli/chunks/chunk-7R6YMLVS.js +3 -0
- package/dist/cli/chunks/chunk-7VDBAVTY.js +2 -0
- package/dist/cli/chunks/chunk-AFLLQ5PP.js +15 -0
- package/dist/cli/chunks/chunk-AKE543X2.js +2 -0
- package/dist/cli/chunks/chunk-B36CDR4U.js +2 -0
- package/dist/cli/chunks/chunk-B6LLWYQ6.js +2 -0
- package/dist/cli/chunks/chunk-BDIEMZ22.js +91 -0
- package/dist/cli/chunks/chunk-BGXNSCXX.js +4 -0
- package/dist/cli/chunks/chunk-BLBRY5UD.js +2 -0
- package/dist/cli/chunks/chunk-BPWXXEH2.js +3029 -0
- package/dist/cli/chunks/chunk-BR26T7ZS.js +180 -0
- package/dist/cli/chunks/chunk-BTREG4IW.js +2 -0
- package/dist/cli/chunks/chunk-BULKFVYX.js +2 -0
- package/dist/cli/chunks/chunk-BXAXGEFC.js +24 -0
- package/dist/cli/chunks/chunk-CL6POIX4.js +2 -0
- package/dist/cli/chunks/chunk-CS2KS7LP.js +2 -0
- package/dist/cli/chunks/chunk-CWFB6BSA.js +316 -0
- package/dist/cli/chunks/chunk-DRT3WKQW.js +2 -0
- package/dist/cli/chunks/chunk-EHDQJQ6Y.js +27 -0
- package/dist/cli/chunks/chunk-ESVQ6MEB.js +2 -0
- package/dist/cli/chunks/chunk-FEKY7T6Q.js +2 -0
- package/dist/cli/chunks/chunk-FGA7VIFR.js +7 -0
- package/dist/cli/chunks/chunk-FIA6X7UL.js +2 -0
- package/dist/cli/chunks/chunk-GAOJV3OX.js +2 -0
- package/dist/cli/chunks/chunk-GKNNSCLC.js +5 -0
- package/dist/cli/chunks/chunk-GPQ57KA4.js +2 -0
- package/dist/cli/chunks/chunk-GRUUQAR6.js +2 -0
- package/dist/cli/chunks/chunk-HRO6OZQD.js +2 -0
- package/dist/cli/chunks/chunk-HY6PMO5W.js +66 -0
- package/dist/cli/chunks/chunk-IAV2JMIX.js +167 -0
- package/dist/cli/chunks/chunk-IFNIIK34.js +21 -0
- package/dist/cli/chunks/chunk-IGJPMN4I.js +3 -0
- package/dist/cli/chunks/chunk-J3KWWR6Z.js +1 -0
- package/dist/cli/chunks/chunk-JBANAPWG.js +2 -0
- package/dist/cli/chunks/chunk-JJO7Y4H3.js +604 -0
- package/dist/cli/chunks/chunk-JRYGQO2W.js +2 -0
- package/dist/cli/chunks/chunk-JXM26HEE.js +2 -0
- package/dist/cli/chunks/chunk-JZSDOIXA.js +2 -0
- package/dist/cli/chunks/chunk-KP5NUODU.js +3 -0
- package/dist/cli/chunks/chunk-LHJQD2VU.js +750 -0
- package/dist/cli/chunks/chunk-LNQIY6BP.js +2 -0
- package/dist/cli/chunks/chunk-MDUHYUHF.js +2 -0
- package/dist/cli/chunks/chunk-MV6CMOJQ.js +65 -0
- package/dist/cli/chunks/chunk-MZOFWJTM.js +2 -0
- package/dist/cli/chunks/chunk-N2NS2PHA.js +45 -0
- package/dist/cli/chunks/chunk-N4TL73TH.js +314 -0
- package/dist/cli/chunks/chunk-N5UXCLFI.js +2 -0
- package/dist/cli/chunks/chunk-NZ2VCPN4.js +2 -0
- package/dist/cli/chunks/chunk-OF4D7MYI.js +2 -0
- package/dist/cli/chunks/chunk-OI5NGQO2.js +2 -0
- package/dist/cli/chunks/chunk-OLHKGP35.js +2 -0
- package/dist/cli/chunks/chunk-QOVHWZEP.js +1 -0
- package/dist/cli/chunks/chunk-RFSN6IDA.js +79 -0
- package/dist/cli/chunks/chunk-RTGGL7D7.js +4 -0
- package/dist/cli/chunks/chunk-RU5WAHB7.js +3 -0
- package/dist/cli/chunks/chunk-SUSEVMZT.js +2 -0
- package/dist/cli/chunks/chunk-TLHP5EII.js +2 -0
- package/dist/cli/chunks/chunk-TWUWL5EJ.js +2 -0
- package/dist/cli/chunks/chunk-U5RN7YQW.js +2 -0
- package/dist/cli/chunks/chunk-UFUVUO3J.js +2 -0
- package/dist/cli/chunks/chunk-UQHYFOBX.js +16 -0
- package/dist/cli/chunks/chunk-VOS4NQSF.js +2 -0
- package/dist/cli/chunks/chunk-VSVXUTJN.js +256 -0
- package/dist/cli/chunks/chunk-WBQSXPBI.js +2 -0
- package/dist/cli/chunks/chunk-WGMPEW2T.js +2 -0
- package/dist/cli/chunks/chunk-WIEC7VKK.js +2 -0
- package/dist/cli/chunks/chunk-WJ3DLOXF.js +14 -0
- package/dist/cli/chunks/chunk-X3KI6JOY.js +9 -0
- package/dist/cli/chunks/chunk-X5IJGWYG.js +2 -0
- package/dist/cli/chunks/chunk-XIBDETCS.js +146 -0
- package/dist/cli/chunks/chunk-XLRQYLWW.js +2 -0
- package/dist/cli/chunks/chunk-XO6PVK2P.js +3 -0
- package/dist/cli/chunks/chunk-XRE2HCWG.js +3 -0
- package/dist/cli/chunks/chunk-XT2V2322.js +2 -0
- package/dist/cli/chunks/chunk-Y7BHKZFJ.js +18 -0
- package/dist/cli/chunks/chunk-YAGODYIG.js +59 -0
- package/dist/cli/chunks/chunk-YANUP2RO.js +2 -0
- package/dist/cli/chunks/chunk-YPFOCNOE.js +30 -0
- package/dist/cli/chunks/chunk-YR6ZZGH7.js +81 -0
- package/dist/cli/chunks/chunk-YVA65UZL.js +2 -0
- package/dist/cli/chunks/chunk-YW2THB5Q.js +2 -0
- package/dist/cli/chunks/chunk-ZAPS3UGQ.js +20 -0
- package/dist/cli/chunks/chunk-ZDATDCYN.js +2 -0
- package/dist/cli/chunks/ci-J374KDLI.js +81 -0
- package/dist/cli/chunks/ci-output-7JN7F6CI.js +2 -0
- package/dist/cli/chunks/claude-flow-setup-245JLJCN.js +2 -0
- package/dist/cli/chunks/client-MCSNSH2C.js +2 -0
- package/dist/cli/chunks/cline-installer-LBA2M5N3.js +4 -0
- package/dist/cli/chunks/code-U4N4WONM.js +38 -0
- package/dist/cli/chunks/code-index-extractor-A57Z6BO4.js +3 -0
- package/dist/cli/chunks/codex-installer-UXMK2N4T.js +8 -0
- package/dist/cli/chunks/completions-W66BSCOE.js +1364 -0
- package/dist/cli/chunks/complexity-analyzer-AB4OZARV.js +2 -0
- package/dist/cli/chunks/continuedev-installer-LRFZ2SJM.js +14 -0
- package/dist/cli/chunks/copilot-installer-CQ3JYBIB.js +3 -0
- package/dist/cli/chunks/cost-tracker-4F723RB6.js +2 -0
- package/dist/cli/chunks/coverage-4PUEQXAY.js +27 -0
- package/dist/cli/chunks/cross-domain-router-OWR5IJ5G.js +2 -0
- package/dist/cli/chunks/cursor-installer-JZEDEDHA.js +3 -0
- package/dist/cli/chunks/daemon-B7TWGHXQ.js +19 -0
- package/dist/cli/chunks/dag-attention-scheduler-JWO6XI6A.js +2 -0
- package/dist/cli/chunks/detect-L6ZZHUSX.js +2 -0
- package/dist/cli/chunks/domain-handler-FT5FLZWL.js +25 -0
- package/dist/cli/chunks/domain-transfer-5Y4FGJAJ.js +2 -0
- package/dist/cli/chunks/dream-4TDBIYED.js +2 -0
- package/dist/cli/chunks/esm-node-2PKHKOTS.js +2 -0
- package/dist/cli/chunks/eval-GHMPFGWV.js +15 -0
- package/dist/cli/chunks/fast-paths-B3R647KN.js +2 -0
- package/dist/cli/chunks/feature-flags-DWS7ARSX.js +2 -0
- package/dist/cli/chunks/feature-flags-IVQ3AL4Q.js +2 -0
- package/dist/cli/chunks/file-discovery-QFPA6GMV.js +2 -0
- package/dist/cli/chunks/fleet-EKOKMOMW.js +43 -0
- package/dist/cli/chunks/gnn-wrapper-OYC55N5E.js +2 -0
- package/dist/cli/chunks/heartbeat-handler-MBBS4IBU.js +48 -0
- package/dist/cli/chunks/heartbeat-scheduler-XDGMOT7X.js +2 -0
- package/dist/cli/chunks/hnsw-index-YO7CT23I.js +2 -0
- package/dist/cli/chunks/hnswlib-node-56YWVXFE.js +2 -0
- package/dist/cli/chunks/hooks-L5VLZGEK.js +101 -0
- package/dist/cli/chunks/hypergraph-engine-A4Y2ZRAG.js +2 -0
- package/dist/cli/chunks/hypergraph-handler-3HDGB5SZ.js +35 -0
- package/dist/cli/chunks/impact-analyzer-UEIGXSZ4.js +2 -0
- package/dist/cli/chunks/init-handler-JDET6WUN.js +68 -0
- package/dist/cli/chunks/init-wizard-JWZUGIPJ.js +2 -0
- package/dist/cli/chunks/kernel-YNDTVKIW.js +2 -0
- package/dist/cli/chunks/kilocode-installer-GZZG5AFW.js +4 -0
- package/dist/cli/chunks/kiro-installer-IWNY5TKH.js +74 -0
- package/dist/cli/chunks/knowledge-graph-NGJKFTSN.js +2 -0
- package/dist/cli/chunks/learning-722ZNSZ6.js +107 -0
- package/dist/cli/chunks/llm-router-DNAV746L.js +30 -0
- package/dist/cli/chunks/load-Y3GCUFM4.js +2 -0
- package/dist/cli/chunks/load-test-GZUBXFF3.js +2 -0
- package/dist/cli/chunks/mcp-LKPIBZ3W.js +2 -0
- package/dist/cli/chunks/memory-L57MLFOP.js +32 -0
- package/dist/cli/chunks/memory-backend-3NQIZUXE.js +2 -0
- package/dist/cli/chunks/memory-handlers-MDZQ7HVW.js +2 -0
- package/dist/cli/chunks/opencode-installer-4HUB36H5.js +3 -0
- package/dist/cli/chunks/orchestrator-QHSBB2UC.js +371 -0
- package/dist/cli/chunks/pipeline-D3QER35Z.js +19 -0
- package/dist/cli/chunks/platform-T4E7Q3RD.js +2 -0
- package/dist/cli/chunks/plugin-JHW2YPRC.js +27 -0
- package/dist/cli/chunks/prime-radiant-advanced-wasm-G7CFNNQV.js +2 -0
- package/dist/cli/chunks/protocol-executor-SPUVRDWT.js +2 -0
- package/dist/cli/chunks/protocol-handler-2BQQ4HDM.js +20 -0
- package/dist/cli/chunks/prove-UQ6JFT73.js +3 -0
- package/dist/cli/chunks/qe-reasoning-bank-3HBK2FVD.js +2 -0
- package/dist/cli/chunks/quality-JRZYMC77.js +7 -0
- package/dist/cli/chunks/queen-coordinator-RW3NKO5A.js +2 -0
- package/dist/cli/chunks/real-embeddings-GK63VF35.js +2 -0
- package/dist/cli/chunks/roocode-installer-F4E2LAYR.js +4 -0
- package/dist/cli/chunks/router-RJGHWDQ3.js +2 -0
- package/dist/cli/chunks/routing-feedback-ZXBXFKX6.js +2 -0
- package/dist/cli/chunks/routing-handler-VNKFUUGB.js +20 -0
- package/dist/cli/chunks/ruvector-commands-2TLNHC3A.js +8 -0
- package/dist/cli/chunks/rvf-dual-writer-MQW2SJLT.js +2 -0
- package/dist/cli/chunks/rvf-native-adapter-LKFKTMUN.js +2 -0
- package/dist/cli/chunks/safe-db-G22E5ROA.js +2 -0
- package/dist/cli/chunks/schedule-Y7VVCPYV.js +2 -0
- package/dist/cli/chunks/scheduler-AUQIFQB7.js +2 -0
- package/dist/cli/chunks/security-EBEG2OPU.js +14 -0
- package/dist/cli/chunks/shared-rvf-dual-writer-BVSCQAFS.js +2 -0
- package/dist/cli/chunks/sqlite-persistence-JAVHUGGL.js +2 -0
- package/dist/cli/chunks/status-handler-VZ32M4G4.js +45 -0
- package/dist/cli/chunks/structural-health-K6LRCKV6.js +2 -0
- package/dist/cli/chunks/sync-MHSHNLIM.js +23 -0
- package/dist/cli/chunks/task-handler-JNOIBZ2G.js +49 -0
- package/dist/cli/chunks/task-handlers-P5DSUKND.js +2 -0
- package/dist/cli/chunks/test-DO22BNIL.js +33 -0
- package/dist/cli/chunks/test-scheduling-VLRQZEFL.js +15 -0
- package/dist/cli/chunks/token-bootstrap-4VJKGVMK.js +2 -0
- package/dist/cli/chunks/token-usage-LG3PXRXH.js +25 -0
- package/dist/cli/chunks/transformers-GY7SIKEU.js +2 -0
- package/dist/cli/chunks/tree-sitter-wasm-parser-FT2KB66N.js +2 -0
- package/dist/cli/chunks/types-QJGNBKP2.js +2 -0
- package/dist/cli/chunks/unified-memory-XYGENQUT.js +2 -0
- package/dist/cli/chunks/unified-memory-hnsw-MVEGQBF3.js +2 -0
- package/dist/cli/chunks/unified-persistence-PFRCWEUG.js +2 -0
- package/dist/cli/chunks/validate-VQCRSVNQ.js +21 -0
- package/dist/cli/chunks/validate-swarm-A5DHAWTP.js +14 -0
- package/dist/cli/chunks/vibium-RZBSL4EB.js +2 -0
- package/dist/cli/chunks/visual-security-V47BLGJM.js +2 -0
- package/dist/cli/chunks/web-tree-sitter-7C4NXEOF.js +2 -0
- package/dist/cli/chunks/windsurf-installer-ES3KPQG3.js +7 -0
- package/dist/cli/chunks/witness-chain-BR63P4A7.js +2 -0
- package/dist/cli/chunks/workflow-JETHX4ML.js +51 -0
- package/dist/cli/chunks/workflow-orchestrator-7PZMX3JZ.js +2 -0
- package/dist/cli/chunks/wrappers-WP5RH745.js +2 -0
- package/dist/cli/commands/daemon.d.ts +13 -0
- package/dist/cli/commands/daemon.js +224 -0
- package/dist/cli/commands/hooks-handlers/hooks-shared.js +2 -1
- package/dist/cli/commands/plugin.d.ts +12 -0
- package/dist/cli/commands/plugin.js +135 -0
- package/dist/cli/commands/workflow.d.ts +10 -0
- package/dist/cli/commands/workflow.js +587 -0
- package/dist/cli/handlers/brain-handler.js +13 -8
- package/dist/cli/handlers/heartbeat-handler.d.ts +1 -0
- package/dist/cli/handlers/heartbeat-handler.js +20 -10
- package/dist/cli/handlers/hypergraph-handler.js +3 -3
- package/dist/cli/handlers/init-handler.js +10 -9
- package/dist/cli/handlers/interfaces.d.ts +4 -4
- package/dist/cli/index.js +159 -638
- package/dist/cli/lazy-registry.d.ts +27 -0
- package/dist/cli/lazy-registry.js +70 -0
- package/dist/context/compaction/context-budget.d.ts +71 -0
- package/dist/context/compaction/context-budget.js +120 -0
- package/dist/context/compaction/index.d.ts +96 -0
- package/dist/context/compaction/index.js +259 -0
- package/dist/context/compaction/llm-caller-adapter.d.ts +14 -0
- package/dist/context/compaction/llm-caller-adapter.js +47 -0
- package/dist/context/compaction/tier1-microcompact.d.ts +33 -0
- package/dist/context/compaction/tier1-microcompact.js +47 -0
- package/dist/context/compaction/tier2-session-summary.d.ts +72 -0
- package/dist/context/compaction/tier2-session-summary.js +172 -0
- package/dist/context/compaction/tier3-llm-compact.d.ts +65 -0
- package/dist/context/compaction/tier3-llm-compact.js +166 -0
- package/dist/context/compaction/tier4-reactive.d.ts +54 -0
- package/dist/context/compaction/tier4-reactive.js +129 -0
- package/dist/coordination/consensus/providers/claude-provider.d.ts +1 -0
- package/dist/coordination/consensus/providers/claude-provider.js +23 -3
- package/dist/domains/test-generation/generators/base-test-generator.d.ts +1 -1
- package/dist/domains/test-generation/generators/base-test-generator.js +11 -11
- package/dist/domains/test-generation/generators/go-test-generator.js +12 -12
- package/dist/domains/test-generation/generators/junit5-generator.js +9 -9
- package/dist/domains/test-generation/generators/kotlin-junit-generator.js +10 -10
- package/dist/domains/test-generation/generators/pytest-generator.js +8 -8
- package/dist/domains/test-generation/generators/swift-testing-generator.js +8 -8
- package/dist/domains/test-generation/generators/test-value-helpers.d.ts +20 -0
- package/dist/domains/test-generation/generators/test-value-helpers.js +48 -0
- package/dist/domains/test-generation/generators/xunit-generator.js +11 -11
- package/dist/hooks/cross-phase-hooks.d.ts +11 -0
- package/dist/hooks/cross-phase-hooks.js +73 -9
- package/dist/hooks/security/config-snapshot.d.ts +21 -0
- package/dist/hooks/security/config-snapshot.js +33 -0
- package/dist/hooks/security/exit-codes.d.ts +28 -0
- package/dist/hooks/security/exit-codes.js +33 -0
- package/dist/hooks/security/index.d.ts +15 -0
- package/dist/hooks/security/index.js +15 -0
- package/dist/hooks/security/ssrf-guard.d.ts +25 -0
- package/dist/hooks/security/ssrf-guard.js +69 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -2
- package/dist/init/init-wizard-hooks.js +15 -1
- package/dist/init/phases/07-hooks.js +2 -2
- package/dist/init/settings-merge.js +3 -7
- package/dist/kernel/kernel.js +35 -0
- package/dist/kernel/memory-backend.js +3 -1
- package/dist/mcp/bundle.js +416 -362
- package/dist/mcp/entry.js +132 -77
- package/dist/mcp/http-server.js +4 -1
- package/dist/mcp/index.d.ts +2 -2
- package/dist/mcp/index.js +5 -4
- package/dist/mcp/middleware/batch-executor.d.ts +46 -0
- package/dist/mcp/middleware/batch-executor.js +150 -0
- package/dist/mcp/middleware/microcompact.d.ts +97 -0
- package/dist/mcp/middleware/microcompact.js +179 -0
- package/dist/mcp/middleware/middleware-chain.d.ts +37 -0
- package/dist/mcp/middleware/middleware-chain.js +60 -0
- package/dist/mcp/protocol-server.d.ts +16 -0
- package/dist/mcp/protocol-server.js +140 -36
- package/dist/mcp/services/session-durability-middleware.d.ts +22 -0
- package/dist/mcp/services/session-durability-middleware.js +64 -0
- package/dist/mcp/services/session-resume.d.ts +29 -0
- package/dist/mcp/services/session-resume.js +221 -0
- package/dist/mcp/services/session-store.d.ts +84 -0
- package/dist/mcp/services/session-store.js +163 -0
- package/dist/mcp/tool-registry.d.ts +9 -0
- package/dist/mcp/tool-registry.js +30 -1
- package/dist/mcp/types.d.ts +1 -0
- package/dist/plugins/cache.d.ts +44 -0
- package/dist/plugins/cache.js +149 -0
- package/dist/plugins/index.d.ts +15 -0
- package/dist/plugins/index.js +15 -0
- package/dist/plugins/lifecycle.d.ts +67 -0
- package/dist/plugins/lifecycle.js +175 -0
- package/dist/plugins/manifest.d.ts +45 -0
- package/dist/plugins/manifest.js +173 -0
- package/dist/plugins/resolver.d.ts +37 -0
- package/dist/plugins/resolver.js +80 -0
- package/dist/plugins/security.d.ts +23 -0
- package/dist/plugins/security.js +125 -0
- package/dist/plugins/sources/github.d.ts +17 -0
- package/dist/plugins/sources/github.js +77 -0
- package/dist/plugins/sources/local.d.ts +20 -0
- package/dist/plugins/sources/local.js +32 -0
- package/dist/plugins/sources/npm.d.ts +18 -0
- package/dist/plugins/sources/npm.js +82 -0
- package/dist/shared/llm/retry.d.ts +5 -2
- package/dist/shared/llm/retry.js +7 -3
- package/dist/shared/prompt-cache-latch.d.ts +41 -0
- package/dist/shared/prompt-cache-latch.js +63 -0
- package/dist/shared/retry-engine.d.ts +77 -0
- package/dist/shared/retry-engine.js +194 -0
- package/dist/workers/daemon.d.ts +8 -0
- package/dist/workers/daemon.js +13 -0
- package/dist/workers/quality-daemon/ci-monitor.d.ts +55 -0
- package/dist/workers/quality-daemon/ci-monitor.js +147 -0
- package/dist/workers/quality-daemon/coverage-delta.d.ts +72 -0
- package/dist/workers/quality-daemon/coverage-delta.js +135 -0
- package/dist/workers/quality-daemon/git-watcher.d.ts +51 -0
- package/dist/workers/quality-daemon/git-watcher.js +209 -0
- package/dist/workers/quality-daemon/index.d.ts +119 -0
- package/dist/workers/quality-daemon/index.js +343 -0
- package/dist/workers/quality-daemon/nightly-consolidation.d.ts +74 -0
- package/dist/workers/quality-daemon/nightly-consolidation.js +136 -0
- package/dist/workers/quality-daemon/notification-service.d.ts +67 -0
- package/dist/workers/quality-daemon/notification-service.js +178 -0
- package/dist/workers/quality-daemon/persistent-memory.d.ts +31 -0
- package/dist/workers/quality-daemon/persistent-memory.js +30 -0
- package/dist/workers/quality-daemon/priority-queue.d.ts +97 -0
- package/dist/workers/quality-daemon/priority-queue.js +126 -0
- package/dist/workers/quality-daemon/test-suggester.d.ts +50 -0
- package/dist/workers/quality-daemon/test-suggester.js +121 -0
- package/dist/workers/worker-manager.js +2 -1
- package/package.json +1 -1
- package/dist/mcp/server.d.ts +0 -46
- package/dist/mcp/server.js +0 -802
|
@@ -0,0 +1,1364 @@
|
|
|
1
|
+
if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.9.0");process.exit(0)}
|
|
2
|
+
import"./chunk-4I2IOUS4.js";import{Command as N}from"commander";import o from"chalk";var c=["test-generation","test-execution","coverage-analysis","quality-assessment","defect-intelligence","requirements-validation","code-intelligence","security-compliance","contract-testing","visual-accessibility","chaos-resilience","learning-optimization"],a=["qe-tdd-specialist","qe-test-architect","qe-parallel-executor","qe-flaky-hunter","qe-retry-handler","qe-coverage-specialist","qe-gap-detector","qe-quality-gate","qe-deployment-advisor","qe-code-complexity","qe-qx-partner","qe-security-scanner","qe-security-auditor","qe-contract-validator","qe-integration-tester","qe-graphql-tester","qe-visual-tester","qe-accessibility-auditor","qe-responsive-tester","qe-performance-tester","qe-load-tester","qe-chaos-engineer","qe-code-intelligence","qe-dependency-mapper","qe-kg-builder","qe-requirements-validator","qe-bdd-generator","qe-defect-predictor","qe-root-cause-analyzer","qe-regression-analyzer","qe-impact-analyzer","qe-risk-assessor","qe-learning-coordinator","qe-pattern-learner","qe-transfer-specialist","qe-metrics-optimizer","qe-fleet-commander","qe-queen-coordinator","qe-property-tester","qe-mutation-tester","qe-tdd-red","qe-tdd-green","qe-tdd-refactor","qe-code-reviewer","qe-integration-reviewer","qe-performance-reviewer","qe-security-reviewer"],i=["tester","reviewer","security-auditor","security-architect","performance-engineer","code-analyzer","cicd-engineer","reasoningbank-learner","adr-architect","ddd-domain-expert","v3-integration-architect","memory-specialist","claims-authorizer","sparc-orchestrator","sona-learning-optimizer","safla-neural","production-validator","tdd-london-swarm","queen-coordinator","swarm-memory-manager","worker-specialist","collective-intelligence-coordinator","scout-explorer","adaptive-coordinator","mesh-coordinator","hierarchical-coordinator","consensus-coordinator","byzantine-coordinator","raft-manager","crdt-synchronizer","n8n-workflow-executor","n8n-unit-tester","n8n-integration-test","n8n-trigger-test","n8n-security-auditor"],S=[...a,...i];var p=["generate-tests","execute-tests","analyze-coverage","assess-quality","predict-defects","validate-requirements","analyze-code","scan-security","validate-contracts","test-accessibility","chaos-test","optimize-learning"],b=["p0","p1","p2","p3"],y=["pending","running","completed","failed","cancelled"],d=["jest","vitest","pytest","junit","playwright","cypress","go-test","node-test"],w=["unit","integration","e2e"],C=["sqlite","agentdb","hybrid"];function q(){return`#!/bin/bash
|
|
3
|
+
# AQE CLI Bash Completion Script
|
|
4
|
+
# Generated by aqe completions bash
|
|
5
|
+
# ADR-041: Shell Completions for Enhanced Developer Experience
|
|
6
|
+
# ADR-042: Version-Agnostic Naming Convention
|
|
7
|
+
|
|
8
|
+
# Helper function to complete test files (*.test.ts, *.spec.ts, *.test.js, etc.)
|
|
9
|
+
_aqe_complete_test_files() {
|
|
10
|
+
local cur="$1"
|
|
11
|
+
local IFS=$'\\n'
|
|
12
|
+
local files=()
|
|
13
|
+
|
|
14
|
+
# Complete test files with common test file patterns
|
|
15
|
+
# Use find for more reliable glob matching across directories
|
|
16
|
+
if [[ -z "$cur" || "$cur" == "." ]]; then
|
|
17
|
+
# No prefix - search from current directory
|
|
18
|
+
while IFS= read -r file; do
|
|
19
|
+
files+=("$file")
|
|
20
|
+
done < <(find . -maxdepth 3 -type f \\( -name "*.test.ts" -o -name "*.spec.ts" -o -name "*.test.js" -o -name "*.spec.js" -o -name "*.test.tsx" -o -name "*.spec.tsx" \\) 2>/dev/null | head -30)
|
|
21
|
+
else
|
|
22
|
+
# Has prefix - use compgen with glob patterns
|
|
23
|
+
files+=($(compgen -f -X '!*.test.ts' -- "$cur" 2>/dev/null))
|
|
24
|
+
files+=($(compgen -f -X '!*.spec.ts' -- "$cur" 2>/dev/null))
|
|
25
|
+
files+=($(compgen -f -X '!*.test.js' -- "$cur" 2>/dev/null))
|
|
26
|
+
files+=($(compgen -f -X '!*.spec.js' -- "$cur" 2>/dev/null))
|
|
27
|
+
files+=($(compgen -f -X '!*.test.tsx' -- "$cur" 2>/dev/null))
|
|
28
|
+
files+=($(compgen -f -X '!*.spec.tsx' -- "$cur" 2>/dev/null))
|
|
29
|
+
fi
|
|
30
|
+
|
|
31
|
+
# Also include directories for navigation
|
|
32
|
+
COMPREPLY=($(compgen -d -- "$cur"))
|
|
33
|
+
|
|
34
|
+
# Add test files to completions
|
|
35
|
+
for file in "\${files[@]}"; do
|
|
36
|
+
[[ -n "$file" ]] && COMPREPLY+=("$file")
|
|
37
|
+
done
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
# Helper function to complete directories
|
|
41
|
+
_aqe_complete_directories() {
|
|
42
|
+
local cur="$1"
|
|
43
|
+
COMPREPLY=( $(compgen -d -- "$cur") )
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
# Main completion function (version-agnostic name per ADR-042)
|
|
47
|
+
_aqe_completions() {
|
|
48
|
+
local cur prev words cword
|
|
49
|
+
_init_completion || return
|
|
50
|
+
|
|
51
|
+
local commands="init status health task agent domain protocol test coverage quality security code migrate hypergraph completions"
|
|
52
|
+
local task_subcmds="submit list cancel status"
|
|
53
|
+
local agent_subcmds="list spawn"
|
|
54
|
+
local domain_subcmds="list health"
|
|
55
|
+
local protocol_subcmds="run"
|
|
56
|
+
local completions_subcmds="bash zsh fish powershell install"
|
|
57
|
+
local code_actions="index search impact deps"
|
|
58
|
+
local test_actions="generate execute"
|
|
59
|
+
|
|
60
|
+
# Domains
|
|
61
|
+
local domains="${c.join(" ")}"
|
|
62
|
+
|
|
63
|
+
# Agent types (qe-* per ADR-042)
|
|
64
|
+
local qe_agents="${a.join(" ")}"
|
|
65
|
+
local other_agents="${i.join(" ")}"
|
|
66
|
+
local all_agents="$qe_agents $other_agents"
|
|
67
|
+
|
|
68
|
+
# Task types
|
|
69
|
+
local task_types="${p.join(" ")}"
|
|
70
|
+
|
|
71
|
+
# Priorities
|
|
72
|
+
local priorities="${b.join(" ")}"
|
|
73
|
+
|
|
74
|
+
# Statuses
|
|
75
|
+
local statuses="${y.join(" ")}"
|
|
76
|
+
|
|
77
|
+
# Frameworks
|
|
78
|
+
local frameworks="${d.join(" ")}"
|
|
79
|
+
|
|
80
|
+
# Test types
|
|
81
|
+
local test_types="${w.join(" ")}"
|
|
82
|
+
|
|
83
|
+
# Memory backends
|
|
84
|
+
local memory_backends="${C.join(" ")}"
|
|
85
|
+
|
|
86
|
+
case "\${words[1]}" in
|
|
87
|
+
init)
|
|
88
|
+
case "$prev" in
|
|
89
|
+
--domains|-d)
|
|
90
|
+
COMPREPLY=( $(compgen -W "$domains all" -- "$cur") )
|
|
91
|
+
return
|
|
92
|
+
;;
|
|
93
|
+
--memory|-m)
|
|
94
|
+
COMPREPLY=( $(compgen -W "$memory_backends" -- "$cur") )
|
|
95
|
+
return
|
|
96
|
+
;;
|
|
97
|
+
--max-agents)
|
|
98
|
+
COMPREPLY=( $(compgen -W "5 10 15 20 25 30 50" -- "$cur") )
|
|
99
|
+
return
|
|
100
|
+
;;
|
|
101
|
+
esac
|
|
102
|
+
COMPREPLY=( $(compgen -W "--wizard --auto --minimal --domains --max-agents --memory --lazy --skip-patterns" -- "$cur") )
|
|
103
|
+
return
|
|
104
|
+
;;
|
|
105
|
+
status)
|
|
106
|
+
COMPREPLY=( $(compgen -W "-v --verbose" -- "$cur") )
|
|
107
|
+
return
|
|
108
|
+
;;
|
|
109
|
+
health)
|
|
110
|
+
case "$prev" in
|
|
111
|
+
--domain|-d)
|
|
112
|
+
COMPREPLY=( $(compgen -W "$domains" -- "$cur") )
|
|
113
|
+
return
|
|
114
|
+
;;
|
|
115
|
+
esac
|
|
116
|
+
COMPREPLY=( $(compgen -W "-d --domain" -- "$cur") )
|
|
117
|
+
return
|
|
118
|
+
;;
|
|
119
|
+
task)
|
|
120
|
+
case "\${words[2]}" in
|
|
121
|
+
submit)
|
|
122
|
+
case "$prev" in
|
|
123
|
+
--priority|-p)
|
|
124
|
+
COMPREPLY=( $(compgen -W "$priorities" -- "$cur") )
|
|
125
|
+
return
|
|
126
|
+
;;
|
|
127
|
+
--domain|-d)
|
|
128
|
+
COMPREPLY=( $(compgen -W "$domains" -- "$cur") )
|
|
129
|
+
return
|
|
130
|
+
;;
|
|
131
|
+
submit)
|
|
132
|
+
COMPREPLY=( $(compgen -W "$task_types" -- "$cur") )
|
|
133
|
+
return
|
|
134
|
+
;;
|
|
135
|
+
esac
|
|
136
|
+
COMPREPLY=( $(compgen -W "-p --priority -d --domain -t --timeout --payload" -- "$cur") )
|
|
137
|
+
return
|
|
138
|
+
;;
|
|
139
|
+
list)
|
|
140
|
+
case "$prev" in
|
|
141
|
+
--status|-s)
|
|
142
|
+
COMPREPLY=( $(compgen -W "$statuses" -- "$cur") )
|
|
143
|
+
return
|
|
144
|
+
;;
|
|
145
|
+
--priority|-p)
|
|
146
|
+
COMPREPLY=( $(compgen -W "$priorities" -- "$cur") )
|
|
147
|
+
return
|
|
148
|
+
;;
|
|
149
|
+
--domain|-d)
|
|
150
|
+
COMPREPLY=( $(compgen -W "$domains" -- "$cur") )
|
|
151
|
+
return
|
|
152
|
+
;;
|
|
153
|
+
esac
|
|
154
|
+
COMPREPLY=( $(compgen -W "-s --status -p --priority -d --domain" -- "$cur") )
|
|
155
|
+
return
|
|
156
|
+
;;
|
|
157
|
+
cancel|status)
|
|
158
|
+
# These need a task ID - no completion
|
|
159
|
+
return
|
|
160
|
+
;;
|
|
161
|
+
*)
|
|
162
|
+
COMPREPLY=( $(compgen -W "$task_subcmds" -- "$cur") )
|
|
163
|
+
return
|
|
164
|
+
;;
|
|
165
|
+
esac
|
|
166
|
+
;;
|
|
167
|
+
agent)
|
|
168
|
+
case "\${words[2]}" in
|
|
169
|
+
list)
|
|
170
|
+
case "$prev" in
|
|
171
|
+
--domain|-d)
|
|
172
|
+
COMPREPLY=( $(compgen -W "$domains" -- "$cur") )
|
|
173
|
+
return
|
|
174
|
+
;;
|
|
175
|
+
--status|-s)
|
|
176
|
+
COMPREPLY=( $(compgen -W "active idle failed" -- "$cur") )
|
|
177
|
+
return
|
|
178
|
+
;;
|
|
179
|
+
esac
|
|
180
|
+
COMPREPLY=( $(compgen -W "-d --domain -s --status" -- "$cur") )
|
|
181
|
+
return
|
|
182
|
+
;;
|
|
183
|
+
spawn)
|
|
184
|
+
case "$prev" in
|
|
185
|
+
--type|-t)
|
|
186
|
+
# Show all agent types with v3-qe- prefix highlighted
|
|
187
|
+
COMPREPLY=( $(compgen -W "$all_agents" -- "$cur") )
|
|
188
|
+
return
|
|
189
|
+
;;
|
|
190
|
+
spawn)
|
|
191
|
+
# Domain argument
|
|
192
|
+
COMPREPLY=( $(compgen -W "$domains" -- "$cur") )
|
|
193
|
+
return
|
|
194
|
+
;;
|
|
195
|
+
esac
|
|
196
|
+
COMPREPLY=( $(compgen -W "-t --type -c --capabilities" -- "$cur") )
|
|
197
|
+
return
|
|
198
|
+
;;
|
|
199
|
+
*)
|
|
200
|
+
COMPREPLY=( $(compgen -W "$agent_subcmds" -- "$cur") )
|
|
201
|
+
return
|
|
202
|
+
;;
|
|
203
|
+
esac
|
|
204
|
+
;;
|
|
205
|
+
domain)
|
|
206
|
+
case "\${words[2]}" in
|
|
207
|
+
health)
|
|
208
|
+
if [[ $cword -eq 3 ]]; then
|
|
209
|
+
COMPREPLY=( $(compgen -W "$domains" -- "$cur") )
|
|
210
|
+
return
|
|
211
|
+
fi
|
|
212
|
+
;;
|
|
213
|
+
*)
|
|
214
|
+
COMPREPLY=( $(compgen -W "$domain_subcmds" -- "$cur") )
|
|
215
|
+
return
|
|
216
|
+
;;
|
|
217
|
+
esac
|
|
218
|
+
;;
|
|
219
|
+
protocol)
|
|
220
|
+
case "\${words[2]}" in
|
|
221
|
+
run)
|
|
222
|
+
COMPREPLY=( $(compgen -W "--params" -- "$cur") )
|
|
223
|
+
return
|
|
224
|
+
;;
|
|
225
|
+
*)
|
|
226
|
+
COMPREPLY=( $(compgen -W "$protocol_subcmds" -- "$cur") )
|
|
227
|
+
return
|
|
228
|
+
;;
|
|
229
|
+
esac
|
|
230
|
+
;;
|
|
231
|
+
test)
|
|
232
|
+
case "\${words[2]}" in
|
|
233
|
+
generate)
|
|
234
|
+
case "$prev" in
|
|
235
|
+
--framework|-f)
|
|
236
|
+
COMPREPLY=( $(compgen -W "$frameworks" -- "$cur") )
|
|
237
|
+
return
|
|
238
|
+
;;
|
|
239
|
+
--type|-t)
|
|
240
|
+
COMPREPLY=( $(compgen -W "$test_types" -- "$cur") )
|
|
241
|
+
return
|
|
242
|
+
;;
|
|
243
|
+
--file)
|
|
244
|
+
# Complete test files for --file argument
|
|
245
|
+
_aqe_complete_test_files "$cur"
|
|
246
|
+
return
|
|
247
|
+
;;
|
|
248
|
+
esac
|
|
249
|
+
if [[ "$cur" != -* ]]; then
|
|
250
|
+
# Positional argument - suggest directories for source files
|
|
251
|
+
_aqe_complete_directories "$cur"
|
|
252
|
+
return
|
|
253
|
+
fi
|
|
254
|
+
COMPREPLY=( $(compgen -W "-f --framework -t --type --file" -- "$cur") )
|
|
255
|
+
return
|
|
256
|
+
;;
|
|
257
|
+
execute)
|
|
258
|
+
case "$prev" in
|
|
259
|
+
--framework|-f)
|
|
260
|
+
COMPREPLY=( $(compgen -W "$frameworks" -- "$cur") )
|
|
261
|
+
return
|
|
262
|
+
;;
|
|
263
|
+
--type|-t)
|
|
264
|
+
COMPREPLY=( $(compgen -W "$test_types" -- "$cur") )
|
|
265
|
+
return
|
|
266
|
+
;;
|
|
267
|
+
--file)
|
|
268
|
+
# Complete test files for --file argument
|
|
269
|
+
_aqe_complete_test_files "$cur"
|
|
270
|
+
return
|
|
271
|
+
;;
|
|
272
|
+
esac
|
|
273
|
+
if [[ "$cur" != -* && $cword -eq 3 ]]; then
|
|
274
|
+
# First positional argument after 'test execute' - suggest test files
|
|
275
|
+
_aqe_complete_test_files "$cur"
|
|
276
|
+
return
|
|
277
|
+
fi
|
|
278
|
+
COMPREPLY=( $(compgen -W "-f --framework -t --type --file --parallel --watch" -- "$cur") )
|
|
279
|
+
return
|
|
280
|
+
;;
|
|
281
|
+
*)
|
|
282
|
+
COMPREPLY=( $(compgen -W "$test_actions" -- "$cur") )
|
|
283
|
+
return
|
|
284
|
+
;;
|
|
285
|
+
esac
|
|
286
|
+
;;
|
|
287
|
+
coverage)
|
|
288
|
+
case "$prev" in
|
|
289
|
+
--target|-t|coverage)
|
|
290
|
+
# Complete directories for coverage target
|
|
291
|
+
_aqe_complete_directories "$cur"
|
|
292
|
+
return
|
|
293
|
+
;;
|
|
294
|
+
esac
|
|
295
|
+
if [[ "$cur" != -* && $cword -eq 2 ]]; then
|
|
296
|
+
# First positional argument - suggest directories
|
|
297
|
+
_aqe_complete_directories "$cur"
|
|
298
|
+
return
|
|
299
|
+
fi
|
|
300
|
+
COMPREPLY=( $(compgen -W "--risk --gaps -t --target" -- "$cur") )
|
|
301
|
+
return
|
|
302
|
+
;;
|
|
303
|
+
quality)
|
|
304
|
+
COMPREPLY=( $(compgen -W "--gate" -- "$cur") )
|
|
305
|
+
return
|
|
306
|
+
;;
|
|
307
|
+
security)
|
|
308
|
+
case "$prev" in
|
|
309
|
+
--compliance)
|
|
310
|
+
COMPREPLY=( $(compgen -W "gdpr hipaa soc2 pci-dss ccpa" -- "$cur") )
|
|
311
|
+
return
|
|
312
|
+
;;
|
|
313
|
+
--target|-t)
|
|
314
|
+
# Complete directories for security scan target
|
|
315
|
+
_aqe_complete_directories "$cur"
|
|
316
|
+
return
|
|
317
|
+
;;
|
|
318
|
+
esac
|
|
319
|
+
if [[ "$cur" != -* && $cword -eq 2 ]]; then
|
|
320
|
+
# First positional argument - suggest directories
|
|
321
|
+
_aqe_complete_directories "$cur"
|
|
322
|
+
return
|
|
323
|
+
fi
|
|
324
|
+
COMPREPLY=( $(compgen -W "--sast --dast --compliance -t --target" -- "$cur") )
|
|
325
|
+
return
|
|
326
|
+
;;
|
|
327
|
+
code)
|
|
328
|
+
case "\${words[2]}" in
|
|
329
|
+
index|search|impact|deps)
|
|
330
|
+
case "$prev" in
|
|
331
|
+
--depth)
|
|
332
|
+
COMPREPLY=( $(compgen -W "1 2 3 4 5" -- "$cur") )
|
|
333
|
+
return
|
|
334
|
+
;;
|
|
335
|
+
esac
|
|
336
|
+
if [[ "$cur" != -* && $cword -eq 3 ]]; then
|
|
337
|
+
# Second positional after action - suggest directories
|
|
338
|
+
_aqe_complete_directories "$cur"
|
|
339
|
+
return
|
|
340
|
+
fi
|
|
341
|
+
COMPREPLY=( $(compgen -W "--depth --include-tests" -- "$cur") )
|
|
342
|
+
return
|
|
343
|
+
;;
|
|
344
|
+
*)
|
|
345
|
+
COMPREPLY=( $(compgen -W "$code_actions" -- "$cur") )
|
|
346
|
+
return
|
|
347
|
+
;;
|
|
348
|
+
esac
|
|
349
|
+
;;
|
|
350
|
+
hypergraph)
|
|
351
|
+
local hg_subcmds="stats untested impacted gaps"
|
|
352
|
+
case "\${words[2]}" in
|
|
353
|
+
stats|untested|gaps)
|
|
354
|
+
COMPREPLY=( $(compgen -W "--db --limit --max-coverage" -- "$cur") )
|
|
355
|
+
return
|
|
356
|
+
;;
|
|
357
|
+
impacted)
|
|
358
|
+
COMPREPLY=( $(compgen -f -- "$cur") )
|
|
359
|
+
return
|
|
360
|
+
;;
|
|
361
|
+
*)
|
|
362
|
+
COMPREPLY=( $(compgen -W "$hg_subcmds" -- "$cur") )
|
|
363
|
+
return
|
|
364
|
+
;;
|
|
365
|
+
esac
|
|
366
|
+
;;
|
|
367
|
+
migrate)
|
|
368
|
+
COMPREPLY=( $(compgen -W "--dry-run --backup --skip-memory --skip-patterns --skip-config --force" -- "$cur") )
|
|
369
|
+
return
|
|
370
|
+
;;
|
|
371
|
+
completions)
|
|
372
|
+
case "\${words[2]}" in
|
|
373
|
+
install)
|
|
374
|
+
case "$prev" in
|
|
375
|
+
--shell)
|
|
376
|
+
COMPREPLY=( $(compgen -W "bash zsh fish powershell" -- "$cur") )
|
|
377
|
+
return
|
|
378
|
+
;;
|
|
379
|
+
esac
|
|
380
|
+
COMPREPLY=( $(compgen -W "--shell" -- "$cur") )
|
|
381
|
+
return
|
|
382
|
+
;;
|
|
383
|
+
*)
|
|
384
|
+
COMPREPLY=( $(compgen -W "$completions_subcmds" -- "$cur") )
|
|
385
|
+
return
|
|
386
|
+
;;
|
|
387
|
+
esac
|
|
388
|
+
;;
|
|
389
|
+
*)
|
|
390
|
+
COMPREPLY=( $(compgen -W "$commands" -- "$cur") )
|
|
391
|
+
return
|
|
392
|
+
;;
|
|
393
|
+
esac
|
|
394
|
+
}
|
|
395
|
+
|
|
396
|
+
# Register completions (version-agnostic name per ADR-042)
|
|
397
|
+
complete -F _aqe_completions aqe
|
|
398
|
+
|
|
399
|
+
# Enable for npm/npx invocations as well
|
|
400
|
+
complete -F _aqe_completions "npx aqe"
|
|
401
|
+
`}function k(){return`#compdef aqe
|
|
402
|
+
# AQE CLI Zsh Completion Script
|
|
403
|
+
# Generated by aqe completions zsh
|
|
404
|
+
# ADR-041: Shell Completions for Enhanced Developer Experience
|
|
405
|
+
# ADR-042: Version-Agnostic Naming Convention
|
|
406
|
+
|
|
407
|
+
# Main completion function (version-agnostic name per ADR-042)
|
|
408
|
+
_aqe() {
|
|
409
|
+
local -a commands
|
|
410
|
+
local -a domains
|
|
411
|
+
local -a agents
|
|
412
|
+
local -a qe_agents
|
|
413
|
+
local -a task_types
|
|
414
|
+
local -a priorities
|
|
415
|
+
local -a statuses
|
|
416
|
+
local -a frameworks
|
|
417
|
+
local -a test_types
|
|
418
|
+
local -a memory_backends
|
|
419
|
+
local -a code_actions
|
|
420
|
+
local -a test_actions
|
|
421
|
+
|
|
422
|
+
commands=(
|
|
423
|
+
'init:Initialize the AQE system'
|
|
424
|
+
'status:Show system status'
|
|
425
|
+
'health:Check system health'
|
|
426
|
+
'task:Manage QE tasks'
|
|
427
|
+
'agent:Manage QE agents'
|
|
428
|
+
'domain:Domain operations'
|
|
429
|
+
'protocol:Execute coordination protocols'
|
|
430
|
+
'test:Test generation and execution'
|
|
431
|
+
'coverage:Coverage analysis'
|
|
432
|
+
'quality:Quality assessment'
|
|
433
|
+
'security:Security scanning'
|
|
434
|
+
'code:Code intelligence'
|
|
435
|
+
'hypergraph:Query the code knowledge hypergraph'
|
|
436
|
+
'migrate:V2 to V3 migration'
|
|
437
|
+
'completions:Generate shell completions'
|
|
438
|
+
)
|
|
439
|
+
|
|
440
|
+
domains=(
|
|
441
|
+
${c.map(e=>`'${e}:${e.replace(/-/g," ")} domain'`).join(`
|
|
442
|
+
`)}
|
|
443
|
+
)
|
|
444
|
+
|
|
445
|
+
qe_agents=(
|
|
446
|
+
${a.map(e=>`'${e}'`).join(`
|
|
447
|
+
`)}
|
|
448
|
+
)
|
|
449
|
+
|
|
450
|
+
agents=(
|
|
451
|
+
\${qe_agents}
|
|
452
|
+
${i.map(e=>`'${e}'`).join(`
|
|
453
|
+
`)}
|
|
454
|
+
)
|
|
455
|
+
|
|
456
|
+
task_types=(
|
|
457
|
+
${p.map(e=>`'${e}:${e.replace(/-/g," ")}'`).join(`
|
|
458
|
+
`)}
|
|
459
|
+
)
|
|
460
|
+
|
|
461
|
+
priorities=(
|
|
462
|
+
'p0:Critical priority'
|
|
463
|
+
'p1:High priority'
|
|
464
|
+
'p2:Medium priority'
|
|
465
|
+
'p3:Low priority'
|
|
466
|
+
)
|
|
467
|
+
|
|
468
|
+
statuses=(
|
|
469
|
+
'pending:Task is pending'
|
|
470
|
+
'running:Task is running'
|
|
471
|
+
'completed:Task completed successfully'
|
|
472
|
+
'failed:Task failed'
|
|
473
|
+
'cancelled:Task was cancelled'
|
|
474
|
+
)
|
|
475
|
+
|
|
476
|
+
frameworks=(
|
|
477
|
+
${d.map(e=>`'${e}'`).join(`
|
|
478
|
+
`)}
|
|
479
|
+
)
|
|
480
|
+
|
|
481
|
+
test_types=(
|
|
482
|
+
'unit:Unit tests'
|
|
483
|
+
'integration:Integration tests'
|
|
484
|
+
'e2e:End-to-end tests'
|
|
485
|
+
)
|
|
486
|
+
|
|
487
|
+
memory_backends=(
|
|
488
|
+
'sqlite:SQLite backend'
|
|
489
|
+
'agentdb:AgentDB backend'
|
|
490
|
+
'hybrid:Hybrid backend'
|
|
491
|
+
)
|
|
492
|
+
|
|
493
|
+
code_actions=(
|
|
494
|
+
'index:Index codebase'
|
|
495
|
+
'search:Search code'
|
|
496
|
+
'impact:Analyze impact'
|
|
497
|
+
'deps:Map dependencies'
|
|
498
|
+
)
|
|
499
|
+
|
|
500
|
+
test_actions=(
|
|
501
|
+
'generate:Generate tests'
|
|
502
|
+
'execute:Execute tests'
|
|
503
|
+
)
|
|
504
|
+
|
|
505
|
+
_arguments -C \\
|
|
506
|
+
'1:command:->command' \\
|
|
507
|
+
'*::arg:->args'
|
|
508
|
+
|
|
509
|
+
case "$state" in
|
|
510
|
+
command)
|
|
511
|
+
_describe -t commands 'aqe commands' commands
|
|
512
|
+
;;
|
|
513
|
+
args)
|
|
514
|
+
case "$words[1]" in
|
|
515
|
+
init)
|
|
516
|
+
_arguments \\
|
|
517
|
+
'--wizard[Run interactive setup wizard]' \\
|
|
518
|
+
'--auto[Auto-configure based on project analysis]' \\
|
|
519
|
+
'--minimal[Minimal configuration]' \\
|
|
520
|
+
'(-d --domains)'{-d,--domains}'[Domains to enable]:domains:_values -s , domain \${domains}' \\
|
|
521
|
+
'--max-agents[Maximum concurrent agents]:number:(5 10 15 20 25 30 50)' \\
|
|
522
|
+
'(-m --memory)'{-m,--memory}'[Memory backend]:backend:_values backend \${memory_backends}' \\
|
|
523
|
+
'--lazy[Enable lazy loading]' \\
|
|
524
|
+
'--skip-patterns[Skip loading pre-trained patterns]'
|
|
525
|
+
;;
|
|
526
|
+
status)
|
|
527
|
+
_arguments \\
|
|
528
|
+
'(-v --verbose)'{-v,--verbose}'[Show detailed status]'
|
|
529
|
+
;;
|
|
530
|
+
health)
|
|
531
|
+
_arguments \\
|
|
532
|
+
'(-d --domain)'{-d,--domain}'[Check specific domain]:domain:_values domain \${domains}'
|
|
533
|
+
;;
|
|
534
|
+
task)
|
|
535
|
+
local -a task_commands
|
|
536
|
+
task_commands=(
|
|
537
|
+
'submit:Submit a task'
|
|
538
|
+
'list:List all tasks'
|
|
539
|
+
'cancel:Cancel a task'
|
|
540
|
+
'status:Get task status'
|
|
541
|
+
)
|
|
542
|
+
_arguments -C \\
|
|
543
|
+
'1:task command:->task_cmd' \\
|
|
544
|
+
'*::arg:->task_args'
|
|
545
|
+
case "$state" in
|
|
546
|
+
task_cmd)
|
|
547
|
+
_describe -t commands 'task commands' task_commands
|
|
548
|
+
;;
|
|
549
|
+
task_args)
|
|
550
|
+
case "$words[1]" in
|
|
551
|
+
submit)
|
|
552
|
+
_arguments \\
|
|
553
|
+
'1:task type:_values type \${task_types}' \\
|
|
554
|
+
'(-p --priority)'{-p,--priority}'[Task priority]:priority:_values priority \${priorities}' \\
|
|
555
|
+
'(-d --domain)'{-d,--domain}'[Target domain]:domain:_values domain \${domains}' \\
|
|
556
|
+
'(-t --timeout)'{-t,--timeout}'[Task timeout in ms]:timeout:' \\
|
|
557
|
+
'--payload[Task payload as JSON]:json:'
|
|
558
|
+
;;
|
|
559
|
+
list)
|
|
560
|
+
_arguments \\
|
|
561
|
+
'(-s --status)'{-s,--status}'[Filter by status]:status:_values status \${statuses}' \\
|
|
562
|
+
'(-p --priority)'{-p,--priority}'[Filter by priority]:priority:_values priority \${priorities}' \\
|
|
563
|
+
'(-d --domain)'{-d,--domain}'[Filter by domain]:domain:_values domain \${domains}'
|
|
564
|
+
;;
|
|
565
|
+
cancel|status)
|
|
566
|
+
_arguments \\
|
|
567
|
+
'1:task ID:'
|
|
568
|
+
;;
|
|
569
|
+
esac
|
|
570
|
+
;;
|
|
571
|
+
esac
|
|
572
|
+
;;
|
|
573
|
+
agent)
|
|
574
|
+
local -a agent_commands
|
|
575
|
+
agent_commands=(
|
|
576
|
+
'list:List all agents'
|
|
577
|
+
'spawn:Spawn an agent'
|
|
578
|
+
)
|
|
579
|
+
_arguments -C \\
|
|
580
|
+
'1:agent command:->agent_cmd' \\
|
|
581
|
+
'*::arg:->agent_args'
|
|
582
|
+
case "$state" in
|
|
583
|
+
agent_cmd)
|
|
584
|
+
_describe -t commands 'agent commands' agent_commands
|
|
585
|
+
;;
|
|
586
|
+
agent_args)
|
|
587
|
+
case "$words[1]" in
|
|
588
|
+
list)
|
|
589
|
+
_arguments \\
|
|
590
|
+
'(-d --domain)'{-d,--domain}'[Filter by domain]:domain:_values domain \${domains}' \\
|
|
591
|
+
'(-s --status)'{-s,--status}'[Filter by status]:status:(active idle failed)'
|
|
592
|
+
;;
|
|
593
|
+
spawn)
|
|
594
|
+
_arguments \\
|
|
595
|
+
'1:domain:_values domain \${domains}' \\
|
|
596
|
+
'(-t --type)'{-t,--type}'[Agent type]:type:_values type \${agents}' \\
|
|
597
|
+
'(-c --capabilities)'{-c,--capabilities}'[Capabilities]:capabilities:'
|
|
598
|
+
;;
|
|
599
|
+
esac
|
|
600
|
+
;;
|
|
601
|
+
esac
|
|
602
|
+
;;
|
|
603
|
+
domain)
|
|
604
|
+
local -a domain_commands
|
|
605
|
+
domain_commands=(
|
|
606
|
+
'list:List all domains'
|
|
607
|
+
'health:Get domain health'
|
|
608
|
+
)
|
|
609
|
+
_arguments -C \\
|
|
610
|
+
'1:domain command:->domain_cmd' \\
|
|
611
|
+
'*::arg:->domain_args'
|
|
612
|
+
case "$state" in
|
|
613
|
+
domain_cmd)
|
|
614
|
+
_describe -t commands 'domain commands' domain_commands
|
|
615
|
+
;;
|
|
616
|
+
domain_args)
|
|
617
|
+
case "$words[1]" in
|
|
618
|
+
health)
|
|
619
|
+
_arguments \\
|
|
620
|
+
'1:domain:_values domain \${domains}'
|
|
621
|
+
;;
|
|
622
|
+
esac
|
|
623
|
+
;;
|
|
624
|
+
esac
|
|
625
|
+
;;
|
|
626
|
+
protocol)
|
|
627
|
+
local -a protocol_commands
|
|
628
|
+
protocol_commands=(
|
|
629
|
+
'run:Execute a protocol'
|
|
630
|
+
)
|
|
631
|
+
_arguments -C \\
|
|
632
|
+
'1:protocol command:->protocol_cmd' \\
|
|
633
|
+
'*::arg:->protocol_args'
|
|
634
|
+
case "$state" in
|
|
635
|
+
protocol_cmd)
|
|
636
|
+
_describe -t commands 'protocol commands' protocol_commands
|
|
637
|
+
;;
|
|
638
|
+
protocol_args)
|
|
639
|
+
case "$words[1]" in
|
|
640
|
+
run)
|
|
641
|
+
_arguments \\
|
|
642
|
+
'1:protocol ID:' \\
|
|
643
|
+
'--params[Protocol parameters as JSON]:json:'
|
|
644
|
+
;;
|
|
645
|
+
esac
|
|
646
|
+
;;
|
|
647
|
+
esac
|
|
648
|
+
;;
|
|
649
|
+
test)
|
|
650
|
+
local -a test_file_patterns
|
|
651
|
+
test_file_patterns=('*.test.ts' '*.spec.ts' '*.test.js' '*.spec.js' '*.test.tsx' '*.spec.tsx')
|
|
652
|
+
|
|
653
|
+
_arguments -C \\
|
|
654
|
+
'1:action:_values action \${test_actions}' \\
|
|
655
|
+
'*:test pattern:_files -g "*.test.{ts,tsx,js,jsx}" -g "*.spec.{ts,tsx,js,jsx}"' \\
|
|
656
|
+
'(-f --framework)'{-f,--framework}'[Test framework]:framework:_values framework \${frameworks}' \\
|
|
657
|
+
'(-t --type)'{-t,--type}'[Test type]:type:_values type \${test_types}' \\
|
|
658
|
+
'--file[Test file pattern]:file:_files -g "*.test.{ts,tsx,js,jsx}" -g "*.spec.{ts,tsx,js,jsx}"' \\
|
|
659
|
+
'--parallel[Run tests in parallel]' \\
|
|
660
|
+
'--watch[Watch mode]'
|
|
661
|
+
;;
|
|
662
|
+
coverage)
|
|
663
|
+
_arguments \\
|
|
664
|
+
'1:target directory:_files -/' \\
|
|
665
|
+
'--risk[Include risk scoring]' \\
|
|
666
|
+
'--gaps[Detect coverage gaps]' \\
|
|
667
|
+
'(-t --target)'{-t,--target}'[Target directory]:target:_files -/'
|
|
668
|
+
;;
|
|
669
|
+
quality)
|
|
670
|
+
_arguments \\
|
|
671
|
+
'--gate[Run quality gate evaluation]'
|
|
672
|
+
;;
|
|
673
|
+
security)
|
|
674
|
+
_arguments \\
|
|
675
|
+
'1:target directory:_files -/' \\
|
|
676
|
+
'--sast[Run SAST scan]' \\
|
|
677
|
+
'--dast[Run DAST scan]' \\
|
|
678
|
+
'--compliance[Check compliance]:frameworks:_values -s , framework gdpr hipaa soc2 pci-dss ccpa' \\
|
|
679
|
+
'(-t --target)'{-t,--target}'[Target directory]:target:_files -/'
|
|
680
|
+
;;
|
|
681
|
+
code)
|
|
682
|
+
_arguments -C \\
|
|
683
|
+
'1:action:_values action \${code_actions}' \\
|
|
684
|
+
'2:target directory:_files -/' \\
|
|
685
|
+
'--depth[Analysis depth]:depth:(1 2 3 4 5)' \\
|
|
686
|
+
'--include-tests[Include test files]'
|
|
687
|
+
;;
|
|
688
|
+
hypergraph)
|
|
689
|
+
local -a hg_commands
|
|
690
|
+
hg_commands=(
|
|
691
|
+
'stats:Show hypergraph statistics'
|
|
692
|
+
'untested:Find untested functions'
|
|
693
|
+
'impacted:Find impacted tests'
|
|
694
|
+
'gaps:Find coverage gaps'
|
|
695
|
+
)
|
|
696
|
+
_arguments -C \\
|
|
697
|
+
'1:command:_describe command hg_commands' \\
|
|
698
|
+
'--db[Database path]:path:_files' \\
|
|
699
|
+
'--limit[Max results]:number:' \\
|
|
700
|
+
'--max-coverage[Coverage threshold]:number:'
|
|
701
|
+
;;
|
|
702
|
+
migrate)
|
|
703
|
+
_arguments \\
|
|
704
|
+
'--dry-run[Preview migration without changes]' \\
|
|
705
|
+
'--backup[Create backup before migration]' \\
|
|
706
|
+
'--skip-memory[Skip memory database migration]' \\
|
|
707
|
+
'--skip-patterns[Skip pattern migration]' \\
|
|
708
|
+
'--skip-config[Skip configuration migration]' \\
|
|
709
|
+
'--force[Force migration even if v3 exists]'
|
|
710
|
+
;;
|
|
711
|
+
completions)
|
|
712
|
+
local -a completion_commands
|
|
713
|
+
completion_commands=(
|
|
714
|
+
'bash:Generate Bash completion script'
|
|
715
|
+
'zsh:Generate Zsh completion script'
|
|
716
|
+
'fish:Generate Fish completion script'
|
|
717
|
+
'powershell:Generate PowerShell completion script'
|
|
718
|
+
'install:Auto-install for current shell'
|
|
719
|
+
)
|
|
720
|
+
_arguments -C \\
|
|
721
|
+
'1:shell:->completion_cmd' \\
|
|
722
|
+
'*::arg:->completion_args'
|
|
723
|
+
case "$state" in
|
|
724
|
+
completion_cmd)
|
|
725
|
+
_describe -t commands 'completion targets' completion_commands
|
|
726
|
+
;;
|
|
727
|
+
completion_args)
|
|
728
|
+
case "$words[1]" in
|
|
729
|
+
install)
|
|
730
|
+
_arguments \\
|
|
731
|
+
'--shell[Target shell]:shell:(bash zsh fish powershell)'
|
|
732
|
+
;;
|
|
733
|
+
esac
|
|
734
|
+
;;
|
|
735
|
+
esac
|
|
736
|
+
;;
|
|
737
|
+
esac
|
|
738
|
+
;;
|
|
739
|
+
esac
|
|
740
|
+
}
|
|
741
|
+
|
|
742
|
+
# Register with version-agnostic name
|
|
743
|
+
_aqe "$@"
|
|
744
|
+
|
|
745
|
+
# Backward compatibility alias (deprecated, use _aqe)
|
|
746
|
+
_aqe_v3() { _aqe "$@"; }
|
|
747
|
+
`}function E(){return`# AQE CLI Fish Completion Script
|
|
748
|
+
# Generated by aqe completions fish
|
|
749
|
+
# ADR-041: Shell Completions for Enhanced Developer Experience
|
|
750
|
+
# ADR-042: Version-Agnostic Naming Convention
|
|
751
|
+
|
|
752
|
+
# Disable file completions by default
|
|
753
|
+
complete -c aqe -f
|
|
754
|
+
|
|
755
|
+
# Main commands
|
|
756
|
+
complete -c aqe -n "__fish_use_subcommand" -a "init" -d "Initialize the AQE system"
|
|
757
|
+
complete -c aqe -n "__fish_use_subcommand" -a "status" -d "Show system status"
|
|
758
|
+
complete -c aqe -n "__fish_use_subcommand" -a "health" -d "Check system health"
|
|
759
|
+
complete -c aqe -n "__fish_use_subcommand" -a "task" -d "Manage QE tasks"
|
|
760
|
+
complete -c aqe -n "__fish_use_subcommand" -a "agent" -d "Manage QE agents"
|
|
761
|
+
complete -c aqe -n "__fish_use_subcommand" -a "domain" -d "Domain operations"
|
|
762
|
+
complete -c aqe -n "__fish_use_subcommand" -a "protocol" -d "Execute coordination protocols"
|
|
763
|
+
complete -c aqe -n "__fish_use_subcommand" -a "test" -d "Test generation and execution"
|
|
764
|
+
complete -c aqe -n "__fish_use_subcommand" -a "coverage" -d "Coverage analysis"
|
|
765
|
+
complete -c aqe -n "__fish_use_subcommand" -a "quality" -d "Quality assessment"
|
|
766
|
+
complete -c aqe -n "__fish_use_subcommand" -a "security" -d "Security scanning"
|
|
767
|
+
complete -c aqe -n "__fish_use_subcommand" -a "code" -d "Code intelligence"
|
|
768
|
+
complete -c aqe -n "__fish_use_subcommand" -a "hypergraph" -d "Query the code knowledge hypergraph"
|
|
769
|
+
complete -c aqe -n "__fish_seen_subcommand_from hypergraph; and not __fish_seen_subcommand_from stats untested impacted gaps" -a "stats" -d "Show hypergraph statistics"
|
|
770
|
+
complete -c aqe -n "__fish_seen_subcommand_from hypergraph; and not __fish_seen_subcommand_from stats untested impacted gaps" -a "untested" -d "Find untested functions"
|
|
771
|
+
complete -c aqe -n "__fish_seen_subcommand_from hypergraph; and not __fish_seen_subcommand_from stats untested impacted gaps" -a "impacted" -d "Find impacted tests"
|
|
772
|
+
complete -c aqe -n "__fish_seen_subcommand_from hypergraph; and not __fish_seen_subcommand_from stats untested impacted gaps" -a "gaps" -d "Find coverage gaps"
|
|
773
|
+
complete -c aqe -n "__fish_use_subcommand" -a "migrate" -d "V2 to V3 migration"
|
|
774
|
+
complete -c aqe -n "__fish_use_subcommand" -a "completions" -d "Generate shell completions"
|
|
775
|
+
|
|
776
|
+
# Domains list
|
|
777
|
+
set -l domains ${c.join(" ")}
|
|
778
|
+
|
|
779
|
+
# QE Agents (version-agnostic names per ADR-042)
|
|
780
|
+
set -l qe_agents ${a.join(" ")}
|
|
781
|
+
|
|
782
|
+
# Other agents
|
|
783
|
+
set -l other_agents ${i.join(" ")}
|
|
784
|
+
|
|
785
|
+
# All agents
|
|
786
|
+
set -l all_agents $qe_agents $other_agents
|
|
787
|
+
|
|
788
|
+
# Task types
|
|
789
|
+
set -l task_types ${p.join(" ")}
|
|
790
|
+
|
|
791
|
+
# Priorities
|
|
792
|
+
set -l priorities p0 p1 p2 p3
|
|
793
|
+
|
|
794
|
+
# Statuses
|
|
795
|
+
set -l statuses pending running completed failed cancelled
|
|
796
|
+
|
|
797
|
+
# Frameworks
|
|
798
|
+
set -l frameworks ${d.join(" ")}
|
|
799
|
+
|
|
800
|
+
# Test types
|
|
801
|
+
set -l test_types unit integration e2e
|
|
802
|
+
|
|
803
|
+
# Memory backends
|
|
804
|
+
set -l memory_backends sqlite agentdb hybrid
|
|
805
|
+
|
|
806
|
+
# Init command options
|
|
807
|
+
complete -c aqe -n "__fish_seen_subcommand_from init" -l wizard -d "Run interactive setup wizard"
|
|
808
|
+
complete -c aqe -n "__fish_seen_subcommand_from init" -l auto -d "Auto-configure based on project analysis"
|
|
809
|
+
complete -c aqe -n "__fish_seen_subcommand_from init" -l minimal -d "Minimal configuration"
|
|
810
|
+
complete -c aqe -n "__fish_seen_subcommand_from init" -s d -l domains -d "Domains to enable" -xa "$domains all"
|
|
811
|
+
complete -c aqe -n "__fish_seen_subcommand_from init" -l max-agents -d "Maximum concurrent agents" -xa "5 10 15 20 25 30 50"
|
|
812
|
+
complete -c aqe -n "__fish_seen_subcommand_from init" -s m -l memory -d "Memory backend" -xa "$memory_backends"
|
|
813
|
+
complete -c aqe -n "__fish_seen_subcommand_from init" -l lazy -d "Enable lazy loading"
|
|
814
|
+
complete -c aqe -n "__fish_seen_subcommand_from init" -l skip-patterns -d "Skip loading pre-trained patterns"
|
|
815
|
+
|
|
816
|
+
# Status command options
|
|
817
|
+
complete -c aqe -n "__fish_seen_subcommand_from status" -s v -l verbose -d "Show detailed status"
|
|
818
|
+
|
|
819
|
+
# Health command options
|
|
820
|
+
complete -c aqe -n "__fish_seen_subcommand_from health" -s d -l domain -d "Check specific domain" -xa "$domains"
|
|
821
|
+
|
|
822
|
+
# Task subcommands
|
|
823
|
+
complete -c aqe -n "__fish_seen_subcommand_from task; and not __fish_seen_subcommand_from submit list cancel status" -a "submit" -d "Submit a task"
|
|
824
|
+
complete -c aqe -n "__fish_seen_subcommand_from task; and not __fish_seen_subcommand_from submit list cancel status" -a "list" -d "List all tasks"
|
|
825
|
+
complete -c aqe -n "__fish_seen_subcommand_from task; and not __fish_seen_subcommand_from submit list cancel status" -a "cancel" -d "Cancel a task"
|
|
826
|
+
complete -c aqe -n "__fish_seen_subcommand_from task; and not __fish_seen_subcommand_from submit list cancel status" -a "status" -d "Get task status"
|
|
827
|
+
|
|
828
|
+
# Task submit options
|
|
829
|
+
complete -c aqe -n "__fish_seen_subcommand_from task; and __fish_seen_subcommand_from submit" -xa "$task_types"
|
|
830
|
+
complete -c aqe -n "__fish_seen_subcommand_from task; and __fish_seen_subcommand_from submit" -s p -l priority -d "Task priority" -xa "$priorities"
|
|
831
|
+
complete -c aqe -n "__fish_seen_subcommand_from task; and __fish_seen_subcommand_from submit" -s d -l domain -d "Target domain" -xa "$domains"
|
|
832
|
+
complete -c aqe -n "__fish_seen_subcommand_from task; and __fish_seen_subcommand_from submit" -s t -l timeout -d "Task timeout in ms"
|
|
833
|
+
complete -c aqe -n "__fish_seen_subcommand_from task; and __fish_seen_subcommand_from submit" -l payload -d "Task payload as JSON"
|
|
834
|
+
|
|
835
|
+
# Task list options
|
|
836
|
+
complete -c aqe -n "__fish_seen_subcommand_from task; and __fish_seen_subcommand_from list" -s s -l status -d "Filter by status" -xa "$statuses"
|
|
837
|
+
complete -c aqe -n "__fish_seen_subcommand_from task; and __fish_seen_subcommand_from list" -s p -l priority -d "Filter by priority" -xa "$priorities"
|
|
838
|
+
complete -c aqe -n "__fish_seen_subcommand_from task; and __fish_seen_subcommand_from list" -s d -l domain -d "Filter by domain" -xa "$domains"
|
|
839
|
+
|
|
840
|
+
# Agent subcommands
|
|
841
|
+
complete -c aqe -n "__fish_seen_subcommand_from agent; and not __fish_seen_subcommand_from list spawn" -a "list" -d "List all agents"
|
|
842
|
+
complete -c aqe -n "__fish_seen_subcommand_from agent; and not __fish_seen_subcommand_from list spawn" -a "spawn" -d "Spawn an agent"
|
|
843
|
+
|
|
844
|
+
# Agent list options
|
|
845
|
+
complete -c aqe -n "__fish_seen_subcommand_from agent; and __fish_seen_subcommand_from list" -s d -l domain -d "Filter by domain" -xa "$domains"
|
|
846
|
+
complete -c aqe -n "__fish_seen_subcommand_from agent; and __fish_seen_subcommand_from list" -s s -l status -d "Filter by status" -xa "active idle failed"
|
|
847
|
+
|
|
848
|
+
# Agent spawn options
|
|
849
|
+
complete -c aqe -n "__fish_seen_subcommand_from agent; and __fish_seen_subcommand_from spawn" -xa "$domains"
|
|
850
|
+
complete -c aqe -n "__fish_seen_subcommand_from agent; and __fish_seen_subcommand_from spawn" -s t -l type -d "Agent type" -xa "$all_agents"
|
|
851
|
+
complete -c aqe -n "__fish_seen_subcommand_from agent; and __fish_seen_subcommand_from spawn" -s c -l capabilities -d "Capabilities"
|
|
852
|
+
|
|
853
|
+
# Domain subcommands
|
|
854
|
+
complete -c aqe -n "__fish_seen_subcommand_from domain; and not __fish_seen_subcommand_from list health" -a "list" -d "List all domains"
|
|
855
|
+
complete -c aqe -n "__fish_seen_subcommand_from domain; and not __fish_seen_subcommand_from list health" -a "health" -d "Get domain health"
|
|
856
|
+
|
|
857
|
+
# Domain health argument
|
|
858
|
+
complete -c aqe -n "__fish_seen_subcommand_from domain; and __fish_seen_subcommand_from health" -xa "$domains"
|
|
859
|
+
|
|
860
|
+
# Protocol subcommands
|
|
861
|
+
complete -c aqe -n "__fish_seen_subcommand_from protocol; and not __fish_seen_subcommand_from run" -a "run" -d "Execute a protocol"
|
|
862
|
+
complete -c aqe -n "__fish_seen_subcommand_from protocol; and __fish_seen_subcommand_from run" -l params -d "Protocol parameters as JSON"
|
|
863
|
+
|
|
864
|
+
# Test command
|
|
865
|
+
complete -c aqe -n "__fish_seen_subcommand_from test; and not __fish_seen_subcommand_from generate execute" -a "generate" -d "Generate tests"
|
|
866
|
+
complete -c aqe -n "__fish_seen_subcommand_from test; and not __fish_seen_subcommand_from generate execute" -a "execute" -d "Execute tests"
|
|
867
|
+
complete -c aqe -n "__fish_seen_subcommand_from test" -s f -l framework -d "Test framework" -xa "$frameworks"
|
|
868
|
+
complete -c aqe -n "__fish_seen_subcommand_from test" -s t -l type -d "Test type" -xa "$test_types"
|
|
869
|
+
# File completion for test execute - enable full file completion (-F) plus suggest test files
|
|
870
|
+
complete -c aqe -n "__fish_seen_subcommand_from test; and __fish_seen_subcommand_from execute" -F
|
|
871
|
+
complete -c aqe -n "__fish_seen_subcommand_from test; and __fish_seen_subcommand_from execute" -xa "(find . -maxdepth 3 -type f \\( -name '*.test.ts' -o -name '*.spec.ts' -o -name '*.test.js' -o -name '*.spec.js' -o -name '*.test.tsx' -o -name '*.spec.tsx' \\) 2>/dev/null | head -20)"
|
|
872
|
+
complete -c aqe -n "__fish_seen_subcommand_from test; and __fish_seen_subcommand_from execute" -l file -d "Test file pattern" -F
|
|
873
|
+
complete -c aqe -n "__fish_seen_subcommand_from test; and __fish_seen_subcommand_from execute" -l parallel -d "Run tests in parallel"
|
|
874
|
+
complete -c aqe -n "__fish_seen_subcommand_from test; and __fish_seen_subcommand_from execute" -l watch -d "Watch mode"
|
|
875
|
+
# Directory completion for test generate
|
|
876
|
+
complete -c aqe -n "__fish_seen_subcommand_from test; and __fish_seen_subcommand_from generate" -xa "(__fish_complete_directories)"
|
|
877
|
+
complete -c aqe -n "__fish_seen_subcommand_from test; and __fish_seen_subcommand_from generate" -l file -d "Source file" -F
|
|
878
|
+
|
|
879
|
+
# Coverage command - directory completion for target and enable file completion
|
|
880
|
+
complete -c aqe -n "__fish_seen_subcommand_from coverage" -F
|
|
881
|
+
complete -c aqe -n "__fish_seen_subcommand_from coverage" -l risk -d "Include risk scoring"
|
|
882
|
+
complete -c aqe -n "__fish_seen_subcommand_from coverage" -l gaps -d "Detect coverage gaps"
|
|
883
|
+
complete -c aqe -n "__fish_seen_subcommand_from coverage" -s t -l target -d "Target directory" -xa "(__fish_complete_directories)"
|
|
884
|
+
complete -c aqe -n "__fish_seen_subcommand_from coverage" -xa "(__fish_complete_directories)"
|
|
885
|
+
|
|
886
|
+
# Quality command
|
|
887
|
+
complete -c aqe -n "__fish_seen_subcommand_from quality" -l gate -d "Run quality gate evaluation"
|
|
888
|
+
|
|
889
|
+
# Security command - directory completion for target and enable file completion
|
|
890
|
+
complete -c aqe -n "__fish_seen_subcommand_from security" -F
|
|
891
|
+
complete -c aqe -n "__fish_seen_subcommand_from security" -l sast -d "Run SAST scan"
|
|
892
|
+
complete -c aqe -n "__fish_seen_subcommand_from security" -l dast -d "Run DAST scan"
|
|
893
|
+
complete -c aqe -n "__fish_seen_subcommand_from security" -l compliance -d "Check compliance" -xa "gdpr hipaa soc2 pci-dss ccpa"
|
|
894
|
+
complete -c aqe -n "__fish_seen_subcommand_from security" -s t -l target -d "Target directory" -xa "(__fish_complete_directories)"
|
|
895
|
+
complete -c aqe -n "__fish_seen_subcommand_from security" -xa "(__fish_complete_directories)"
|
|
896
|
+
|
|
897
|
+
# Code command - directory completion for target
|
|
898
|
+
complete -c aqe -n "__fish_seen_subcommand_from code; and not __fish_seen_subcommand_from index search impact deps" -a "index" -d "Index codebase"
|
|
899
|
+
complete -c aqe -n "__fish_seen_subcommand_from code; and not __fish_seen_subcommand_from index search impact deps" -a "search" -d "Search code"
|
|
900
|
+
complete -c aqe -n "__fish_seen_subcommand_from code; and not __fish_seen_subcommand_from index search impact deps" -a "impact" -d "Analyze impact"
|
|
901
|
+
complete -c aqe -n "__fish_seen_subcommand_from code; and not __fish_seen_subcommand_from index search impact deps" -a "deps" -d "Map dependencies"
|
|
902
|
+
complete -c aqe -n "__fish_seen_subcommand_from code" -l depth -d "Analysis depth" -xa "1 2 3 4 5"
|
|
903
|
+
complete -c aqe -n "__fish_seen_subcommand_from code" -l include-tests -d "Include test files"
|
|
904
|
+
# Directory completion for code actions
|
|
905
|
+
complete -c aqe -n "__fish_seen_subcommand_from code; and __fish_seen_subcommand_from index search impact deps" -xa "(__fish_complete_directories)"
|
|
906
|
+
|
|
907
|
+
# Migrate command
|
|
908
|
+
complete -c aqe -n "__fish_seen_subcommand_from migrate" -l dry-run -d "Preview migration without changes"
|
|
909
|
+
complete -c aqe -n "__fish_seen_subcommand_from migrate" -l backup -d "Create backup before migration"
|
|
910
|
+
complete -c aqe -n "__fish_seen_subcommand_from migrate" -l skip-memory -d "Skip memory database migration"
|
|
911
|
+
complete -c aqe -n "__fish_seen_subcommand_from migrate" -l skip-patterns -d "Skip pattern migration"
|
|
912
|
+
complete -c aqe -n "__fish_seen_subcommand_from migrate" -l skip-config -d "Skip configuration migration"
|
|
913
|
+
complete -c aqe -n "__fish_seen_subcommand_from migrate" -l force -d "Force migration even if v3 exists"
|
|
914
|
+
|
|
915
|
+
# Completions command
|
|
916
|
+
complete -c aqe -n "__fish_seen_subcommand_from completions; and not __fish_seen_subcommand_from bash zsh fish powershell install" -a "bash" -d "Generate Bash completion script"
|
|
917
|
+
complete -c aqe -n "__fish_seen_subcommand_from completions; and not __fish_seen_subcommand_from bash zsh fish powershell install" -a "zsh" -d "Generate Zsh completion script"
|
|
918
|
+
complete -c aqe -n "__fish_seen_subcommand_from completions; and not __fish_seen_subcommand_from bash zsh fish powershell install" -a "fish" -d "Generate Fish completion script"
|
|
919
|
+
complete -c aqe -n "__fish_seen_subcommand_from completions; and not __fish_seen_subcommand_from bash zsh fish powershell install" -a "powershell" -d "Generate PowerShell completion script"
|
|
920
|
+
complete -c aqe -n "__fish_seen_subcommand_from completions; and not __fish_seen_subcommand_from bash zsh fish powershell install" -a "install" -d "Auto-install for current shell"
|
|
921
|
+
complete -c aqe -n "__fish_seen_subcommand_from completions; and __fish_seen_subcommand_from install" -l shell -d "Target shell" -xa "bash zsh fish powershell"
|
|
922
|
+
`}function v(){return`# AQE CLI PowerShell Completion Script
|
|
923
|
+
# Generated by aqe completions powershell
|
|
924
|
+
# ADR-041: Shell Completions for Enhanced Developer Experience
|
|
925
|
+
# ADR-042: Version-Agnostic Naming Convention
|
|
926
|
+
|
|
927
|
+
$script:AQE_DOMAINS = @(
|
|
928
|
+
${c.map(e=>`'${e}'`).join(`,
|
|
929
|
+
`)}
|
|
930
|
+
)
|
|
931
|
+
|
|
932
|
+
# QE Agents (version-agnostic names per ADR-042)
|
|
933
|
+
$script:AQE_QE_AGENTS = @(
|
|
934
|
+
${a.map(e=>`'${e}'`).join(`,
|
|
935
|
+
`)}
|
|
936
|
+
)
|
|
937
|
+
|
|
938
|
+
$script:AQE_OTHER_AGENTS = @(
|
|
939
|
+
${i.map(e=>`'${e}'`).join(`,
|
|
940
|
+
`)}
|
|
941
|
+
)
|
|
942
|
+
|
|
943
|
+
$script:AQE_ALL_AGENTS = $script:AQE_QE_AGENTS + $script:AQE_OTHER_AGENTS
|
|
944
|
+
|
|
945
|
+
$script:AQE_TASK_TYPES = @(
|
|
946
|
+
${p.map(e=>`'${e}'`).join(`,
|
|
947
|
+
`)}
|
|
948
|
+
)
|
|
949
|
+
|
|
950
|
+
$script:AQE_PRIORITIES = @('p0', 'p1', 'p2', 'p3')
|
|
951
|
+
$script:AQE_STATUSES = @('pending', 'running', 'completed', 'failed', 'cancelled')
|
|
952
|
+
$script:AQE_FRAMEWORKS = @(${d.map(e=>`'${e}'`).join(", ")})
|
|
953
|
+
$script:AQE_TEST_TYPES = @('unit', 'integration', 'e2e')
|
|
954
|
+
$script:AQE_MEMORY_BACKENDS = @('sqlite', 'agentdb', 'hybrid')
|
|
955
|
+
|
|
956
|
+
$script:AQE_COMMANDS = @{
|
|
957
|
+
'init' = 'Initialize the AQE system'
|
|
958
|
+
'status' = 'Show system status'
|
|
959
|
+
'health' = 'Check system health'
|
|
960
|
+
'task' = 'Manage QE tasks'
|
|
961
|
+
'agent' = 'Manage QE agents'
|
|
962
|
+
'domain' = 'Domain operations'
|
|
963
|
+
'protocol' = 'Execute coordination protocols'
|
|
964
|
+
'test' = 'Test generation and execution'
|
|
965
|
+
'coverage' = 'Coverage analysis'
|
|
966
|
+
'quality' = 'Quality assessment'
|
|
967
|
+
'security' = 'Security scanning'
|
|
968
|
+
'code' = 'Code intelligence'
|
|
969
|
+
'hypergraph' = 'Query the code knowledge hypergraph'
|
|
970
|
+
'migrate' = 'V2 to V3 migration'
|
|
971
|
+
'completions' = 'Generate shell completions'
|
|
972
|
+
}
|
|
973
|
+
|
|
974
|
+
Register-ArgumentCompleter -Native -CommandName 'aqe' -ScriptBlock {
|
|
975
|
+
param($wordToComplete, $commandAst, $cursorPosition)
|
|
976
|
+
|
|
977
|
+
$commandElements = $commandAst.CommandElements
|
|
978
|
+
$command = @()
|
|
979
|
+
|
|
980
|
+
for ($i = 1; $i -lt $commandElements.Count; $i++) {
|
|
981
|
+
$element = $commandElements[$i]
|
|
982
|
+
if ($element.Extent.StartOffset -lt $cursorPosition -and
|
|
983
|
+
$element.Extent.EndOffset -le $cursorPosition) {
|
|
984
|
+
$command += $element.Extent.Text
|
|
985
|
+
}
|
|
986
|
+
}
|
|
987
|
+
|
|
988
|
+
$completions = @()
|
|
989
|
+
|
|
990
|
+
# Helper function to create completion results
|
|
991
|
+
function New-Completion {
|
|
992
|
+
param($Name, $Description, $Type = 'ParameterValue')
|
|
993
|
+
[System.Management.Automation.CompletionResult]::new(
|
|
994
|
+
$Name,
|
|
995
|
+
$Name,
|
|
996
|
+
$Type,
|
|
997
|
+
$Description
|
|
998
|
+
)
|
|
999
|
+
}
|
|
1000
|
+
|
|
1001
|
+
if ($command.Count -eq 0) {
|
|
1002
|
+
# Complete main commands
|
|
1003
|
+
$script:AQE_COMMANDS.GetEnumerator() | Where-Object { $_.Key -like "$wordToComplete*" } | ForEach-Object {
|
|
1004
|
+
$completions += New-Completion $_.Key $_.Value 'Command'
|
|
1005
|
+
}
|
|
1006
|
+
}
|
|
1007
|
+
elseif ($command.Count -ge 1) {
|
|
1008
|
+
$mainCmd = $command[0]
|
|
1009
|
+
|
|
1010
|
+
switch ($mainCmd) {
|
|
1011
|
+
'init' {
|
|
1012
|
+
if ($wordToComplete -like '-*' -or $wordToComplete -eq '') {
|
|
1013
|
+
$completions += New-Completion '--wizard' 'Run interactive setup wizard'
|
|
1014
|
+
$completions += New-Completion '--auto' 'Auto-configure based on project analysis'
|
|
1015
|
+
$completions += New-Completion '--minimal' 'Minimal configuration'
|
|
1016
|
+
$completions += New-Completion '--domains' 'Domains to enable'
|
|
1017
|
+
$completions += New-Completion '--max-agents' 'Maximum concurrent agents'
|
|
1018
|
+
$completions += New-Completion '--memory' 'Memory backend'
|
|
1019
|
+
$completions += New-Completion '--lazy' 'Enable lazy loading'
|
|
1020
|
+
$completions += New-Completion '--skip-patterns' 'Skip loading pre-trained patterns'
|
|
1021
|
+
}
|
|
1022
|
+
elseif ($command[-1] -eq '--domains' -or $command[-1] -eq '-d') {
|
|
1023
|
+
$script:AQE_DOMAINS | Where-Object { $_ -like "$wordToComplete*" } | ForEach-Object {
|
|
1024
|
+
$completions += New-Completion $_ "Enable $_ domain"
|
|
1025
|
+
}
|
|
1026
|
+
$completions += New-Completion 'all' 'Enable all domains'
|
|
1027
|
+
}
|
|
1028
|
+
elseif ($command[-1] -eq '--memory' -or $command[-1] -eq '-m') {
|
|
1029
|
+
$script:AQE_MEMORY_BACKENDS | Where-Object { $_ -like "$wordToComplete*" } | ForEach-Object {
|
|
1030
|
+
$completions += New-Completion $_ "$_ memory backend"
|
|
1031
|
+
}
|
|
1032
|
+
}
|
|
1033
|
+
elseif ($command[-1] -eq '--max-agents') {
|
|
1034
|
+
@(5, 10, 15, 20, 25, 30, 50) | ForEach-Object {
|
|
1035
|
+
$completions += New-Completion $_.ToString() "$_ agents maximum"
|
|
1036
|
+
}
|
|
1037
|
+
}
|
|
1038
|
+
}
|
|
1039
|
+
|
|
1040
|
+
'status' {
|
|
1041
|
+
$completions += New-Completion '-v' 'Show detailed status'
|
|
1042
|
+
$completions += New-Completion '--verbose' 'Show detailed status'
|
|
1043
|
+
}
|
|
1044
|
+
|
|
1045
|
+
'health' {
|
|
1046
|
+
if ($command[-1] -eq '--domain' -or $command[-1] -eq '-d') {
|
|
1047
|
+
$script:AQE_DOMAINS | Where-Object { $_ -like "$wordToComplete*" } | ForEach-Object {
|
|
1048
|
+
$completions += New-Completion $_ "Check $_ domain health"
|
|
1049
|
+
}
|
|
1050
|
+
}
|
|
1051
|
+
else {
|
|
1052
|
+
$completions += New-Completion '-d' 'Check specific domain'
|
|
1053
|
+
$completions += New-Completion '--domain' 'Check specific domain'
|
|
1054
|
+
}
|
|
1055
|
+
}
|
|
1056
|
+
|
|
1057
|
+
'task' {
|
|
1058
|
+
if ($command.Count -eq 1) {
|
|
1059
|
+
$completions += New-Completion 'submit' 'Submit a task'
|
|
1060
|
+
$completions += New-Completion 'list' 'List all tasks'
|
|
1061
|
+
$completions += New-Completion 'cancel' 'Cancel a task'
|
|
1062
|
+
$completions += New-Completion 'status' 'Get task status'
|
|
1063
|
+
}
|
|
1064
|
+
elseif ($command[1] -eq 'submit') {
|
|
1065
|
+
if ($command[-1] -eq '--priority' -or $command[-1] -eq '-p') {
|
|
1066
|
+
$script:AQE_PRIORITIES | Where-Object { $_ -like "$wordToComplete*" } | ForEach-Object {
|
|
1067
|
+
$completions += New-Completion $_ "$_ priority"
|
|
1068
|
+
}
|
|
1069
|
+
}
|
|
1070
|
+
elseif ($command[-1] -eq '--domain' -or $command[-1] -eq '-d') {
|
|
1071
|
+
$script:AQE_DOMAINS | Where-Object { $_ -like "$wordToComplete*" } | ForEach-Object {
|
|
1072
|
+
$completions += New-Completion $_ "Target $_ domain"
|
|
1073
|
+
}
|
|
1074
|
+
}
|
|
1075
|
+
elseif ($command.Count -eq 2) {
|
|
1076
|
+
$script:AQE_TASK_TYPES | Where-Object { $_ -like "$wordToComplete*" } | ForEach-Object {
|
|
1077
|
+
$completions += New-Completion $_ "$_ task type"
|
|
1078
|
+
}
|
|
1079
|
+
}
|
|
1080
|
+
else {
|
|
1081
|
+
$completions += New-Completion '-p' 'Task priority'
|
|
1082
|
+
$completions += New-Completion '--priority' 'Task priority'
|
|
1083
|
+
$completions += New-Completion '-d' 'Target domain'
|
|
1084
|
+
$completions += New-Completion '--domain' 'Target domain'
|
|
1085
|
+
$completions += New-Completion '-t' 'Task timeout'
|
|
1086
|
+
$completions += New-Completion '--timeout' 'Task timeout'
|
|
1087
|
+
$completions += New-Completion '--payload' 'Task payload as JSON'
|
|
1088
|
+
}
|
|
1089
|
+
}
|
|
1090
|
+
elseif ($command[1] -eq 'list') {
|
|
1091
|
+
if ($command[-1] -eq '--status' -or $command[-1] -eq '-s') {
|
|
1092
|
+
$script:AQE_STATUSES | Where-Object { $_ -like "$wordToComplete*" } | ForEach-Object {
|
|
1093
|
+
$completions += New-Completion $_ "Filter by $_ status"
|
|
1094
|
+
}
|
|
1095
|
+
}
|
|
1096
|
+
elseif ($command[-1] -eq '--priority' -or $command[-1] -eq '-p') {
|
|
1097
|
+
$script:AQE_PRIORITIES | Where-Object { $_ -like "$wordToComplete*" } | ForEach-Object {
|
|
1098
|
+
$completions += New-Completion $_ "Filter by $_ priority"
|
|
1099
|
+
}
|
|
1100
|
+
}
|
|
1101
|
+
elseif ($command[-1] -eq '--domain' -or $command[-1] -eq '-d') {
|
|
1102
|
+
$script:AQE_DOMAINS | Where-Object { $_ -like "$wordToComplete*" } | ForEach-Object {
|
|
1103
|
+
$completions += New-Completion $_ "Filter by $_ domain"
|
|
1104
|
+
}
|
|
1105
|
+
}
|
|
1106
|
+
else {
|
|
1107
|
+
$completions += New-Completion '-s' 'Filter by status'
|
|
1108
|
+
$completions += New-Completion '--status' 'Filter by status'
|
|
1109
|
+
$completions += New-Completion '-p' 'Filter by priority'
|
|
1110
|
+
$completions += New-Completion '--priority' 'Filter by priority'
|
|
1111
|
+
$completions += New-Completion '-d' 'Filter by domain'
|
|
1112
|
+
$completions += New-Completion '--domain' 'Filter by domain'
|
|
1113
|
+
}
|
|
1114
|
+
}
|
|
1115
|
+
}
|
|
1116
|
+
|
|
1117
|
+
'agent' {
|
|
1118
|
+
if ($command.Count -eq 1) {
|
|
1119
|
+
$completions += New-Completion 'list' 'List all agents'
|
|
1120
|
+
$completions += New-Completion 'spawn' 'Spawn an agent'
|
|
1121
|
+
}
|
|
1122
|
+
elseif ($command[1] -eq 'list') {
|
|
1123
|
+
if ($command[-1] -eq '--domain' -or $command[-1] -eq '-d') {
|
|
1124
|
+
$script:AQE_DOMAINS | Where-Object { $_ -like "$wordToComplete*" } | ForEach-Object {
|
|
1125
|
+
$completions += New-Completion $_ "Filter by $_ domain"
|
|
1126
|
+
}
|
|
1127
|
+
}
|
|
1128
|
+
elseif ($command[-1] -eq '--status' -or $command[-1] -eq '-s') {
|
|
1129
|
+
@('active', 'idle', 'failed') | Where-Object { $_ -like "$wordToComplete*" } | ForEach-Object {
|
|
1130
|
+
$completions += New-Completion $_ "Filter by $_ status"
|
|
1131
|
+
}
|
|
1132
|
+
}
|
|
1133
|
+
else {
|
|
1134
|
+
$completions += New-Completion '-d' 'Filter by domain'
|
|
1135
|
+
$completions += New-Completion '--domain' 'Filter by domain'
|
|
1136
|
+
$completions += New-Completion '-s' 'Filter by status'
|
|
1137
|
+
$completions += New-Completion '--status' 'Filter by status'
|
|
1138
|
+
}
|
|
1139
|
+
}
|
|
1140
|
+
elseif ($command[1] -eq 'spawn') {
|
|
1141
|
+
if ($command[-1] -eq '--type' -or $command[-1] -eq '-t') {
|
|
1142
|
+
$script:AQE_ALL_AGENTS | Where-Object { $_ -like "$wordToComplete*" } | ForEach-Object {
|
|
1143
|
+
$completions += New-Completion $_ "$_ agent type"
|
|
1144
|
+
}
|
|
1145
|
+
}
|
|
1146
|
+
elseif ($command.Count -eq 2) {
|
|
1147
|
+
$script:AQE_DOMAINS | Where-Object { $_ -like "$wordToComplete*" } | ForEach-Object {
|
|
1148
|
+
$completions += New-Completion $_ "Spawn in $_ domain"
|
|
1149
|
+
}
|
|
1150
|
+
}
|
|
1151
|
+
else {
|
|
1152
|
+
$completions += New-Completion '-t' 'Agent type'
|
|
1153
|
+
$completions += New-Completion '--type' 'Agent type'
|
|
1154
|
+
$completions += New-Completion '-c' 'Capabilities'
|
|
1155
|
+
$completions += New-Completion '--capabilities' 'Capabilities'
|
|
1156
|
+
}
|
|
1157
|
+
}
|
|
1158
|
+
}
|
|
1159
|
+
|
|
1160
|
+
'domain' {
|
|
1161
|
+
if ($command.Count -eq 1) {
|
|
1162
|
+
$completions += New-Completion 'list' 'List all domains'
|
|
1163
|
+
$completions += New-Completion 'health' 'Get domain health'
|
|
1164
|
+
}
|
|
1165
|
+
elseif ($command[1] -eq 'health' -and $command.Count -eq 2) {
|
|
1166
|
+
$script:AQE_DOMAINS | Where-Object { $_ -like "$wordToComplete*" } | ForEach-Object {
|
|
1167
|
+
$completions += New-Completion $_ "$_ domain health"
|
|
1168
|
+
}
|
|
1169
|
+
}
|
|
1170
|
+
}
|
|
1171
|
+
|
|
1172
|
+
'protocol' {
|
|
1173
|
+
if ($command.Count -eq 1) {
|
|
1174
|
+
$completions += New-Completion 'run' 'Execute a protocol'
|
|
1175
|
+
}
|
|
1176
|
+
elseif ($command[1] -eq 'run') {
|
|
1177
|
+
$completions += New-Completion '--params' 'Protocol parameters as JSON'
|
|
1178
|
+
}
|
|
1179
|
+
}
|
|
1180
|
+
|
|
1181
|
+
'test' {
|
|
1182
|
+
if ($command.Count -eq 1) {
|
|
1183
|
+
$completions += New-Completion 'generate' 'Generate tests'
|
|
1184
|
+
$completions += New-Completion 'execute' 'Execute tests'
|
|
1185
|
+
}
|
|
1186
|
+
elseif ($command[-1] -eq '--framework' -or $command[-1] -eq '-f') {
|
|
1187
|
+
$script:AQE_FRAMEWORKS | Where-Object { $_ -like "$wordToComplete*" } | ForEach-Object {
|
|
1188
|
+
$completions += New-Completion $_ "$_ framework"
|
|
1189
|
+
}
|
|
1190
|
+
}
|
|
1191
|
+
elseif ($command[-1] -eq '--type' -or $command[-1] -eq '-t') {
|
|
1192
|
+
$script:AQE_TEST_TYPES | Where-Object { $_ -like "$wordToComplete*" } | ForEach-Object {
|
|
1193
|
+
$completions += New-Completion $_ "$_ tests"
|
|
1194
|
+
}
|
|
1195
|
+
}
|
|
1196
|
+
elseif ($command[-1] -eq '--file' -or ($command[1] -eq 'execute' -and $command.Count -eq 2)) {
|
|
1197
|
+
# Complete test files (*.test.ts, *.spec.ts, *.test.js, *.spec.js, etc.)
|
|
1198
|
+
Get-ChildItem -Path "." -Recurse -Depth 3 -Include "*.test.ts","*.spec.ts","*.test.js","*.spec.js","*.test.tsx","*.spec.tsx","*.test.jsx","*.spec.jsx" -ErrorAction SilentlyContinue |
|
|
1199
|
+
Select-Object -First 30 |
|
|
1200
|
+
Where-Object { $_.FullName -like "*$wordToComplete*" } |
|
|
1201
|
+
ForEach-Object {
|
|
1202
|
+
$relativePath = Resolve-Path -Relative $_.FullName
|
|
1203
|
+
$completions += New-Completion $relativePath "Test file"
|
|
1204
|
+
}
|
|
1205
|
+
# Also suggest directories for navigation
|
|
1206
|
+
Get-ChildItem -Directory -Path "." -ErrorAction SilentlyContinue |
|
|
1207
|
+
Where-Object { $_.Name -like "$wordToComplete*" } |
|
|
1208
|
+
ForEach-Object {
|
|
1209
|
+
$completions += New-Completion $_.Name "Directory"
|
|
1210
|
+
}
|
|
1211
|
+
}
|
|
1212
|
+
else {
|
|
1213
|
+
$completions += New-Completion '-f' 'Test framework'
|
|
1214
|
+
$completions += New-Completion '--framework' 'Test framework'
|
|
1215
|
+
$completions += New-Completion '-t' 'Test type'
|
|
1216
|
+
$completions += New-Completion '--type' 'Test type'
|
|
1217
|
+
$completions += New-Completion '--file' 'Test file pattern'
|
|
1218
|
+
$completions += New-Completion '--parallel' 'Run tests in parallel'
|
|
1219
|
+
$completions += New-Completion '--watch' 'Watch mode'
|
|
1220
|
+
}
|
|
1221
|
+
}
|
|
1222
|
+
|
|
1223
|
+
'coverage' {
|
|
1224
|
+
if ($command[-1] -eq '--target' -or $command[-1] -eq '-t' -or $command.Count -eq 1) {
|
|
1225
|
+
# Complete directories
|
|
1226
|
+
Get-ChildItem -Directory -Path "." -ErrorAction SilentlyContinue |
|
|
1227
|
+
Where-Object { $_.Name -like "$wordToComplete*" } |
|
|
1228
|
+
ForEach-Object {
|
|
1229
|
+
$completions += New-Completion $_.Name "Directory"
|
|
1230
|
+
}
|
|
1231
|
+
}
|
|
1232
|
+
else {
|
|
1233
|
+
$completions += New-Completion '--risk' 'Include risk scoring'
|
|
1234
|
+
$completions += New-Completion '--gaps' 'Detect coverage gaps'
|
|
1235
|
+
$completions += New-Completion '-t' 'Target directory'
|
|
1236
|
+
$completions += New-Completion '--target' 'Target directory'
|
|
1237
|
+
}
|
|
1238
|
+
}
|
|
1239
|
+
|
|
1240
|
+
'quality' {
|
|
1241
|
+
$completions += New-Completion '--gate' 'Run quality gate evaluation'
|
|
1242
|
+
}
|
|
1243
|
+
|
|
1244
|
+
'security' {
|
|
1245
|
+
if ($command[-1] -eq '--compliance') {
|
|
1246
|
+
@('gdpr', 'hipaa', 'soc2', 'pci-dss', 'ccpa') | Where-Object { $_ -like "$wordToComplete*" } | ForEach-Object {
|
|
1247
|
+
$completions += New-Completion $_ "$_ compliance"
|
|
1248
|
+
}
|
|
1249
|
+
}
|
|
1250
|
+
elseif ($command[-1] -eq '--target' -or $command[-1] -eq '-t' -or $command.Count -eq 1) {
|
|
1251
|
+
# Complete directories for security scan target
|
|
1252
|
+
Get-ChildItem -Directory -Path "." -ErrorAction SilentlyContinue |
|
|
1253
|
+
Where-Object { $_.Name -like "$wordToComplete*" } |
|
|
1254
|
+
ForEach-Object {
|
|
1255
|
+
$completions += New-Completion $_.Name "Directory"
|
|
1256
|
+
}
|
|
1257
|
+
}
|
|
1258
|
+
else {
|
|
1259
|
+
$completions += New-Completion '--sast' 'Run SAST scan'
|
|
1260
|
+
$completions += New-Completion '--dast' 'Run DAST scan'
|
|
1261
|
+
$completions += New-Completion '--compliance' 'Check compliance'
|
|
1262
|
+
$completions += New-Completion '-t' 'Target directory'
|
|
1263
|
+
$completions += New-Completion '--target' 'Target directory'
|
|
1264
|
+
}
|
|
1265
|
+
}
|
|
1266
|
+
|
|
1267
|
+
'code' {
|
|
1268
|
+
if ($command.Count -eq 1) {
|
|
1269
|
+
$completions += New-Completion 'index' 'Index codebase'
|
|
1270
|
+
$completions += New-Completion 'search' 'Search code'
|
|
1271
|
+
$completions += New-Completion 'impact' 'Analyze impact'
|
|
1272
|
+
$completions += New-Completion 'deps' 'Map dependencies'
|
|
1273
|
+
}
|
|
1274
|
+
elseif ($command[-1] -eq '--depth') {
|
|
1275
|
+
@(1, 2, 3, 4, 5) | ForEach-Object {
|
|
1276
|
+
$completions += New-Completion $_.ToString() "Depth $_"
|
|
1277
|
+
}
|
|
1278
|
+
}
|
|
1279
|
+
elseif ($command.Count -eq 2 -and @('index', 'search', 'impact', 'deps') -contains $command[1]) {
|
|
1280
|
+
# Complete directories for code action targets
|
|
1281
|
+
Get-ChildItem -Directory -Path "." -ErrorAction SilentlyContinue |
|
|
1282
|
+
Where-Object { $_.Name -like "$wordToComplete*" } |
|
|
1283
|
+
ForEach-Object {
|
|
1284
|
+
$completions += New-Completion $_.Name "Directory"
|
|
1285
|
+
}
|
|
1286
|
+
}
|
|
1287
|
+
else {
|
|
1288
|
+
$completions += New-Completion '--depth' 'Analysis depth'
|
|
1289
|
+
$completions += New-Completion '--include-tests' 'Include test files'
|
|
1290
|
+
}
|
|
1291
|
+
}
|
|
1292
|
+
|
|
1293
|
+
'migrate' {
|
|
1294
|
+
$completions += New-Completion '--dry-run' 'Preview migration without changes'
|
|
1295
|
+
$completions += New-Completion '--backup' 'Create backup before migration'
|
|
1296
|
+
$completions += New-Completion '--skip-memory' 'Skip memory database migration'
|
|
1297
|
+
$completions += New-Completion '--skip-patterns' 'Skip pattern migration'
|
|
1298
|
+
$completions += New-Completion '--skip-config' 'Skip configuration migration'
|
|
1299
|
+
$completions += New-Completion '--force' 'Force migration even if v3 exists'
|
|
1300
|
+
}
|
|
1301
|
+
|
|
1302
|
+
'completions' {
|
|
1303
|
+
if ($command.Count -eq 1) {
|
|
1304
|
+
$completions += New-Completion 'bash' 'Generate Bash completion script'
|
|
1305
|
+
$completions += New-Completion 'zsh' 'Generate Zsh completion script'
|
|
1306
|
+
$completions += New-Completion 'fish' 'Generate Fish completion script'
|
|
1307
|
+
$completions += New-Completion 'powershell' 'Generate PowerShell completion script'
|
|
1308
|
+
$completions += New-Completion 'install' 'Auto-install for current shell'
|
|
1309
|
+
}
|
|
1310
|
+
elseif ($command[1] -eq 'install') {
|
|
1311
|
+
if ($command[-1] -eq '--shell') {
|
|
1312
|
+
@('bash', 'zsh', 'fish', 'powershell') | Where-Object { $_ -like "$wordToComplete*" } | ForEach-Object {
|
|
1313
|
+
$completions += New-Completion $_ "$_ shell"
|
|
1314
|
+
}
|
|
1315
|
+
}
|
|
1316
|
+
else {
|
|
1317
|
+
$completions += New-Completion '--shell' 'Target shell'
|
|
1318
|
+
}
|
|
1319
|
+
}
|
|
1320
|
+
}
|
|
1321
|
+
}
|
|
1322
|
+
}
|
|
1323
|
+
|
|
1324
|
+
# Filter completions by word to complete
|
|
1325
|
+
$completions | Where-Object { $_.CompletionText -like "$wordToComplete*" }
|
|
1326
|
+
}
|
|
1327
|
+
`}function $(){let t=process.env.SHELL||"";if(process.env.PSVersionTable||process.env.PSModulePath)return{name:"powershell",configFile:process.platform==="win32"?`${process.env.USERPROFILE}\\Documents\\WindowsPowerShell\\Microsoft.PowerShell_profile.ps1`:`${process.env.HOME}/.config/powershell/Microsoft.PowerShell_profile.ps1`,detected:!0};let s=process.env.HOME||process.env.USERPROFILE||"";return t.includes("bash")?{name:"bash",configFile:`${s}/.bashrc`,detected:!0}:t.includes("zsh")?{name:"zsh",configFile:`${s}/.zshrc`,detected:!0}:t.includes("fish")?{name:"fish",configFile:`${s}/.config/fish/completions/aqe.fish`,detected:!0}:{name:"unknown",configFile:null,detected:!1}}function _(t){switch(t){case"bash":return`# Add to your ~/.bashrc:
|
|
1328
|
+
eval "$(aqe completions bash)"
|
|
1329
|
+
|
|
1330
|
+
# Or save to a file:
|
|
1331
|
+
aqe completions bash > /etc/bash_completion.d/aqe
|
|
1332
|
+
# or
|
|
1333
|
+
aqe completions bash > ~/.local/share/bash-completion/completions/aqe`;case"zsh":return`# Add to your ~/.zshrc:
|
|
1334
|
+
eval "$(aqe completions zsh)"
|
|
1335
|
+
|
|
1336
|
+
# Or save to a file:
|
|
1337
|
+
aqe completions zsh > ~/.zfunc/_aqe
|
|
1338
|
+
# Then add to ~/.zshrc:
|
|
1339
|
+
fpath=(~/.zfunc $fpath)
|
|
1340
|
+
autoload -Uz compinit && compinit`;case"fish":return`# Save to completions directory:
|
|
1341
|
+
aqe completions fish > ~/.config/fish/completions/aqe.fish`;case"powershell":return`# Add to your PowerShell profile ($PROFILE):
|
|
1342
|
+
Invoke-Expression (& aqe completions powershell | Out-String)
|
|
1343
|
+
|
|
1344
|
+
# Or save to a file and dot-source it:
|
|
1345
|
+
aqe completions powershell > ~/.config/powershell/aqe-completions.ps1
|
|
1346
|
+
# Then add to $PROFILE:
|
|
1347
|
+
. ~/.config/powershell/aqe-completions.ps1`;default:return`Shell not detected. Available shells:
|
|
1348
|
+
- bash: aqe completions bash
|
|
1349
|
+
- zsh: aqe completions zsh
|
|
1350
|
+
- fish: aqe completions fish
|
|
1351
|
+
- powershell: aqe completions powershell`}}function m(t){switch(t){case"bash":return q();case"zsh":return k();case"fish":return E();case"powershell":return v();default:throw new Error(`Unsupported shell: ${t}`)}}function T(t){let e=new N("completions").description("Generate shell completions for aqe");return e.command("bash").description("Generate Bash completion script").action(()=>{console.log(m("bash"))}),e.command("zsh").description("Generate Zsh completion script").action(()=>{console.log(m("zsh"))}),e.command("fish").description("Generate Fish completion script").action(()=>{console.log(m("fish"))}),e.command("powershell").description("Generate PowerShell completion script").action(()=>{console.log(m("powershell"))}),e.command("install").description("Auto-install completions for current shell").option("-s, --shell <shell>","Target shell (bash|zsh|fish|powershell)").action(async s=>{let n=await import("fs"),u=await import("path"),r=s.shell?{name:s.shell,configFile:null,detected:!1}:$();if(r.name==="unknown"){console.log(o.red(`Could not detect shell. Please specify with --shell option.
|
|
1352
|
+
`)),console.log(_("unknown")),await t(1);return}console.log(o.blue(`
|
|
1353
|
+
Installing completions for ${r.name}...
|
|
1354
|
+
`));let h=m(r.name);if(r.name==="fish"){let g=process.env.HOME||process.env.USERPROFILE||"",f=u.join(g,".config","fish","completions");try{n.mkdirSync(f,{recursive:!0});let l=u.join(f,"aqe.fish");n.writeFileSync(l,h),console.log(o.green(`Completions installed to: ${l}`)),console.log(o.gray(`
|
|
1355
|
+
Restart your shell or run: source ~/.config/fish/completions/aqe.fish
|
|
1356
|
+
`))}catch(l){console.log(o.red(`Failed to install: ${l}`)),console.log(o.yellow(`
|
|
1357
|
+
Manual installation:`)),console.log(_("fish"))}}else console.log(o.yellow(`To install completions, follow these instructions:
|
|
1358
|
+
`)),console.log(_(r.name)),console.log(o.gray(`
|
|
1359
|
+
---
|
|
1360
|
+
Completion script:
|
|
1361
|
+
`)),console.log(h)}),e.command("list").description("List all completion values (domains, agents, etc.)").option("-t, --type <type>","Type to list (domains|agents|v3-qe-agents)","all").action(s=>{(s.type==="domains"||s.type==="all")&&(console.log(o.blue(`
|
|
1362
|
+
12 DDD Domains:`)),c.forEach(n=>console.log(o.gray(` ${n}`)))),(s.type==="v3-qe-agents"||s.type==="all")&&(console.log(o.blue(`
|
|
1363
|
+
QE Agents (`+a.length+"):")),a.forEach(n=>console.log(o.gray(` ${n}`)))),(s.type==="agents"||s.type==="all")&&(console.log(o.blue(`
|
|
1364
|
+
Other Agents (`+i.length+"):")),i.forEach(n=>console.log(o.gray(` ${n}`)))),console.log("")}),e}export{T as createCompletionsCommand};
|