@bluefly/openstandardagents 0.2.4

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 (371) hide show
  1. package/.env.example +41 -0
  2. package/.eslintrc.cjs +43 -0
  3. package/.github/PULL_REQUEST_TEMPLATE.md +39 -0
  4. package/.github/dependabot.yml +58 -0
  5. package/.github/workflows/ci.yml +154 -0
  6. package/.github/workflows/codeql.yml +41 -0
  7. package/.github/workflows/dependabot-auto-merge.yml +28 -0
  8. package/.github/workflows/release.yml +103 -0
  9. package/.prettierignore +7 -0
  10. package/.prettierrc.json +10 -0
  11. package/.redocly.yaml +9 -0
  12. package/.releaserc.json +84 -0
  13. package/.releaserc.json.disabled +81 -0
  14. package/CHANGELOG.md +152 -0
  15. package/CONTRIBUTING.md +249 -0
  16. package/LICENSE +190 -0
  17. package/README.md +280 -0
  18. package/bin/ossa +8 -0
  19. package/bin/validate-ossa-0.2.2.ts +244 -0
  20. package/dist/di-container.d.ts +18 -0
  21. package/dist/di-container.d.ts.map +1 -0
  22. package/dist/di-container.js +43 -0
  23. package/dist/di-container.js.map +1 -0
  24. package/dist/index.d.ts +13 -0
  25. package/dist/index.d.ts.map +1 -0
  26. package/dist/index.js +17 -0
  27. package/dist/index.js.map +1 -0
  28. package/dist/repositories/manifest.repository.d.ts +26 -0
  29. package/dist/repositories/manifest.repository.d.ts.map +1 -0
  30. package/dist/repositories/manifest.repository.js +90 -0
  31. package/dist/repositories/manifest.repository.js.map +1 -0
  32. package/dist/repositories/schema.repository.d.ts +30 -0
  33. package/dist/repositories/schema.repository.d.ts.map +1 -0
  34. package/dist/repositories/schema.repository.js +143 -0
  35. package/dist/repositories/schema.repository.js.map +1 -0
  36. package/dist/services/generation.service.d.ts +54 -0
  37. package/dist/services/generation.service.d.ts.map +1 -0
  38. package/dist/services/generation.service.js +298 -0
  39. package/dist/services/generation.service.js.map +1 -0
  40. package/dist/services/migration.service.d.ts +30 -0
  41. package/dist/services/migration.service.d.ts.map +1 -0
  42. package/dist/services/migration.service.js +231 -0
  43. package/dist/services/migration.service.js.map +1 -0
  44. package/dist/services/runtime/openai.adapter.d.ts +94 -0
  45. package/dist/services/runtime/openai.adapter.d.ts.map +1 -0
  46. package/dist/services/runtime/openai.adapter.js +209 -0
  47. package/dist/services/runtime/openai.adapter.js.map +1 -0
  48. package/dist/services/validation.service.d.ts +45 -0
  49. package/dist/services/validation.service.d.ts.map +1 -0
  50. package/dist/services/validation.service.js +362 -0
  51. package/dist/services/validation.service.js.map +1 -0
  52. package/dist/services/validators/anthropic.validator.d.ts +9 -0
  53. package/dist/services/validators/anthropic.validator.d.ts.map +1 -0
  54. package/dist/services/validators/anthropic.validator.js +105 -0
  55. package/dist/services/validators/anthropic.validator.js.map +1 -0
  56. package/dist/services/validators/autogen.validator.d.ts +9 -0
  57. package/dist/services/validators/autogen.validator.d.ts.map +1 -0
  58. package/dist/services/validators/autogen.validator.js +111 -0
  59. package/dist/services/validators/autogen.validator.js.map +1 -0
  60. package/dist/services/validators/crewai.validator.d.ts +9 -0
  61. package/dist/services/validators/crewai.validator.d.ts.map +1 -0
  62. package/dist/services/validators/crewai.validator.js +117 -0
  63. package/dist/services/validators/crewai.validator.js.map +1 -0
  64. package/dist/services/validators/cursor.validator.d.ts +9 -0
  65. package/dist/services/validators/cursor.validator.d.ts.map +1 -0
  66. package/dist/services/validators/cursor.validator.js +88 -0
  67. package/dist/services/validators/cursor.validator.js.map +1 -0
  68. package/dist/services/validators/index.d.ts +15 -0
  69. package/dist/services/validators/index.d.ts.map +1 -0
  70. package/dist/services/validators/index.js +15 -0
  71. package/dist/services/validators/index.js.map +1 -0
  72. package/dist/services/validators/langchain.validator.d.ts +9 -0
  73. package/dist/services/validators/langchain.validator.d.ts.map +1 -0
  74. package/dist/services/validators/langchain.validator.js +103 -0
  75. package/dist/services/validators/langchain.validator.js.map +1 -0
  76. package/dist/services/validators/langflow.validator.d.ts +9 -0
  77. package/dist/services/validators/langflow.validator.d.ts.map +1 -0
  78. package/dist/services/validators/langflow.validator.js +92 -0
  79. package/dist/services/validators/langflow.validator.js.map +1 -0
  80. package/dist/services/validators/langgraph.validator.d.ts +9 -0
  81. package/dist/services/validators/langgraph.validator.d.ts.map +1 -0
  82. package/dist/services/validators/langgraph.validator.js +123 -0
  83. package/dist/services/validators/langgraph.validator.js.map +1 -0
  84. package/dist/services/validators/llamaindex.validator.d.ts +9 -0
  85. package/dist/services/validators/llamaindex.validator.d.ts.map +1 -0
  86. package/dist/services/validators/llamaindex.validator.js +121 -0
  87. package/dist/services/validators/llamaindex.validator.js.map +1 -0
  88. package/dist/services/validators/openai.validator.d.ts +9 -0
  89. package/dist/services/validators/openai.validator.d.ts.map +1 -0
  90. package/dist/services/validators/openai.validator.js +126 -0
  91. package/dist/services/validators/openai.validator.js.map +1 -0
  92. package/dist/services/validators/vercel-ai.validator.d.ts +9 -0
  93. package/dist/services/validators/vercel-ai.validator.d.ts.map +1 -0
  94. package/dist/services/validators/vercel-ai.validator.js +99 -0
  95. package/dist/services/validators/vercel-ai.validator.js.map +1 -0
  96. package/dist/spec/v0.1.9/agent-autonomous-extensions.json +234 -0
  97. package/dist/spec/v0.1.9/ecosystem-compliance.json +235 -0
  98. package/dist/spec/v0.1.9/ossa-v0.1.9.schema.json +695 -0
  99. package/dist/spec/v0.1.9/ossa-v0.1.9.schema.json.backup +695 -0
  100. package/dist/spec/v0.1.9/reasoning-compliance.json +654 -0
  101. package/dist/spec/v0.2.2/kagent-enhancements.json +395 -0
  102. package/dist/spec/v0.2.2/ossa-0.2.2.schema.json +906 -0
  103. package/dist/spec/v0.2.2/ossa-0.2.2.yaml +448 -0
  104. package/dist/spec/v0.2.2/ossa-reasoning-compliance-1.0.schema.json +424 -0
  105. package/dist/spec/v0.2.3/CHANGELOG.md +176 -0
  106. package/dist/spec/v0.2.3/README.md +154 -0
  107. package/dist/spec/v0.2.3/migrations/v0.2.2-to-v0.2.3.md +343 -0
  108. package/dist/spec/v0.2.3/ossa-0.2.3.schema.json +1397 -0
  109. package/dist/spec/v0.2.3/ossa-0.2.3.yaml +448 -0
  110. package/dist/spec/v0.2.4-dev/CHANGELOG.md +403 -0
  111. package/dist/spec/v0.2.4-dev/migrations/v0.2.3-to-v0.2.4.md +599 -0
  112. package/dist/spec/v0.2.4-dev/ossa-0.2.4-dev.schema.json +1696 -0
  113. package/dist/spec/v0.2.4-dev/ossa-0.2.4-dev.yaml +581 -0
  114. package/dist/spec/v0.2.5-dev/CHANGELOG.md +171 -0
  115. package/dist/spec/v0.2.5-dev/examples/customer-support-graph.ossa.yaml +362 -0
  116. package/dist/spec/v0.2.5-dev/examples/parallel-processors.ossa.yaml +464 -0
  117. package/dist/spec/v0.2.5-dev/examples/research-team.ossa.yaml +440 -0
  118. package/dist/spec/v0.2.5-dev/migrations/v0.2.4-to-v0.2.5.md +317 -0
  119. package/dist/spec/v0.2.5-dev/ossa-0.2.5-dev.schema.json +1732 -0
  120. package/dist/spec/v0.2.5-dev/ossa-0.2.5-dev.yaml +409 -0
  121. package/dist/types/index.d.ts +178 -0
  122. package/dist/types/index.d.ts.map +1 -0
  123. package/dist/types/index.js +6 -0
  124. package/dist/types/index.js.map +1 -0
  125. package/dist/types/openapi-extensions.d.ts +164 -0
  126. package/dist/types/openapi-extensions.d.ts.map +1 -0
  127. package/dist/types/openapi-extensions.js +6 -0
  128. package/dist/types/openapi-extensions.js.map +1 -0
  129. package/docs/OSSA-COMPLIANT-BADGE.md +248 -0
  130. package/docs/README.md +31 -0
  131. package/docs/VERSIONING.md +284 -0
  132. package/docs/agent-openapi-spec.yml +942 -0
  133. package/docs/getting-started.md +87 -0
  134. package/docs/migration/general-agent-schema.yml +255 -0
  135. package/docs/migration/migration-manifest.json +64 -0
  136. package/docs/openapi-extensions.md +930 -0
  137. package/docs/schemas/openapi-extensions.schema.json +486 -0
  138. package/examples/adk-integration/code-review-workflow.yml +136 -0
  139. package/examples/adk-integration/customer-support.yml +263 -0
  140. package/examples/adk-integration/data-pipeline.yml +173 -0
  141. package/examples/advanced/patterns/compliance-context-production.json +53 -0
  142. package/examples/advanced/patterns/model-router.ts +274 -0
  143. package/examples/advanced/patterns/smart-model-routing.ts +248 -0
  144. package/examples/advanced/workflows/hybrid-model-strategy.yaml +232 -0
  145. package/examples/agent-manifests/critics/critic-agent.yaml +149 -0
  146. package/examples/agent-manifests/governors/governor-agent.yaml +128 -0
  147. package/examples/agent-manifests/integrators/integrator-agent.yaml +103 -0
  148. package/examples/agent-manifests/judges/judge-agent.yaml +153 -0
  149. package/examples/agent-manifests/monitors/monitor-agent.yaml +122 -0
  150. package/examples/agent-manifests/orchestrators/orchestrator-agent.yaml +247 -0
  151. package/examples/agent-manifests/sample-compliant-agent.yaml +147 -0
  152. package/examples/agent-manifests/workers/worker-agent.yaml +82 -0
  153. package/examples/anthropic/claude-assistant.ossa.json +45 -0
  154. package/examples/architecture/model-configuration/ollama-integration.ts +110 -0
  155. package/examples/autogen/multi-agent.ossa.json +37 -0
  156. package/examples/bridge-configurations.yaml +346 -0
  157. package/examples/bridges/Dockerfile.production +87 -0
  158. package/examples/bridges/__pycache__/aiflow-bridge-enhanced.cpython-313.pyc +0 -0
  159. package/examples/bridges/__pycache__/aiflow-phoenix-tracing.cpython-313.pyc +0 -0
  160. package/examples/bridges/__pycache__/test_aiflow_integration.cpython-313.pyc +0 -0
  161. package/examples/bridges/aiflow-bridge-enhanced.py +462 -0
  162. package/examples/bridges/aiflow-bridge-example.yml +310 -0
  163. package/examples/bridges/aiflow-phoenix-tracing.py +310 -0
  164. package/examples/bridges/aiflow-registration-api.openapi.yml +439 -0
  165. package/examples/bridges/k8s/configmap.yaml +121 -0
  166. package/examples/bridges/k8s/deployment-simple.yaml +34 -0
  167. package/examples/bridges/k8s/deployment.yaml +275 -0
  168. package/examples/bridges/k8s/hpa.yaml +126 -0
  169. package/examples/bridges/k8s/ingress.yaml +155 -0
  170. package/examples/bridges/kagent-bridge-example.yml +94 -0
  171. package/examples/bridges/load-tests/Dockerfile +28 -0
  172. package/examples/bridges/load-tests/k6-load-test.js +302 -0
  173. package/examples/bridges/load-tests/requirements.txt +20 -0
  174. package/examples/bridges/loadtest/k6-scenarios.js +270 -0
  175. package/examples/bridges/phase4/SLO-SLA.yaml +249 -0
  176. package/examples/bridges/phase4/chaos-tests.yaml +226 -0
  177. package/examples/bridges/requirements.txt +24 -0
  178. package/examples/bridges/test_aiflow_integration.py +341 -0
  179. package/examples/common_npm/agent-router.ossa.yaml +182 -0
  180. package/examples/common_npm/agent-router.v0.2.2.ossa.yaml +60 -0
  181. package/examples/compliance-agent.yml +155 -0
  182. package/examples/crewai/research-team.ossa.json +36 -0
  183. package/examples/cursor/code-review-agent.ossa.json +47 -0
  184. package/examples/drupal/gitlab-ml-recommender.ossa.yaml +609 -0
  185. package/examples/drupal/gitlab-ml-recommender.v0.2.2.ossa.yaml +68 -0
  186. package/examples/enterprise/agent.yml +452 -0
  187. package/examples/extensions/drupal-v1.yml +266 -0
  188. package/examples/extensions/kagent-v1.yml +167 -0
  189. package/examples/getting-started/hello-world-complete.ossa.yaml +266 -0
  190. package/examples/integration-patterns/agent-to-agent-orchestration.ossa.yaml +376 -0
  191. package/examples/kagent/README.md +31 -0
  192. package/examples/kagent/compliance-validator.ossa.yaml +111 -0
  193. package/examples/kagent/cost-optimizer.ossa.yaml +93 -0
  194. package/examples/kagent/documentation-agent.ossa.yaml +91 -0
  195. package/examples/kagent/k8s-troubleshooter-v1.ossa.yaml +269 -0
  196. package/examples/kagent/k8s-troubleshooter-v1.v0.2.2.ossa.yaml +106 -0
  197. package/examples/kagent/k8s-troubleshooter.ossa.yaml +257 -0
  198. package/examples/kagent/security-scanner.ossa.yaml +140 -0
  199. package/examples/langchain/chain-agent.ossa.json +42 -0
  200. package/examples/langflow/workflow-agent.ossa.json +39 -0
  201. package/examples/langgraph/state-machine-agent.ossa.json +59 -0
  202. package/examples/llamaindex/rag-agent.ossa.json +41 -0
  203. package/examples/migration-guides/from-langchain-to-ossa.yaml +309 -0
  204. package/examples/minimal/agent.yml +152 -0
  205. package/examples/minimal/openapi.yaml +95 -0
  206. package/examples/openai/swarm-agent.ossa.json +59 -0
  207. package/examples/openapi-extensions/README.md +87 -0
  208. package/examples/openapi-extensions/minimal-agent-api.openapi.yml +288 -0
  209. package/examples/openapi-extensions/orchestrator-agent-api.openapi.yml +633 -0
  210. package/examples/openapi-extensions/worker-agent-api.openapi.yml +533 -0
  211. package/examples/production/agent.yml +713 -0
  212. package/examples/production/document-analyzer-openai.yml +134 -0
  213. package/examples/quickstart/support-agent.ossa.yaml +59 -0
  214. package/examples/service-registry-usage.ts +423 -0
  215. package/examples/spec-examples/audit-agent.yml +147 -0
  216. package/examples/spec-examples/chat-agent.yml +189 -0
  217. package/examples/spec-examples/compliance-agent.yml +204 -0
  218. package/examples/spec-examples/data-processing-agent.yml +132 -0
  219. package/examples/spec-examples/development-agent.yml +138 -0
  220. package/examples/spec-examples/edge-agent.yml +101 -0
  221. package/examples/spec-examples/integration-agent.yml +129 -0
  222. package/examples/spec-examples/monitoring-agent.yml +130 -0
  223. package/examples/spec-examples/serverless-agent.yml +82 -0
  224. package/examples/spec-examples/workflow-agent.yml +223 -0
  225. package/examples/templates/ossa-compliance.yaml +56 -0
  226. package/examples/typescript/advanced/demo-registry.ts +168 -0
  227. package/examples/typescript/mcpb-agent-example.ts +358 -0
  228. package/examples/vercel/edge-agent.ossa.json +43 -0
  229. package/infrastructure/docker-compose.yml +33 -0
  230. package/junit.xml +1 -0
  231. package/openapi/drupal-agent-api.openapi.yaml +348 -0
  232. package/openapi/gitlab-orchestrator.openapi.yaml +330 -0
  233. package/openapi/helm-generator.openapi.yaml +389 -0
  234. package/openapi/ossa-core-api.openapi.yaml +1448 -0
  235. package/openapi/ossa-registry-api.openapi.yaml +980 -0
  236. package/openapi/ossa-registry.openapi.yaml +782 -0
  237. package/openapi/self-evolving-ecosystem.openapi.yaml +1530 -0
  238. package/openapi/unified-agent-gateway.openapi.yaml +833 -0
  239. package/ossa-website-swarm-tasks.json +105 -0
  240. package/package.json +132 -0
  241. package/release.config.js +64 -0
  242. package/spec/v0.1.9/agent-autonomous-extensions.json +234 -0
  243. package/spec/v0.1.9/ecosystem-compliance.json +235 -0
  244. package/spec/v0.1.9/ossa-v0.1.9.schema.json +695 -0
  245. package/spec/v0.1.9/ossa-v0.1.9.schema.json.backup +695 -0
  246. package/spec/v0.1.9/reasoning-compliance.json +654 -0
  247. package/spec/v0.2.2/kagent-enhancements.json +395 -0
  248. package/spec/v0.2.2/ossa-0.2.2.schema.json +906 -0
  249. package/spec/v0.2.2/ossa-0.2.2.yaml +448 -0
  250. package/spec/v0.2.2/ossa-reasoning-compliance-1.0.schema.json +424 -0
  251. package/spec/v0.2.3/CHANGELOG.md +176 -0
  252. package/spec/v0.2.3/README.md +154 -0
  253. package/spec/v0.2.3/migrations/v0.2.2-to-v0.2.3.md +343 -0
  254. package/spec/v0.2.3/ossa-0.2.3.schema.json +1397 -0
  255. package/spec/v0.2.3/ossa-0.2.3.yaml +448 -0
  256. package/spec/v0.2.4-dev/CHANGELOG.md +403 -0
  257. package/spec/v0.2.4-dev/migrations/v0.2.3-to-v0.2.4.md +599 -0
  258. package/spec/v0.2.4-dev/ossa-0.2.4-dev.schema.json +1696 -0
  259. package/spec/v0.2.4-dev/ossa-0.2.4-dev.yaml +581 -0
  260. package/spec/v0.2.5-dev/CHANGELOG.md +171 -0
  261. package/spec/v0.2.5-dev/examples/customer-support-graph.ossa.yaml +362 -0
  262. package/spec/v0.2.5-dev/examples/parallel-processors.ossa.yaml +464 -0
  263. package/spec/v0.2.5-dev/examples/research-team.ossa.yaml +440 -0
  264. package/spec/v0.2.5-dev/migrations/v0.2.4-to-v0.2.5.md +317 -0
  265. package/spec/v0.2.5-dev/ossa-0.2.5-dev.schema.json +1732 -0
  266. package/spec/v0.2.5-dev/ossa-0.2.5-dev.yaml +409 -0
  267. package/test-results.xml +1 -0
  268. package/website/.lighthouserc.js +20 -0
  269. package/website/.prettierrc +10 -0
  270. package/website/Dockerfile +17 -0
  271. package/website/app/about/page.tsx +295 -0
  272. package/website/app/api/validate/route.ts +88 -0
  273. package/website/app/blog/[slug]/page.tsx +167 -0
  274. package/website/app/blog/page.tsx +162 -0
  275. package/website/app/docs/[[...slug]]/page.tsx +349 -0
  276. package/website/app/docs/core-concepts/project-structure/page.tsx +349 -0
  277. package/website/app/ecosystem/page.tsx +375 -0
  278. package/website/app/examples/page.tsx +123 -0
  279. package/website/app/globals.css +108 -0
  280. package/website/app/layout.tsx +106 -0
  281. package/website/app/page.tsx +409 -0
  282. package/website/app/playground/page.tsx +507 -0
  283. package/website/app/robots.ts +19 -0
  284. package/website/app/rss.xml/route.ts +74 -0
  285. package/website/app/schema/page.tsx +970 -0
  286. package/website/app/sitemap.ts +56 -0
  287. package/website/app/specification/page.tsx +211 -0
  288. package/website/components/InstallCommand.tsx +96 -0
  289. package/website/components/Logo.tsx +24 -0
  290. package/website/components/StructuredData.tsx +65 -0
  291. package/website/components/docs/DocsSearch.tsx +104 -0
  292. package/website/components/docs/DocsSidebar.tsx +118 -0
  293. package/website/components/docs/MarkdownContent.tsx +183 -0
  294. package/website/components/docs/VersionSelector.tsx +49 -0
  295. package/website/components/examples/ExamplesViewer.tsx +293 -0
  296. package/website/components/layout/Footer.tsx +111 -0
  297. package/website/components/layout/Header.tsx +170 -0
  298. package/website/components/schema/SchemaExplorer.tsx +213 -0
  299. package/website/content/blog/OpenAPI-AI-Agents-Standard.md +285 -0
  300. package/website/content/blog/Why-Formal-Standards-Matter-Now.md +209 -0
  301. package/website/content/blog/introducing-ossa-framework.md +328 -0
  302. package/website/content/blog/ossa-production-results.md +279 -0
  303. package/website/content/blog/welcome-to-ossa.md +43 -0
  304. package/website/content/blog/why-ai-agents-need-open-standard.md +98 -0
  305. package/website/content/docs/00-HOME.md +160 -0
  306. package/website/content/docs/AIFlow-Framework-Integration-with-OSSA.md +107 -0
  307. package/website/content/docs/OpenAPI-Extensions.md +498 -0
  308. package/website/content/docs/architecture/execution-flow.md +335 -0
  309. package/website/content/docs/architecture/multi-agent-systems.md +737 -0
  310. package/website/content/docs/architecture/overview.md +121 -0
  311. package/website/content/docs/architecture/stack-integration.md +461 -0
  312. package/website/content/docs/changelog.md +246 -0
  313. package/website/content/docs/contributing.md +599 -0
  314. package/website/content/docs/core-concepts/project-structure.md +348 -0
  315. package/website/content/docs/ecosystem/framework-support.md +821 -0
  316. package/website/content/docs/ecosystem/overview.md +366 -0
  317. package/website/content/docs/examples/Migration-Guides.md +214 -0
  318. package/website/content/docs/examples.md +71 -0
  319. package/website/content/docs/for-audiences/Enterprises.md +256 -0
  320. package/website/content/docs/for-audiences/Students-Researchers.md +122 -0
  321. package/website/content/docs/for-audiences/architects.md +224 -0
  322. package/website/content/docs/for-audiences/developers.md +220 -0
  323. package/website/content/docs/getting-started/5-minute-overview.md +85 -0
  324. package/website/content/docs/getting-started/Hello-World.md +184 -0
  325. package/website/content/docs/getting-started/first-agent.md +196 -0
  326. package/website/content/docs/getting-started/installation.md +155 -0
  327. package/website/content/docs/getting-started/running-agents.md +107 -0
  328. package/website/content/docs/integrations/aiflow.md +104 -0
  329. package/website/content/docs/integrations/drupal.md +105 -0
  330. package/website/content/docs/migration-guides/00-index.md +76 -0
  331. package/website/content/docs/migration-guides/README.md +133 -0
  332. package/website/content/docs/migration-guides/anthropic-mcp-to-ossa.md +1750 -0
  333. package/website/content/docs/migration-guides/crewai-to-ossa.md +274 -0
  334. package/website/content/docs/migration-guides/drupal-eca-to-ossa.md +2017 -0
  335. package/website/content/docs/migration-guides/index.md +133 -0
  336. package/website/content/docs/migration-guides/langchain-to-ossa.md +1714 -0
  337. package/website/content/docs/migration-guides/langflow-to-ossa.md +2075 -0
  338. package/website/content/docs/migration-guides/openai-to-ossa.md +1202 -0
  339. package/website/content/docs/openapi-extensions/examples.md +550 -0
  340. package/website/content/docs/openapi-extensions/index.md +495 -0
  341. package/website/content/docs/openapi-extensions/operation-extensions.md +398 -0
  342. package/website/content/docs/openapi-extensions/root-extensions.md +364 -0
  343. package/website/content/docs/pre-release/index.md +175 -0
  344. package/website/content/docs/quick-reference.md +17 -0
  345. package/website/content/docs/schema-reference/agent-spec.md +406 -0
  346. package/website/content/docs/schema-reference/autonomy.md +568 -0
  347. package/website/content/docs/schema-reference/constraints.md +543 -0
  348. package/website/content/docs/schema-reference/index.md +176 -0
  349. package/website/content/docs/schema-reference/llm-config.md +445 -0
  350. package/website/content/docs/schema-reference/observability.md +654 -0
  351. package/website/content/docs/schema-reference/ossa-manifest.md +309 -0
  352. package/website/content/docs/schema-reference/taxonomy.md +509 -0
  353. package/website/content/docs/schema-reference/tools.md +628 -0
  354. package/website/content/docs/templates/blog-post.md +43 -0
  355. package/website/content/docs/use-cases/00-index.md +395 -0
  356. package/website/content/docs/use-cases/cicd-code-review.md +1236 -0
  357. package/website/content/docs/use-cases/customer-support.md +1234 -0
  358. package/website/content/docs/use-cases/enterprise-compliance.md +1208 -0
  359. package/website/content/docs/use-cases/research-multi-agent.md +1161 -0
  360. package/website/lib/version.ts +18 -0
  361. package/website/next.config.js +17 -0
  362. package/website/next.config.ts +16 -0
  363. package/website/nginx.conf +32 -0
  364. package/website/package-lock.json +9145 -0
  365. package/website/package.json +53 -0
  366. package/website/postcss.config.js +7 -0
  367. package/website/postcss.config.mjs +9 -0
  368. package/website/scripts/sync-version.js +44 -0
  369. package/website/scripts/sync-wiki.ts +261 -0
  370. package/website/tailwind.config.js +58 -0
  371. package/website/tailwind.config.ts +65 -0
@@ -0,0 +1,1448 @@
1
+ openapi: 3.1.0
2
+ jsonSchemaDialect: https://spec.openapis.org/oas/3.1/dialect/base
3
+ info:
4
+ title: OSSA Master API
5
+ version: 0.1.9
6
+ description: |
7
+ # OSSA - Open Standards for Scalable Agents
8
+
9
+ Master API specification for the OSSA platform, providing comprehensive orchestration,
10
+ governance, and management capabilities for AI agents following OSSA v0.1.9 standards.
11
+
12
+ ## Key Capabilities
13
+ - **Agent Orchestration**: Multi-agent coordination and workflow execution
14
+ - **Specification Engine**: Agent manifest validation and certification
15
+ - **Registry Services**: Global agent discovery and federation
16
+ - **Runtime Management**: Production deployment and lifecycle management
17
+ - **Compliance & Governance**: Policy enforcement and audit trails
18
+ - **Observability**: Comprehensive monitoring and tracing
19
+
20
+ contact:
21
+ name: Bluefly.io LLM Platform Team
22
+ url: https://gitlab.bluefly.io/llm/openapi-ai-agents-standard
23
+ license:
24
+ name: MIT
25
+ url: https://opensource.org/licenses/MIT
26
+
27
+ servers:
28
+ - url: https://api.llm.bluefly.io/ossa/v1
29
+ description: Production server
30
+ - url: https://api-dev.llm.bluefly.io/ossa/v1
31
+ description: Development server
32
+ - url: http://localhost:3000
33
+ description: Local development
34
+
35
+ security:
36
+ - ApiKeyAuth: []
37
+ - BearerAuth: []
38
+ - OAuth2: [read, write, admin]
39
+
40
+ paths:
41
+ # Health & Status
42
+ /health:
43
+ $ref: './src/api/specification.openapi.yml#/paths/~1health'
44
+
45
+ /health/ready:
46
+ get:
47
+ summary: Readiness check
48
+ tags: [Health]
49
+ operationId: readinessCheck
50
+ security: []
51
+ responses:
52
+ '200':
53
+ $ref: '#/components/responses/HealthCheck'
54
+ '503':
55
+ description: Service not ready
56
+
57
+ /health/live:
58
+ get:
59
+ summary: Liveness check
60
+ tags: [Health]
61
+ operationId: livenessCheck
62
+ security: []
63
+ responses:
64
+ '200':
65
+ $ref: '#/components/responses/HealthCheck'
66
+
67
+ # Agent Registry
68
+ /agents:
69
+ get:
70
+ summary: List registered agents
71
+ description: Query the global agent registry
72
+ tags: [Registry]
73
+ operationId: listAgents
74
+ parameters:
75
+ - $ref: '#/components/parameters/Search'
76
+ - $ref: '#/components/parameters/Limit'
77
+ - $ref: '#/components/parameters/Offset'
78
+ - name: type
79
+ in: query
80
+ schema:
81
+ $ref: '#/components/schemas/AgentType'
82
+ - name: capability
83
+ in: query
84
+ schema:
85
+ type: string
86
+ - name: status
87
+ in: query
88
+ schema:
89
+ $ref: '#/components/schemas/AgentStatus'
90
+ responses:
91
+ '200':
92
+ description: List of agents
93
+ content:
94
+ application/json:
95
+ schema:
96
+ $ref: '#/components/schemas/AgentsList'
97
+
98
+ post:
99
+ summary: Register new agent
100
+ tags: [Registry]
101
+ operationId: registerAgent
102
+ requestBody:
103
+ required: true
104
+ content:
105
+ application/json:
106
+ schema:
107
+ $ref: '#/components/schemas/AgentManifest'
108
+ responses:
109
+ '201':
110
+ description: Agent registered
111
+ content:
112
+ application/json:
113
+ schema:
114
+ $ref: '#/components/schemas/AgentRegistration'
115
+ '400':
116
+ $ref: '#/components/responses/ValidationError'
117
+
118
+ /agents/{agentId}:
119
+ get:
120
+ summary: Get agent details
121
+ tags: [Registry]
122
+ operationId: getAgent
123
+ parameters:
124
+ - $ref: '#/components/parameters/AgentId'
125
+ responses:
126
+ '200':
127
+ description: Agent details
128
+ content:
129
+ application/json:
130
+ schema:
131
+ $ref: '#/components/schemas/Agent'
132
+ '404':
133
+ $ref: '#/components/responses/NotFound'
134
+
135
+ put:
136
+ summary: Update agent registration
137
+ tags: [Registry]
138
+ operationId: updateAgent
139
+ parameters:
140
+ - $ref: '#/components/parameters/AgentId'
141
+ requestBody:
142
+ required: true
143
+ content:
144
+ application/json:
145
+ schema:
146
+ $ref: '#/components/schemas/AgentManifest'
147
+ responses:
148
+ '200':
149
+ description: Agent updated
150
+ content:
151
+ application/json:
152
+ schema:
153
+ $ref: '#/components/schemas/Agent'
154
+
155
+ delete:
156
+ summary: Unregister agent
157
+ tags: [Registry]
158
+ operationId: unregisterAgent
159
+ parameters:
160
+ - $ref: '#/components/parameters/AgentId'
161
+ responses:
162
+ '204':
163
+ description: Agent unregistered
164
+
165
+ # Orchestration
166
+ /orchestration/workflows:
167
+ get:
168
+ summary: List workflows
169
+ tags: [Orchestration]
170
+ operationId: listWorkflows
171
+ parameters:
172
+ - $ref: '#/components/parameters/Limit'
173
+ - $ref: '#/components/parameters/Offset'
174
+ responses:
175
+ '200':
176
+ description: List of workflows
177
+ content:
178
+ application/json:
179
+ schema:
180
+ $ref: '#/components/schemas/WorkflowsList'
181
+
182
+ post:
183
+ summary: Create workflow
184
+ tags: [Orchestration]
185
+ operationId: createWorkflow
186
+ requestBody:
187
+ required: true
188
+ content:
189
+ application/json:
190
+ schema:
191
+ $ref: '#/components/schemas/WorkflowDefinition'
192
+ responses:
193
+ '201':
194
+ description: Workflow created
195
+ content:
196
+ application/json:
197
+ schema:
198
+ $ref: '#/components/schemas/Workflow'
199
+
200
+ /orchestration/workflows/{workflowId}/execute:
201
+ post:
202
+ summary: Execute workflow
203
+ tags: [Orchestration]
204
+ operationId: executeWorkflow
205
+ parameters:
206
+ - name: workflowId
207
+ in: path
208
+ required: true
209
+ schema:
210
+ type: string
211
+ requestBody:
212
+ content:
213
+ application/json:
214
+ schema:
215
+ $ref: '#/components/schemas/WorkflowExecutionRequest'
216
+ responses:
217
+ '202':
218
+ description: Workflow execution started
219
+ content:
220
+ application/json:
221
+ schema:
222
+ $ref: '#/components/schemas/WorkflowExecution'
223
+
224
+ /orchestration/executions/{executionId}:
225
+ get:
226
+ summary: Get execution status
227
+ tags: [Orchestration]
228
+ operationId: getExecutionStatus
229
+ parameters:
230
+ - name: executionId
231
+ in: path
232
+ required: true
233
+ schema:
234
+ type: string
235
+ responses:
236
+ '200':
237
+ description: Execution status
238
+ content:
239
+ application/json:
240
+ schema:
241
+ $ref: '#/components/schemas/WorkflowExecution'
242
+
243
+ # Specification & Validation
244
+ /specification/validate:
245
+ $ref: './src/api/specification.openapi.yml#/paths/~1specification~1validate'
246
+
247
+ /specification/taxonomies:
248
+ get:
249
+ summary: List agent taxonomies
250
+ tags: [Specification]
251
+ operationId: listTaxonomies
252
+ responses:
253
+ '200':
254
+ description: Available taxonomies
255
+ content:
256
+ application/json:
257
+ schema:
258
+ $ref: '#/components/schemas/TaxonomiesList'
259
+
260
+ /specification/capabilities:
261
+ get:
262
+ summary: List capability definitions
263
+ tags: [Specification]
264
+ operationId: listCapabilities
265
+ parameters:
266
+ - name: category
267
+ in: query
268
+ schema:
269
+ type: string
270
+ responses:
271
+ '200':
272
+ description: Capability definitions
273
+ content:
274
+ application/json:
275
+ schema:
276
+ $ref: '#/components/schemas/CapabilitiesList'
277
+
278
+ # Certification
279
+ /certification/request:
280
+ post:
281
+ summary: Request certification
282
+ tags: [Certification]
283
+ operationId: requestCertification
284
+ requestBody:
285
+ required: true
286
+ content:
287
+ application/json:
288
+ schema:
289
+ $ref: '#/components/schemas/CertificationRequest'
290
+ responses:
291
+ '202':
292
+ description: Certification request accepted
293
+ content:
294
+ application/json:
295
+ schema:
296
+ $ref: '#/components/schemas/CertificationProcess'
297
+
298
+ /certification/{certificationId}:
299
+ get:
300
+ summary: Get certification status
301
+ tags: [Certification]
302
+ operationId: getCertification
303
+ parameters:
304
+ - name: certificationId
305
+ in: path
306
+ required: true
307
+ schema:
308
+ type: string
309
+ responses:
310
+ '200':
311
+ description: Certification details
312
+ content:
313
+ application/json:
314
+ schema:
315
+ $ref: '#/components/schemas/Certification'
316
+
317
+ # Governance
318
+ /governance/policies:
319
+ get:
320
+ summary: List governance policies
321
+ tags: [Governance]
322
+ operationId: listPolicies
323
+ responses:
324
+ '200':
325
+ description: Governance policies
326
+ content:
327
+ application/json:
328
+ schema:
329
+ $ref: '#/components/schemas/PoliciesList'
330
+
331
+ /governance/compliance/{agentId}:
332
+ get:
333
+ summary: Get agent compliance status
334
+ tags: [Governance]
335
+ operationId: getAgentCompliance
336
+ parameters:
337
+ - $ref: '#/components/parameters/AgentId'
338
+ responses:
339
+ '200':
340
+ description: Compliance status
341
+ content:
342
+ application/json:
343
+ schema:
344
+ $ref: '#/components/schemas/ComplianceStatus'
345
+
346
+ # Federation
347
+ /federation/nodes:
348
+ get:
349
+ summary: List federation nodes
350
+ tags: [Federation]
351
+ operationId: listFederationNodes
352
+ responses:
353
+ '200':
354
+ description: Federation nodes
355
+ content:
356
+ application/json:
357
+ schema:
358
+ $ref: '#/components/schemas/FederationNodesList'
359
+
360
+ /federation/join:
361
+ post:
362
+ summary: Join federation
363
+ tags: [Federation]
364
+ operationId: joinFederation
365
+ requestBody:
366
+ required: true
367
+ content:
368
+ application/json:
369
+ schema:
370
+ $ref: '#/components/schemas/FederationJoinRequest'
371
+ responses:
372
+ '201':
373
+ description: Joined federation
374
+ content:
375
+ application/json:
376
+ schema:
377
+ $ref: '#/components/schemas/FederationMembership'
378
+
379
+ # Monitoring
380
+ /monitoring/metrics:
381
+ get:
382
+ summary: Get platform metrics
383
+ tags: [Monitoring]
384
+ operationId: getPlatformMetrics
385
+ responses:
386
+ '200':
387
+ description: Platform metrics
388
+ content:
389
+ application/json:
390
+ schema:
391
+ $ref: '#/components/schemas/PlatformMetrics'
392
+
393
+ /monitoring/events:
394
+ get:
395
+ summary: Get platform events
396
+ tags: [Monitoring]
397
+ operationId: getPlatformEvents
398
+ parameters:
399
+ - $ref: '#/components/parameters/StartTime'
400
+ - $ref: '#/components/parameters/EndTime'
401
+ - $ref: '#/components/parameters/Limit'
402
+ responses:
403
+ '200':
404
+ description: Platform events
405
+ content:
406
+ application/json:
407
+ schema:
408
+ $ref: '#/components/schemas/EventsList'
409
+
410
+ components:
411
+ securitySchemes:
412
+ ApiKeyAuth:
413
+ type: apiKey
414
+ in: header
415
+ name: X-API-Key
416
+ BearerAuth:
417
+ type: http
418
+ scheme: bearer
419
+ bearerFormat: JWT
420
+ OAuth2:
421
+ type: oauth2
422
+ flows:
423
+ authorizationCode:
424
+ authorizationUrl: https://auth.llm.bluefly.io/oauth/authorize
425
+ tokenUrl: https://auth.llm.bluefly.io/oauth/token
426
+ scopes:
427
+ read: Read access
428
+ write: Write access
429
+ admin: Administrative access
430
+
431
+ parameters:
432
+ AgentId:
433
+ name: agentId
434
+ in: path
435
+ required: true
436
+ description: Agent identifier
437
+ schema:
438
+ type: string
439
+ format: uuid
440
+ Limit:
441
+ name: limit
442
+ in: query
443
+ description: Number of items to return
444
+ schema:
445
+ type: integer
446
+ minimum: 1
447
+ maximum: 100
448
+ default: 20
449
+ Offset:
450
+ name: offset
451
+ in: query
452
+ description: Number of items to skip
453
+ schema:
454
+ type: integer
455
+ minimum: 0
456
+ default: 0
457
+ Search:
458
+ name: search
459
+ in: query
460
+ description: Search query
461
+ schema:
462
+ type: string
463
+ StartTime:
464
+ name: startTime
465
+ in: query
466
+ schema:
467
+ type: string
468
+ format: date-time
469
+ EndTime:
470
+ name: endTime
471
+ in: query
472
+ schema:
473
+ type: string
474
+ format: date-time
475
+
476
+ schemas:
477
+ # Core Agent Types
478
+ AgentManifest:
479
+ type: object
480
+ required:
481
+ - apiVersion
482
+ - kind
483
+ - metadata
484
+ - spec
485
+ properties:
486
+ apiVersion:
487
+ type: string
488
+ const: ossa.io/v0.1.9
489
+ kind:
490
+ type: string
491
+ const: AgentManifest
492
+ metadata:
493
+ $ref: '#/components/schemas/Metadata'
494
+ spec:
495
+ $ref: '#/components/schemas/AgentSpec'
496
+
497
+ Metadata:
498
+ type: object
499
+ required:
500
+ - name
501
+ - version
502
+ properties:
503
+ name:
504
+ type: string
505
+ pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$'
506
+ version:
507
+ type: string
508
+ pattern: '^\d+\.\d+\.\d+(-[a-zA-Z0-9]+)?$'
509
+ namespace:
510
+ type: string
511
+ labels:
512
+ type: object
513
+ additionalProperties:
514
+ type: string
515
+ annotations:
516
+ type: object
517
+ additionalProperties:
518
+ type: string
519
+
520
+ AgentSpec:
521
+ type: object
522
+ required:
523
+ - type
524
+ - capabilities
525
+ properties:
526
+ type:
527
+ $ref: '#/components/schemas/AgentType'
528
+ description:
529
+ type: string
530
+ capabilities:
531
+ type: array
532
+ items:
533
+ $ref: '#/components/schemas/Capability'
534
+ interfaces:
535
+ type: array
536
+ items:
537
+ $ref: '#/components/schemas/Interface'
538
+ requirements:
539
+ $ref: '#/components/schemas/Requirements'
540
+ configuration:
541
+ type: object
542
+ additionalProperties: true
543
+
544
+ AgentType:
545
+ type: string
546
+ enum:
547
+ - orchestrator
548
+ - worker
549
+ - specialist
550
+ - critic
551
+ - monitor
552
+ - gateway
553
+
554
+ AgentStatus:
555
+ type: string
556
+ enum:
557
+ - registered
558
+ - active
559
+ - inactive
560
+ - suspended
561
+ - deprecated
562
+
563
+ Capability:
564
+ type: object
565
+ required:
566
+ - name
567
+ - category
568
+ properties:
569
+ name:
570
+ type: string
571
+ category:
572
+ type: string
573
+ enum:
574
+ - core
575
+ - analysis
576
+ - generation
577
+ - transformation
578
+ - integration
579
+ description:
580
+ type: string
581
+ version:
582
+ type: string
583
+ parameters:
584
+ type: object
585
+ additionalProperties: true
586
+
587
+ Interface:
588
+ type: object
589
+ required:
590
+ - type
591
+ - endpoint
592
+ properties:
593
+ type:
594
+ type: string
595
+ enum:
596
+ - rest
597
+ - graphql
598
+ - grpc
599
+ - websocket
600
+ - mcp
601
+ endpoint:
602
+ type: string
603
+ format: uri
604
+ protocol:
605
+ type: string
606
+ authentication:
607
+ type: object
608
+ properties:
609
+ type:
610
+ type: string
611
+ config:
612
+ type: object
613
+ additionalProperties: true
614
+
615
+ Requirements:
616
+ type: object
617
+ properties:
618
+ runtime:
619
+ type: string
620
+ resources:
621
+ $ref: '#/components/schemas/ResourceRequirements'
622
+ dependencies:
623
+ type: array
624
+ items:
625
+ type: string
626
+ environment:
627
+ type: object
628
+ additionalProperties:
629
+ type: string
630
+
631
+ ResourceRequirements:
632
+ type: object
633
+ properties:
634
+ cpu:
635
+ type: string
636
+ pattern: '^[0-9]+m?$'
637
+ memory:
638
+ type: string
639
+ pattern: '^[0-9]+(Mi|Gi)$'
640
+ storage:
641
+ type: string
642
+ pattern: '^[0-9]+(Mi|Gi)$'
643
+ gpu:
644
+ type: string
645
+
646
+ Agent:
647
+ type: object
648
+ properties:
649
+ id:
650
+ type: string
651
+ format: uuid
652
+ manifest:
653
+ $ref: '#/components/schemas/AgentManifest'
654
+ status:
655
+ $ref: '#/components/schemas/AgentStatus'
656
+ registration:
657
+ $ref: '#/components/schemas/AgentRegistration'
658
+ certification:
659
+ $ref: '#/components/schemas/Certification'
660
+ metrics:
661
+ $ref: '#/components/schemas/AgentMetrics'
662
+
663
+ AgentRegistration:
664
+ type: object
665
+ properties:
666
+ id:
667
+ type: string
668
+ format: uuid
669
+ agentId:
670
+ type: string
671
+ format: uuid
672
+ registeredAt:
673
+ type: string
674
+ format: date-time
675
+ expiresAt:
676
+ type: string
677
+ format: date-time
678
+ registeredBy:
679
+ type: string
680
+ federationNode:
681
+ type: string
682
+
683
+ AgentsList:
684
+ type: object
685
+ properties:
686
+ agents:
687
+ type: array
688
+ items:
689
+ $ref: '#/components/schemas/Agent'
690
+ total:
691
+ type: integer
692
+ limit:
693
+ type: integer
694
+ offset:
695
+ type: integer
696
+
697
+ # Orchestration
698
+ WorkflowDefinition:
699
+ type: object
700
+ required:
701
+ - name
702
+ - steps
703
+ properties:
704
+ name:
705
+ type: string
706
+ description:
707
+ type: string
708
+ version:
709
+ type: string
710
+ steps:
711
+ type: array
712
+ items:
713
+ $ref: '#/components/schemas/WorkflowStep'
714
+ triggers:
715
+ type: array
716
+ items:
717
+ $ref: '#/components/schemas/WorkflowTrigger'
718
+ timeout:
719
+ type: integer
720
+ retryPolicy:
721
+ $ref: '#/components/schemas/RetryPolicy'
722
+
723
+ WorkflowStep:
724
+ type: object
725
+ required:
726
+ - name
727
+ - agentType
728
+ - action
729
+ properties:
730
+ name:
731
+ type: string
732
+ agentType:
733
+ type: string
734
+ action:
735
+ type: string
736
+ input:
737
+ type: object
738
+ additionalProperties: true
739
+ dependencies:
740
+ type: array
741
+ items:
742
+ type: string
743
+ condition:
744
+ type: string
745
+ timeout:
746
+ type: integer
747
+ retryPolicy:
748
+ $ref: '#/components/schemas/RetryPolicy'
749
+
750
+ WorkflowTrigger:
751
+ type: object
752
+ properties:
753
+ type:
754
+ type: string
755
+ enum: [manual, scheduled, event, webhook]
756
+ config:
757
+ type: object
758
+ additionalProperties: true
759
+
760
+ RetryPolicy:
761
+ type: object
762
+ properties:
763
+ maxRetries:
764
+ type: integer
765
+ minimum: 0
766
+ default: 3
767
+ backoffType:
768
+ type: string
769
+ enum: [fixed, exponential]
770
+ default: exponential
771
+ initialDelay:
772
+ type: integer
773
+ default: 1000
774
+ maxDelay:
775
+ type: integer
776
+ default: 60000
777
+
778
+ Workflow:
779
+ type: object
780
+ properties:
781
+ id:
782
+ type: string
783
+ format: uuid
784
+ definition:
785
+ $ref: '#/components/schemas/WorkflowDefinition'
786
+ status:
787
+ type: string
788
+ enum: [draft, active, suspended, deprecated]
789
+ createdAt:
790
+ type: string
791
+ format: date-time
792
+ updatedAt:
793
+ type: string
794
+ format: date-time
795
+
796
+ WorkflowsList:
797
+ type: object
798
+ properties:
799
+ workflows:
800
+ type: array
801
+ items:
802
+ $ref: '#/components/schemas/Workflow'
803
+ total:
804
+ type: integer
805
+
806
+ WorkflowExecutionRequest:
807
+ type: object
808
+ properties:
809
+ input:
810
+ type: object
811
+ additionalProperties: true
812
+ context:
813
+ type: object
814
+ additionalProperties: true
815
+ priority:
816
+ type: string
817
+ enum: [low, normal, high, critical]
818
+ default: normal
819
+
820
+ WorkflowExecution:
821
+ type: object
822
+ properties:
823
+ id:
824
+ type: string
825
+ format: uuid
826
+ workflowId:
827
+ type: string
828
+ format: uuid
829
+ status:
830
+ type: string
831
+ enum: [pending, running, completed, failed, cancelled]
832
+ startedAt:
833
+ type: string
834
+ format: date-time
835
+ completedAt:
836
+ type: string
837
+ format: date-time
838
+ steps:
839
+ type: array
840
+ items:
841
+ $ref: '#/components/schemas/StepExecution'
842
+ output:
843
+ type: object
844
+ additionalProperties: true
845
+ errors:
846
+ type: array
847
+ items:
848
+ $ref: '#/components/schemas/ExecutionError'
849
+
850
+ StepExecution:
851
+ type: object
852
+ properties:
853
+ name:
854
+ type: string
855
+ status:
856
+ type: string
857
+ enum: [pending, running, completed, failed, skipped]
858
+ agentId:
859
+ type: string
860
+ startedAt:
861
+ type: string
862
+ format: date-time
863
+ completedAt:
864
+ type: string
865
+ format: date-time
866
+ output:
867
+ type: object
868
+ additionalProperties: true
869
+ error:
870
+ $ref: '#/components/schemas/ExecutionError'
871
+
872
+ ExecutionError:
873
+ type: object
874
+ properties:
875
+ code:
876
+ type: string
877
+ message:
878
+ type: string
879
+ details:
880
+ type: object
881
+ additionalProperties: true
882
+ timestamp:
883
+ type: string
884
+ format: date-time
885
+
886
+ # Specification & Taxonomy
887
+ TaxonomiesList:
888
+ type: object
889
+ properties:
890
+ taxonomies:
891
+ type: array
892
+ items:
893
+ $ref: '#/components/schemas/Taxonomy'
894
+
895
+ Taxonomy:
896
+ type: object
897
+ properties:
898
+ id:
899
+ type: string
900
+ name:
901
+ type: string
902
+ description:
903
+ type: string
904
+ categories:
905
+ type: array
906
+ items:
907
+ type: string
908
+ version:
909
+ type: string
910
+
911
+ CapabilitiesList:
912
+ type: object
913
+ properties:
914
+ capabilities:
915
+ type: array
916
+ items:
917
+ $ref: '#/components/schemas/CapabilityDefinition'
918
+
919
+ CapabilityDefinition:
920
+ type: object
921
+ properties:
922
+ id:
923
+ type: string
924
+ name:
925
+ type: string
926
+ category:
927
+ type: string
928
+ description:
929
+ type: string
930
+ inputSchema:
931
+ type: object
932
+ outputSchema:
933
+ type: object
934
+ examples:
935
+ type: array
936
+ items:
937
+ type: object
938
+
939
+ ValidationResult:
940
+ type: object
941
+ properties:
942
+ valid:
943
+ type: boolean
944
+ errors:
945
+ type: array
946
+ items:
947
+ $ref: '#/components/schemas/ValidationError'
948
+ warnings:
949
+ type: array
950
+ items:
951
+ $ref: '#/components/schemas/ValidationWarning'
952
+ score:
953
+ type: number
954
+ minimum: 0
955
+ maximum: 100
956
+
957
+ ValidationError:
958
+ type: object
959
+ properties:
960
+ path:
961
+ type: string
962
+ message:
963
+ type: string
964
+ rule:
965
+ type: string
966
+
967
+ ValidationWarning:
968
+ type: object
969
+ properties:
970
+ path:
971
+ type: string
972
+ message:
973
+ type: string
974
+ suggestion:
975
+ type: string
976
+
977
+ # Certification
978
+ CertificationRequest:
979
+ type: object
980
+ required:
981
+ - agentId
982
+ - level
983
+ properties:
984
+ agentId:
985
+ type: string
986
+ format: uuid
987
+ level:
988
+ type: string
989
+ enum: [basic, standard, advanced, enterprise]
990
+ evidence:
991
+ type: array
992
+ items:
993
+ $ref: '#/components/schemas/Evidence'
994
+
995
+ Evidence:
996
+ type: object
997
+ properties:
998
+ type:
999
+ type: string
1000
+ description:
1001
+ type: string
1002
+ url:
1003
+ type: string
1004
+ format: uri
1005
+ data:
1006
+ type: object
1007
+ additionalProperties: true
1008
+
1009
+ CertificationProcess:
1010
+ type: object
1011
+ properties:
1012
+ id:
1013
+ type: string
1014
+ format: uuid
1015
+ status:
1016
+ type: string
1017
+ enum: [pending, in_review, approved, rejected]
1018
+ requestedAt:
1019
+ type: string
1020
+ format: date-time
1021
+ steps:
1022
+ type: array
1023
+ items:
1024
+ $ref: '#/components/schemas/CertificationStep'
1025
+
1026
+ CertificationStep:
1027
+ type: object
1028
+ properties:
1029
+ name:
1030
+ type: string
1031
+ status:
1032
+ type: string
1033
+ enum: [pending, passed, failed]
1034
+ result:
1035
+ type: object
1036
+ additionalProperties: true
1037
+
1038
+ Certification:
1039
+ type: object
1040
+ properties:
1041
+ id:
1042
+ type: string
1043
+ format: uuid
1044
+ agentId:
1045
+ type: string
1046
+ format: uuid
1047
+ level:
1048
+ type: string
1049
+ issuedAt:
1050
+ type: string
1051
+ format: date-time
1052
+ expiresAt:
1053
+ type: string
1054
+ format: date-time
1055
+ issuer:
1056
+ type: string
1057
+ signature:
1058
+ type: string
1059
+
1060
+ # Governance & Compliance
1061
+ PoliciesList:
1062
+ type: object
1063
+ properties:
1064
+ policies:
1065
+ type: array
1066
+ items:
1067
+ $ref: '#/components/schemas/Policy'
1068
+
1069
+ Policy:
1070
+ type: object
1071
+ properties:
1072
+ id:
1073
+ type: string
1074
+ name:
1075
+ type: string
1076
+ description:
1077
+ type: string
1078
+ type:
1079
+ type: string
1080
+ enum: [security, compliance, operational, quality]
1081
+ rules:
1082
+ type: array
1083
+ items:
1084
+ $ref: '#/components/schemas/PolicyRule'
1085
+ enforcement:
1086
+ type: string
1087
+ enum: [mandatory, recommended, optional]
1088
+
1089
+ PolicyRule:
1090
+ type: object
1091
+ properties:
1092
+ id:
1093
+ type: string
1094
+ condition:
1095
+ type: string
1096
+ action:
1097
+ type: string
1098
+ severity:
1099
+ type: string
1100
+ enum: [info, warning, error, critical]
1101
+
1102
+ ComplianceStatus:
1103
+ type: object
1104
+ properties:
1105
+ agentId:
1106
+ type: string
1107
+ compliant:
1108
+ type: boolean
1109
+ policies:
1110
+ type: array
1111
+ items:
1112
+ $ref: '#/components/schemas/PolicyCompliance'
1113
+ score:
1114
+ type: number
1115
+ minimum: 0
1116
+ maximum: 100
1117
+ lastChecked:
1118
+ type: string
1119
+ format: date-time
1120
+
1121
+ PolicyCompliance:
1122
+ type: object
1123
+ properties:
1124
+ policyId:
1125
+ type: string
1126
+ compliant:
1127
+ type: boolean
1128
+ violations:
1129
+ type: array
1130
+ items:
1131
+ $ref: '#/components/schemas/Violation'
1132
+
1133
+ Violation:
1134
+ type: object
1135
+ properties:
1136
+ ruleId:
1137
+ type: string
1138
+ message:
1139
+ type: string
1140
+ severity:
1141
+ type: string
1142
+ timestamp:
1143
+ type: string
1144
+ format: date-time
1145
+
1146
+ # Federation
1147
+ FederationNodesList:
1148
+ type: object
1149
+ properties:
1150
+ nodes:
1151
+ type: array
1152
+ items:
1153
+ $ref: '#/components/schemas/FederationNode'
1154
+
1155
+ FederationNode:
1156
+ type: object
1157
+ properties:
1158
+ id:
1159
+ type: string
1160
+ format: uuid
1161
+ name:
1162
+ type: string
1163
+ endpoint:
1164
+ type: string
1165
+ format: uri
1166
+ status:
1167
+ type: string
1168
+ enum: [online, offline, degraded]
1169
+ region:
1170
+ type: string
1171
+ capabilities:
1172
+ type: array
1173
+ items:
1174
+ type: string
1175
+ joinedAt:
1176
+ type: string
1177
+ format: date-time
1178
+
1179
+ FederationJoinRequest:
1180
+ type: object
1181
+ required:
1182
+ - nodeName
1183
+ - endpoint
1184
+ properties:
1185
+ nodeName:
1186
+ type: string
1187
+ endpoint:
1188
+ type: string
1189
+ format: uri
1190
+ capabilities:
1191
+ type: array
1192
+ items:
1193
+ type: string
1194
+ region:
1195
+ type: string
1196
+ certificate:
1197
+ type: string
1198
+
1199
+ FederationMembership:
1200
+ type: object
1201
+ properties:
1202
+ nodeId:
1203
+ type: string
1204
+ format: uuid
1205
+ status:
1206
+ type: string
1207
+ enum: [active, pending, suspended]
1208
+ joinedAt:
1209
+ type: string
1210
+ format: date-time
1211
+ certificate:
1212
+ type: string
1213
+
1214
+ # Monitoring & Metrics
1215
+ PlatformMetrics:
1216
+ type: object
1217
+ properties:
1218
+ agents:
1219
+ $ref: '#/components/schemas/AgentsMetrics'
1220
+ workflows:
1221
+ $ref: '#/components/schemas/WorkflowsMetrics'
1222
+ federation:
1223
+ $ref: '#/components/schemas/FederationMetrics'
1224
+ system:
1225
+ $ref: '#/components/schemas/SystemMetrics'
1226
+
1227
+ AgentsMetrics:
1228
+ type: object
1229
+ properties:
1230
+ total:
1231
+ type: integer
1232
+ active:
1233
+ type: integer
1234
+ byType:
1235
+ type: object
1236
+ additionalProperties:
1237
+ type: integer
1238
+ byStatus:
1239
+ type: object
1240
+ additionalProperties:
1241
+ type: integer
1242
+
1243
+ WorkflowsMetrics:
1244
+ type: object
1245
+ properties:
1246
+ total:
1247
+ type: integer
1248
+ executions:
1249
+ type: object
1250
+ properties:
1251
+ total:
1252
+ type: integer
1253
+ running:
1254
+ type: integer
1255
+ completed:
1256
+ type: integer
1257
+ failed:
1258
+ type: integer
1259
+ averageDuration:
1260
+ type: number
1261
+ successRate:
1262
+ type: number
1263
+
1264
+ FederationMetrics:
1265
+ type: object
1266
+ properties:
1267
+ nodes:
1268
+ type: integer
1269
+ onlineNodes:
1270
+ type: integer
1271
+ totalAgents:
1272
+ type: integer
1273
+ crossNodeTraffic:
1274
+ type: integer
1275
+
1276
+ SystemMetrics:
1277
+ type: object
1278
+ properties:
1279
+ cpu:
1280
+ type: number
1281
+ memory:
1282
+ type: number
1283
+ storage:
1284
+ type: number
1285
+ requestRate:
1286
+ type: number
1287
+ errorRate:
1288
+ type: number
1289
+
1290
+ AgentMetrics:
1291
+ type: object
1292
+ properties:
1293
+ requestCount:
1294
+ type: integer
1295
+ errorCount:
1296
+ type: integer
1297
+ averageResponseTime:
1298
+ type: number
1299
+ uptime:
1300
+ type: integer
1301
+ lastActive:
1302
+ type: string
1303
+ format: date-time
1304
+
1305
+ EventsList:
1306
+ type: object
1307
+ properties:
1308
+ events:
1309
+ type: array
1310
+ items:
1311
+ $ref: '#/components/schemas/Event'
1312
+ total:
1313
+ type: integer
1314
+
1315
+ Event:
1316
+ type: object
1317
+ properties:
1318
+ id:
1319
+ type: string
1320
+ format: uuid
1321
+ type:
1322
+ type: string
1323
+ source:
1324
+ type: string
1325
+ timestamp:
1326
+ type: string
1327
+ format: date-time
1328
+ data:
1329
+ type: object
1330
+ additionalProperties: true
1331
+
1332
+ # Common
1333
+ HealthStatus:
1334
+ type: object
1335
+ properties:
1336
+ status:
1337
+ type: string
1338
+ enum: [healthy, degraded, unhealthy]
1339
+ version:
1340
+ type: string
1341
+ uptime:
1342
+ type: integer
1343
+ timestamp:
1344
+ type: string
1345
+ format: date-time
1346
+ checks:
1347
+ type: object
1348
+ additionalProperties:
1349
+ type: object
1350
+ properties:
1351
+ status:
1352
+ type: string
1353
+ enum: [pass, fail]
1354
+ message:
1355
+ type: string
1356
+
1357
+ Problem:
1358
+ type: object
1359
+ description: RFC7807 Problem Details
1360
+ required:
1361
+ - type
1362
+ - title
1363
+ - status
1364
+ - traceId
1365
+ properties:
1366
+ type:
1367
+ type: string
1368
+ format: uri
1369
+ default: about:blank
1370
+ title:
1371
+ type: string
1372
+ status:
1373
+ type: integer
1374
+ format: int32
1375
+ detail:
1376
+ type: string
1377
+ instance:
1378
+ type: string
1379
+ format: uri
1380
+ traceId:
1381
+ type: string
1382
+ errors:
1383
+ type: object
1384
+ additionalProperties:
1385
+ type: array
1386
+ items:
1387
+ type: string
1388
+
1389
+ responses:
1390
+ HealthCheck:
1391
+ description: Service health status
1392
+ content:
1393
+ application/json:
1394
+ schema:
1395
+ $ref: '#/components/schemas/HealthStatus'
1396
+
1397
+ ValidationError:
1398
+ description: Validation error
1399
+ content:
1400
+ application/problem+json:
1401
+ schema:
1402
+ $ref: '#/components/schemas/Problem'
1403
+
1404
+ NotFound:
1405
+ description: Resource not found
1406
+ content:
1407
+ application/problem+json:
1408
+ schema:
1409
+ $ref: '#/components/schemas/Problem'
1410
+
1411
+ tags:
1412
+ - name: Health
1413
+ description: Service health and status
1414
+ - name: Registry
1415
+ description: Agent registry and discovery
1416
+ - name: Orchestration
1417
+ description: Multi-agent orchestration
1418
+ - name: Specification
1419
+ description: Agent specifications and validation
1420
+ - name: Certification
1421
+ description: Agent certification processes
1422
+ - name: Governance
1423
+ description: Policy and compliance management
1424
+ - name: Federation
1425
+ description: Federation and multi-tenancy
1426
+ - name: Monitoring
1427
+ description: Platform monitoring and metrics
1428
+
1429
+ x-ossa-metadata:
1430
+ version: 0.1.9
1431
+ compliance:
1432
+ level: enterprise
1433
+ frameworks:
1434
+ - OSSA
1435
+ - OpenAPI 3.1
1436
+ - RFC7807
1437
+ governance:
1438
+ approved: true
1439
+ approvedBy: Platform Team
1440
+ approvalDate: 2024-01-15
1441
+ security:
1442
+ classification: public
1443
+ authentication: required
1444
+ encryption: tls1.3
1445
+ observability:
1446
+ tracing: true
1447
+ metrics: true
1448
+ logging: true