@bluefly/openstandardagents 0.2.4 → 0.2.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (511) hide show
  1. package/.cursorrules +84 -0
  2. package/.devfile.yaml +87 -0
  3. package/.env.example +25 -3
  4. package/.github/ISSUE_TEMPLATE/bug_report.yml +63 -0
  5. package/.github/ISSUE_TEMPLATE/feature_request.yml +40 -0
  6. package/.github/workflows/dependabot-comment.yml +34 -0
  7. package/.github/workflows/pr-comment.yml +33 -0
  8. package/.github/workflows/release.yml +1 -1
  9. package/.husky/pre-commit +5 -0
  10. package/.kiro/config.json +21 -0
  11. package/.kiro/settings/mcp.json +61 -0
  12. package/.kiro/specs/scripts-migration-api-first/design.md +883 -0
  13. package/.kiro/specs/scripts-migration-api-first/requirements.md +165 -0
  14. package/.kiro/specs/scripts-migration-api-first/tasks.md +539 -0
  15. package/.kiro/specs/website-brand-identity/design.md +1060 -0
  16. package/.kiro/specs/website-brand-identity/requirements.md +287 -0
  17. package/.kiro/specs/website-brand-identity/tasks.md +981 -0
  18. package/.releaserc.json +5 -4
  19. package/.version.json +6 -0
  20. package/CHANGELOG.md +163 -96
  21. package/CONTRIBUTING.md +23 -5
  22. package/README.md +130 -43
  23. package/bin/ossa +24 -3
  24. package/bin/ossa-dev +42 -0
  25. package/bin/ossa-export +32 -0
  26. package/bin/ossa-generate +60 -0
  27. package/bin/ossa-health +40 -0
  28. package/bin/ossa-init +26 -0
  29. package/bin/ossa-validate-all +55 -0
  30. package/bin/ossa-version +23 -0
  31. package/bin/validate-ossa-0.2.4.ts +244 -0
  32. package/bin/validate-ossa-0.2.5-RC.ts +244 -0
  33. package/bin/validate-ossa.ts +273 -0
  34. package/dist/di-container.d.ts +1 -1
  35. package/dist/di-container.d.ts.map +1 -1
  36. package/dist/di-container.js.map +1 -1
  37. package/dist/repositories/schema.repository.d.ts +17 -2
  38. package/dist/repositories/schema.repository.d.ts.map +1 -1
  39. package/dist/repositories/schema.repository.js +102 -19
  40. package/dist/repositories/schema.repository.js.map +1 -1
  41. package/dist/services/generation.service.d.ts +7 -5
  42. package/dist/services/generation.service.d.ts.map +1 -1
  43. package/dist/services/generation.service.js +92 -44
  44. package/dist/services/generation.service.js.map +1 -1
  45. package/dist/services/github-sync/github-client.d.ts +14 -0
  46. package/dist/services/github-sync/github-client.d.ts.map +1 -0
  47. package/dist/services/github-sync/github-client.js +41 -0
  48. package/dist/services/github-sync/github-client.js.map +1 -0
  49. package/dist/services/github-sync/gitlab-client.d.ts +17 -0
  50. package/dist/services/github-sync/gitlab-client.d.ts.map +1 -0
  51. package/dist/services/github-sync/gitlab-client.js +42 -0
  52. package/dist/services/github-sync/gitlab-client.js.map +1 -0
  53. package/dist/services/github-sync/schemas.d.ts +46 -0
  54. package/dist/services/github-sync/schemas.d.ts.map +1 -0
  55. package/dist/services/github-sync/schemas.js +36 -0
  56. package/dist/services/github-sync/schemas.js.map +1 -0
  57. package/dist/services/github-sync/sync.service.d.ts +27 -0
  58. package/dist/services/github-sync/sync.service.d.ts.map +1 -0
  59. package/dist/services/github-sync/sync.service.js +99 -0
  60. package/dist/services/github-sync/sync.service.js.map +1 -0
  61. package/dist/services/gitlab-agent.service.d.ts +94 -0
  62. package/dist/services/gitlab-agent.service.d.ts.map +1 -0
  63. package/dist/services/gitlab-agent.service.js +162 -0
  64. package/dist/services/gitlab-agent.service.js.map +1 -0
  65. package/dist/services/migration.service.d.ts +3 -3
  66. package/dist/services/migration.service.d.ts.map +1 -1
  67. package/dist/services/migration.service.js +108 -61
  68. package/dist/services/migration.service.js.map +1 -1
  69. package/dist/services/release-automation/base-crud.service.d.ts +93 -0
  70. package/dist/services/release-automation/base-crud.service.d.ts.map +1 -0
  71. package/dist/services/release-automation/base-crud.service.js +68 -0
  72. package/dist/services/release-automation/base-crud.service.js.map +1 -0
  73. package/dist/services/release-automation/index.d.ts +12 -0
  74. package/dist/services/release-automation/index.d.ts.map +1 -0
  75. package/dist/services/release-automation/index.js +12 -0
  76. package/dist/services/release-automation/index.js.map +1 -0
  77. package/dist/services/release-automation/merge-request.service.d.ts +119 -0
  78. package/dist/services/release-automation/merge-request.service.d.ts.map +1 -0
  79. package/dist/services/release-automation/merge-request.service.js +212 -0
  80. package/dist/services/release-automation/merge-request.service.js.map +1 -0
  81. package/dist/services/release-automation/milestone.service.d.ts +104 -0
  82. package/dist/services/release-automation/milestone.service.d.ts.map +1 -0
  83. package/dist/services/release-automation/milestone.service.js +207 -0
  84. package/dist/services/release-automation/milestone.service.js.map +1 -0
  85. package/dist/services/release-automation/release.service.d.ts +118 -0
  86. package/dist/services/release-automation/release.service.d.ts.map +1 -0
  87. package/dist/services/release-automation/release.service.js +207 -0
  88. package/dist/services/release-automation/release.service.js.map +1 -0
  89. package/dist/services/release-automation/schemas/release.schema.d.ts +299 -0
  90. package/dist/services/release-automation/schemas/release.schema.d.ts.map +1 -0
  91. package/dist/services/release-automation/schemas/release.schema.js +269 -0
  92. package/dist/services/release-automation/schemas/release.schema.js.map +1 -0
  93. package/dist/services/release-automation/tag.service.d.ts +99 -0
  94. package/dist/services/release-automation/tag.service.d.ts.map +1 -0
  95. package/dist/services/release-automation/tag.service.js +180 -0
  96. package/dist/services/release-automation/tag.service.js.map +1 -0
  97. package/dist/services/release-automation/webhook.service.d.ts +37 -0
  98. package/dist/services/release-automation/webhook.service.d.ts.map +1 -0
  99. package/dist/services/release-automation/webhook.service.js +173 -0
  100. package/dist/services/release-automation/webhook.service.js.map +1 -0
  101. package/dist/services/runtime/claude/capability-mapper.d.ts +84 -0
  102. package/dist/services/runtime/claude/capability-mapper.d.ts.map +1 -0
  103. package/dist/services/runtime/claude/capability-mapper.js +245 -0
  104. package/dist/services/runtime/claude/capability-mapper.js.map +1 -0
  105. package/dist/services/runtime/claude/claude-adapter.d.ts +80 -0
  106. package/dist/services/runtime/claude/claude-adapter.d.ts.map +1 -0
  107. package/dist/services/runtime/claude/claude-adapter.js +287 -0
  108. package/dist/services/runtime/claude/claude-adapter.js.map +1 -0
  109. package/dist/services/runtime/claude/manifest-parser.d.ts +77 -0
  110. package/dist/services/runtime/claude/manifest-parser.d.ts.map +1 -0
  111. package/dist/services/runtime/claude/manifest-parser.js +169 -0
  112. package/dist/services/runtime/claude/manifest-parser.js.map +1 -0
  113. package/dist/services/runtime/claude/types.d.ts +115 -0
  114. package/dist/services/runtime/claude/types.d.ts.map +1 -0
  115. package/dist/services/runtime/claude/types.js +6 -0
  116. package/dist/services/runtime/claude/types.js.map +1 -0
  117. package/dist/services/runtime/openai.adapter.d.ts.map +1 -1
  118. package/dist/services/runtime/openai.adapter.js.map +1 -1
  119. package/dist/services/validation.service.d.ts.map +1 -1
  120. package/dist/services/validation.service.js +35 -11
  121. package/dist/services/validation.service.js.map +1 -1
  122. package/dist/services/validators/anthropic.validator.d.ts +2 -2
  123. package/dist/services/validators/anthropic.validator.d.ts.map +1 -1
  124. package/dist/services/validators/anthropic.validator.js +14 -9
  125. package/dist/services/validators/anthropic.validator.js.map +1 -1
  126. package/dist/services/validators/autogen.validator.d.ts +2 -2
  127. package/dist/services/validators/autogen.validator.d.ts.map +1 -1
  128. package/dist/services/validators/autogen.validator.js +18 -15
  129. package/dist/services/validators/autogen.validator.js.map +1 -1
  130. package/dist/services/validators/crewai.validator.d.ts +2 -2
  131. package/dist/services/validators/crewai.validator.d.ts.map +1 -1
  132. package/dist/services/validators/crewai.validator.js +18 -17
  133. package/dist/services/validators/crewai.validator.js.map +1 -1
  134. package/dist/services/validators/cursor.validator.d.ts +2 -2
  135. package/dist/services/validators/cursor.validator.d.ts.map +1 -1
  136. package/dist/services/validators/cursor.validator.js +15 -11
  137. package/dist/services/validators/cursor.validator.js.map +1 -1
  138. package/dist/services/validators/langchain.validator.d.ts +2 -2
  139. package/dist/services/validators/langchain.validator.d.ts.map +1 -1
  140. package/dist/services/validators/langchain.validator.js +14 -11
  141. package/dist/services/validators/langchain.validator.js.map +1 -1
  142. package/dist/services/validators/langflow.validator.d.ts +2 -2
  143. package/dist/services/validators/langflow.validator.d.ts.map +1 -1
  144. package/dist/services/validators/langflow.validator.js +14 -9
  145. package/dist/services/validators/langflow.validator.js.map +1 -1
  146. package/dist/services/validators/langgraph.validator.d.ts +2 -2
  147. package/dist/services/validators/langgraph.validator.d.ts.map +1 -1
  148. package/dist/services/validators/langgraph.validator.js +23 -18
  149. package/dist/services/validators/langgraph.validator.js.map +1 -1
  150. package/dist/services/validators/llamaindex.validator.d.ts +2 -2
  151. package/dist/services/validators/llamaindex.validator.d.ts.map +1 -1
  152. package/dist/services/validators/llamaindex.validator.js +19 -16
  153. package/dist/services/validators/llamaindex.validator.js.map +1 -1
  154. package/dist/services/validators/openai.validator.d.ts +2 -2
  155. package/dist/services/validators/openai.validator.d.ts.map +1 -1
  156. package/dist/services/validators/openai.validator.js +20 -16
  157. package/dist/services/validators/openai.validator.js.map +1 -1
  158. package/dist/services/validators/vercel-ai.validator.d.ts +2 -2
  159. package/dist/services/validators/vercel-ai.validator.d.ts.map +1 -1
  160. package/dist/services/validators/vercel-ai.validator.js +16 -15
  161. package/dist/services/validators/vercel-ai.validator.js.map +1 -1
  162. package/dist/spec/v0.2.0/ossa-0.2.0.schema.json +0 -0
  163. package/dist/spec/v0.2.1/ossa-0.2.1.schema.json +555 -0
  164. package/dist/spec/v0.2.3/CHANGELOG.md +7 -7
  165. package/dist/spec/v0.2.3/README.md +9 -9
  166. package/dist/spec/v0.2.3/migrations/v0.2.2-to-v0.2.3.md +18 -18
  167. package/{spec/v0.2.4-dev → dist/spec/v0.2.4}/CHANGELOG.md +8 -8
  168. package/dist/spec/{v0.2.4-dev → v0.2.4}/migrations/v0.2.3-to-v0.2.4.md +10 -10
  169. package/dist/spec/{v0.2.4-dev/ossa-0.2.4-dev.yaml → v0.2.4/ossa-0.2.4.yaml} +1 -1
  170. package/dist/spec/v0.2.5/CHANGELOG.md +401 -0
  171. package/dist/spec/v0.2.5/README.md +72 -0
  172. package/dist/spec/v0.2.5/migrations/v0.2.3-to-v0.2.4.md +599 -0
  173. package/dist/spec/v0.2.5/ossa-0.2.5.schema.json +1696 -0
  174. package/dist/spec/v0.2.5/ossa-0.2.5.yaml +581 -0
  175. package/dist/spec/v0.2.5-RC/CHANGELOG.md +401 -0
  176. package/dist/spec/v0.2.5-RC/README.md +72 -0
  177. package/{spec/v0.2.4-dev → dist/spec/v0.2.5-RC}/migrations/v0.2.3-to-v0.2.4.md +10 -10
  178. package/dist/spec/v0.2.5-RC/ossa-0.2.5-RC.schema.json +1696 -0
  179. package/dist/spec/v0.2.5-RC/ossa-0.2.5-RC.yaml +581 -0
  180. package/dist/spec/v0.2.6/CHANGELOG.md +401 -0
  181. package/dist/spec/v0.2.6/README.md +72 -0
  182. package/dist/spec/v0.2.6/migrations/v0.2.3-to-v0.2.4.md +599 -0
  183. package/dist/spec/v0.2.6/migrations/v0.2.5-RC-to-v0.2.6.md +65 -0
  184. package/dist/spec/v0.2.6/ossa-0.2.6.schema.json +1786 -0
  185. package/dist/spec/v0.2.6/ossa-0.2.6.yaml +581 -0
  186. package/dist/spec/v0.2.6-dev/CHANGELOG.md +164 -0
  187. package/dist/spec/v0.2.6-dev/README.md +75 -0
  188. package/dist/spec/v0.2.6-dev/migrations/v0.2.2-to-v0.2.3.md +343 -0
  189. package/dist/spec/v0.2.6-dev/migrations/v0.2.3-to-v0.2.4.md +599 -0
  190. package/dist/spec/v0.2.6-dev/ossa-0.2.5.schema.json +1696 -0
  191. package/dist/spec/v0.2.6-dev/ossa-0.2.5.yaml +581 -0
  192. package/dist/spec/{v0.2.5-dev/ossa-0.2.5-dev.schema.json → v0.2.6-dev/ossa-0.2.6-dev.schema.json} +323 -359
  193. package/dist/spec/v0.2.6-dev/ossa-0.2.6-dev.yaml +448 -0
  194. package/dist/spec/v0.2.7/core/agentgraph.md +324 -0
  195. package/dist/spec/v0.2.7/resources/agentgraph.yaml +135 -0
  196. package/dist/types/index.d.ts +6 -1
  197. package/dist/types/index.d.ts.map +1 -1
  198. package/docs/brand-guide/01-brand-overview.md +37 -0
  199. package/docs/brand-guide/02-logo-usage.md +43 -0
  200. package/docs/brand-guide/03-color-palette.md +70 -0
  201. package/docs/brand-guide/04-typography.md +82 -0
  202. package/docs/brand-guide/05-voice-and-tone.md +108 -0
  203. package/docs/brand-guide/06-visual-elements.md +137 -0
  204. package/docs/brand-guide/07-application-examples.md +153 -0
  205. package/docs/brand-guide/OssaLogo/OssA_Logo.svg +21 -0
  206. package/docs/brand-guide/OssaLogo/brand.af +0 -0
  207. package/docs/brand-guide/README.md +107 -0
  208. package/docs/comparison.md +315 -0
  209. package/docs/operations/automation-roadmap.md +245 -0
  210. package/docs/operations/github-sync-strategy.md +357 -0
  211. package/examples/anthropic/claude-assistant.ossa.json +5 -4
  212. package/examples/autogen/multi-agent.ossa.json +6 -4
  213. package/examples/bridges/Dockerfile.production +1 -1
  214. package/examples/crewai/research-team.ossa.json +14 -5
  215. package/examples/cursor/code-review-agent.ossa.json +21 -6
  216. package/examples/enterprise/agent.yml +1 -1
  217. package/examples/getting-started/hello-world-complete.ossa.yaml +2 -2
  218. package/examples/integration-patterns/agent-to-agent-orchestration.ossa.yaml +4 -4
  219. package/examples/langchain/chain-agent.ossa.json +21 -5
  220. package/examples/langflow/workflow-agent.ossa.json +2 -3
  221. package/examples/langgraph/state-machine-agent.ossa.json +2 -3
  222. package/examples/llamaindex/rag-agent.ossa.json +2 -3
  223. package/examples/openai/basic-agent.ossa.yaml +61 -0
  224. package/examples/openai/multi-tool-agent.ossa.json +188 -0
  225. package/examples/openai/swarm-agent.ossa.json +18 -5
  226. package/examples/openapi-extensions/README.md +1 -1
  227. package/examples/quickstart/support-agent.ossa.yaml +1 -1
  228. package/examples/vercel/edge-agent.ossa.json +5 -4
  229. package/infrastructure/gitlab-agent/rbac.yaml +126 -0
  230. package/infrastructure/gitlab-agent/values.yaml +150 -0
  231. package/infrastructure/k8s/monitoring/00-namespace.yaml +7 -0
  232. package/infrastructure/k8s/monitoring/01-prometheus.yaml +142 -0
  233. package/infrastructure/k8s/monitoring/02-grafana.yaml +63 -0
  234. package/infrastructure/k8s/monitoring/03-lightweight.yaml +121 -0
  235. package/infrastructure/k8s/monitoring/README.md +73 -0
  236. package/infrastructure/k8s/monitoring/deploy.sh +38 -0
  237. package/openapi/CHANGELOG.md +21 -0
  238. package/openapi/README.md +46 -0
  239. package/openapi/{ossa-core-api.openapi.yaml → core/ossa-core-api.openapi.yaml} +59 -4
  240. package/openapi/{ossa-registry.openapi.yaml → core/ossa-registry.openapi.yaml} +75 -2
  241. package/openapi/{unified-agent-gateway.openapi.yaml → core/unified-agent-gateway.openapi.yaml} +3 -3
  242. package/openapi/github-sync.yaml +115 -0
  243. package/openapi/reference-implementations/aiflow-bridge-api.openapi.yaml +136 -0
  244. package/openapi/reference-implementations/compliance-agent-api.openapi.yaml +192 -0
  245. package/openapi/reference-implementations/crewai-agent-api.openapi.yaml +149 -0
  246. package/openapi/reference-implementations/critic-agent-api.openapi.yaml +151 -0
  247. package/openapi/reference-implementations/document-analyzer-api.openapi.yaml +217 -0
  248. package/openapi/reference-implementations/getting-started-hello-world-api.openapi.yaml +149 -0
  249. package/openapi/reference-implementations/gitlab-ml-recommender-api.openapi.yaml +151 -0
  250. package/openapi/reference-implementations/governor-agent-api.openapi.yaml +193 -0
  251. package/openapi/reference-implementations/integrator-agent-api.openapi.yaml +165 -0
  252. package/openapi/reference-implementations/judge-agent-api.openapi.yaml +148 -0
  253. package/openapi/reference-implementations/k8s-troubleshooter-api.openapi.yaml +167 -0
  254. package/openapi/reference-implementations/langchain-agent-api.openapi.yaml +171 -0
  255. package/openapi/reference-implementations/monitor-agent-api.openapi.yaml +171 -0
  256. package/openapi/reference-implementations/orchestrator-agent-api.openapi.yaml +242 -0
  257. package/openapi/reference-implementations/quickstart-support-agent-api.openapi.yaml +187 -0
  258. package/openapi/{self-evolving-ecosystem.openapi.yaml → reference-implementations/self-evolving-ecosystem.openapi.yaml} +2 -2
  259. package/openapi/reference-implementations/worker-agent-api.openapi.yaml +208 -0
  260. package/openapi/reference-implementations/workflow-orchestrator-api.openapi.yaml +193 -0
  261. package/package.json +53 -22
  262. package/release.config.js +20 -5
  263. package/scripts/README.md +103 -0
  264. package/scripts/auto-rebase-mrs.ts +106 -0
  265. package/scripts/batch-dependabot.sh +57 -0
  266. package/scripts/bump-version.ts +57 -0
  267. package/scripts/configure-gitlab-branch-protection.ts +95 -0
  268. package/scripts/create-issue-helper.ts +238 -0
  269. package/scripts/create-milestone-issue.ts +73 -0
  270. package/scripts/enhanced-version-manager.ts +257 -0
  271. package/scripts/fix-schema-formats.js +82 -0
  272. package/scripts/gen-types.ts +51 -0
  273. package/scripts/gen-zod.ts +51 -0
  274. package/scripts/generate-agents-catalog.ts +77 -0
  275. package/scripts/generate-api-docs.ts +218 -0
  276. package/scripts/generate-cli-docs.ts +410 -0
  277. package/scripts/generate-config-docs.ts +109 -0
  278. package/scripts/generate-errors-docs.ts +76 -0
  279. package/scripts/generate-examples-docs.ts +99 -0
  280. package/scripts/generate-schema-docs.ts +296 -0
  281. package/scripts/generate-types-docs.ts +48 -0
  282. package/scripts/lib/exec.ts +37 -0
  283. package/scripts/lib/file-ops.ts +58 -0
  284. package/scripts/lib/version.ts +83 -0
  285. package/scripts/lowercase-docs.ts +43 -0
  286. package/scripts/manage-milestone-mrs.ts +279 -0
  287. package/scripts/process-doc-templates.ts +37 -0
  288. package/scripts/rebase-all-mrs.sh +75 -0
  289. package/scripts/schemas/package.schema.ts +75 -0
  290. package/scripts/setup-branch-protection.sh +33 -0
  291. package/scripts/sync-github-pr.sh +48 -0
  292. package/scripts/sync-version.js +40 -0
  293. package/scripts/sync-version.ts +39 -0
  294. package/scripts/sync-versions.ts +488 -0
  295. package/scripts/sync-wiki.sh +50 -0
  296. package/scripts/validate-all.js +127 -0
  297. package/scripts/validate-schema.ts +49 -0
  298. package/spec/v0.2.0/ossa-0.2.0.schema.json +0 -0
  299. package/spec/v0.2.1/ossa-0.2.1.schema.json +555 -0
  300. package/spec/v0.2.3/CHANGELOG.md +7 -7
  301. package/spec/v0.2.3/README.md +9 -9
  302. package/spec/v0.2.3/migrations/v0.2.2-to-v0.2.3.md +18 -18
  303. package/{dist/spec/v0.2.4-dev → spec/v0.2.4}/CHANGELOG.md +8 -8
  304. package/spec/v0.2.4/migrations/v0.2.3-to-v0.2.4.md +599 -0
  305. package/spec/{v0.2.4-dev/ossa-0.2.4-dev.yaml → v0.2.4/ossa-0.2.4.yaml} +1 -1
  306. package/spec/v0.2.5/CHANGELOG.md +401 -0
  307. package/spec/v0.2.5/README.md +72 -0
  308. package/spec/v0.2.5/migrations/v0.2.3-to-v0.2.4.md +599 -0
  309. package/spec/v0.2.5/ossa-0.2.5.schema.json +1696 -0
  310. package/spec/v0.2.5/ossa-0.2.5.yaml +581 -0
  311. package/spec/v0.2.5-RC/CHANGELOG.md +401 -0
  312. package/spec/v0.2.5-RC/README.md +72 -0
  313. package/spec/v0.2.5-RC/migrations/v0.2.3-to-v0.2.4.md +599 -0
  314. package/spec/v0.2.5-RC/ossa-0.2.5-RC.schema.json +1696 -0
  315. package/spec/v0.2.5-RC/ossa-0.2.5-RC.yaml +581 -0
  316. package/spec/v0.2.6/CHANGELOG.md +401 -0
  317. package/spec/v0.2.6/README.md +72 -0
  318. package/spec/v0.2.6/migrations/v0.2.3-to-v0.2.4.md +599 -0
  319. package/spec/v0.2.6/migrations/v0.2.5-RC-to-v0.2.6.md +65 -0
  320. package/spec/v0.2.6/ossa-0.2.6.schema.json +1786 -0
  321. package/spec/v0.2.6/ossa-0.2.6.yaml +581 -0
  322. package/spec/v0.2.6-dev/CHANGELOG.md +164 -0
  323. package/spec/v0.2.6-dev/README.md +75 -0
  324. package/spec/v0.2.6-dev/migrations/v0.2.2-to-v0.2.3.md +343 -0
  325. package/spec/v0.2.6-dev/migrations/v0.2.3-to-v0.2.4.md +599 -0
  326. package/spec/v0.2.6-dev/ossa-0.2.5.schema.json +1696 -0
  327. package/spec/v0.2.6-dev/ossa-0.2.5.yaml +581 -0
  328. package/spec/{v0.2.5-dev/ossa-0.2.5-dev.schema.json → v0.2.6-dev/ossa-0.2.6-dev.schema.json} +323 -359
  329. package/spec/v0.2.6-dev/ossa-0.2.6-dev.yaml +448 -0
  330. package/spec/v0.2.7/core/agentgraph.md +324 -0
  331. package/spec/v0.2.7/resources/agentgraph.yaml +135 -0
  332. package/website/{.lighthouserc.js → .lighthouserc.ts} +5 -1
  333. package/website/DESIGN_SYSTEM_IMPLEMENTATION.md +445 -0
  334. package/website/Dockerfile +18 -5
  335. package/website/app/about/page.tsx +60 -51
  336. package/website/app/blog/[slug]/page.tsx +61 -20
  337. package/website/app/blog/page.tsx +120 -33
  338. package/website/app/design-guide/page.tsx +511 -0
  339. package/website/app/docs/[[...slug]]/page.tsx +641 -143
  340. package/website/app/ecosystem/page.tsx +146 -111
  341. package/website/app/examples/page.tsx +51 -41
  342. package/website/app/globals.scss +370 -0
  343. package/website/app/layout.tsx +2 -2
  344. package/website/app/license/page.tsx +183 -0
  345. package/website/app/not-found.tsx +18 -0
  346. package/website/app/page.tsx +513 -236
  347. package/website/app/page.tsx.bak +679 -0
  348. package/website/app/page.tsx.bak2 +649 -0
  349. package/website/app/playground/page.tsx +25 -45
  350. package/website/app/schema/page.tsx +423 -392
  351. package/website/app/specification/page.tsx +245 -169
  352. package/website/components/Logo.tsx +75 -2
  353. package/website/components/docs/DocsSidebar.tsx +40 -3
  354. package/website/components/docs/MarkdownContent.tsx +265 -47
  355. package/website/components/docs/VersionSelector.tsx +64 -8
  356. package/website/components/examples/ExamplesViewer.tsx +2 -2
  357. package/website/components/layout/Footer.tsx +6 -1
  358. package/website/components/layout/Header.tsx +44 -42
  359. package/website/components/schema/SchemaComponentsAccordion.tsx +84 -0
  360. package/website/components/schema/SchemaExplorer.tsx +4 -4
  361. package/website/components/ui/Badge.tsx +82 -0
  362. package/website/components/ui/Button.tsx +116 -0
  363. package/website/components/ui/Card.tsx +167 -0
  364. package/website/components/ui/Checkbox.tsx +141 -0
  365. package/website/components/ui/Input.tsx +169 -0
  366. package/website/components/ui/Radio.tsx +141 -0
  367. package/website/components/ui/Select.tsx +182 -0
  368. package/website/components/ui/Tag.tsx +158 -0
  369. package/website/components/ui/Textarea.tsx +195 -0
  370. package/website/components/ui/index.ts +11 -0
  371. package/website/content/blog/OpenAPI-AI-Agents-Standard.md +276 -276
  372. package/website/content/blog/Why-Formal-Standards-Matter-Now.md +3 -14
  373. package/website/content/blog/gitlab-kubernetes-agent-ecosystem.md +286 -0
  374. package/website/content/blog/introducing-ossa-framework.md +1 -1
  375. package/website/content/blog/ossa-production-results.md +5 -5
  376. package/website/content/blog/welcome-to-ossa.md +2 -2
  377. package/website/content/blog/why-ai-agents-need-open-standard.md +5 -5
  378. package/website/content/docs/{00-HOME.md → 00-home.md} +18 -25
  379. package/website/content/docs/adapters/openai-adapter.md +693 -0
  380. package/website/content/docs/agents/catalog.md +28 -0
  381. package/website/content/docs/aiflow-framework-integration-with-ossa.md +107 -0
  382. package/website/content/docs/api-reference/index.md +38 -0
  383. package/website/content/docs/api-reference/ossa-core-api.md +634 -0
  384. package/website/content/docs/api-reference/ossa-registry-api.md +515 -0
  385. package/website/content/docs/api-reference/unified-agent-gateway.md +599 -0
  386. package/website/content/docs/architecture/execution-flow.md +3 -3
  387. package/website/content/docs/architecture/multi-agent-systems.md +4 -4
  388. package/website/content/docs/architecture/overview.md +4 -4
  389. package/website/content/docs/architecture/stack-integration.md +4 -4
  390. package/website/content/docs/changelog.md +4 -4
  391. package/website/content/docs/cli-reference/index.md +111 -0
  392. package/website/content/docs/cli-reference/ossa-agents.md +70 -0
  393. package/website/content/docs/cli-reference/ossa-export.md +56 -0
  394. package/website/content/docs/cli-reference/ossa-generate.md +66 -0
  395. package/website/content/docs/cli-reference/ossa-gitlab-agent.md +57 -0
  396. package/website/content/docs/cli-reference/ossa-import.md +56 -0
  397. package/website/content/docs/cli-reference/ossa-init.md +57 -0
  398. package/website/content/docs/cli-reference/ossa-migrate.md +62 -0
  399. package/website/content/docs/cli-reference/ossa-run.md +66 -0
  400. package/website/content/docs/cli-reference/ossa-schema.md +57 -0
  401. package/website/content/docs/cli-reference/ossa-setup.md +57 -0
  402. package/website/content/docs/cli-reference/ossa-validate.md +66 -0
  403. package/website/content/docs/configuration/index.md +97 -0
  404. package/website/content/docs/contributing.md +2 -2
  405. package/website/content/docs/deployment/github-mirroring.md +924 -0
  406. package/website/content/docs/documentation.md +100 -0
  407. package/website/content/docs/ecosystem/framework-support.md +551 -11
  408. package/website/content/docs/errors/index.md +10 -0
  409. package/website/content/docs/{AIFlow-Framework-Integration-with-OSSA.md → examples/aiflow-framework-integration-with-ossa.md} +2 -2
  410. package/website/content/docs/examples/catalog.md +300 -0
  411. package/website/content/docs/for-audiences/{Students-Researchers.md → students-researchers.md} +1 -1
  412. package/website/content/docs/getting-started/index.md +92 -0
  413. package/website/content/docs/getting-started/installation.md +7 -7
  414. package/website/content/docs/getting-started/running-agents.md +215 -13
  415. package/{docs → website/content/docs}/getting-started.md +10 -6
  416. package/website/content/docs/integrations/aiflow.md +2 -2
  417. package/website/content/docs/integrations/drupal.md +2 -2
  418. package/website/content/docs/migration-guides/agent-schema-comparison.md +232 -0
  419. package/website/content/docs/migration-guides/anthropic-mcp-to-ossa.md +5 -5
  420. package/website/content/docs/migration-guides/crewai-to-ossa.md +3 -3
  421. package/website/content/docs/migration-guides/drupal-eca-to-ossa.md +11 -11
  422. package/{docs/migration → website/content/docs/migration-guides}/general-agent-schema.yml +1 -9
  423. package/website/content/docs/migration-guides/index.md +1 -1
  424. package/website/content/docs/migration-guides/langchain-to-ossa.md +17 -17
  425. package/website/content/docs/migration-guides/langflow-to-ossa.md +3 -3
  426. package/website/content/docs/migration-guides/openai-to-ossa.md +10 -10
  427. package/website/content/docs/openapi-extensions/examples.md +9 -9
  428. package/website/content/docs/openapi-extensions/index.md +59 -3
  429. package/website/content/docs/openapi-extensions/operation-extensions.md +61 -2
  430. package/website/content/docs/openapi-extensions/root-extensions.md +49 -3
  431. package/{docs/OSSA-COMPLIANT-BADGE.md → website/content/docs/ossa-compliant-badge.md} +18 -15
  432. package/website/content/docs/pre-release/index.md +10 -10
  433. package/website/content/docs/readme.md +35 -0
  434. package/website/content/docs/releases/v0.2.6.md +99 -0
  435. package/website/content/docs/schema-reference/agent-capabilities.md +50 -0
  436. package/website/content/docs/schema-reference/agent-id.md +52 -0
  437. package/website/content/docs/schema-reference/agent-name.md +50 -0
  438. package/website/content/docs/schema-reference/agent-role.md +54 -0
  439. package/website/content/docs/schema-reference/agent-spec.md +2 -2
  440. package/website/content/docs/schema-reference/agent-version.md +50 -0
  441. package/website/content/docs/schema-reference/autonomy.md +5 -5
  442. package/website/content/docs/schema-reference/constraints.md +5 -5
  443. package/website/content/docs/schema-reference/index.md +26 -157
  444. package/website/content/docs/schema-reference/llm-config.md +1 -1
  445. package/website/content/docs/schema-reference/observability.md +5 -5
  446. package/website/content/docs/schema-reference/ossa-manifest.md +6 -6
  447. package/website/content/docs/schema-reference/taxonomy.md +3 -3
  448. package/website/content/docs/types-reference/index.md +105 -0
  449. package/website/content/docs/use-cases/00-index.md +1 -1
  450. package/{docs/VERSIONING.md → website/content/docs/versioning.md} +9 -5
  451. package/website/dev.sh +53 -0
  452. package/website/docker-compose.dev.yml +36 -0
  453. package/website/lib/version.ts +18 -1
  454. package/website/lib/versions.json +103 -0
  455. package/website/next.config.ts +3 -1
  456. package/website/package-lock.json +552 -18
  457. package/website/package.json +11 -5
  458. package/website/postcss.config.mjs +1 -1
  459. package/website/scripts/fetch-versions.js +166 -0
  460. package/website/scripts/generate-examples-index.js +163 -0
  461. package/website/scripts/merge-docs-to-wiki.ts +207 -0
  462. package/website/scripts/sync-version.js +28 -0
  463. package/website/scripts/sync-wiki.ts +64 -3
  464. package/website/scripts/upload-wiki.ts +199 -0
  465. package/website/styles/_spacing.scss +453 -0
  466. package/website/styles/_tokens.scss +245 -0
  467. package/website/styles/_typography.scss +361 -0
  468. package/website/styles/_variables.scss +287 -0
  469. package/website/tailwind.config.ts +127 -22
  470. package/.releaserc.json.disabled +0 -81
  471. package/dist/spec/v0.2.5-dev/CHANGELOG.md +0 -171
  472. package/dist/spec/v0.2.5-dev/examples/customer-support-graph.ossa.yaml +0 -362
  473. package/dist/spec/v0.2.5-dev/examples/parallel-processors.ossa.yaml +0 -464
  474. package/dist/spec/v0.2.5-dev/examples/research-team.ossa.yaml +0 -440
  475. package/dist/spec/v0.2.5-dev/migrations/v0.2.4-to-v0.2.5.md +0 -317
  476. package/dist/spec/v0.2.5-dev/ossa-0.2.5-dev.yaml +0 -409
  477. package/docs/README.md +0 -31
  478. package/docs/agent-openapi-spec.yml +0 -942
  479. package/docs/openapi-extensions.md +0 -930
  480. package/docs/schemas/openapi-extensions.schema.json +0 -486
  481. package/openapi/gitlab-orchestrator.openapi.yaml +0 -330
  482. package/ossa-website-swarm-tasks.json +0 -105
  483. package/spec/v0.2.5-dev/CHANGELOG.md +0 -171
  484. package/spec/v0.2.5-dev/examples/customer-support-graph.ossa.yaml +0 -362
  485. package/spec/v0.2.5-dev/examples/parallel-processors.ossa.yaml +0 -464
  486. package/spec/v0.2.5-dev/examples/research-team.ossa.yaml +0 -440
  487. package/spec/v0.2.5-dev/migrations/v0.2.4-to-v0.2.5.md +0 -317
  488. package/spec/v0.2.5-dev/ossa-0.2.5-dev.yaml +0 -409
  489. package/website/app/api/validate/route.ts +0 -88
  490. package/website/app/globals.css +0 -108
  491. package/website/content/docs/OpenAPI-Extensions.md +0 -498
  492. package/website/content/docs/core-concepts/project-structure.md +0 -348
  493. package/website/content/docs/examples/Migration-Guides.md +0 -214
  494. package/website/content/docs/examples.md +0 -71
  495. package/website/content/docs/for-audiences/Enterprises.md +0 -256
  496. package/website/content/docs/for-audiences/architects.md +0 -224
  497. package/website/content/docs/for-audiences/developers.md +0 -220
  498. package/website/content/docs/getting-started/5-minute-overview.md +0 -85
  499. package/website/content/docs/getting-started/Hello-World.md +0 -184
  500. package/website/content/docs/getting-started/first-agent.md +0 -196
  501. package/website/content/docs/migration-guides/00-index.md +0 -76
  502. package/website/content/docs/migration-guides/README.md +0 -133
  503. package/website/next.config.js +0 -17
  504. package/website/postcss.config.js +0 -7
  505. package/website/tailwind.config.js +0 -58
  506. /package/dist/spec/{v0.2.4-dev/ossa-0.2.4-dev.schema.json → v0.2.4/ossa-0.2.4.schema.json} +0 -0
  507. /package/openapi/{ossa-registry-api.openapi.yaml → core/ossa-registry-api.openapi.yaml} +0 -0
  508. /package/openapi/{drupal-agent-api.openapi.yaml → reference-implementations/drupal-agent-api.openapi.yaml} +0 -0
  509. /package/openapi/{helm-generator.openapi.yaml → reference-implementations/helm-generator.openapi.yaml} +0 -0
  510. /package/spec/{v0.2.4-dev/ossa-0.2.4-dev.schema.json → v0.2.4/ossa-0.2.4.schema.json} +0 -0
  511. /package/{docs/migration → website/content/docs/migration-guides}/migration-manifest.json +0 -0
@@ -0,0 +1,218 @@
1
+ #!/usr/bin/env tsx
2
+ /**
3
+ * Generate API documentation from OpenAPI specifications
4
+ *
5
+ * Usage: npm run docs:api:generate
6
+ */
7
+
8
+ import { readFileSync, writeFileSync, mkdirSync, readdirSync } from 'fs';
9
+ import { join, basename } from 'path';
10
+ import yaml from 'js-yaml';
11
+
12
+ interface OpenAPISpec {
13
+ openapi: string;
14
+ info: {
15
+ title: string;
16
+ version: string;
17
+ description?: string;
18
+ };
19
+ servers?: Array<{ url: string; description?: string }>;
20
+ paths: Record<string, Record<string, any>>;
21
+ components?: {
22
+ schemas?: Record<string, any>;
23
+ securitySchemes?: Record<string, any>;
24
+ };
25
+ }
26
+
27
+ const OPENAPI_DIR = join(process.cwd(), 'openapi');
28
+ const OUTPUT_DIR = join(process.cwd(), 'website/content/docs/api-reference');
29
+
30
+ function generateEndpointDoc(path: string, method: string, operation: any): string {
31
+ const methodUpper = method.toUpperCase();
32
+ let doc = `### ${operation.summary || `${methodUpper} ${path}`}\n\n`;
33
+
34
+ doc += '```http\n';
35
+ doc += `${methodUpper} ${path}\n`;
36
+ doc += '```\n\n';
37
+
38
+ if (operation.description) {
39
+ doc += `**Description**: ${operation.description}\n\n`;
40
+ }
41
+
42
+ // Parameters
43
+ if (operation.parameters && operation.parameters.length > 0) {
44
+ doc += '**Parameters**:\n\n';
45
+ for (const param of operation.parameters) {
46
+ const required = param.required ? ', required' : '';
47
+ doc += `- \`${param.name}\` (${param.in}${required}) - ${param.description || 'No description'}\n`;
48
+ }
49
+ doc += '\n';
50
+ }
51
+
52
+ // Request body
53
+ if (operation.requestBody) {
54
+ doc += '**Request Body**:\n\n';
55
+ const content = operation.requestBody.content;
56
+ if (content && content['application/json']) {
57
+ doc += '```json\n';
58
+ doc += JSON.stringify(content['application/json'].example || {}, null, 2);
59
+ doc += '\n```\n\n';
60
+ }
61
+ }
62
+
63
+ // Responses
64
+ if (operation.responses) {
65
+ doc += '**Responses**:\n\n';
66
+ for (const [code, response] of Object.entries(operation.responses)) {
67
+ doc += `**${code}**: ${(response as any).description}\n\n`;
68
+ const content = (response as any).content;
69
+ if (content && content['application/json']) {
70
+ doc += '```json\n';
71
+ doc += JSON.stringify(content['application/json'].example || {}, null, 2);
72
+ doc += '\n```\n\n';
73
+ }
74
+ }
75
+ }
76
+
77
+ // Example
78
+ doc += '**Example**:\n\n';
79
+ doc += '```bash\n';
80
+ doc += `curl -X ${methodUpper} "https://api.ossa.dev${path}" \\\n`;
81
+ doc += ' -H "Authorization: Bearer YOUR_TOKEN"';
82
+ if (operation.requestBody) {
83
+ doc += ' \\\n -H "Content-Type: application/json" \\\n -d @request.json';
84
+ }
85
+ doc += '\n```\n\n';
86
+
87
+ return doc;
88
+ }
89
+
90
+ function generateAPIDoc(spec: OpenAPISpec, filename: string): string {
91
+ const apiName = spec.info.title;
92
+ const apiVersion = spec.info.version;
93
+
94
+ let doc = `# ${apiName}\n\n`;
95
+ doc += `**Version**: ${apiVersion}\n\n`;
96
+
97
+ if (spec.info.description) {
98
+ doc += `${spec.info.description}\n\n`;
99
+ }
100
+
101
+ doc += '## Base URL\n\n';
102
+ if (spec.servers && spec.servers.length > 0) {
103
+ for (const server of spec.servers) {
104
+ doc += `- \`${server.url}\``;
105
+ if (server.description) {
106
+ doc += ` - ${server.description}`;
107
+ }
108
+ doc += '\n';
109
+ }
110
+ } else {
111
+ doc += '`https://api.ossa.dev`\n';
112
+ }
113
+ doc += '\n';
114
+
115
+ // Authentication
116
+ if (spec.components?.securitySchemes) {
117
+ doc += '## Authentication\n\n';
118
+ doc += 'This API requires authentication. See [Authentication Guide](../authentication.md) for details.\n\n';
119
+ }
120
+
121
+ // Endpoints
122
+ doc += '## Endpoints\n\n';
123
+
124
+ for (const [path, methods] of Object.entries(spec.paths)) {
125
+ for (const [method, operation] of Object.entries(methods)) {
126
+ if (['get', 'post', 'put', 'patch', 'delete'].includes(method)) {
127
+ doc += generateEndpointDoc(path, method, operation);
128
+ }
129
+ }
130
+ }
131
+
132
+ // Related documentation
133
+ doc += '## Related Documentation\n\n';
134
+ doc += '- [CLI Reference](../cli-reference/index.md)\n';
135
+ doc += '- [Schema Reference](../schema-reference/index.md)\n';
136
+ doc += '- [Authentication Guide](../authentication.md)\n';
137
+
138
+ return doc;
139
+ }
140
+
141
+ function main() {
142
+ console.log('šŸš€ Generating API documentation...\n');
143
+
144
+ // Create output directory
145
+ mkdirSync(OUTPUT_DIR, { recursive: true });
146
+
147
+ // Process core APIs
148
+ const coreDir = join(OPENAPI_DIR, 'core');
149
+ const coreFiles = readdirSync(coreDir).filter(f => f.endsWith('.yaml'));
150
+
151
+ console.log(`šŸ“ Processing ${coreFiles.length} core API specs...\n`);
152
+
153
+ for (const file of coreFiles) {
154
+ try {
155
+ const specPath = join(coreDir, file);
156
+ const specContent = readFileSync(specPath, 'utf-8');
157
+ const spec = yaml.load(specContent) as OpenAPISpec;
158
+
159
+ const docContent = generateAPIDoc(spec, file);
160
+ const outputFile = join(OUTPUT_DIR, file.replace('.openapi.yaml', '.md'));
161
+
162
+ writeFileSync(outputFile, docContent);
163
+ console.log(`āœ… Generated: ${basename(outputFile)}`);
164
+ } catch (error) {
165
+ console.log(`āš ļø Skipped: ${file} (${(error as Error).message})`);
166
+ }
167
+ }
168
+
169
+ // Generate index
170
+ const indexContent = `# API Reference
171
+
172
+ Welcome to the OSSA API Reference documentation.
173
+
174
+ ## Core APIs
175
+
176
+ ${coreFiles.map(f => {
177
+ const name = f.replace('.openapi.yaml', '').replace(/-/g, ' ').replace(/\b\w/g, l => l.toUpperCase());
178
+ const link = f.replace('.openapi.yaml', '.md');
179
+ return `- [${name}](${link})`;
180
+ }).join('\n')}
181
+
182
+ ## Authentication
183
+
184
+ All API endpoints require authentication. See the [Authentication Guide](./authentication.md) for details.
185
+
186
+ ## Rate Limiting
187
+
188
+ - 100 requests per minute per API key
189
+ - 1000 requests per hour per API key
190
+
191
+ ## Error Responses
192
+
193
+ All APIs use standard HTTP status codes and return errors in the following format:
194
+
195
+ \`\`\`json
196
+ {
197
+ "error": "error_code",
198
+ "message": "Human-readable error message",
199
+ "details": []
200
+ }
201
+ \`\`\`
202
+
203
+ ## Support
204
+
205
+ For API support, please:
206
+ - Check the [Troubleshooting Guide](../guides/troubleshooting.md)
207
+ - Open an issue on [GitLab](https://gitlab.com/blueflyio/openstandardagents/-/issues)
208
+ - Join our [Discord community](https://discord.gg/ossa)
209
+ `;
210
+
211
+ writeFileSync(join(OUTPUT_DIR, 'index.md'), indexContent);
212
+ console.log(`āœ… Generated: index.md`);
213
+
214
+ console.log(`\n✨ API documentation generated successfully!`);
215
+ console.log(`šŸ“‚ Output: ${OUTPUT_DIR}`);
216
+ }
217
+
218
+ main();
@@ -0,0 +1,410 @@
1
+ #!/usr/bin/env tsx
2
+ /**
3
+ * Generate CLI documentation from command source files
4
+ *
5
+ * Usage: npm run docs:cli:generate
6
+ */
7
+
8
+ import { readFileSync, writeFileSync, mkdirSync, readdirSync } from 'fs';
9
+ import { join, basename } from 'path';
10
+
11
+ interface CommandInfo {
12
+ name: string;
13
+ description: string;
14
+ arguments: Array<{ name: string; description: string; required: boolean }>;
15
+ options: Array<{ flag: string; description: string; default?: string }>;
16
+ examples: string[];
17
+ apiEndpoint?: string;
18
+ }
19
+
20
+ const CLI_DIR = join(process.cwd(), 'src/cli/commands');
21
+ const OUTPUT_DIR = join(process.cwd(), 'website/content/docs/cli-reference');
22
+
23
+ // Command metadata (extracted from source or defined here)
24
+ const COMMANDS: Record<string, CommandInfo> = {
25
+ validate: {
26
+ name: 'validate',
27
+ description: 'Validate OSSA agent manifests against the schema',
28
+ arguments: [
29
+ { name: 'path', description: 'Path to agent manifest file or directory', required: true }
30
+ ],
31
+ options: [
32
+ { flag: '--version <version>', description: 'Specify OSSA version', default: 'latest' },
33
+ { flag: '--strict', description: 'Enable strict validation mode' },
34
+ { flag: '--format <format>', description: 'Output format: json, yaml, table', default: 'table' },
35
+ { flag: '--verbose', description: 'Show detailed validation errors' }
36
+ ],
37
+ examples: [
38
+ 'ossa validate agent.ossa.yaml',
39
+ 'ossa validate ./agents/',
40
+ 'ossa validate agent.ossa.yaml --strict',
41
+ 'ossa validate agent.ossa.yaml --format json'
42
+ ],
43
+ apiEndpoint: 'POST /api/v1/validate'
44
+ },
45
+ generate: {
46
+ name: 'generate',
47
+ description: 'Generate OSSA agent manifests from templates',
48
+ arguments: [
49
+ { name: 'type', description: 'Agent type: worker, orchestrator, compliance, chat', required: true }
50
+ ],
51
+ options: [
52
+ { flag: '--name <name>', description: 'Agent name', default: 'My Agent' },
53
+ { flag: '--id <id>', description: 'Agent ID (DNS-1123 format)' },
54
+ { flag: '--output <path>', description: 'Output file path', default: 'agent.ossa.yaml' },
55
+ { flag: '--interactive', description: 'Interactive mode with prompts' }
56
+ ],
57
+ examples: [
58
+ 'ossa generate worker --name "Data Processor"',
59
+ 'ossa generate orchestrator --id my-orchestrator',
60
+ 'ossa generate compliance --interactive',
61
+ 'ossa generate chat --output chat-agent.yaml'
62
+ ],
63
+ apiEndpoint: 'POST /api/v1/agents/generate'
64
+ },
65
+ migrate: {
66
+ name: 'migrate',
67
+ description: 'Migrate agent manifests between OSSA versions',
68
+ arguments: [
69
+ { name: 'source', description: 'Source manifest file', required: true }
70
+ ],
71
+ options: [
72
+ { flag: '--from <version>', description: 'Source OSSA version' },
73
+ { flag: '--to <version>', description: 'Target OSSA version', default: 'latest' },
74
+ { flag: '--output <path>', description: 'Output file path' },
75
+ { flag: '--dry-run', description: 'Show changes without writing' }
76
+ ],
77
+ examples: [
78
+ 'ossa migrate agent.yaml --from 0.2.4 --to 0.2.5',
79
+ 'ossa migrate agent.yaml --dry-run',
80
+ 'ossa migrate agent.yaml --output migrated-agent.yaml'
81
+ ],
82
+ apiEndpoint: 'POST /api/v1/migrate'
83
+ },
84
+ run: {
85
+ name: 'run',
86
+ description: 'Run an OSSA agent locally',
87
+ arguments: [
88
+ { name: 'manifest', description: 'Path to agent manifest', required: true }
89
+ ],
90
+ options: [
91
+ { flag: '--env <file>', description: 'Environment variables file' },
92
+ { flag: '--port <port>', description: 'Port to run on', default: '3000' },
93
+ { flag: '--watch', description: 'Watch for changes and reload' },
94
+ { flag: '--debug', description: 'Enable debug logging' }
95
+ ],
96
+ examples: [
97
+ 'ossa run agent.ossa.yaml',
98
+ 'ossa run agent.ossa.yaml --port 8080',
99
+ 'ossa run agent.ossa.yaml --watch --debug',
100
+ 'ossa run agent.ossa.yaml --env .env.local'
101
+ ],
102
+ apiEndpoint: 'POST /api/v1/agents/{id}/execute'
103
+ },
104
+ init: {
105
+ name: 'init',
106
+ description: 'Initialize a new OSSA project',
107
+ arguments: [],
108
+ options: [
109
+ { flag: '--name <name>', description: 'Project name' },
110
+ { flag: '--template <template>', description: 'Project template: minimal, full, enterprise' },
111
+ { flag: '--typescript', description: 'Use TypeScript' },
112
+ { flag: '--git', description: 'Initialize git repository' }
113
+ ],
114
+ examples: [
115
+ 'ossa init',
116
+ 'ossa init --name my-agent-project',
117
+ 'ossa init --template enterprise --typescript',
118
+ 'ossa init --git'
119
+ ]
120
+ },
121
+ setup: {
122
+ name: 'setup',
123
+ description: 'Set up OSSA development environment',
124
+ arguments: [],
125
+ options: [
126
+ { flag: '--gitlab', description: 'Configure GitLab integration' },
127
+ { flag: '--kubernetes', description: 'Configure Kubernetes deployment' },
128
+ { flag: '--registry <url>', description: 'Configure agent registry' },
129
+ { flag: '--interactive', description: 'Interactive setup wizard' }
130
+ ],
131
+ examples: [
132
+ 'ossa setup --interactive',
133
+ 'ossa setup --gitlab',
134
+ 'ossa setup --kubernetes',
135
+ 'ossa setup --registry https://registry.ossa.dev'
136
+ ]
137
+ },
138
+ export: {
139
+ name: 'export',
140
+ description: 'Export agent manifest to different formats',
141
+ arguments: [
142
+ { name: 'manifest', description: 'Path to agent manifest', required: true }
143
+ ],
144
+ options: [
145
+ { flag: '--format <format>', description: 'Export format: json, yaml, openapi, k8s', default: 'json' },
146
+ { flag: '--output <path>', description: 'Output file path' },
147
+ { flag: '--pretty', description: 'Pretty print output' }
148
+ ],
149
+ examples: [
150
+ 'ossa export agent.ossa.yaml --format json',
151
+ 'ossa export agent.ossa.yaml --format k8s --output deployment.yaml',
152
+ 'ossa export agent.ossa.yaml --format openapi --pretty'
153
+ ]
154
+ },
155
+ import: {
156
+ name: 'import',
157
+ description: 'Import agents from other frameworks',
158
+ arguments: [
159
+ { name: 'source', description: 'Source file or URL', required: true }
160
+ ],
161
+ options: [
162
+ { flag: '--from <framework>', description: 'Source framework: langchain, crewai, openai, mcp' },
163
+ { flag: '--output <path>', description: 'Output file path', default: 'agent.ossa.yaml' },
164
+ { flag: '--validate', description: 'Validate after import' }
165
+ ],
166
+ examples: [
167
+ 'ossa import langchain-agent.py --from langchain',
168
+ 'ossa import crew.yaml --from crewai --validate',
169
+ 'ossa import https://example.com/agent.json --from openai'
170
+ ]
171
+ },
172
+ schema: {
173
+ name: 'schema',
174
+ description: 'View and manage OSSA schemas',
175
+ arguments: [],
176
+ options: [
177
+ { flag: '--version <version>', description: 'Schema version', default: 'latest' },
178
+ { flag: '--format <format>', description: 'Output format: json, yaml', default: 'yaml' },
179
+ { flag: '--field <field>', description: 'Show specific field documentation' },
180
+ { flag: '--list', description: 'List available schema versions' }
181
+ ],
182
+ examples: [
183
+ 'ossa schema',
184
+ 'ossa schema --version 0.2.5',
185
+ 'ossa schema --field agent.id',
186
+ 'ossa schema --list'
187
+ ]
188
+ },
189
+ 'gitlab-agent': {
190
+ name: 'gitlab-agent',
191
+ description: 'Manage GitLab agent integration',
192
+ arguments: [],
193
+ options: [
194
+ { flag: '--configure', description: 'Configure GitLab agent' },
195
+ { flag: '--deploy', description: 'Deploy agent to GitLab' },
196
+ { flag: '--status', description: 'Check agent status' },
197
+ { flag: '--logs', description: 'View agent logs' }
198
+ ],
199
+ examples: [
200
+ 'ossa gitlab-agent --configure',
201
+ 'ossa gitlab-agent --deploy',
202
+ 'ossa gitlab-agent --status',
203
+ 'ossa gitlab-agent --logs'
204
+ ]
205
+ },
206
+ agents: {
207
+ name: 'agents',
208
+ description: 'Manage OSSA agents',
209
+ arguments: [
210
+ { name: 'action', description: 'Action: list, get, create, update, delete', required: true }
211
+ ],
212
+ options: [
213
+ { flag: '--id <id>', description: 'Agent ID' },
214
+ { flag: '--role <role>', description: 'Filter by role' },
215
+ { flag: '--status <status>', description: 'Filter by status' },
216
+ { flag: '--format <format>', description: 'Output format: json, yaml, table', default: 'table' }
217
+ ],
218
+ examples: [
219
+ 'ossa agents list',
220
+ 'ossa agents list --role worker',
221
+ 'ossa agents get --id my-agent',
222
+ 'ossa agents create agent.ossa.yaml',
223
+ 'ossa agents delete --id my-agent'
224
+ ],
225
+ apiEndpoint: 'GET /api/v1/agents'
226
+ }
227
+ };
228
+
229
+ function generateCommandDoc(cmd: CommandInfo): string {
230
+ let doc = `# ossa ${cmd.name}\n\n`;
231
+ doc += `**Purpose**: ${cmd.description}\n\n`;
232
+
233
+ // Synopsis
234
+ doc += '## Synopsis\n\n';
235
+ doc += '```bash\n';
236
+ doc += `ossa ${cmd.name}`;
237
+ if (cmd.arguments.length > 0) {
238
+ for (const arg of cmd.arguments) {
239
+ doc += arg.required ? ` <${arg.name}>` : ` [${arg.name}]`;
240
+ }
241
+ }
242
+ doc += ' [options]\n';
243
+ doc += '```\n\n';
244
+
245
+ // Description
246
+ doc += '## Description\n\n';
247
+ doc += `${cmd.description}\n\n`;
248
+
249
+ // Arguments
250
+ if (cmd.arguments.length > 0) {
251
+ doc += '## Arguments\n\n';
252
+ for (const arg of cmd.arguments) {
253
+ const required = arg.required ? ' (required)' : ' (optional)';
254
+ doc += `- \`<${arg.name}>\`${required} - ${arg.description}\n`;
255
+ }
256
+ doc += '\n';
257
+ }
258
+
259
+ // Options
260
+ if (cmd.options.length > 0) {
261
+ doc += '## Options\n\n';
262
+ for (const opt of cmd.options) {
263
+ doc += `- \`${opt.flag}\` - ${opt.description}`;
264
+ if (opt.default) {
265
+ doc += ` (default: ${opt.default})`;
266
+ }
267
+ doc += '\n';
268
+ }
269
+ doc += '\n';
270
+ }
271
+
272
+ // Examples
273
+ if (cmd.examples.length > 0) {
274
+ doc += '## Examples\n\n';
275
+ for (const example of cmd.examples) {
276
+ doc += '```bash\n';
277
+ doc += example + '\n';
278
+ doc += '```\n\n';
279
+ }
280
+ }
281
+
282
+ // API endpoint connection
283
+ if (cmd.apiEndpoint) {
284
+ doc += '## API Endpoint Connection\n\n';
285
+ doc += `This command uses the following API endpoint:\n`;
286
+ doc += `- \`${cmd.apiEndpoint}\` - [API Reference](../api-reference/index.md)\n\n`;
287
+ }
288
+
289
+ // Exit codes
290
+ doc += '## Exit Codes\n\n';
291
+ doc += '- `0` - Success\n';
292
+ doc += '- `1` - General error\n';
293
+ doc += '- `2` - Invalid arguments\n';
294
+ doc += '- `3` - File not found\n\n';
295
+
296
+ // Related commands
297
+ doc += '## Related Commands\n\n';
298
+ const relatedCommands = Object.keys(COMMANDS).filter(c => c !== cmd.name).slice(0, 3);
299
+ for (const related of relatedCommands) {
300
+ doc += `- [ossa ${related}](./ossa-${related}.md)\n`;
301
+ }
302
+ doc += '\n';
303
+
304
+ // Related documentation
305
+ doc += '## Related Documentation\n\n';
306
+ doc += '- [API Reference](../api-reference/index.md)\n';
307
+ doc += '- [Schema Reference](../schema-reference/index.md)\n';
308
+ doc += '- [Getting Started](../getting-started/index.md)\n';
309
+
310
+ return doc;
311
+ }
312
+
313
+ function main() {
314
+ console.log('šŸš€ Generating CLI documentation...\n');
315
+
316
+ // Create output directory
317
+ mkdirSync(OUTPUT_DIR, { recursive: true });
318
+
319
+ console.log(`šŸ“ Processing ${Object.keys(COMMANDS).length} CLI commands...\n`);
320
+
321
+ // Generate documentation for each command
322
+ for (const [name, cmd] of Object.entries(COMMANDS)) {
323
+ const docContent = generateCommandDoc(cmd);
324
+ const outputFile = join(OUTPUT_DIR, `ossa-${name}.md`);
325
+
326
+ writeFileSync(outputFile, docContent);
327
+ console.log(`āœ… Generated: ossa-${name}.md`);
328
+ }
329
+
330
+ // Generate index
331
+ const indexContent = `# CLI Reference
332
+
333
+ The OSSA CLI provides commands for managing AI agents throughout their lifecycle.
334
+
335
+ ## Installation
336
+
337
+ \`\`\`bash
338
+ npm install -g @bluefly/openstandardagents
339
+ \`\`\`
340
+
341
+ ## Quick Start
342
+
343
+ \`\`\`bash
344
+ # Validate an agent manifest
345
+ ossa validate agent.ossa.yaml
346
+
347
+ # Generate a new agent
348
+ ossa generate worker --name "My Agent"
349
+
350
+ # Run an agent locally
351
+ ossa run agent.ossa.yaml
352
+ \`\`\`
353
+
354
+ ## Commands
355
+
356
+ ${Object.entries(COMMANDS).map(([name, cmd]) => {
357
+ return `### [ossa ${name}](./ossa-${name}.md)\n\n${cmd.description}\n`;
358
+ }).join('\n')}
359
+
360
+ ## Global Options
361
+
362
+ - \`--help\` - Show help for any command
363
+ - \`--version\` - Show OSSA CLI version
364
+ - \`--config <path>\` - Path to config file
365
+ - \`--verbose\` - Enable verbose logging
366
+ - \`--quiet\` - Suppress output
367
+
368
+ ## Configuration
369
+
370
+ The OSSA CLI can be configured via:
371
+
372
+ 1. **Config file**: \`.ossarc.json\` or \`.ossarc.yaml\`
373
+ 2. **Environment variables**: \`OSSA_*\`
374
+ 3. **Command-line flags**
375
+
376
+ Example \`.ossarc.json\`:
377
+
378
+ \`\`\`json
379
+ {
380
+ "registry": "https://registry.ossa.dev",
381
+ "defaultVersion": "0.2.5-RC",
382
+ "validation": {
383
+ "strict": true
384
+ }
385
+ }
386
+ \`\`\`
387
+
388
+ ## Environment Variables
389
+
390
+ - \`OSSA_REGISTRY\` - Agent registry URL
391
+ - \`OSSA_API_KEY\` - API authentication key
392
+ - \`OSSA_VERSION\` - Default OSSA version
393
+ - \`OSSA_DEBUG\` - Enable debug mode
394
+
395
+ ## Related Documentation
396
+
397
+ - [API Reference](../api-reference/index.md)
398
+ - [Schema Reference](../schema-reference/index.md)
399
+ - [Getting Started](../getting-started/index.md)
400
+ - [Guides](../guides/index.md)
401
+ `;
402
+
403
+ writeFileSync(join(OUTPUT_DIR, 'index.md'), indexContent);
404
+ console.log(`āœ… Generated: index.md`);
405
+
406
+ console.log(`\n✨ CLI documentation generated successfully!`);
407
+ console.log(`šŸ“‚ Output: ${OUTPUT_DIR}`);
408
+ }
409
+
410
+ main();