@aiwg/cli 0.0.0-bootstrap.0 → 2026.7.17

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (466) hide show
  1. package/README.md +21 -1
  2. package/bin/aiwg.mjs +349 -0
  3. package/dist/src/a2a/agent-card.js +145 -0
  4. package/dist/src/a2a/client.js +411 -0
  5. package/dist/src/a2a/hitl-cli.js +171 -0
  6. package/dist/src/a2a/hitl-driver.js +370 -0
  7. package/dist/src/a2a/hitl.js +181 -0
  8. package/dist/src/a2a/http.js +193 -0
  9. package/dist/src/a2a/jcs.js +128 -0
  10. package/dist/src/a2a/jws.js +187 -0
  11. package/dist/src/a2a/types.js +24 -0
  12. package/dist/src/a2a/webhook.js +240 -0
  13. package/dist/src/activity-log/cli.js +348 -0
  14. package/dist/src/activity-log/parser.js +81 -0
  15. package/dist/src/activity-log/types.js +50 -0
  16. package/dist/src/agents/agent-deployer.js +367 -0
  17. package/dist/src/agents/agent-packager.js +271 -0
  18. package/dist/src/agents/agent-validator.js +271 -0
  19. package/dist/src/agents/grounding/knowledge-base.js +161 -0
  20. package/dist/src/agents/grounding/types.js +12 -0
  21. package/dist/src/agents/index.js +10 -0
  22. package/dist/src/agents/packaged-agent-inventory.js +75 -0
  23. package/dist/src/agents/types.js +7 -0
  24. package/dist/src/api/index.d.ts +10 -0
  25. package/dist/src/api/index.js +10 -0
  26. package/dist/src/artifacts/address-parser.js +73 -0
  27. package/dist/src/artifacts/audit/cli.js +183 -0
  28. package/dist/src/artifacts/audit/drift.js +122 -0
  29. package/dist/src/artifacts/audit/types.js +12 -0
  30. package/dist/src/artifacts/backends/graphology-backend.js +160 -0
  31. package/dist/src/artifacts/backends/json-backend.js +129 -0
  32. package/dist/src/artifacts/backends/sqlite-backend.js +199 -0
  33. package/dist/src/artifacts/browser-export.js +622 -0
  34. package/dist/src/artifacts/capability-resolver.js +94 -0
  35. package/dist/src/artifacts/checksum-manifest.js +91 -0
  36. package/dist/src/artifacts/citation-parser.js +162 -0
  37. package/dist/src/artifacts/cli.js +1462 -0
  38. package/dist/src/artifacts/corpus-tools/citation-densify.js +311 -0
  39. package/dist/src/artifacts/corpus-tools/cli.js +393 -0
  40. package/dist/src/artifacts/corpus-tools/corpus-graph.js +225 -0
  41. package/dist/src/artifacts/corpus-tools/curator.js +186 -0
  42. package/dist/src/artifacts/corpus-tools/discovery-log.js +70 -0
  43. package/dist/src/artifacts/corpus-tools/funder-network.js +141 -0
  44. package/dist/src/artifacts/corpus-tools/induction-audit.js +233 -0
  45. package/dist/src/artifacts/corpus-tools/integrity-scan.js +202 -0
  46. package/dist/src/artifacts/corpus-tools/profile-communities.js +166 -0
  47. package/dist/src/artifacts/corpus-tools/profile-edges.js +72 -0
  48. package/dist/src/artifacts/corpus-tools/profile-embed.js +113 -0
  49. package/dist/src/artifacts/corpus-tools/profile-generate-fm.js +167 -0
  50. package/dist/src/artifacts/corpus-tools/profile-generate.js +181 -0
  51. package/dist/src/artifacts/corpus-tools/profile-metrics.js +98 -0
  52. package/dist/src/artifacts/corpus-tools/profile-status.js +86 -0
  53. package/dist/src/artifacts/corpus-tools/profile-temporal.js +139 -0
  54. package/dist/src/artifacts/corpus-tools/radar-init.js +93 -0
  55. package/dist/src/artifacts/corpus-tools/radar-report.js +118 -0
  56. package/dist/src/artifacts/corpus-tools/radar-shared.js +189 -0
  57. package/dist/src/artifacts/corpus-tools/radar-status.js +68 -0
  58. package/dist/src/artifacts/corpus-tools/sidecar-lint.js +233 -0
  59. package/dist/src/artifacts/corpus-tools/sidecar-repair.js +277 -0
  60. package/dist/src/artifacts/corpus-tools/snapshot.js +591 -0
  61. package/dist/src/artifacts/corpus-tools/source-types.js +164 -0
  62. package/dist/src/artifacts/corpus-tools/vision-extract.js +243 -0
  63. package/dist/src/artifacts/corpus-views/build.js +126 -0
  64. package/dist/src/artifacts/corpus-views/corpus-config.js +124 -0
  65. package/dist/src/artifacts/corpus-views/ref-parser.js +437 -0
  66. package/dist/src/artifacts/corpus-views/renderers.js +353 -0
  67. package/dist/src/artifacts/corpus-views/taxonomies.js +131 -0
  68. package/dist/src/artifacts/dep-graph.js +173 -0
  69. package/dist/src/artifacts/discover-facets.js +375 -0
  70. package/dist/src/artifacts/embedding-index.js +354 -0
  71. package/dist/src/artifacts/enrichment/cli.js +240 -0
  72. package/dist/src/artifacts/enrichment/prompt.js +47 -0
  73. package/dist/src/artifacts/enrichment/store.js +90 -0
  74. package/dist/src/artifacts/enrichment/types.js +12 -0
  75. package/dist/src/artifacts/fortemi-core-query-adapter.js +475 -0
  76. package/dist/src/artifacts/fortemi-core-sync.js +251 -0
  77. package/dist/src/artifacts/fortemi-shard-export.js +44 -0
  78. package/dist/src/artifacts/fulltext.js +108 -0
  79. package/dist/src/artifacts/graph-backend.js +51 -0
  80. package/dist/src/artifacts/graph-query.js +247 -0
  81. package/dist/src/artifacts/hybrid-query.js +225 -0
  82. package/dist/src/artifacts/index-builder.js +1089 -0
  83. package/dist/src/artifacts/index-reader.js +112 -0
  84. package/dist/src/artifacts/index-status.js +193 -0
  85. package/dist/src/artifacts/legacy-index-migration.js +169 -0
  86. package/dist/src/artifacts/move.js +154 -0
  87. package/dist/src/artifacts/operational-state.js +239 -0
  88. package/dist/src/artifacts/prebuilt-build-lock.js +49 -0
  89. package/dist/src/artifacts/query-engine.js +1955 -0
  90. package/dist/src/artifacts/source-graph.js +529 -0
  91. package/dist/src/artifacts/stats.js +169 -0
  92. package/dist/src/artifacts/types.js +606 -0
  93. package/dist/src/artifacts/views/cli.js +293 -0
  94. package/dist/src/artifacts/views/definition.js +170 -0
  95. package/dist/src/artifacts/views/store.js +149 -0
  96. package/dist/src/artifacts/views/types.js +8 -0
  97. package/dist/src/artifacts/watcher.js +255 -0
  98. package/dist/src/catalog/builtin-models.json +636 -0
  99. package/dist/src/catalog/cli.js +228 -0
  100. package/dist/src/catalog/cli.mjs +289 -0
  101. package/dist/src/catalog/index.js +15 -0
  102. package/dist/src/catalog/loader.js +217 -0
  103. package/dist/src/catalog/loader.mjs +251 -0
  104. package/dist/src/catalog/sources.json +41 -0
  105. package/dist/src/catalog/types.js +8 -0
  106. package/dist/src/channel/manager.mjs +504 -0
  107. package/dist/src/cli/agent-spawn.js +178 -0
  108. package/dist/src/cli/cli-extension-loader.js +245 -0
  109. package/dist/src/cli/command-log.js +275 -0
  110. package/dist/src/cli/config-loader.js +232 -0
  111. package/dist/src/cli/env.js +82 -0
  112. package/dist/src/cli/errors.js +150 -0
  113. package/dist/src/cli/find-package-root.js +40 -0
  114. package/dist/src/cli/git-hooks.js +250 -0
  115. package/dist/src/cli/handlers/agentcard.js +206 -0
  116. package/dist/src/cli/handlers/artifacts.js +76 -0
  117. package/dist/src/cli/handlers/best-practices-audit.js +280 -0
  118. package/dist/src/cli/handlers/cockpit.js +137 -0
  119. package/dist/src/cli/handlers/command-log.js +37 -0
  120. package/dist/src/cli/handlers/daemon.js +59 -0
  121. package/dist/src/cli/handlers/diagnose.js +300 -0
  122. package/dist/src/cli/handlers/execution-mode.js +105 -0
  123. package/dist/src/cli/handlers/feedback.js +341 -0
  124. package/dist/src/cli/handlers/help.js +147 -0
  125. package/dist/src/cli/handlers/index.js +302 -0
  126. package/dist/src/cli/handlers/init.js +179 -0
  127. package/dist/src/cli/handlers/install.js +129 -0
  128. package/dist/src/cli/handlers/issues.js +46 -0
  129. package/dist/src/cli/handlers/lint.js +42 -0
  130. package/dist/src/cli/handlers/local-executor.js +315 -0
  131. package/dist/src/cli/handlers/marketplace.js +168 -0
  132. package/dist/src/cli/handlers/mc.js +1010 -0
  133. package/dist/src/cli/handlers/models.js +352 -0
  134. package/dist/src/cli/handlers/packages.js +155 -0
  135. package/dist/src/cli/handlers/ralph-launcher.js +717 -0
  136. package/dist/src/cli/handlers/ralph.js +575 -0
  137. package/dist/src/cli/handlers/refresh.js +432 -0
  138. package/dist/src/cli/handlers/regenerate.js +336 -0
  139. package/dist/src/cli/handlers/repo-access.js +109 -0
  140. package/dist/src/cli/handlers/run.js +165 -0
  141. package/dist/src/cli/handlers/runtime-info.js +301 -0
  142. package/dist/src/cli/handlers/sandbox.js +197 -0
  143. package/dist/src/cli/handlers/scaffolding.js +149 -0
  144. package/dist/src/cli/handlers/script-runner.js +121 -0
  145. package/dist/src/cli/handlers/sdlc-accelerate.js +148 -0
  146. package/dist/src/cli/handlers/serve.js +1835 -0
  147. package/dist/src/cli/handlers/session.js +348 -0
  148. package/dist/src/cli/handlers/setup.js +440 -0
  149. package/dist/src/cli/handlers/skill-lint.js +367 -0
  150. package/dist/src/cli/handlers/skill-usage.js +74 -0
  151. package/dist/src/cli/handlers/steward.js +567 -0
  152. package/dist/src/cli/handlers/subcommands.js +1702 -0
  153. package/dist/src/cli/handlers/team.js +337 -0
  154. package/dist/src/cli/handlers/types.js +11 -0
  155. package/dist/src/cli/handlers/use.js +2772 -0
  156. package/dist/src/cli/handlers/utilities.js +703 -0
  157. package/dist/src/cli/handlers/version.js +134 -0
  158. package/dist/src/cli/handlers/workspace-context.js +93 -0
  159. package/dist/src/cli/handlers/workspace.js +126 -0
  160. package/dist/src/cli/help-generator.js +178 -0
  161. package/dist/src/cli/hooks/builtin/activity-log-hook.js +126 -0
  162. package/dist/src/cli/hooks/executor.js +96 -0
  163. package/dist/src/cli/hooks/index.js +15 -0
  164. package/dist/src/cli/hooks/registry.js +143 -0
  165. package/dist/src/cli/hooks/types.js +13 -0
  166. package/dist/src/cli/log.js +492 -0
  167. package/dist/src/cli/project-isolation/detect.js +70 -0
  168. package/dist/src/cli/project-isolation/index.js +7 -0
  169. package/dist/src/cli/project-isolation/signals.js +17 -0
  170. package/dist/src/cli/project-isolation/warning.js +102 -0
  171. package/dist/src/cli/prompt-utils.js +155 -0
  172. package/dist/src/cli/provider-deployment-plan.js +126 -0
  173. package/dist/src/cli/provider-resolution.js +119 -0
  174. package/dist/src/cli/router.js +305 -0
  175. package/dist/src/cli/scope-resolver.js +392 -0
  176. package/dist/src/cli/skill-usage.js +616 -0
  177. package/dist/src/cli/ui.js +224 -0
  178. package/dist/src/cli/watch-service.js +203 -0
  179. package/dist/src/cli/workflow-orchestrator.js +478 -0
  180. package/dist/src/cli/workspace-signals.js +321 -0
  181. package/dist/src/community/footer.js +14 -0
  182. package/dist/src/community/links.js +123 -0
  183. package/dist/src/community/milestones.js +46 -0
  184. package/dist/src/community/nudge-policy.js +93 -0
  185. package/dist/src/config/aiwg-config.js +883 -0
  186. package/dist/src/config/cli.js +703 -0
  187. package/dist/src/config/gitignore.js +156 -0
  188. package/dist/src/config/project-artifacts.js +76 -0
  189. package/dist/src/config/user-config.js +428 -0
  190. package/dist/src/config/user-registry.js +127 -0
  191. package/dist/src/config/workspace.js +276 -0
  192. package/dist/src/contributors/detect.js +39 -0
  193. package/dist/src/contributors/discover.js +172 -0
  194. package/dist/src/contributors/heuristic.js +186 -0
  195. package/dist/src/contributors/index.js +11 -0
  196. package/dist/src/contributors/types.js +13 -0
  197. package/dist/src/contributors/validation.js +116 -0
  198. package/dist/src/data/community.schema.json +43 -0
  199. package/dist/src/data/community.yaml +16 -0
  200. package/dist/src/extensions/capability-index.js +270 -0
  201. package/dist/src/extensions/claude-hooks-installer.js +268 -0
  202. package/dist/src/extensions/commands/definitions.js +3485 -0
  203. package/dist/src/extensions/deployment-registration.js +463 -0
  204. package/dist/src/extensions/index.js +22 -0
  205. package/dist/src/extensions/loader.js +132 -0
  206. package/dist/src/extensions/managed-marker.js +100 -0
  207. package/dist/src/extensions/manifest.js +196 -0
  208. package/dist/src/extensions/project-local-activity.js +114 -0
  209. package/dist/src/extensions/project-local-discovery.js +261 -0
  210. package/dist/src/extensions/project-local-doctor.js +281 -0
  211. package/dist/src/extensions/project-local-gitignore.js +176 -0
  212. package/dist/src/extensions/project-local-paths.js +121 -0
  213. package/dist/src/extensions/project-local-promote.js +218 -0
  214. package/dist/src/extensions/project-local-remove.js +373 -0
  215. package/dist/src/extensions/project-local-scaffold.js +252 -0
  216. package/dist/src/extensions/project-quickref.js +291 -0
  217. package/dist/src/extensions/registry.js +368 -0
  218. package/dist/src/extensions/shadow-resolver.js +271 -0
  219. package/dist/src/extensions/types.js +86 -0
  220. package/dist/src/extensions/upstream-registry.js +195 -0
  221. package/dist/src/extensions/validation.js +631 -0
  222. package/dist/src/features/catalog.js +88 -0
  223. package/dist/src/features/cli.js +197 -0
  224. package/dist/src/features/installer.js +57 -0
  225. package/dist/src/features/paths.js +14 -0
  226. package/dist/src/features/runtime.js +21 -0
  227. package/dist/src/features/status.js +134 -0
  228. package/dist/src/hooks/laziness-detection.js +532 -0
  229. package/dist/src/intake/git-history-analyzer.js +486 -0
  230. package/dist/src/intake/index.js +9 -0
  231. package/dist/src/issues/cli.js +327 -0
  232. package/dist/src/issues/index.js +5 -0
  233. package/dist/src/issues/live.js +154 -0
  234. package/dist/src/issues/local.js +666 -0
  235. package/dist/src/issues/sync.js +143 -0
  236. package/dist/src/issues/types.js +2 -0
  237. package/dist/src/issues/workflows.js +164 -0
  238. package/dist/src/kb/cli.js +173 -0
  239. package/dist/src/lint/cli.js +171 -0
  240. package/dist/src/lint/loader.js +225 -0
  241. package/dist/src/lint/reporters.js +141 -0
  242. package/dist/src/lint/runner.js +364 -0
  243. package/dist/src/lint/types.js +10 -0
  244. package/dist/src/marketplace/cache.js +110 -0
  245. package/dist/src/marketplace/identifier.js +63 -0
  246. package/dist/src/marketplace/registry.js +36 -0
  247. package/dist/src/marketplace/sources/clawhub.js +53 -0
  248. package/dist/src/marketplace/sources/git.js +45 -0
  249. package/dist/src/marketplace/types.js +9 -0
  250. package/dist/src/mcp/adapters/codex-runtime.js +224 -0
  251. package/dist/src/mcp/cli.mjs +1197 -0
  252. package/dist/src/mcp/elicitation.mjs +149 -0
  253. package/dist/src/mcp/helpers.mjs +287 -0
  254. package/dist/src/mcp/index.mjs +11 -0
  255. package/dist/src/mcp/profiles.js +263 -0
  256. package/dist/src/mcp/profiles.mjs +360 -0
  257. package/dist/src/mcp/registry.js +376 -0
  258. package/dist/src/mcp/registry.mjs +387 -0
  259. package/dist/src/mcp/server.mjs +633 -0
  260. package/dist/src/mcp/test-simple.mjs +271 -0
  261. package/dist/src/mcp/tools/command-run.mjs +101 -0
  262. package/dist/src/mcp/tools/discovery.mjs +291 -0
  263. package/dist/src/mcp/tools/interaction.mjs +87 -0
  264. package/dist/src/mcp/tools/orchestration.mjs +320 -0
  265. package/dist/src/mcp/tools/subsystems.mjs +640 -0
  266. package/dist/src/memory/cli.js +166 -0
  267. package/dist/src/memory/project-registry.js +282 -0
  268. package/dist/src/metrics/artifact-metrics.js +184 -0
  269. package/dist/src/metrics/context-budget.js +174 -0
  270. package/dist/src/metrics/token-counter.js +133 -0
  271. package/dist/src/models/config-loader.js +228 -0
  272. package/dist/src/models/index.js +22 -0
  273. package/dist/src/models/model-capabilities.v1.json +120 -0
  274. package/dist/src/models/model-catalog.v1.json +96 -0
  275. package/dist/src/models/model-discovery.js +521 -0
  276. package/dist/src/models/provider-models.js +73 -0
  277. package/dist/src/models/provider-policy.js +273 -0
  278. package/dist/src/models/resolver.js +245 -0
  279. package/dist/src/models/router.js +70 -0
  280. package/dist/src/models/types.js +8 -0
  281. package/dist/src/models/wrapper-deployment.js +178 -0
  282. package/dist/src/models/wrapper-route.js +54 -0
  283. package/dist/src/ops/cli.js +268 -0
  284. package/dist/src/ops/registry.js +623 -0
  285. package/dist/src/packages/adapters/clawhub.js +113 -0
  286. package/dist/src/packages/adapters/git.js +153 -0
  287. package/dist/src/packages/adapters/gitea.js +93 -0
  288. package/dist/src/packages/adapters/github.js +69 -0
  289. package/dist/src/packages/adapters/local-cache.js +89 -0
  290. package/dist/src/packages/package-registry.js +143 -0
  291. package/dist/src/packages/registry.js +238 -0
  292. package/dist/src/packages/types.js +11 -0
  293. package/dist/src/plugin/cross-framework-ops.js +475 -0
  294. package/dist/src/plugin/framework-config-loader.js +235 -0
  295. package/dist/src/plugin/framework-detector.js +186 -0
  296. package/dist/src/plugin/framework-isolator.js +341 -0
  297. package/dist/src/plugin/framework-migration.js +371 -0
  298. package/dist/src/plugin/metadata-validator.js +906 -0
  299. package/dist/src/plugin/plugin-installer.js +436 -0
  300. package/dist/src/plugin/plugin-status.js +369 -0
  301. package/dist/src/plugin/plugin-uninstaller.js +473 -0
  302. package/dist/src/plugin/registry-validator.js +344 -0
  303. package/dist/src/plugin/skill-command-translator.js +415 -0
  304. package/dist/src/plugin/workspace-creator.js +189 -0
  305. package/dist/src/plugin/workspace-migrator.js +821 -0
  306. package/dist/src/policy/authorization.js +390 -0
  307. package/dist/src/policy/repo-access.js +215 -0
  308. package/dist/src/provenance/cli.js +16 -0
  309. package/dist/src/providers/capability-matrix.js +300 -0
  310. package/dist/src/providers/capability-matrix.yaml +514 -0
  311. package/dist/src/providers/provider-definitions.js +977 -0
  312. package/dist/src/providers/provider-definitions.mjs +159 -0
  313. package/dist/src/providers/provider-inventory.js +169 -0
  314. package/dist/src/quality/feedback-ab.js +174 -0
  315. package/dist/src/quality/feedback-collector.js +176 -0
  316. package/dist/src/quality/feedback-tracker.js +123 -0
  317. package/dist/src/quality/patterns/adr.json +24 -0
  318. package/dist/src/quality/patterns/sad.json +24 -0
  319. package/dist/src/quality/patterns/test-plan.json +24 -0
  320. package/dist/src/quality/patterns/use-case.json +24 -0
  321. package/dist/src/quality/scoring.js +157 -0
  322. package/dist/src/reflections/cli.js +15 -0
  323. package/dist/src/release/plan.js +139 -0
  324. package/dist/src/research/cache/manager.js +227 -0
  325. package/dist/src/research/clients/arxiv.js +156 -0
  326. package/dist/src/research/clients/base.js +197 -0
  327. package/dist/src/research/clients/crossref.js +112 -0
  328. package/dist/src/research/clients/semantic-scholar.js +126 -0
  329. package/dist/src/research/clients/unpaywall.js +87 -0
  330. package/dist/src/research/index.js +14 -0
  331. package/dist/src/research/query-cli.js +336 -0
  332. package/dist/src/research/services/acquisition.js +313 -0
  333. package/dist/src/research/services/archival.js +225 -0
  334. package/dist/src/research/services/citation.js +279 -0
  335. package/dist/src/research/services/discovery.js +243 -0
  336. package/dist/src/research/services/documentation.js +269 -0
  337. package/dist/src/research/services/index.js +14 -0
  338. package/dist/src/research/services/provenance.js +279 -0
  339. package/dist/src/research/services/quality.js +370 -0
  340. package/dist/src/research/services/types.js +7 -0
  341. package/dist/src/research/storage-cli.js +20 -0
  342. package/dist/src/research/types.js +47 -0
  343. package/dist/src/resources/index.d.ts +2 -0
  344. package/dist/src/resources/index.js +2 -0
  345. package/dist/src/resources/web-release.d.ts +89 -0
  346. package/dist/src/resources/web-release.js +882 -0
  347. package/dist/src/rlm/cache/cli.js +162 -0
  348. package/dist/src/rlm/cache/hash.js +35 -0
  349. package/dist/src/rlm/cache/store.js +170 -0
  350. package/dist/src/rlm/cache/types.js +8 -0
  351. package/dist/src/rlm/cli.js +650 -0
  352. package/dist/src/serve/a2a-terminal-observer.js +120 -0
  353. package/dist/src/serve/agent-router.js +205 -0
  354. package/dist/src/serve/dispatch-router.js +171 -0
  355. package/dist/src/serve/executor-registry.js +715 -0
  356. package/dist/src/serve/mission-conductor.js +177 -0
  357. package/dist/src/serve/orchestrator-adapter.js +113 -0
  358. package/dist/src/serve/orchestrator-override.js +94 -0
  359. package/dist/src/serve/orchestrator-pty.js +133 -0
  360. package/dist/src/serve/pty-bridge.js +799 -0
  361. package/dist/src/serve/sandbox-registry.js +832 -0
  362. package/dist/src/serve/screen-reader.js +228 -0
  363. package/dist/src/serve/stack-adapters.js +68 -0
  364. package/dist/src/serve/telemetry.js +143 -0
  365. package/dist/src/skills/adapters/clawhub.js +250 -0
  366. package/dist/src/skills/adapters/local.js +335 -0
  367. package/dist/src/skills/adapters/openclaw.js +316 -0
  368. package/dist/src/skills/cli.js +334 -0
  369. package/dist/src/skills/registry.js +117 -0
  370. package/dist/src/skills/run.js +259 -0
  371. package/dist/src/skills/runtime.js +94 -0
  372. package/dist/src/skills/types.js +10 -0
  373. package/dist/src/smiths/agentsmith/demo.js +116 -0
  374. package/dist/src/smiths/agentsmith/examples.js +300 -0
  375. package/dist/src/smiths/agentsmith/generator.js +503 -0
  376. package/dist/src/smiths/agentsmith/index.js +11 -0
  377. package/dist/src/smiths/agentsmith/types.js +8 -0
  378. package/dist/src/smiths/commandsmith/example.js +220 -0
  379. package/dist/src/smiths/commandsmith/generator.js +288 -0
  380. package/dist/src/smiths/commandsmith/index.js +41 -0
  381. package/dist/src/smiths/commandsmith/templates.js +296 -0
  382. package/dist/src/smiths/commandsmith/types.js +7 -0
  383. package/dist/src/smiths/context-pipeline/aiwg-md.js +104 -0
  384. package/dist/src/smiths/context-pipeline/allowlist.js +195 -0
  385. package/dist/src/smiths/context-pipeline/claude-hook.js +127 -0
  386. package/dist/src/smiths/context-pipeline/discovery.js +187 -0
  387. package/dist/src/smiths/context-pipeline/external-links-section.js +49 -0
  388. package/dist/src/smiths/context-pipeline/finalization.js +147 -0
  389. package/dist/src/smiths/context-pipeline/generator.js +477 -0
  390. package/dist/src/smiths/context-pipeline/index.js +30 -0
  391. package/dist/src/smiths/context-pipeline/legacy-inject.js +103 -0
  392. package/dist/src/smiths/context-pipeline/managed-hook.js +95 -0
  393. package/dist/src/smiths/context-pipeline/overflow.js +212 -0
  394. package/dist/src/smiths/context-pipeline/parallelism-section.js +94 -0
  395. package/dist/src/smiths/context-pipeline/provider-policy.js +64 -0
  396. package/dist/src/smiths/context-pipeline/sanitizer.js +93 -0
  397. package/dist/src/smiths/context-pipeline/types.js +23 -0
  398. package/dist/src/smiths/context-pipeline/workspace-context.js +988 -0
  399. package/dist/src/smiths/hook-bridge/codex-translator.js +129 -0
  400. package/dist/src/smiths/hook-bridge/copilot-translator.js +64 -0
  401. package/dist/src/smiths/hook-bridge/factory-translator.js +43 -0
  402. package/dist/src/smiths/hook-bridge/hermes-translator.js +88 -0
  403. package/dist/src/smiths/hook-bridge/index.js +79 -0
  404. package/dist/src/smiths/hook-bridge/loader.js +116 -0
  405. package/dist/src/smiths/hook-bridge/shim.js +89 -0
  406. package/dist/src/smiths/hook-bridge/types.js +31 -0
  407. package/dist/src/smiths/index.js +39 -0
  408. package/dist/src/smiths/mcpsmith/analyzers/cli-analyzer.js +390 -0
  409. package/dist/src/smiths/mcpsmith/example.js +119 -0
  410. package/dist/src/smiths/mcpsmith/generator.js +236 -0
  411. package/dist/src/smiths/mcpsmith/index.js +17 -0
  412. package/dist/src/smiths/mcpsmith/types.js +10 -0
  413. package/dist/src/smiths/platform-paths.js +101 -0
  414. package/dist/src/smiths/skillsmith/codex-sidecar.js +85 -0
  415. package/dist/src/smiths/skillsmith/collision-detector.js +249 -0
  416. package/dist/src/smiths/skillsmith/demo.js +83 -0
  417. package/dist/src/smiths/skillsmith/examples.js +161 -0
  418. package/dist/src/smiths/skillsmith/generator.js +316 -0
  419. package/dist/src/smiths/skillsmith/index.js +12 -0
  420. package/dist/src/smiths/skillsmith/namespace-adapter.js +180 -0
  421. package/dist/src/smiths/skillsmith/platform-resolver.js +157 -0
  422. package/dist/src/smiths/skillsmith/types.js +9 -0
  423. package/dist/src/smiths/toolsmith/index.js +10 -0
  424. package/dist/src/smiths/toolsmith/runtime-discovery.mjs +710 -0
  425. package/dist/src/smiths/toolsmith/types.js +8 -0
  426. package/dist/src/storage/backends/fortemi.js +227 -0
  427. package/dist/src/storage/backends/fs.js +134 -0
  428. package/dist/src/storage/backends/logseq.js +309 -0
  429. package/dist/src/storage/backends/obsidian.js +233 -0
  430. package/dist/src/storage/cli.js +468 -0
  431. package/dist/src/storage/config.js +272 -0
  432. package/dist/src/storage/index.js +108 -0
  433. package/dist/src/storage/subsystem-cli.js +201 -0
  434. package/dist/src/storage/types.js +33 -0
  435. package/dist/src/testing/corpus/corpus-builder.js +383 -0
  436. package/dist/src/testing/corpus/ground-truth-manager.js +460 -0
  437. package/dist/src/testing/corpus/index.js +10 -0
  438. package/dist/src/testing/fixtures/index.js +9 -0
  439. package/dist/src/testing/fixtures/test-data-factory.js +472 -0
  440. package/dist/src/testing/generators/index.js +11 -0
  441. package/dist/src/testing/generators/test-case-generator.js +393 -0
  442. package/dist/src/testing/generators/test-code-generator.js +384 -0
  443. package/dist/src/testing/generators/use-case-parser.js +325 -0
  444. package/dist/src/testing/index.js +11 -0
  445. package/dist/src/tracker/capability-protocol.js +118 -0
  446. package/dist/src/update/checker.mjs +396 -0
  447. package/dist/src/update/notifier.mjs +235 -0
  448. package/dist/src/writing/content-diversifier.js +804 -0
  449. package/dist/src/writing/example-generator.js +959 -0
  450. package/dist/src/writing/example-templates.js +99 -0
  451. package/dist/src/writing/pattern-library.js +486 -0
  452. package/dist/src/writing/patterns/banned-phrases.json +4413 -0
  453. package/dist/src/writing/patterns/formulaic-structures.json +1300 -0
  454. package/dist/src/writing/patterns/generic-adjectives.json +1510 -0
  455. package/dist/src/writing/patterns/hedging-language.json +2096 -0
  456. package/dist/src/writing/patterns/transition-words.json +1285 -0
  457. package/dist/src/writing/patterns/weak-verbs.json +1112 -0
  458. package/dist/src/writing/prompt-optimizer.js +660 -0
  459. package/dist/src/writing/prompt-templates.js +583 -0
  460. package/dist/src/writing/scoring-config-loader.js +168 -0
  461. package/dist/src/writing/validation-engine.js +595 -0
  462. package/dist/src/writing/validation-rules.js +380 -0
  463. package/dist/src/writing/voice-analyzer.js +439 -0
  464. package/dist/src/writing/voice-calibration.js +661 -0
  465. package/dist/src/writing/voice-profiles.json +588 -0
  466. package/package.json +64 -9
@@ -0,0 +1,348 @@
1
+ /**
2
+ * Session Command Handler
3
+ *
4
+ * Starts an agentic session for a configured provider with full pre-flight:
5
+ * 1. Version check — updates aiwg if stale
6
+ * 2. Doctor — auto-repairs fixable issues
7
+ * 3. Deployment check — redeploys framework files if missing/stale
8
+ * 4. MCP inject (optional, `aiwg session mcp`)
9
+ * 5. Launch binary (spawnable providers) or print start instructions (IDE providers)
10
+ *
11
+ * Usage:
12
+ * aiwg session # default provider, full pre-flight + launch
13
+ * aiwg session mcp # inject configured MCPs first, then launch
14
+ * aiwg session --provider codex # explicit provider
15
+ * aiwg session mcp --provider cursor # MCP inject for cursor + start instructions
16
+ * aiwg session --no-repair # skip auto-repair (still check and report)
17
+ *
18
+ * @issue #884
19
+ */
20
+ import { spawnSync } from 'child_process';
21
+ import { ensureRuntimeHome, writeProfileConfig, launchWithProfile } from '../../mcp/adapters/codex-runtime.js';
22
+ import { getFrameworkRoot } from '../../channel/manager.mjs';
23
+ import { forceUpdateCheck } from '../../update/checker.mjs';
24
+ import { readAiwgConfig, getDeploymentSummary, VALID_PROVIDERS, } from '../../config/aiwg-config.js';
25
+ import { getProviderConfig, isSpawnableProvider, PROVIDER_CONFIGS, } from '../agent-spawn.js';
26
+ import { useHandler as useFrameworkHandler } from './use.js';
27
+ import { debug } from '../log.js';
28
+ // ── Provider resolution ──────────────────────────────────────────────────────
29
+ /**
30
+ * Resolve which provider to target.
31
+ * Precedence: --provider flag > project config providers[0] > 'claude'
32
+ */
33
+ async function resolveProvider(explicitProvider, cwd) {
34
+ if (explicitProvider) {
35
+ if (!VALID_PROVIDERS.includes(explicitProvider)) {
36
+ console.warn(` WARN Unknown provider '${explicitProvider}' — falling back to 'claude'`);
37
+ return 'claude';
38
+ }
39
+ return explicitProvider;
40
+ }
41
+ const config = await readAiwgConfig(cwd);
42
+ if (config?.providers?.[0]) {
43
+ return config.providers[0];
44
+ }
45
+ return 'claude';
46
+ }
47
+ function parseSessionArgs(args) {
48
+ let mcp = false;
49
+ let provider;
50
+ let noRepair = false;
51
+ let profile;
52
+ let persist = false;
53
+ for (let i = 0; i < args.length; i++) {
54
+ const a = args[i];
55
+ if (a === 'mcp') {
56
+ mcp = true;
57
+ }
58
+ else if (a === '--provider' && args[i + 1]) {
59
+ provider = args[++i];
60
+ }
61
+ else if (a === '--no-repair') {
62
+ noRepair = true;
63
+ }
64
+ else if (a === '--profile' && args[i + 1]) {
65
+ profile = args[++i];
66
+ }
67
+ else if (a === '--persist') {
68
+ persist = true;
69
+ }
70
+ }
71
+ return { mcp, provider, noRepair, profile, persist };
72
+ }
73
+ // ── Pre-flight steps ─────────────────────────────────────────────────────────
74
+ /** Run `npm view aiwg version` and compare to current. Returns true if up-to-date. */
75
+ async function checkAndUpdateVersion(noRepair) {
76
+ console.log(' Checking aiwg version...');
77
+ try {
78
+ await forceUpdateCheck();
79
+ return true;
80
+ }
81
+ catch (err) {
82
+ // forceUpdateCheck handles its own user-visible output — the underlying
83
+ // error is only relevant for troubleshooting, gated behind AIWG_DEBUG.
84
+ debug('cli:session:update', 'forceUpdateCheck failed', err);
85
+ if (!noRepair) {
86
+ console.log(' Version check failed — attempting sync...');
87
+ const r = spawnSync('npm', ['install', '-g', 'aiwg@latest'], { stdio: 'inherit' });
88
+ if (r.status !== 0) {
89
+ console.warn(' WARN Could not update aiwg — continuing with current version.');
90
+ return false;
91
+ }
92
+ }
93
+ return true;
94
+ }
95
+ }
96
+ /**
97
+ * Run `aiwg doctor` and return whether it passed.
98
+ * Uses the same script runner path as doctorHandler to avoid duplication.
99
+ */
100
+ function runDoctor(_frameworkRoot, cwd) {
101
+ const result = spawnSync(process.execPath, [process.argv[1], 'doctor'], { stdio: 'inherit', cwd });
102
+ return (result.status ?? 1) === 0;
103
+ }
104
+ /**
105
+ * Attempt to repair a failed doctor result.
106
+ * Strategy: `aiwg sync` first; if that fails, offer full reinstall.
107
+ * Returns true if repair succeeded (doctor now passes).
108
+ */
109
+ function repairInstallation(frameworkRoot, cwd, provider, installedFrameworks) {
110
+ // Strategy 1: sync (update + redeploy)
111
+ console.log('\n Attempting auto-repair via `aiwg sync`...');
112
+ const syncResult = spawnSync(process.execPath, [process.argv[1], 'sync'], { stdio: 'inherit', cwd });
113
+ if (syncResult.status === 0) {
114
+ // Re-check doctor
115
+ const doctorOk = runDoctor(frameworkRoot, cwd);
116
+ if (doctorOk) {
117
+ console.log(' OK Auto-repair succeeded.');
118
+ return true;
119
+ }
120
+ }
121
+ // Strategy 2: full reinstall
122
+ console.log('\n Sync did not fully resolve the issue. Attempting full reinstall...');
123
+ const reinstallResult = spawnSync('npm', ['install', '-g', 'aiwg@latest'], { stdio: 'inherit' });
124
+ if (reinstallResult.status === 0 && installedFrameworks.length > 0) {
125
+ // Redeploy all installed frameworks for this provider
126
+ console.log(`\n Redeploying frameworks to ${provider}...`);
127
+ for (const fw of installedFrameworks) {
128
+ spawnSync(process.execPath, [process.argv[1], 'use', fw, '--provider', provider], { stdio: 'inherit', cwd });
129
+ }
130
+ // Final doctor check
131
+ const finalOk = runDoctor(frameworkRoot, cwd);
132
+ if (finalOk) {
133
+ console.log(' OK Full reinstall + redeploy succeeded.');
134
+ return true;
135
+ }
136
+ }
137
+ // Could not auto-repair
138
+ console.log(`
139
+ ✗ Auto-repair could not resolve all issues.
140
+
141
+ Manual options:
142
+ aiwg sync — sync and redeploy
143
+ npm install -g aiwg@latest — reinstall package
144
+ aiwg use all --provider ${provider.padEnd(10)} — redeploy all frameworks
145
+
146
+ Report this issue:
147
+ aiwg feedback --type bug
148
+ `);
149
+ return false;
150
+ }
151
+ /**
152
+ * Check whether framework files are deployed for the given provider.
153
+ * Returns list of framework names that need (re)deployment.
154
+ */
155
+ async function checkDeployment(cwd, provider) {
156
+ const config = await readAiwgConfig(cwd);
157
+ if (!config || Object.keys(config.installed).length === 0) {
158
+ return []; // no frameworks configured — nothing to check
159
+ }
160
+ const summary = getDeploymentSummary(config, provider);
161
+ const total = summary.agents + summary.commands + summary.skills + summary.rules;
162
+ if (total === 0) {
163
+ // Frameworks are registered but not deployed to this provider
164
+ return Object.keys(config.installed);
165
+ }
166
+ return []; // deployed OK
167
+ }
168
+ /**
169
+ * Redeploy all given frameworks to the provider.
170
+ */
171
+ async function redeployFrameworks(ctx, frameworks, provider) {
172
+ console.log(`\n Redeploying ${frameworks.join(', ')} to ${provider}...`);
173
+ for (const fw of frameworks) {
174
+ await useFrameworkHandler.execute({
175
+ ...ctx,
176
+ args: [fw, '--provider', provider],
177
+ });
178
+ }
179
+ }
180
+ // ── MCP inject ────────────────────────────────────────────────────────────────
181
+ function injectMcp(provider, cwd) {
182
+ console.log(`\n Injecting configured MCP servers into ${provider}...`);
183
+ const result = spawnSync(process.execPath, [process.argv[1], 'mcp', 'inject', '--provider', provider], { stdio: 'inherit', cwd });
184
+ if (result.status !== 0) {
185
+ console.warn(' WARN MCP inject reported issues — continuing. Run `aiwg mcp list` to check registered servers.');
186
+ return false;
187
+ }
188
+ return true;
189
+ }
190
+ /**
191
+ * Profile-aware inject (#891).
192
+ * Default is ephemeral (no persistent config mutation).
193
+ *
194
+ * For Claude: returns the ephemeral config path (for claude --mcp-config).
195
+ * For Codex: sets up the runtime home via the codex-runtime adapter (#892).
196
+ * Returns null for persistent mode or on failure.
197
+ */
198
+ function injectMcpProfile(provider, profileName, cwd, persist) {
199
+ console.log(`\n Resolving profile "${profileName}" for ${provider}...`);
200
+ if (persist) {
201
+ // Persistent: write to provider's default config
202
+ const result = spawnSync(process.execPath, [process.argv[1], 'mcp', 'inject', '--provider', provider, '--profile', profileName], { stdio: 'inherit', cwd });
203
+ if (result.status !== 0) {
204
+ console.warn(' WARN Profile inject failed — continuing without profile.');
205
+ }
206
+ return null; // persistent mode, no ephemeral path
207
+ }
208
+ // Codex: runtime-home adapter handles ephemeral config (#892)
209
+ // The codex launch is also handled specially in launchProvider.
210
+ if (provider === 'codex' || provider === 'openai') {
211
+ return null; // signal handled via runtime home (see launchProvider)
212
+ }
213
+ // Claude/others: generate a temp config file
214
+ const tmpPath = `${process.env.TMPDIR ?? '/tmp'}/aiwg-mcp-${profileName}-${provider}-${Date.now()}.json`;
215
+ const result = spawnSync(process.execPath, [
216
+ process.argv[1], 'mcp', 'inject',
217
+ '--provider', provider,
218
+ '--profile', profileName,
219
+ '--ephemeral',
220
+ '--out', tmpPath,
221
+ ], { stdio: 'inherit', cwd });
222
+ if (result.status !== 0) {
223
+ console.warn(' WARN Ephemeral profile inject failed — launching without profile MCP config.');
224
+ return null;
225
+ }
226
+ return tmpPath;
227
+ }
228
+ // ── Launch ────────────────────────────────────────────────────────────────────
229
+ /**
230
+ * Launch a spawnable provider binary, replacing the current process (exec-style).
231
+ * For IDE-integrated providers, print guidance and exit.
232
+ */
233
+ function launchProvider(provider, mcpInjected, mcpConfigPath, profile) {
234
+ const cfg = getProviderConfig(provider);
235
+ if (!isSpawnableProvider(provider)) {
236
+ // Not spawnable — print context-aware guidance
237
+ const mcpNote = mcpInjected
238
+ ? '\n MCP servers have been injected into your provider config.\n'
239
+ : '';
240
+ const ephemeralNote = mcpConfigPath
241
+ ? `\n MCP config (ephemeral): ${mcpConfigPath}\n`
242
+ : '';
243
+ console.log(`
244
+ ── Ready to start ${cfg.name} ──
245
+ ${mcpNote}${ephemeralNote}
246
+ ${cfg.guidanceMessage ?? `Open ${cfg.name} in your project directory to begin.`}
247
+ `);
248
+ return { exitCode: 0 };
249
+ }
250
+ // Spawnable — hand off the terminal
251
+ console.log(`\n── Launching ${cfg.name} ──\n`);
252
+ // Codex + profile: use runtime-home adapter (#892)
253
+ if ((provider === 'codex' || provider === 'openai') && profile) {
254
+ console.log(` Using runtime home for profile "${profile}"`);
255
+ const result = launchWithProfile(profile);
256
+ return { exitCode: result.status ?? 0 };
257
+ }
258
+ // Claude: if we have an ephemeral MCP config, pass it via --mcp-config
259
+ const binaryArgs = [];
260
+ if (mcpConfigPath && (provider === 'claude' || provider === 'claude-code')) {
261
+ binaryArgs.push('--mcp-config', mcpConfigPath);
262
+ console.log(` Using ephemeral MCP config: ${mcpConfigPath}`);
263
+ }
264
+ const result = spawnSync(cfg.binary, binaryArgs, {
265
+ stdio: 'inherit',
266
+ env: process.env,
267
+ });
268
+ return { exitCode: result.status ?? 0 };
269
+ }
270
+ // ── Handler ───────────────────────────────────────────────────────────────────
271
+ export const sessionHandler = {
272
+ id: 'session',
273
+ name: 'Session',
274
+ description: 'Start an agentic session — pre-flight check, auto-repair, optional MCP inject, then launch',
275
+ category: 'project',
276
+ aliases: [],
277
+ async execute(ctx) {
278
+ const { mcp, provider: explicitProvider, noRepair, profile, persist } = parseSessionArgs(ctx.args);
279
+ const cwd = ctx.cwd || process.cwd();
280
+ // ── Resolve provider ─────────────────────────────────────────
281
+ const provider = await resolveProvider(explicitProvider, cwd);
282
+ const providerCfg = PROVIDER_CONFIGS[provider];
283
+ const profileSuffix = profile ? ` · profile: ${profile}` : '';
284
+ console.log(`\n── aiwg session ── provider: ${providerCfg?.name ?? provider}${profileSuffix} ──\n`);
285
+ const frameworkRoot = await getFrameworkRoot();
286
+ // ── Step 1: Version check ─────────────────────────────────────
287
+ if (!noRepair) {
288
+ await checkAndUpdateVersion(noRepair);
289
+ }
290
+ // ── Step 2: Doctor ────────────────────────────────────────────
291
+ console.log('\n Running health checks...');
292
+ const doctorOk = runDoctor(frameworkRoot, cwd);
293
+ if (!doctorOk && !noRepair) {
294
+ // Read installed frameworks before attempting repair (needed for redeploy)
295
+ const config = await readAiwgConfig(cwd);
296
+ const installedFrameworks = Object.keys(config?.installed ?? {});
297
+ const repaired = repairInstallation(frameworkRoot, cwd, provider, installedFrameworks);
298
+ if (!repaired) {
299
+ // Repair failed — still continue (user was already informed)
300
+ }
301
+ }
302
+ else if (!doctorOk && noRepair) {
303
+ console.log('\n WARN Health checks found issues. Run without --no-repair to auto-fix, or `aiwg feedback` to report.');
304
+ }
305
+ // ── Step 3: Deployment check ──────────────────────────────────
306
+ const undeployed = await checkDeployment(cwd, provider);
307
+ if (undeployed.length > 0 && !noRepair) {
308
+ console.log(`\n Frameworks not deployed to ${provider}: ${undeployed.join(', ')}`);
309
+ await redeployFrameworks(ctx, undeployed, provider);
310
+ }
311
+ // ── Step 4: MCP inject ────────────────────────────────────────
312
+ let mcpInjected = false;
313
+ let mcpConfigPath = null;
314
+ if (profile) {
315
+ // Profile-aware injection (#891) — ephemeral by default
316
+ // For codex: set up the runtime home and write profile config (#892)
317
+ if ((provider === 'codex' || provider === 'openai') && !persist) {
318
+ try {
319
+ console.log(`\n Setting up Codex runtime home for profile "${profile}"...`);
320
+ // Import server list for this profile
321
+ const { McpProfileRegistry } = await import('../../mcp/profiles.js');
322
+ const { McpServerRegistry } = await import('../../mcp/registry.js');
323
+ const profiles = new McpProfileRegistry();
324
+ const registry = new McpServerRegistry();
325
+ const resolvedServers = await profiles.resolveServers(profile, registry);
326
+ await ensureRuntimeHome(profile);
327
+ await writeProfileConfig(profile, resolvedServers);
328
+ console.log(` Runtime home ready. Profile servers: ${resolvedServers.map((s) => s.name).join(', ') || '(none)'}`);
329
+ mcpInjected = true;
330
+ }
331
+ catch (err) {
332
+ console.warn(` WARN Codex runtime home setup failed: ${err instanceof Error ? err.message : String(err)}`);
333
+ console.warn(' Falling back to standard launch.');
334
+ }
335
+ }
336
+ else {
337
+ mcpConfigPath = injectMcpProfile(provider, profile, cwd, persist);
338
+ mcpInjected = mcpConfigPath !== null || persist;
339
+ }
340
+ }
341
+ else if (mcp) {
342
+ mcpInjected = injectMcp(provider, cwd);
343
+ }
344
+ // ── Step 5: Launch ────────────────────────────────────────────
345
+ return launchProvider(provider, mcpInjected, mcpConfigPath, profile);
346
+ },
347
+ };
348
+ //# sourceMappingURL=session.js.map