@bluefly/openstandardagents 0.4.0 → 0.4.1

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 (517) hide show
  1. package/CHANGELOG.md +117 -0
  2. package/DEMO.md +212 -0
  3. package/README.md +75 -15
  4. package/dist/adapters/drupal/generator.d.ts +149 -0
  5. package/dist/adapters/drupal/generator.d.ts.map +1 -0
  6. package/dist/adapters/drupal/generator.js +1760 -0
  7. package/dist/adapters/drupal/generator.js.map +1 -0
  8. package/dist/adapters/drupal/index.d.ts +2 -0
  9. package/dist/adapters/drupal/index.d.ts.map +1 -1
  10. package/dist/adapters/drupal/index.js +3 -0
  11. package/dist/adapters/drupal/index.js.map +1 -1
  12. package/dist/adapters/npm/adapter.js +2 -2
  13. package/dist/adapters/npm/converter.js +3 -3
  14. package/dist/cli/banner.d.ts +21 -0
  15. package/dist/cli/banner.d.ts.map +1 -0
  16. package/dist/cli/banner.js +128 -0
  17. package/dist/cli/banner.js.map +1 -0
  18. package/dist/cli/commands/dev.command.d.ts +20 -0
  19. package/dist/cli/commands/dev.command.d.ts.map +1 -0
  20. package/dist/cli/commands/dev.command.js +78 -0
  21. package/dist/cli/commands/dev.command.js.map +1 -0
  22. package/dist/cli/commands/estimate.command.d.ts +12 -0
  23. package/dist/cli/commands/estimate.command.d.ts.map +1 -0
  24. package/dist/cli/commands/estimate.command.js +226 -0
  25. package/dist/cli/commands/estimate.command.js.map +1 -0
  26. package/dist/cli/commands/export-enhanced.command.d.ts +7 -0
  27. package/dist/cli/commands/export-enhanced.command.d.ts.map +1 -0
  28. package/dist/cli/commands/{export-v2.command.js → export-enhanced.command.js} +3 -3
  29. package/dist/cli/commands/export-enhanced.command.js.map +1 -0
  30. package/dist/cli/commands/export.command.d.ts.map +1 -1
  31. package/dist/cli/commands/export.command.js +82 -4
  32. package/dist/cli/commands/export.command.js.map +1 -1
  33. package/dist/cli/commands/init.command.d.ts.map +1 -1
  34. package/dist/cli/commands/init.command.js +2 -0
  35. package/dist/cli/commands/init.command.js.map +1 -1
  36. package/dist/cli/commands/test.command.d.ts +1 -0
  37. package/dist/cli/commands/test.command.d.ts.map +1 -1
  38. package/dist/cli/commands/test.command.js +172 -105
  39. package/dist/cli/commands/test.command.js.map +1 -1
  40. package/dist/cli/commands/types/wizard-config.types.d.ts +59 -0
  41. package/dist/cli/commands/types/wizard-config.types.d.ts.map +1 -0
  42. package/dist/cli/commands/types/wizard-config.types.js +34 -0
  43. package/dist/cli/commands/types/wizard-config.types.js.map +1 -0
  44. package/dist/cli/commands/upgrade.command.d.ts +9 -0
  45. package/dist/cli/commands/upgrade.command.d.ts.map +1 -0
  46. package/dist/cli/commands/upgrade.command.js +167 -0
  47. package/dist/cli/commands/upgrade.command.js.map +1 -0
  48. package/dist/cli/commands/wizard-api-first.command.d.ts +18 -0
  49. package/dist/cli/commands/wizard-api-first.command.d.ts.map +1 -0
  50. package/dist/cli/commands/wizard-api-first.command.js +854 -0
  51. package/dist/cli/commands/wizard-api-first.command.js.map +1 -0
  52. package/dist/cli/commands/wizard-interactive.command.d.ts +25 -0
  53. package/dist/cli/commands/wizard-interactive.command.d.ts.map +1 -0
  54. package/dist/cli/commands/wizard-interactive.command.js +1875 -0
  55. package/dist/cli/commands/wizard-interactive.command.js.map +1 -0
  56. package/dist/cli/commands/workspace.command.js +1 -1
  57. package/dist/cli/commands/workspace.command.js.map +1 -1
  58. package/dist/cli/index.js +9 -0
  59. package/dist/cli/index.js.map +1 -1
  60. package/dist/cli/schema-driven/index.d.ts +27 -0
  61. package/dist/cli/schema-driven/index.d.ts.map +1 -0
  62. package/dist/cli/schema-driven/index.js +34 -0
  63. package/dist/cli/schema-driven/index.js.map +1 -0
  64. package/dist/cli/schema-driven/schema-loader.d.ts +115 -0
  65. package/dist/cli/schema-driven/schema-loader.d.ts.map +1 -0
  66. package/dist/cli/schema-driven/schema-loader.js +270 -0
  67. package/dist/cli/schema-driven/schema-loader.js.map +1 -0
  68. package/dist/cli/schema-driven/ui-generator.d.ts +88 -0
  69. package/dist/cli/schema-driven/ui-generator.d.ts.map +1 -0
  70. package/dist/cli/schema-driven/ui-generator.js +326 -0
  71. package/dist/cli/schema-driven/ui-generator.js.map +1 -0
  72. package/dist/cli/wizard/interactive-wizard.d.ts +26 -0
  73. package/dist/cli/wizard/interactive-wizard.d.ts.map +1 -0
  74. package/dist/cli/wizard/interactive-wizard.js +296 -0
  75. package/dist/cli/wizard/interactive-wizard.js.map +1 -0
  76. package/dist/cli/wizard/template-catalog.d.ts +32 -0
  77. package/dist/cli/wizard/template-catalog.d.ts.map +1 -0
  78. package/dist/cli/wizard/template-catalog.js +99 -0
  79. package/dist/cli/wizard/template-catalog.js.map +1 -0
  80. package/dist/cli/wizard/use-cases.d.ts +37 -0
  81. package/dist/cli/wizard/use-cases.d.ts.map +1 -0
  82. package/dist/cli/wizard/use-cases.js +157 -0
  83. package/dist/cli/wizard/use-cases.js.map +1 -0
  84. package/dist/di-container.d.ts.map +1 -1
  85. package/dist/di-container.js +2 -0
  86. package/dist/di-container.js.map +1 -1
  87. package/dist/package.json +19 -9
  88. package/dist/runtime/agent-runner.d.ts +46 -0
  89. package/dist/runtime/agent-runner.d.ts.map +1 -0
  90. package/dist/runtime/agent-runner.js +346 -0
  91. package/dist/runtime/agent-runner.js.map +1 -0
  92. package/dist/sdks/kagent/crd-generator.d.ts +4 -0
  93. package/dist/sdks/kagent/crd-generator.d.ts.map +1 -1
  94. package/dist/sdks/kagent/crd-generator.js +83 -2
  95. package/dist/sdks/kagent/crd-generator.js.map +1 -1
  96. package/dist/sdks/kagent/k8s-resources-generator.d.ts +73 -0
  97. package/dist/sdks/kagent/k8s-resources-generator.d.ts.map +1 -0
  98. package/dist/sdks/kagent/k8s-resources-generator.js +286 -0
  99. package/dist/sdks/kagent/k8s-resources-generator.js.map +1 -0
  100. package/dist/sdks/kagent/types.d.ts +79 -0
  101. package/dist/sdks/kagent/types.d.ts.map +1 -1
  102. package/dist/sdks/shared/validation.d.ts +2 -2
  103. package/dist/services/cost-estimation/optimization-patterns.d.ts +23 -0
  104. package/dist/services/cost-estimation/optimization-patterns.d.ts.map +1 -0
  105. package/dist/services/cost-estimation/optimization-patterns.js +147 -0
  106. package/dist/services/cost-estimation/optimization-patterns.js.map +1 -0
  107. package/dist/services/cost-estimation/pricing.d.ts +29 -0
  108. package/dist/services/cost-estimation/pricing.d.ts.map +1 -0
  109. package/dist/services/cost-estimation/pricing.js +225 -0
  110. package/dist/services/cost-estimation/pricing.js.map +1 -0
  111. package/dist/services/cost-estimation/scenario-estimator.d.ts +59 -0
  112. package/dist/services/cost-estimation/scenario-estimator.d.ts.map +1 -0
  113. package/dist/services/cost-estimation/scenario-estimator.js +145 -0
  114. package/dist/services/cost-estimation/scenario-estimator.js.map +1 -0
  115. package/dist/services/cost-estimation/token-counter.service.d.ts +51 -0
  116. package/dist/services/cost-estimation/token-counter.service.d.ts.map +1 -0
  117. package/dist/services/cost-estimation/token-counter.service.js +125 -0
  118. package/dist/services/cost-estimation/token-counter.service.js.map +1 -0
  119. package/dist/services/dev-server/dev-server.service.d.ts +121 -0
  120. package/dist/services/dev-server/dev-server.service.d.ts.map +1 -0
  121. package/dist/services/dev-server/dev-server.service.js +290 -0
  122. package/dist/services/dev-server/dev-server.service.js.map +1 -0
  123. package/dist/services/dev-server/file-watcher.d.ts +101 -0
  124. package/dist/services/dev-server/file-watcher.d.ts.map +1 -0
  125. package/dist/services/dev-server/file-watcher.js +190 -0
  126. package/dist/services/dev-server/file-watcher.js.map +1 -0
  127. package/dist/services/dev-server/live-validator.d.ts +157 -0
  128. package/dist/services/dev-server/live-validator.d.ts.map +1 -0
  129. package/dist/services/dev-server/live-validator.js +301 -0
  130. package/dist/services/dev-server/live-validator.js.map +1 -0
  131. package/dist/services/dev-server/websocket-server.d.ts +137 -0
  132. package/dist/services/dev-server/websocket-server.d.ts.map +1 -0
  133. package/dist/services/dev-server/websocket-server.js +229 -0
  134. package/dist/services/dev-server/websocket-server.js.map +1 -0
  135. package/dist/services/export/anthropic/anthropic-exporter.d.ts +70 -0
  136. package/dist/services/export/anthropic/anthropic-exporter.d.ts.map +1 -0
  137. package/dist/services/export/anthropic/anthropic-exporter.js +576 -0
  138. package/dist/services/export/anthropic/anthropic-exporter.js.map +1 -0
  139. package/dist/services/export/anthropic/api-generator.d.ts +39 -0
  140. package/dist/services/export/anthropic/api-generator.d.ts.map +1 -0
  141. package/dist/services/export/anthropic/api-generator.js +395 -0
  142. package/dist/services/export/anthropic/api-generator.js.map +1 -0
  143. package/dist/services/export/anthropic/index.d.ts +18 -0
  144. package/dist/services/export/anthropic/index.d.ts.map +1 -0
  145. package/dist/services/export/anthropic/index.js +16 -0
  146. package/dist/services/export/anthropic/index.js.map +1 -0
  147. package/dist/services/export/anthropic/tools-generator.d.ts +35 -0
  148. package/dist/services/export/anthropic/tools-generator.d.ts.map +1 -0
  149. package/dist/services/export/anthropic/tools-generator.js +260 -0
  150. package/dist/services/export/anthropic/tools-generator.js.map +1 -0
  151. package/dist/services/export/langchain/api-generator.d.ts +17 -0
  152. package/dist/services/export/langchain/api-generator.d.ts.map +1 -0
  153. package/dist/services/export/langchain/api-generator.js +375 -0
  154. package/dist/services/export/langchain/api-generator.js.map +1 -0
  155. package/dist/services/export/langchain/callbacks-generator.d.ts +63 -0
  156. package/dist/services/export/langchain/callbacks-generator.d.ts.map +1 -0
  157. package/dist/services/export/langchain/callbacks-generator.js +408 -0
  158. package/dist/services/export/langchain/callbacks-generator.js.map +1 -0
  159. package/dist/services/export/langchain/error-handling-generator.d.ts +76 -0
  160. package/dist/services/export/langchain/error-handling-generator.d.ts.map +1 -0
  161. package/dist/services/export/langchain/error-handling-generator.js +522 -0
  162. package/dist/services/export/langchain/error-handling-generator.js.map +1 -0
  163. package/dist/services/export/langchain/index.d.ts +17 -0
  164. package/dist/services/export/langchain/index.d.ts.map +1 -0
  165. package/dist/services/export/langchain/index.js +13 -0
  166. package/dist/services/export/langchain/index.js.map +1 -0
  167. package/dist/services/export/langchain/langchain-exporter.d.ts +174 -0
  168. package/dist/services/export/langchain/langchain-exporter.d.ts.map +1 -0
  169. package/dist/services/export/langchain/langchain-exporter.js +953 -0
  170. package/dist/services/export/langchain/langchain-exporter.js.map +1 -0
  171. package/dist/services/export/langchain/langgraph-generator.d.ts +86 -0
  172. package/dist/services/export/langchain/langgraph-generator.d.ts.map +1 -0
  173. package/dist/services/export/langchain/langgraph-generator.js +473 -0
  174. package/dist/services/export/langchain/langgraph-generator.js.map +1 -0
  175. package/dist/services/export/langchain/langserve-generator.d.ts +95 -0
  176. package/dist/services/export/langchain/langserve-generator.d.ts.map +1 -0
  177. package/dist/services/export/langchain/langserve-generator.js +807 -0
  178. package/dist/services/export/langchain/langserve-generator.js.map +1 -0
  179. package/dist/services/export/langchain/memory-generator.d.ts +71 -0
  180. package/dist/services/export/langchain/memory-generator.d.ts.map +1 -0
  181. package/dist/services/export/langchain/memory-generator.js +1182 -0
  182. package/dist/services/export/langchain/memory-generator.js.map +1 -0
  183. package/dist/services/export/langchain/openapi-generator.d.ts +20 -0
  184. package/dist/services/export/langchain/openapi-generator.d.ts.map +1 -0
  185. package/dist/services/export/langchain/openapi-generator.js +364 -0
  186. package/dist/services/export/langchain/openapi-generator.js.map +1 -0
  187. package/dist/services/export/langchain/plan-execute-generator.d.ts +60 -0
  188. package/dist/services/export/langchain/plan-execute-generator.d.ts.map +1 -0
  189. package/dist/services/export/langchain/plan-execute-generator.js +679 -0
  190. package/dist/services/export/langchain/plan-execute-generator.js.map +1 -0
  191. package/dist/services/export/langchain/streaming-generator.d.ts +66 -0
  192. package/dist/services/export/langchain/streaming-generator.d.ts.map +1 -0
  193. package/dist/services/export/langchain/streaming-generator.js +749 -0
  194. package/dist/services/export/langchain/streaming-generator.js.map +1 -0
  195. package/dist/services/export/langchain/tools-generator.d.ts +67 -0
  196. package/dist/services/export/langchain/tools-generator.d.ts.map +1 -0
  197. package/dist/services/export/langchain/tools-generator.js +543 -0
  198. package/dist/services/export/langchain/tools-generator.js.map +1 -0
  199. package/dist/services/export/npm/express-generator.d.ts +23 -0
  200. package/dist/services/export/npm/express-generator.d.ts.map +1 -0
  201. package/dist/services/export/npm/express-generator.js +296 -0
  202. package/dist/services/export/npm/express-generator.js.map +1 -0
  203. package/dist/services/export/npm/index.d.ts +13 -0
  204. package/dist/services/export/npm/index.d.ts.map +1 -0
  205. package/dist/services/export/npm/index.js +11 -0
  206. package/dist/services/export/npm/index.js.map +1 -0
  207. package/dist/services/export/npm/npm-exporter.d.ts +142 -0
  208. package/dist/services/export/npm/npm-exporter.d.ts.map +1 -0
  209. package/dist/services/export/npm/npm-exporter.js +480 -0
  210. package/dist/services/export/npm/npm-exporter.js.map +1 -0
  211. package/dist/services/export/npm/openapi-generator.d.ts +19 -0
  212. package/dist/services/export/npm/openapi-generator.d.ts.map +1 -0
  213. package/dist/services/export/npm/openapi-generator.js +428 -0
  214. package/dist/services/export/npm/openapi-generator.js.map +1 -0
  215. package/dist/services/export/npm/package-json-generator.d.ts +31 -0
  216. package/dist/services/export/npm/package-json-generator.d.ts.map +1 -0
  217. package/dist/services/export/npm/package-json-generator.js +153 -0
  218. package/dist/services/export/npm/package-json-generator.js.map +1 -0
  219. package/dist/services/export/npm/typescript-generator.d.ts +69 -0
  220. package/dist/services/export/npm/typescript-generator.d.ts.map +1 -0
  221. package/dist/services/export/npm/typescript-generator.js +437 -0
  222. package/dist/services/export/npm/typescript-generator.js.map +1 -0
  223. package/dist/services/export/testing/index.d.ts +8 -0
  224. package/dist/services/export/testing/index.d.ts.map +1 -0
  225. package/dist/services/export/testing/index.js +7 -0
  226. package/dist/services/export/testing/index.js.map +1 -0
  227. package/dist/services/export/testing/test-generator.d.ts +178 -0
  228. package/dist/services/export/testing/test-generator.d.ts.map +1 -0
  229. package/dist/services/export/testing/test-generator.js +2542 -0
  230. package/dist/services/export/testing/test-generator.js.map +1 -0
  231. package/dist/services/test-runner/mock-llm.service.d.ts +77 -0
  232. package/dist/services/test-runner/mock-llm.service.d.ts.map +1 -0
  233. package/dist/services/test-runner/mock-llm.service.js +173 -0
  234. package/dist/services/test-runner/mock-llm.service.js.map +1 -0
  235. package/dist/services/test-runner/scenarios.d.ts +36 -0
  236. package/dist/services/test-runner/scenarios.d.ts.map +1 -0
  237. package/dist/services/test-runner/scenarios.js +196 -0
  238. package/dist/services/test-runner/scenarios.js.map +1 -0
  239. package/dist/services/test-runner/test-runner.service.d.ts +19 -1
  240. package/dist/services/test-runner/test-runner.service.d.ts.map +1 -1
  241. package/dist/services/test-runner/test-runner.service.js +72 -6
  242. package/dist/services/test-runner/test-runner.service.js.map +1 -1
  243. package/dist/services/validation/best-practices-validator.d.ts +84 -0
  244. package/dist/services/validation/best-practices-validator.d.ts.map +1 -0
  245. package/dist/services/validation/best-practices-validator.js +499 -0
  246. package/dist/services/validation/best-practices-validator.js.map +1 -0
  247. package/dist/services/validation/cost-estimator.d.ts +69 -0
  248. package/dist/services/validation/cost-estimator.d.ts.map +1 -0
  249. package/dist/services/validation/cost-estimator.js +221 -0
  250. package/dist/services/validation/cost-estimator.js.map +1 -0
  251. package/dist/services/validation/enhanced-validator.d.ts +78 -0
  252. package/dist/services/validation/enhanced-validator.d.ts.map +1 -0
  253. package/dist/services/validation/enhanced-validator.js +212 -0
  254. package/dist/services/validation/enhanced-validator.js.map +1 -0
  255. package/dist/services/validation/index.d.ts +13 -0
  256. package/dist/services/validation/index.d.ts.map +1 -0
  257. package/dist/services/validation/index.js +9 -0
  258. package/dist/services/validation/index.js.map +1 -0
  259. package/dist/services/validation/security-validator.d.ts +81 -0
  260. package/dist/services/validation/security-validator.d.ts.map +1 -0
  261. package/dist/services/validation/security-validator.js +328 -0
  262. package/dist/services/validation/security-validator.js.map +1 -0
  263. package/dist/services/wizard/prompts.d.ts +71 -0
  264. package/dist/services/wizard/prompts.d.ts.map +1 -0
  265. package/dist/services/wizard/prompts.js +322 -0
  266. package/dist/services/wizard/prompts.js.map +1 -0
  267. package/dist/services/wizard/wizard.service.d.ts +60 -0
  268. package/dist/services/wizard/wizard.service.d.ts.map +1 -0
  269. package/dist/services/wizard/wizard.service.js +261 -0
  270. package/dist/services/wizard/wizard.service.js.map +1 -0
  271. package/dist/types/personality.zod.d.ts +23 -23
  272. package/dist/utils/version.d.ts +1 -1
  273. package/dist/utils/version.js +1 -1
  274. package/dist/version-management/core/version-manager.test.js.map +1 -1
  275. package/dist/version.d.ts +62 -0
  276. package/dist/version.d.ts.map +1 -0
  277. package/dist/version.js +73 -0
  278. package/dist/version.js.map +1 -0
  279. package/examples/a2a/agent-handoff.ossa.yaml +1 -1
  280. package/examples/a2a/service-discovery.ossa.yaml +1 -1
  281. package/examples/adapters/drupal-eca-mapping.yaml +1 -1
  282. package/examples/adapters/drupal-eca-task.yaml +1 -1
  283. package/examples/adapters/drupal-flowdrop-mapping.yaml +1 -1
  284. package/examples/adapters/drupal-maestro-mapping.yaml +1 -1
  285. package/examples/adapters/mistral-agent.yaml +1 -1
  286. package/examples/adapters/symfony-messenger-task.yaml +1 -1
  287. package/examples/adapters/symfony-messenger-workflow.yaml +1 -1
  288. package/examples/adk-integration/code-review-workflow.yml +1 -1
  289. package/examples/adk-integration/customer-support.yml +1 -1
  290. package/examples/adk-integration/data-pipeline.yml +1 -1
  291. package/examples/advanced/reasoning-agent.yaml +1 -1
  292. package/examples/advanced/workflows/hybrid-model-strategy.yaml +1 -1
  293. package/examples/agent-manifests/critics/critic-agent.yaml +1 -1
  294. package/examples/agent-manifests/governors/governor-agent.yaml +1 -1
  295. package/examples/agent-manifests/integrators/integrator-agent.yaml +1 -1
  296. package/examples/agent-manifests/judges/judge-agent.yaml +1 -1
  297. package/examples/agent-manifests/monitors/monitor-agent.yaml +1 -1
  298. package/examples/agent-manifests/orchestrators/orchestrator-agent.yaml +1 -1
  299. package/examples/agent-manifests/sample-compliant-agent.yaml +1 -1
  300. package/examples/agent-manifests/workers/worker-agent.yaml +1 -1
  301. package/examples/agents/01-customer-support-bot/.env.example +32 -0
  302. package/examples/agents/01-customer-support-bot/Dockerfile +30 -0
  303. package/examples/agents/01-customer-support-bot/README.md +295 -0
  304. package/examples/agents/01-customer-support-bot/agent.ossa.yaml +172 -0
  305. package/examples/agents/01-customer-support-bot/docker-compose.yml +55 -0
  306. package/examples/agents/01-customer-support-bot/openapi.yaml +238 -0
  307. package/examples/agents/01-customer-support-bot/package.json +48 -0
  308. package/examples/agents/02-code-review-agent/README.md +72 -0
  309. package/examples/agents/02-code-review-agent/agent.ossa.yaml +239 -0
  310. package/examples/agents/02-code-review-agent/docker-compose.yml +22 -0
  311. package/examples/agents/02-code-review-agent/openapi.yaml +150 -0
  312. package/examples/agents/03-data-analysis-agent/README.md +51 -0
  313. package/examples/agents/03-data-analysis-agent/agent.ossa.yaml +97 -0
  314. package/examples/agents/03-data-analysis-agent/openapi.yaml +74 -0
  315. package/examples/agents/04-content-moderator/README.md +55 -0
  316. package/examples/agents/04-content-moderator/agent.ossa.yaml +131 -0
  317. package/examples/agents/04-content-moderator/openapi.yaml +50 -0
  318. package/examples/agents/05-sales-assistant/README.md +37 -0
  319. package/examples/agents/05-sales-assistant/agent.ossa.yaml +146 -0
  320. package/examples/agents/05-sales-assistant/openapi.yaml +59 -0
  321. package/examples/agents/06-devops-agent/README.md +39 -0
  322. package/examples/agents/06-devops-agent/agent.ossa.yaml +141 -0
  323. package/examples/agents/06-devops-agent/openapi.yaml +51 -0
  324. package/examples/agents/07-research-assistant/README.md +31 -0
  325. package/examples/agents/07-research-assistant/agent.ossa.yaml +119 -0
  326. package/examples/agents/07-research-assistant/openapi.yaml +56 -0
  327. package/examples/agents/08-email-triage-agent/README.md +33 -0
  328. package/examples/agents/08-email-triage-agent/agent.ossa.yaml +133 -0
  329. package/examples/agents/08-email-triage-agent/openapi.yaml +41 -0
  330. package/examples/agents/09-security-scanner/README.md +49 -0
  331. package/examples/agents/09-security-scanner/agent.ossa.yaml +174 -0
  332. package/examples/agents/09-security-scanner/openapi.yaml +46 -0
  333. package/examples/agents/10-meeting-assistant/README.md +53 -0
  334. package/examples/agents/10-meeting-assistant/agent.ossa.yaml +211 -0
  335. package/examples/agents/10-meeting-assistant/docker-compose.yml +27 -0
  336. package/examples/agents/10-meeting-assistant/openapi.yaml +131 -0
  337. package/examples/agents/COMPLETION_REPORT.txt +272 -0
  338. package/examples/agents/INDEX.md +296 -0
  339. package/examples/agents/README.md +452 -0
  340. package/examples/agents/SUMMARY.md +362 -0
  341. package/examples/agents/TEST_RESULTS.md +458 -0
  342. package/examples/agents/architecture-healer-enterprise.yaml +1 -1
  343. package/examples/agents/dependency-healer-npm.yaml +1 -1
  344. package/examples/agents/spec-healer-openapi.yaml +1 -1
  345. package/examples/agents/wiki-healer-production.yaml +1 -1
  346. package/examples/agents-md/code-agent.ossa.json +1 -1
  347. package/examples/agents-md/monorepo-agent.ossa.yaml +1 -1
  348. package/examples/anthropic/claude-assistant.ossa.json +1 -1
  349. package/examples/autogen/multi-agent.ossa.json +1 -1
  350. package/examples/autonomous-evolution/self-evolving-agent.ossa.yaml +1 -1
  351. package/examples/build-once-use-everywhere/agent.ossa.yaml +1 -1
  352. package/examples/claude-code/code-reviewer.ossa.yaml +1 -1
  353. package/examples/claude-code/ossa-validator.ossa.yaml +1 -1
  354. package/examples/common_npm/agent-router.ossa.yaml +2 -2
  355. package/examples/contracts/data-consumer.ossa.yaml +1 -1
  356. package/examples/contracts/data-producer-v2.ossa.yaml +1 -1
  357. package/examples/contracts/data-producer.ossa.yaml +1 -1
  358. package/examples/crewai/research-team.ossa.json +1 -1
  359. package/examples/cursor/code-review-agent.ossa.json +1 -1
  360. package/examples/drupal/QUICKSTART.md +439 -0
  361. package/examples/drupal/ai_agents_ossa-module/.agents/example-agent/agent.ossa.yaml +1 -1
  362. package/examples/drupal/content-moderator.ossa.yaml +107 -0
  363. package/examples/drupal/gitlab-ml-recommender.ossa.yaml +2 -2
  364. package/examples/economics/marketplace-agent.ossa.json +1 -1
  365. package/examples/export/langchain/production-agent-with-memory/README.md +373 -0
  366. package/examples/export/langchain/production-agent-with-memory/agent.ossa.yaml +97 -0
  367. package/examples/export/langchain/production-agent-with-streaming/README.md +617 -0
  368. package/examples/export/langchain/production-agent-with-streaming/agent.ossa.yaml +100 -0
  369. package/examples/export/langchain/production-agent-with-streaming/client-example.py +263 -0
  370. package/examples/export/langchain/production-agent-with-tools/README.md +296 -0
  371. package/examples/export/langchain/production-agent-with-tools/agent.ossa.yaml +216 -0
  372. package/examples/export/langchain-export-example.ts +246 -0
  373. package/examples/export/langserve-export-example.ts +246 -0
  374. package/examples/export/test-generation-example.ts +457 -0
  375. package/examples/extensions/agents-md-advanced.yml +1 -1
  376. package/examples/extensions/agents-md-basic.yml +1 -1
  377. package/examples/extensions/agents-md-sync.yml +1 -1
  378. package/examples/extensions/agents-md-v1.yml +1 -1
  379. package/examples/extensions/drupal-v1.yml +1 -1
  380. package/examples/extensions/encryption-multi-provider.yaml +4 -4
  381. package/examples/extensions/kagent-v1.yml +1 -1
  382. package/examples/extensions/knowledge-sources.yaml +1 -1
  383. package/examples/extensions/mcp-full-featured.yaml +1 -1
  384. package/examples/genetics/breeding-agent.ossa.json +1 -1
  385. package/examples/getting-started/01-minimal-agent.ossa.yaml +1 -1
  386. package/examples/getting-started/02-agent-with-tools.ossa.yaml +1 -1
  387. package/examples/getting-started/03-agent-with-safety.ossa.yaml +1 -1
  388. package/examples/getting-started/04-agent-with-messaging.ossa.yaml +1 -1
  389. package/examples/getting-started/05-workflow-composition.ossa.yaml +1 -1
  390. package/examples/getting-started/hello-world-complete.ossa.yaml +1 -1
  391. package/examples/integration-patterns/agent-to-agent-orchestration.ossa.yaml +1 -1
  392. package/examples/kagent/compliance-validator.ossa.yaml +1 -1
  393. package/examples/kagent/cost-optimizer.ossa.yaml +1 -1
  394. package/examples/kagent/documentation-agent.ossa.yaml +1 -1
  395. package/examples/kagent/k8s-troubleshooter-v1.ossa.yaml +2 -2
  396. package/examples/kagent/k8s-troubleshooter.ossa.yaml +1 -1
  397. package/examples/kagent/security-scanner.ossa.yaml +1 -1
  398. package/examples/langchain/chain-agent.ossa.json +1 -1
  399. package/examples/langflow/workflow-agent.ossa.json +1 -1
  400. package/examples/langgraph/state-machine-agent.ossa.json +1 -1
  401. package/examples/lifecycle/mentoring-agent.ossa.json +1 -1
  402. package/examples/llamaindex/rag-agent.ossa.json +1 -1
  403. package/examples/mcp/database-mcp.ossa.yaml +1 -1
  404. package/examples/mcp/filesystem-mcp.ossa.yaml +1 -1
  405. package/examples/messaging/dependency-healer.ossa.yaml +1 -1
  406. package/examples/messaging/incident-responder.ossa.yaml +1 -1
  407. package/examples/messaging/routing-rules.ossa.yaml +1 -1
  408. package/examples/messaging/security-scanner.ossa.yaml +1 -1
  409. package/examples/migration-guides/from-langchain-to-ossa.yaml +4 -4
  410. package/examples/migrations/langchain/01-python-react-agent-after.ossa.yaml +1 -1
  411. package/examples/migrations/langchain/02-typescript-conversational-after.ossa.yaml +1 -1
  412. package/examples/migrations/langchain/03-sequential-chain-after.ossa.yaml +1 -1
  413. package/examples/migrations/langchain/04-config-based-after.ossa.yaml +1 -1
  414. package/examples/migrations/swarm-to-ossa/after-handoffs.ossa.yaml +6 -6
  415. package/examples/migrations/swarm-to-ossa/after-triage-agent.ossa.yaml +3 -3
  416. package/examples/multi-agent/conditional-router.ossa.yaml +1 -1
  417. package/examples/multi-agent/parallel-execution.ossa.yaml +1 -1
  418. package/examples/multi-agent/sequential-pipeline.ossa.yaml +1 -1
  419. package/examples/multi-agent-research-workflow.ossa.yaml +133 -0
  420. package/examples/multi-platform/single-manifest/agent.ossa.yaml +1 -1
  421. package/examples/npm-export-example.ts +150 -0
  422. package/examples/observability/activity-stream-full.yaml +1 -1
  423. package/examples/openai/basic-agent.ossa.yaml +1 -1
  424. package/examples/openai/multi-tool-agent.ossa.json +1 -1
  425. package/examples/openai/swarm-agent.ossa.json +1 -1
  426. package/examples/ossa-templates/01-code-assistant.ossa.yaml +1 -1
  427. package/examples/ossa-templates/02-security-scanner.ossa.yaml +1 -1
  428. package/examples/ossa-templates/03-ci-pipeline.ossa.yaml +1 -1
  429. package/examples/ossa-templates/04-code-reviewer.ossa.yaml +1 -1
  430. package/examples/ossa-templates/05-doc-generator.ossa.yaml +1 -1
  431. package/examples/ossa-templates/06-compliance-validator.ossa.yaml +1 -1
  432. package/examples/ossa-templates/07-workflow-orchestrator.ossa.yaml +1 -1
  433. package/examples/ossa-templates/08-content-writer.ossa.yaml +1 -1
  434. package/examples/ossa-templates/09-test-generator.ossa.yaml +1 -1
  435. package/examples/ossa-templates/10-data-transformer.ossa.yaml +1 -1
  436. package/examples/ossa-templates/11-react-performance-expert.ossa.yaml +1 -1
  437. package/examples/ossa-templates/12-typescript-type-safety-expert.ossa.yaml +1 -1
  438. package/examples/ossa-templates/13-accessibility-champion.ossa.yaml +1 -1
  439. package/examples/ossa-templates/14-security-hardening-agent.ossa.yaml +1 -1
  440. package/examples/production/document-analyzer-openai.yml +1 -1
  441. package/examples/production-ready/01-customer-support-bot/.env.example +32 -0
  442. package/examples/production-ready/01-customer-support-bot/Dockerfile +30 -0
  443. package/examples/production-ready/01-customer-support-bot/README.md +295 -0
  444. package/examples/production-ready/01-customer-support-bot/agent.ossa.yaml +172 -0
  445. package/examples/production-ready/01-customer-support-bot/docker-compose.yml +55 -0
  446. package/examples/production-ready/01-customer-support-bot/openapi.yaml +238 -0
  447. package/examples/production-ready/01-customer-support-bot/package.json +48 -0
  448. package/examples/production-ready/02-code-review-agent/README.md +72 -0
  449. package/examples/production-ready/02-code-review-agent/agent.ossa.yaml +239 -0
  450. package/examples/production-ready/02-code-review-agent/docker-compose.yml +22 -0
  451. package/examples/production-ready/02-code-review-agent/openapi.yaml +150 -0
  452. package/examples/production-ready/03-data-analysis-agent/README.md +51 -0
  453. package/examples/production-ready/03-data-analysis-agent/agent.ossa.yaml +97 -0
  454. package/examples/production-ready/03-data-analysis-agent/openapi.yaml +74 -0
  455. package/examples/production-ready/04-content-moderator/README.md +55 -0
  456. package/examples/production-ready/04-content-moderator/agent.ossa.yaml +131 -0
  457. package/examples/production-ready/04-content-moderator/openapi.yaml +50 -0
  458. package/examples/production-ready/05-sales-assistant/README.md +37 -0
  459. package/examples/production-ready/05-sales-assistant/agent.ossa.yaml +146 -0
  460. package/examples/production-ready/05-sales-assistant/openapi.yaml +59 -0
  461. package/examples/production-ready/06-devops-agent/README.md +39 -0
  462. package/examples/production-ready/06-devops-agent/agent.ossa.yaml +141 -0
  463. package/examples/production-ready/06-devops-agent/openapi.yaml +51 -0
  464. package/examples/production-ready/07-research-assistant/README.md +31 -0
  465. package/examples/production-ready/07-research-assistant/agent.ossa.yaml +119 -0
  466. package/examples/production-ready/07-research-assistant/openapi.yaml +56 -0
  467. package/examples/production-ready/08-email-triage-agent/README.md +33 -0
  468. package/examples/production-ready/08-email-triage-agent/agent.ossa.yaml +133 -0
  469. package/examples/production-ready/08-email-triage-agent/openapi.yaml +41 -0
  470. package/examples/production-ready/09-security-scanner/README.md +49 -0
  471. package/examples/production-ready/09-security-scanner/agent.ossa.yaml +174 -0
  472. package/examples/production-ready/09-security-scanner/openapi.yaml +46 -0
  473. package/examples/production-ready/10-meeting-assistant/README.md +53 -0
  474. package/examples/production-ready/10-meeting-assistant/agent.ossa.yaml +211 -0
  475. package/examples/production-ready/10-meeting-assistant/docker-compose.yml +27 -0
  476. package/examples/production-ready/10-meeting-assistant/openapi.yaml +131 -0
  477. package/examples/production-ready/COMPLETION_REPORT.txt +272 -0
  478. package/examples/production-ready/INDEX.md +296 -0
  479. package/examples/production-ready/README.md +452 -0
  480. package/examples/production-ready/SUMMARY.md +362 -0
  481. package/examples/production-ready/TEST_RESULTS.md +458 -0
  482. package/examples/quickstart/support-agent.ossa.yaml +1 -1
  483. package/examples/real-world/gitlab-cicd-optimizer.ossa.yaml +1 -1
  484. package/examples/real-world/rag-documentation-assistant.ossa.yaml +1 -1
  485. package/examples/registry/agents/code-reviewer/agent.yaml +1 -1
  486. package/examples/registry/agents/security-scanner/agent.yaml +1 -1
  487. package/examples/runtime-adapters/bedrock-claude-example.ossa.yaml +1 -1
  488. package/examples/schema/reusable-components.yaml +1 -1
  489. package/examples/showcase/ci-pipeline.ossa.yaml +1 -1
  490. package/examples/showcase/code-assistant.ossa.yaml +1 -1
  491. package/examples/showcase/code-reviewer.ossa.yaml +1 -1
  492. package/examples/showcase/compliance-validator.ossa.yaml +1 -1
  493. package/examples/showcase/content-writer.ossa.yaml +1 -1
  494. package/examples/showcase/data-transformer.ossa.yaml +1 -1
  495. package/examples/showcase/doc-generator.ossa.yaml +1 -1
  496. package/examples/showcase/security-scanner.ossa.yaml +1 -1
  497. package/examples/showcase/test-generator.ossa.yaml +1 -1
  498. package/examples/showcase/workflow-orchestrator.ossa.yaml +1 -1
  499. package/examples/skills-example.ossa.yaml +140 -0
  500. package/examples/swarm/pso-optimizer.ossa.json +1 -1
  501. package/examples/tasks/batch-email-sender.yaml +1 -1
  502. package/examples/tasks/data-transform.yaml +1 -1
  503. package/examples/tasks/publish-content.yaml +1 -1
  504. package/examples/templates/ossa-compliance.yaml +1 -1
  505. package/examples/unified/security-scanner.ossa.yaml +1 -1
  506. package/examples/v0.3.6-features/genetics-breeding-advanced.ossa.yaml +1 -1
  507. package/examples/v0.3.6-features/genetics-breeding-simple.ossa.yaml +1 -1
  508. package/examples/v0.3.6-features/genetics-fitness-scoring.ossa.yaml +1 -1
  509. package/examples/vercel/edge-agent.ossa.json +1 -1
  510. package/examples/workflows/batch-email-campaign.yaml +1 -1
  511. package/examples/workflows/content-review-publish.yaml +1 -1
  512. package/examples/workflows/simple-etl.yaml +1 -1
  513. package/openapi/cli/openapi.yaml +221 -5
  514. package/package.json +17 -7
  515. package/dist/cli/commands/export-v2.command.d.ts +0 -7
  516. package/dist/cli/commands/export-v2.command.d.ts.map +0 -1
  517. package/dist/cli/commands/export-v2.command.js.map +0 -1
@@ -0,0 +1,226 @@
1
+ /**
2
+ * OSSA Estimate Command
3
+ * Estimate token counts and costs for agent deployments
4
+ *
5
+ * SOLID Principles:
6
+ * - Single Responsibility: Only handles cost estimation
7
+ * - Uses dependency injection for services
8
+ * - DRY: Reuses existing validation and manifest loading
9
+ */
10
+ import chalk from 'chalk';
11
+ import { Command } from 'commander';
12
+ import { container } from '../../di-container.js';
13
+ import { ManifestRepository } from '../../repositories/manifest.repository.js';
14
+ import { TokenCounterService } from '../../services/cost-estimation/token-counter.service.js';
15
+ import { ScenarioEstimatorService } from '../../services/cost-estimation/scenario-estimator.js';
16
+ import { MODEL_PRICING, findModelPricing, getDefaultModel, getModelsByProvider, } from '../../services/cost-estimation/pricing.js';
17
+ import { addGlobalOptions, shouldUseColor, ExitCode, } from '../utils/standard-options.js';
18
+ export const estimateCommand = new Command('estimate')
19
+ .argument('[path]', 'Path to OSSA manifest (YAML or JSON)')
20
+ .option('-m, --model <model>', 'Model to estimate for (e.g., gpt-4o, claude-sonnet-4). If not specified, uses model from manifest.')
21
+ .option('-p, --provider <provider>', 'Provider to estimate for (openai, anthropic, google, aws-bedrock, azure)')
22
+ .option('-i, --interactions <number>', 'Number of interactions to estimate', '100')
23
+ .option('-t, --timeframe <timeframe>', 'Timeframe for interactions (hour, day, week, month)', 'day')
24
+ .option('--user-length <length>', 'Average user message length (short, medium, long)', 'medium')
25
+ .option('--response-length <length>', 'Average assistant response length (short, medium, long)', 'medium')
26
+ .option('--compare', 'Compare costs across multiple models')
27
+ .option('--list-models', 'List all available models and exit')
28
+ .description('Estimate token counts and costs for agent deployments');
29
+ // Apply standard options
30
+ addGlobalOptions(estimateCommand);
31
+ estimateCommand.action(async (path, options) => {
32
+ const useColor = shouldUseColor(options);
33
+ const log = (msg, color) => {
34
+ if (options.quiet)
35
+ return;
36
+ const output = useColor && color ? color(msg) : msg;
37
+ console.log(output);
38
+ };
39
+ try {
40
+ // Handle --list-models
41
+ if (options.listModels) {
42
+ log('\n📋 Available Models:', chalk.bold);
43
+ log('');
44
+ const providers = [
45
+ 'openai',
46
+ 'anthropic',
47
+ 'google',
48
+ 'aws-bedrock',
49
+ 'azure',
50
+ ];
51
+ for (const provider of providers) {
52
+ const models = getModelsByProvider(provider);
53
+ if (models.length > 0) {
54
+ log(`\n${chalk.bold.blue(provider.toUpperCase())}:`);
55
+ models.forEach((model) => {
56
+ const input = `$${model.inputPricePerMillion}/1M`;
57
+ const output = `$${model.outputPricePerMillion}/1M`;
58
+ log(` ${chalk.cyan(model.model.padEnd(30))} ${chalk.gray(`Input: ${input.padEnd(12)} Output: ${output}`)}`);
59
+ if (model.description) {
60
+ log(` ${chalk.gray(model.description)}`);
61
+ }
62
+ });
63
+ }
64
+ }
65
+ log('');
66
+ process.exit(ExitCode.SUCCESS);
67
+ }
68
+ // Validate path is provided
69
+ if (!path) {
70
+ log(chalk.red('❌ Error: Path to OSSA manifest is required'));
71
+ log(chalk.gray('Usage: ossa estimate <path>'));
72
+ process.exit(ExitCode.MISUSE);
73
+ }
74
+ // Load manifest
75
+ const manifestRepo = container.get(ManifestRepository);
76
+ const manifest = await manifestRepo.load(path);
77
+ log(`\n💰 Cost Estimation for Agent: ${chalk.cyan(manifest.metadata.name)}`, chalk.bold);
78
+ log('');
79
+ // Initialize services
80
+ const tokenCounter = new TokenCounterService();
81
+ const scenarioEstimator = new ScenarioEstimatorService();
82
+ // Count tokens in agent
83
+ const agentTokens = tokenCounter.countAgentTokens(manifest);
84
+ log('📊 Agent Token Breakdown:', chalk.bold);
85
+ log('');
86
+ Object.entries(agentTokens.breakdown).forEach(([key, value]) => {
87
+ if (value > 0) {
88
+ const formatted = tokenCounter.formatTokenCount(value);
89
+ log(` ${chalk.gray(key.padEnd(20))}: ${chalk.yellow(formatted)}`);
90
+ }
91
+ });
92
+ log(` ${chalk.gray('─'.repeat(40))}`);
93
+ log(` ${chalk.gray('Total'.padEnd(20))}: ${chalk.bold.yellow(tokenCounter.formatTokenCount(agentTokens.total))}`);
94
+ log('');
95
+ // Determine model to use
96
+ let modelPricing = null;
97
+ if (options.model) {
98
+ modelPricing = findModelPricing(options.model);
99
+ if (!modelPricing) {
100
+ log(chalk.red(`❌ Model not found: ${options.model}`));
101
+ log(chalk.gray('Use --list-models to see available models'));
102
+ process.exit(ExitCode.MISUSE);
103
+ }
104
+ }
105
+ else if (options.provider) {
106
+ modelPricing = getDefaultModel(options.provider);
107
+ if (!modelPricing) {
108
+ log(chalk.red(`❌ Unknown provider: ${options.provider}`));
109
+ process.exit(ExitCode.MISUSE);
110
+ }
111
+ }
112
+ else {
113
+ // Try to infer from manifest
114
+ const llmProvider = manifest.spec?.llm?.provider ||
115
+ manifest.agent?.llm?.provider ||
116
+ 'openai';
117
+ const llmModel = manifest.spec?.llm?.model || manifest.agent?.llm?.model;
118
+ if (llmModel) {
119
+ modelPricing = findModelPricing(llmModel);
120
+ }
121
+ if (!modelPricing) {
122
+ modelPricing = getDefaultModel(llmProvider);
123
+ }
124
+ if (!modelPricing) {
125
+ log(chalk.yellow('⚠️ Could not determine model from manifest'));
126
+ log(chalk.gray('Using default: gpt-4o'));
127
+ modelPricing = MODEL_PRICING['gpt-4o'];
128
+ }
129
+ }
130
+ // Show model being used
131
+ log('🤖 Model Configuration:', chalk.bold);
132
+ log('');
133
+ log(` ${chalk.gray('Model')}: ${chalk.cyan(modelPricing.model)}`);
134
+ log(` ${chalk.gray('Provider')}: ${chalk.cyan(modelPricing.provider)}`);
135
+ log(` ${chalk.gray('Context Window')}: ${chalk.yellow(tokenCounter.formatTokenCount(modelPricing.contextWindow))}`);
136
+ log('');
137
+ log('💵 Pricing:', chalk.bold);
138
+ log('');
139
+ log(` ${chalk.gray('Input')}: ${chalk.green(`$${modelPricing.inputPricePerMillion}/1M tokens`)}`);
140
+ log(` ${chalk.gray('Output')}: ${chalk.green(`$${modelPricing.outputPricePerMillion}/1M tokens`)}`);
141
+ log('');
142
+ // Compare mode
143
+ if (options.compare) {
144
+ log('📊 Model Comparison:', chalk.bold);
145
+ log('');
146
+ const scenario = {
147
+ name: 'Comparison',
148
+ interactions: parseInt(options.interactions || '100'),
149
+ timeframe: options.timeframe || 'day',
150
+ userMessageLength: options.userLength || 'medium',
151
+ assistantResponseLength: options.responseLength || 'medium',
152
+ };
153
+ // Select representative models
154
+ const modelsToCompare = [
155
+ MODEL_PRICING['gpt-4o-mini'],
156
+ MODEL_PRICING['gpt-4o'],
157
+ MODEL_PRICING['gpt-4-turbo'],
158
+ MODEL_PRICING['claude-haiku-4'],
159
+ MODEL_PRICING['claude-sonnet-4'],
160
+ MODEL_PRICING['claude-opus-4'],
161
+ MODEL_PRICING['gemini-1.5-flash'],
162
+ MODEL_PRICING['gemini-1.5-pro'],
163
+ ];
164
+ const estimates = scenarioEstimator.compareModels(agentTokens, scenario, modelsToCompare);
165
+ estimates.forEach((estimate, index) => {
166
+ const rank = index === 0 ? chalk.green('🏆 CHEAPEST') : '';
167
+ const modelName = estimate.scenario.name || modelsToCompare[index].model;
168
+ const cost = scenarioEstimator.formatCost(estimate.costs.totalCost);
169
+ log(` ${chalk.cyan(modelsToCompare[index].model.padEnd(30))} ${chalk.yellow(cost.padStart(12))} ${rank}`);
170
+ });
171
+ log('');
172
+ }
173
+ else {
174
+ // Standard estimation
175
+ const scenario = {
176
+ name: 'Custom',
177
+ interactions: parseInt(options.interactions || '100'),
178
+ timeframe: options.timeframe || 'day',
179
+ userMessageLength: options.userLength || 'medium',
180
+ assistantResponseLength: options.responseLength || 'medium',
181
+ };
182
+ const estimate = scenarioEstimator.estimateScenario(agentTokens, scenario, modelPricing);
183
+ log(`💬 Usage Scenario: ${chalk.cyan(`${scenario.interactions} interactions/${scenario.timeframe}`)}`, chalk.bold);
184
+ log('');
185
+ log('📈 Token Usage:', chalk.bold);
186
+ log('');
187
+ log(` ${chalk.gray('Input tokens')}: ${chalk.yellow(tokenCounter.formatTokenCount(estimate.tokenUsage.inputTokens))}`);
188
+ log(` ${chalk.gray('Output tokens')}: ${chalk.yellow(tokenCounter.formatTokenCount(estimate.tokenUsage.outputTokens))}`);
189
+ log(` ${chalk.gray('Total tokens')}: ${chalk.yellow(tokenCounter.formatTokenCount(estimate.tokenUsage.totalTokens))}`);
190
+ log('');
191
+ log('💰 Cost Estimate:', chalk.bold);
192
+ log('');
193
+ log(` ${chalk.gray('Input cost')}: ${chalk.green(scenarioEstimator.formatCost(estimate.costs.inputCost))}`);
194
+ log(` ${chalk.gray('Output cost')}: ${chalk.green(scenarioEstimator.formatCost(estimate.costs.outputCost))}`);
195
+ log(` ${chalk.gray('─'.repeat(40))}`);
196
+ log(` ${chalk.gray('Total cost')}: ${chalk.bold.green(scenarioEstimator.formatCost(estimate.costs.totalCost))}`);
197
+ log('');
198
+ log(` ${chalk.gray('Per interaction')}: ${chalk.cyan(scenarioEstimator.formatCost(estimate.perInteraction.cost))}`);
199
+ log('');
200
+ // Project to monthly if timeframe is day
201
+ if (scenario.timeframe === 'day') {
202
+ const monthly = scenarioEstimator.projectMonthly(estimate);
203
+ log(`📅 Monthly Projection (${monthly.scenario.interactions.toLocaleString()} interactions):`, chalk.bold);
204
+ log('');
205
+ log(` ${chalk.gray('Estimated cost')}: ${chalk.bold.green(scenarioEstimator.formatCost(monthly.costs.totalCost))}`);
206
+ log('');
207
+ }
208
+ }
209
+ // Context window warning
210
+ const turnTokens = agentTokens.total + 200 + 500; // Rough estimate per turn
211
+ if (turnTokens > modelPricing.contextWindow * 0.8) {
212
+ log(chalk.yellow('⚠️ Warning: Agent prompt is large relative to context window'));
213
+ log(chalk.gray(` This may limit conversation history or tool usage.`));
214
+ log('');
215
+ }
216
+ process.exit(ExitCode.SUCCESS);
217
+ }
218
+ catch (error) {
219
+ log(chalk.red(`❌ Error: ${error instanceof Error ? error.message : String(error)}`));
220
+ if (options.verbose && error instanceof Error && error.stack) {
221
+ log(chalk.gray(error.stack));
222
+ }
223
+ process.exit(ExitCode.GENERAL_ERROR);
224
+ }
225
+ });
226
+ //# sourceMappingURL=estimate.command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"estimate.command.js","sourceRoot":"","sources":["../../../src/cli/commands/estimate.command.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Export Command (Enhanced)
3
+ * Enhanced export with adapter interface, batch mode, and dry-run
4
+ */
5
+ import { Command } from 'commander';
6
+ export declare const exportEnhancedCommand: Command;
7
+ //# sourceMappingURL=export-enhanced.command.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"export-enhanced.command.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/export-enhanced.command.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAQpC,eAAO,MAAM,qBAAqB,SAkN/B,CAAC"}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Export Command v2
2
+ * Export Command (Enhanced)
3
3
  * Enhanced export with adapter interface, batch mode, and dry-run
4
4
  */
5
5
  import chalk from 'chalk';
@@ -9,7 +9,7 @@ import { container } from '../../di-container.js';
9
9
  import { ManifestRepository } from '../../repositories/manifest.repository.js';
10
10
  import { ExportOrchestrator } from '../../services/export/export-orchestrator.js';
11
11
  import { registry } from '../../adapters/registry/platform-registry.js';
12
- export const exportV2Command = new Command('export')
12
+ export const exportEnhancedCommand = new Command('export-enhanced')
13
13
  .description('Export OSSA manifest to platform-specific format')
14
14
  .argument('<manifest>', 'Path to OSSA agent manifest')
15
15
  .option('-p, --platform <platform>', 'Target platform (use --list to see all)')
@@ -146,4 +146,4 @@ export const exportV2Command = new Command('export')
146
146
  process.exit(1);
147
147
  }
148
148
  });
149
- //# sourceMappingURL=export-v2.command.js.map
149
+ //# sourceMappingURL=export-enhanced.command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"export-enhanced.command.js","sourceRoot":"","sources":["../../../src/cli/commands/export-enhanced.command.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"export.command.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/export.command.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAsBpC,eAAO,MAAM,aAAa,SASiD,CAAC"}
1
+ {"version":3,"file":"export.command.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/export.command.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAwBpC,eAAO,MAAM,aAAa,SASiD,CAAC"}
@@ -17,6 +17,7 @@ import * as path from 'path';
17
17
  import { container } from '../../di-container.js';
18
18
  import { ManifestRepository } from '../../repositories/manifest.repository.js';
19
19
  import { LangChainConverter } from '../../adapters/langchain/converter.js';
20
+ import { LangChainExporter } from '../../services/export/langchain/langchain-exporter.js';
20
21
  import { CrewAIConverter } from '../../adapters/crewai/converter.js';
21
22
  import { TemporalConverter } from '../../adapters/temporal/converter.js';
22
23
  import { N8NConverter } from '../../adapters/n8n/converter.js';
@@ -25,11 +26,12 @@ import { DockerfileGenerator } from '../../adapters/docker/generators.js';
25
26
  import { KubernetesManifestGenerator } from '../../adapters/kubernetes/generator.js';
26
27
  import { KAgentCRDGenerator } from '../../sdks/kagent/crd-generator.js';
27
28
  import { registry } from '../../adapters/registry/platform-registry.js';
29
+ import { DrupalModuleGenerator } from '../../adapters/drupal/generator.js';
28
30
  import { addGlobalOptions, addMutationOptions, shouldUseColor, } from '../utils/standard-options.js';
29
31
  export const exportCommand = new Command('export')
30
32
  .description('Export OSSA manifest to platform-specific format')
31
33
  .argument('<manifest>', 'Path to OSSA agent manifest')
32
- .requiredOption('-p, --platform <platform>', 'Target platform (kagent, langchain, crewai, temporal, n8n, gitlab, docker, kubernetes, npm)')
34
+ .requiredOption('-p, --platform <platform>', 'Target platform (kagent, langchain, crewai, temporal, n8n, gitlab, docker, kubernetes, npm, drupal)')
33
35
  .option('-o, --output <file>', 'Output file path')
34
36
  .option('--format <format>', 'Output format (yaml, json, python)', 'yaml')
35
37
  .option('--skill', 'Include Claude Skill (SKILL.md) - NPM platform only');
@@ -81,12 +83,38 @@ exportCommand.action(async (manifestPath, options) => {
81
83
  break;
82
84
  }
83
85
  case 'langchain': {
84
- const converter = new LangChainConverter();
86
+ // Use comprehensive LangChain exporter for full Python package
85
87
  if (options.format === 'python') {
86
- output = converter.generatePythonCode(manifest);
87
- defaultExtension = 'py';
88
+ const exporter = new LangChainExporter();
89
+ const result = await exporter.export(manifest, {
90
+ includeApi: true,
91
+ includeOpenApi: true,
92
+ includeDocker: true,
93
+ includeTests: true,
94
+ });
95
+ if (!result.success) {
96
+ throw new Error(result.error || 'LangChain export failed');
97
+ }
98
+ // Create output directory
99
+ const outputDir = options.output || `./langchain-${manifest.metadata?.name || 'agent'}`;
100
+ fs.mkdirSync(outputDir, { recursive: true });
101
+ // Write all generated files
102
+ for (const file of result.files) {
103
+ const filePath = path.join(outputDir, file.path);
104
+ const fileDir = path.dirname(filePath);
105
+ fs.mkdirSync(fileDir, { recursive: true });
106
+ fs.writeFileSync(filePath, file.content);
107
+ }
108
+ logSuccess(`✓ LangChain Python package exported to: ${outputDir}`);
109
+ logVerbose(` Files: ${result.files.map(f => f.path).join(', ')}`);
110
+ logVerbose(` Python version: ${result.metadata?.pythonVersion}`);
111
+ logVerbose(` LangChain version: ${result.metadata?.langchainVersion}`);
112
+ logVerbose(` Tools: ${result.metadata?.toolsCount}`);
113
+ return; // Early return to skip single-file write
88
114
  }
89
115
  else {
116
+ // Simple JSON export for non-Python format
117
+ const converter = new LangChainConverter();
90
118
  const config = converter.convert(manifest);
91
119
  output = JSON.stringify(config, null, 2);
92
120
  defaultExtension = 'json';
@@ -177,6 +205,56 @@ exportCommand.action(async (manifestPath, options) => {
177
205
  }
178
206
  return; // Early return to skip single-file write
179
207
  }
208
+ case 'drupal': {
209
+ log('Generating Drupal module with ossa/symfony-bundle integration...');
210
+ // Use DrupalModuleGenerator for full module package
211
+ const generator = new DrupalModuleGenerator();
212
+ const result = await generator.export(manifest, {
213
+ includeQueueWorker: true,
214
+ includeEntity: true,
215
+ includeController: true,
216
+ includeConfigForm: true,
217
+ includeHooks: true,
218
+ includeViews: true,
219
+ validate: true,
220
+ });
221
+ if (!result.success) {
222
+ throw new Error(result.error || 'Drupal module generation failed');
223
+ }
224
+ // Create output directory
225
+ const moduleName = manifest.metadata?.name?.toLowerCase().replace(/[^a-z0-9_]/g, '_') || 'ossa_agent';
226
+ const outputDir = options.output || `./${moduleName}`;
227
+ if (!options.dryRun) {
228
+ fs.mkdirSync(outputDir, { recursive: true });
229
+ // Write all generated files
230
+ for (const file of result.files) {
231
+ const filePath = path.join(outputDir, file.path);
232
+ const fileDir = path.dirname(filePath);
233
+ fs.mkdirSync(fileDir, { recursive: true });
234
+ fs.writeFileSync(filePath, file.content);
235
+ logVerbose(` Created: ${file.path}`);
236
+ }
237
+ logSuccess(`✓ Drupal module exported to: ${outputDir}`);
238
+ logVerbose(` Files: ${result.files.length} files generated`);
239
+ logVerbose(` Module name: ${moduleName}`);
240
+ log('\n📦 Installation instructions:');
241
+ log(` 1. Copy module: cp -r ${moduleName} /path/to/drupal/web/modules/custom/`);
242
+ log(` 2. Install dependency: composer require ossa/symfony-bundle`);
243
+ log(` 3. Enable module: drush en ${moduleName}`);
244
+ log(` 4. Configure: Visit /admin/config/${moduleName}\n`);
245
+ log('📚 Documentation:');
246
+ log(` README: ${moduleName}/README.md`);
247
+ log(` Install guide: ${moduleName}/INSTALL.md`);
248
+ }
249
+ else {
250
+ log(`\n🔍 DRY RUN: Would generate ${result.files.length} files in: ${outputDir}`);
251
+ logVerbose('Files to be created:');
252
+ for (const file of result.files) {
253
+ logVerbose(` - ${file.path} (${file.content.length} bytes)`);
254
+ }
255
+ }
256
+ return; // Early return to skip single-file write
257
+ }
180
258
  default:
181
259
  throw new Error(`Unsupported platform: ${options.platform}`);
182
260
  }
@@ -1 +1 @@
1
- {"version":3,"file":"export.command.js","sourceRoot":"","sources":["../../../src/cli/commands/export.command.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,MAAM,2CAA2C,CAAC;AAC/E,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAC3E,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AACzE,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,2BAA2B,EAAE,MAAM,wCAAwC,CAAC;AACrF,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,EAAE,QAAQ,EAAE,MAAM,8CAA8C,CAAC;AAExE,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAElB,cAAc,GACf,MAAM,8BAA8B,CAAC;AAEtC,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,OAAO,CAAC,QAAQ,CAAC;KAC/C,WAAW,CAAC,kDAAkD,CAAC;KAC/D,QAAQ,CAAC,YAAY,EAAE,6BAA6B,CAAC;KACrD,cAAc,CACb,2BAA2B,EAC3B,6FAA6F,CAC9F;KACA,MAAM,CAAC,qBAAqB,EAAE,kBAAkB,CAAC;KACjD,MAAM,CAAC,mBAAmB,EAAE,oCAAoC,EAAE,MAAM,CAAC;KACzE,MAAM,CAAC,SAAS,EAAE,qDAAqD,CAAC,CAAC;AAE5E,wCAAwC;AACxC,gBAAgB,CAAC,aAAa,CAAC,CAAC;AAChC,kBAAkB,CAAC,aAAa,CAAC,CAAC;AAElC,aAAa,CAAC,MAAM,CAClB,KAAK,EACH,YAAoB,EACpB,OAaC,EACD,EAAE;IACF,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;IACvC,IAAI,CAAC;QACH,kBAAkB;QAClB,MAAM,GAAG,GAAG,CAAC,GAAW,EAAE,EAAE;YAC1B,IAAI,OAAO,CAAC,KAAK;gBAAE,OAAO;YAC1B,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAChD,CAAC,CAAC;QAEF,MAAM,UAAU,GAAG,CAAC,GAAW,EAAE,EAAE;YACjC,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,KAAK;gBAAE,OAAO;YAC9C,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAChD,CAAC,CAAC;QAEF,MAAM,UAAU,GAAG,CAAC,GAAW,EAAE,EAAE;YACjC,IAAI,OAAO,CAAC,KAAK;gBAAE,OAAO;YAC1B,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACjD,CAAC,CAAC;QAEF,eAAe;QACf,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnB,GAAG,CAAC,4CAA4C,CAAC,CAAC;QACpD,CAAC;QAED,GAAG,CAAC,oBAAoB,YAAY,EAAE,CAAC,CAAC;QACxC,GAAG,CAAC,aAAa,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;QACrC,GAAG,CAAC,WAAW,OAAO,CAAC,MAAM,IAAI,CAAC,CAAC;QAEnC,UAAU,CAAC,sBAAsB,CAAC,CAAC;QACnC,UAAU,CAAC,UAAU,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC;QAE1D,gBAAgB;QAChB,MAAM,YAAY,GAAG,SAAS,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;QACvD,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAEvD,IAAI,MAAc,CAAC;QACnB,IAAI,gBAAwB,CAAC;QAE7B,QAAQ,OAAO,CAAC,QAAQ,EAAE,CAAC;YACzB,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,MAAM,SAAS,GAAG,IAAI,kBAAkB,EAAE,CAAC;gBAC3C,MAAM,GAAG,GAAG,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;gBACzC,MAAM;oBACJ,OAAO,CAAC,MAAM,KAAK,MAAM;wBACvB,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;wBAC9B,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;gBACnC,gBAAgB,GAAG,MAAM,CAAC;gBAC1B,MAAM;YACR,CAAC;YAED,KAAK,WAAW,CAAC,CAAC,CAAC;gBACjB,MAAM,SAAS,GAAG,IAAI,kBAAkB,EAAE,CAAC;gBAC3C,IAAI,OAAO,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;oBAChC,MAAM,GAAG,SAAS,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;oBAChD,gBAAgB,GAAG,IAAI,CAAC;gBAC1B,CAAC;qBAAM,CAAC;oBACN,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;oBAC3C,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;oBACzC,gBAAgB,GAAG,MAAM,CAAC;gBAC5B,CAAC;gBACD,MAAM;YACR,CAAC;YAED,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,MAAM,SAAS,GAAG,IAAI,eAAe,EAAE,CAAC;gBACxC,IAAI,OAAO,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;oBAChC,MAAM,GAAG,SAAS,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;oBAChD,gBAAgB,GAAG,IAAI,CAAC;gBAC1B,CAAC;qBAAM,CAAC;oBACN,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;oBAC3C,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;oBACzC,gBAAgB,GAAG,MAAM,CAAC;gBAC5B,CAAC;gBACD,MAAM;YACR,CAAC;YAED,KAAK,UAAU,CAAC,CAAC,CAAC;gBAChB,MAAM,SAAS,GAAG,IAAI,iBAAiB,EAAE,CAAC;gBAC1C,MAAM,QAAQ,GAAG,EAAE,GAAG,QAAQ,EAAS,CAAC;gBACxC,IAAI,OAAO,CAAC,MAAM,KAAK,YAAY,EAAE,CAAC;oBACpC,MAAM,GAAG,SAAS,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;oBACpD,gBAAgB,GAAG,IAAI,CAAC;gBAC1B,CAAC;qBAAM,CAAC;oBACN,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;oBAC3C,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;oBACzC,gBAAgB,GAAG,MAAM,CAAC;gBAC5B,CAAC;gBACD,MAAM;YACR,CAAC;YAED,KAAK,KAAK,CAAC,CAAC,CAAC;gBACX,MAAM,SAAS,GAAG,IAAI,YAAY,EAAE,CAAC;gBACrC,MAAM,QAAQ,GAAG,EAAE,GAAG,QAAQ,EAAS,CAAC;gBACxC,MAAM,GAAG,SAAS,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;gBAC1C,gBAAgB,GAAG,MAAM,CAAC;gBAC1B,MAAM;YACR,CAAC;YAED,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,MAAM,SAAS,GAAG,IAAI,eAAe,EAAE,CAAC;gBACxC,MAAM,GAAG,SAAS,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;gBAC1C,gBAAgB,GAAG,KAAK,CAAC;gBACzB,MAAM;YACR,CAAC;YAED,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,MAAM,SAAS,GAAG,IAAI,mBAAmB,EAAE,CAAC;gBAC5C,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;gBACtC,gBAAgB,GAAG,YAAY,CAAC;gBAChC,MAAM;YACR,CAAC;YAED,KAAK,YAAY,CAAC,CAAC,CAAC;gBAClB,MAAM,SAAS,GAAG,IAAI,2BAA2B,EAAE,CAAC;gBACpD,MAAM,SAAS,GAAG,SAAS,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;gBAClD,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;gBAC5C,gBAAgB,GAAG,MAAM,CAAC;gBAC1B,MAAM;YACR,CAAC;YAED,KAAK,KAAK,CAAC,CAAC,CAAC;gBACX,sCAAsC;gBACtC,MAAM,OAAO,GAAG,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;gBAC3C,IAAI,CAAC,OAAO,EAAE,CAAC;oBACb,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;gBAChD,CAAC;gBAED,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE;oBAC5C,QAAQ,EAAE,IAAI;oBACd,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,IAAI,eAAe,CAAC;oBAC1D,YAAY,EAAE,OAAO,CAAC,KAAK,IAAI,KAAK;iBACrC,CAAC,CAAC;gBAEH,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;oBACpB,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,IAAI,mBAAmB,CAAC,CAAC;gBACvD,CAAC;gBAED,0BAA0B;gBAC1B,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,IAAI,SAAS,QAAQ,CAAC,QAAQ,EAAE,IAAI,IAAI,OAAO,EAAE,CAAC;gBAClF,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;gBAE7C,4BAA4B;gBAC5B,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;oBAChC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;oBACjD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;oBACvC,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;oBAC3C,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;gBAC3C,CAAC;gBAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,8BAA8B,SAAS,EAAE,CAAC,CAAC,CAAC;gBACpE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;gBAChF,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;oBAClB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC,CAAC;gBAChE,CAAC;gBACD,OAAO,CAAC,yCAAyC;YACnD,CAAC;YAED;gBACE,MAAM,IAAI,KAAK,CAAC,yBAAyB,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;QACjE,CAAC;QAED,wBAAwB;QACxB,MAAM,UAAU,GACd,OAAO,CAAC,MAAM;YACd,GAAG,QAAQ,CAAC,QAAQ,EAAE,IAAI,IAAI,OAAO,IAAI,gBAAgB,EAAE,CAAC;QAC9D,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAE5C,oCAAoC;QACpC,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YACnE,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,WAAW,CAAC;YACnD,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC7C,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;YACjE,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAC1B,SAAS,EACT,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,SAAS,MAAM,CAChD,CAAC;YACF,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;YACxC,UAAU,CAAC,mBAAmB,UAAU,EAAE,CAAC,CAAC;QAC9C,CAAC;QAED,wCAAwC;QACxC,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnB,GAAG,CAAC,wBAAwB,UAAU,EAAE,CAAC,CAAC;YAC1C,UAAU,CAAC,gBAAgB,MAAM,CAAC,MAAM,QAAQ,CAAC,CAAC;YAClD,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;gBACpB,GAAG,CAAC,qCAAqC,CAAC,CAAC;gBAC3C,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;gBACtC,IAAI,MAAM,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;oBACxB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBACrB,CAAC;gBACD,GAAG,CAAC,uBAAuB,CAAC,CAAC;YAC/B,CAAC;QACH,CAAC;aAAM,CAAC;YACN,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YACrC,UAAU,CAAC,kBAAkB,UAAU,EAAE,CAAC,CAAC;YAC3C,UAAU,CAAC,gBAAgB,MAAM,CAAC,MAAM,QAAQ,CAAC,CAAC;QACpD,CAAC;QAED,6BAA6B;QAC7B,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YACjB,MAAM,MAAM,GAAG;gBACb,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,YAAY;gBACtB,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,MAAM,EAAE,UAAU;gBAClB,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,KAAK;gBAC/B,IAAI,EAAE,MAAM,CAAC,MAAM;aACpB,CAAC;YACF,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CACX,KAAK,CAAC,GAAG,CACP,kBAAkB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAC3E,CACF,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CACF,CAAC"}
1
+ {"version":3,"file":"export.command.js","sourceRoot":"","sources":["../../../src/cli/commands/export.command.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"init.command.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.command.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAepC,eAAO,MAAM,WAAW,SAyJrB,CAAC"}
1
+ {"version":3,"file":"init.command.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.command.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAepC,eAAO,MAAM,WAAW,SA2JrB,CAAC"}
@@ -18,6 +18,8 @@ export const initCommand = new Command('init')
18
18
  .argument('[name]', 'Agent name/identifier')
19
19
  .option('-o, --output <path>', 'Output file path', 'agent.ossa.json')
20
20
  .option('-y, --yes', 'Use defaults without prompting')
21
+ .option('--interactive', 'Use enhanced interactive wizard')
22
+ .option('--use-case <type>', 'Specify use case (code-review, documentation, etc.)')
21
23
  .description('Create a new OSSA agent manifest interactively')
22
24
  .action(async (name, options) => {
23
25
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"init.command.js","sourceRoot":"","sources":["../../../src/cli/commands/init.command.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.command.js","sourceRoot":"","sources":["../../../src/cli/commands/init.command.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  /**
2
2
  * OSSA Test Command
3
3
  * Run agent tests defined in manifests
4
+ * Supports mock LLM testing without API keys
4
5
  *
5
6
  * SOLID Principles:
6
7
  * - Uses shared output utilities (DRY)
@@ -1 +1 @@
1
- {"version":3,"file":"test.command.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/test.command.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAWpC,eAAO,MAAM,WAAW,SAsKrB,CAAC"}
1
+ {"version":3,"file":"test.command.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/test.command.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAcpC,eAAO,MAAM,WAAW,SAiPrB,CAAC"}