@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,358 @@
1
+ /**
2
+ * OSSA Agent with MCPB Integration - TypeScript Example
3
+ *
4
+ * This example demonstrates how to create OSSA agents with various bridge configurations
5
+ * including MCP (Model Context Protocol) Bridge for Claude Desktop integration.
6
+ */
7
+
8
+ import type {
9
+ Agent,
10
+ CreateAgentRequest,
11
+ BridgeConfig,
12
+ MCPBridgeConfig,
13
+ MCPTool,
14
+ MCPResource,
15
+ MCPPrompt,
16
+ } from '../../src/server/types/agent';
17
+
18
+ // Example 1: Create an MCP-enabled agent for Claude Desktop
19
+ export const createMCPAgent = (): CreateAgentRequest => {
20
+ return {
21
+ type: 'worker',
22
+ name: 'Code Analysis Agent',
23
+ description: 'Analyzes source code and provides feedback',
24
+ version: '1.0.0',
25
+ capabilities: ['code-analysis', 'static-analysis', 'security-scanning'],
26
+ configuration: {
27
+ max_file_size_mb: 10,
28
+ supported_languages: ['typescript', 'javascript', 'python', 'go'],
29
+ },
30
+ metadata: {
31
+ author: 'OSSA Team',
32
+ tags: ['code', 'analysis', 'mcp'],
33
+ documentation_url: 'https://docs.example.com/code-analysis-agent',
34
+ },
35
+ bridge: {
36
+ mcp: {
37
+ enabled: true,
38
+ server_type: 'stdio', // For Claude Desktop
39
+ tools: [
40
+ {
41
+ name: 'analyze_code',
42
+ description:
43
+ 'Analyze source code for issues, bugs, and security vulnerabilities',
44
+ input_schema: {
45
+ type: 'object',
46
+ properties: {
47
+ code: {
48
+ type: 'string',
49
+ description: 'The source code to analyze',
50
+ },
51
+ language: {
52
+ type: 'string',
53
+ enum: ['typescript', 'javascript', 'python', 'go'],
54
+ description: 'Programming language',
55
+ },
56
+ rules: {
57
+ type: 'array',
58
+ items: { type: 'string' },
59
+ description: 'Specific rules to check',
60
+ },
61
+ },
62
+ required: ['code', 'language'],
63
+ },
64
+ output_schema: {
65
+ type: 'object',
66
+ properties: {
67
+ issues: {
68
+ type: 'array',
69
+ items: {
70
+ type: 'object',
71
+ properties: {
72
+ severity: {
73
+ type: 'string',
74
+ enum: ['error', 'warning', 'info'],
75
+ },
76
+ line: { type: 'number' },
77
+ message: { type: 'string' },
78
+ rule: { type: 'string' },
79
+ },
80
+ },
81
+ },
82
+ summary: {
83
+ type: 'object',
84
+ properties: {
85
+ total_issues: { type: 'number' },
86
+ errors: { type: 'number' },
87
+ warnings: { type: 'number' },
88
+ },
89
+ },
90
+ },
91
+ },
92
+ capability: 'code-analysis',
93
+ },
94
+ {
95
+ name: 'suggest_fixes',
96
+ description: 'Suggest fixes for identified code issues',
97
+ input_schema: {
98
+ type: 'object',
99
+ properties: {
100
+ issue_id: { type: 'string' },
101
+ context: { type: 'string' },
102
+ },
103
+ required: ['issue_id'],
104
+ },
105
+ capability: 'code-analysis',
106
+ },
107
+ ],
108
+ resources: [
109
+ {
110
+ uri: 'ossa://code-analysis/results',
111
+ name: 'Analysis Results',
112
+ description: 'Access to previous analysis results',
113
+ mimeType: 'application/json',
114
+ readonly: true,
115
+ },
116
+ {
117
+ uri: 'ossa://code-analysis/rules',
118
+ name: 'Analysis Rules',
119
+ description: 'Code analysis rules and configurations',
120
+ mimeType: 'application/json',
121
+ readonly: false,
122
+ },
123
+ ],
124
+ prompts: [
125
+ {
126
+ name: 'review_pr',
127
+ description: 'Review a pull request',
128
+ template: `Review the following {{language}} code changes:
129
+
130
+ {{diff}}
131
+
132
+ Focus on:
133
+ - Code quality
134
+ - Potential bugs
135
+ - Security issues
136
+ - Best practices
137
+
138
+ Provide specific, actionable feedback.`,
139
+ arguments: [
140
+ { name: 'language', type: 'string', required: true },
141
+ { name: 'diff', type: 'string', required: true },
142
+ ],
143
+ },
144
+ {
145
+ name: 'explain_issue',
146
+ description: 'Explain a code issue in detail',
147
+ template:
148
+ 'Explain the following code issue:\n\n{{issue}}\n\nInclude examples of how to fix it.',
149
+ arguments: [{ name: 'issue', type: 'string', required: true }],
150
+ },
151
+ ],
152
+ config: {
153
+ max_message_size: 1048576, // 1MB
154
+ timeout_ms: 30000, // 30 seconds
155
+ retry_count: 3,
156
+ },
157
+ },
158
+ },
159
+ };
160
+ };
161
+
162
+ // Example 2: Multi-bridge agent (MCP + LangChain)
163
+ export const createMultiBridgeAgent = (): CreateAgentRequest => {
164
+ return {
165
+ type: 'orchestrator',
166
+ name: 'Multi-Protocol Orchestrator',
167
+ version: '1.0.0',
168
+ capabilities: ['orchestration', 'workflow-execution', 'integration'],
169
+ configuration: {},
170
+ bridge: {
171
+ // Enable MCP for Claude Desktop
172
+ mcp: {
173
+ enabled: true,
174
+ server_type: 'websocket',
175
+ tools: [
176
+ {
177
+ name: 'execute_workflow',
178
+ description: 'Execute a multi-step workflow',
179
+ capability: 'workflow-execution',
180
+ },
181
+ ],
182
+ },
183
+ // Enable LangChain for Python integration
184
+ langchain: {
185
+ enabled: true,
186
+ tool_class: 'OSSAWorkflowTool',
187
+ chain_type: 'agent',
188
+ memory: {
189
+ type: 'conversation',
190
+ max_tokens: 4096,
191
+ },
192
+ export: {
193
+ as_tool: true,
194
+ as_chain: true,
195
+ as_agent: false,
196
+ },
197
+ },
198
+ // Enable OpenAPI for REST integration
199
+ openapi: {
200
+ enabled: true,
201
+ spec_url: 'https://api.example.com/openapi.json',
202
+ spec_version: '3.1',
203
+ auto_generate: false,
204
+ },
205
+ },
206
+ };
207
+ };
208
+
209
+ // Example 3: Helper function to create MCP tools from OSSA capabilities
210
+ export const createMCPToolsFromCapabilities = (
211
+ capabilities: string[]
212
+ ): MCPTool[] => {
213
+ return capabilities.map((capability) => ({
214
+ name: capability.replace(/-/g, '_'),
215
+ description: `Execute ${capability} capability`,
216
+ capability,
217
+ }));
218
+ };
219
+
220
+ // Example 4: Validate MCP configuration
221
+ export const validateMCPConfig = (config: MCPBridgeConfig): boolean => {
222
+ if (!config.enabled) {
223
+ return false;
224
+ }
225
+
226
+ // Check transport type
227
+ if (
228
+ config.server_type &&
229
+ !['stdio', 'sse', 'websocket'].includes(config.server_type)
230
+ ) {
231
+ throw new Error(`Invalid MCP server type: ${config.server_type}`);
232
+ }
233
+
234
+ // Validate tools
235
+ if (config.tools) {
236
+ for (const tool of config.tools) {
237
+ if (!tool.name || !tool.description) {
238
+ throw new Error('MCP tools must have name and description');
239
+ }
240
+ }
241
+ }
242
+
243
+ // Validate resources
244
+ if (config.resources) {
245
+ for (const resource of config.resources) {
246
+ if (!resource.uri || !resource.name) {
247
+ throw new Error('MCP resources must have uri and name');
248
+ }
249
+ }
250
+ }
251
+
252
+ return true;
253
+ };
254
+
255
+ // Example 5: Create an agent with custom bridge
256
+ export const createCustomBridgeAgent = (): CreateAgentRequest => {
257
+ return {
258
+ type: 'worker',
259
+ name: 'Custom Bridge Agent',
260
+ version: '1.0.0',
261
+ capabilities: ['custom-integration'],
262
+ configuration: {},
263
+ bridge: {
264
+ mcp: {
265
+ enabled: true,
266
+ server_type: 'stdio',
267
+ },
268
+ custom: {
269
+ my_protocol: {
270
+ enabled: true,
271
+ endpoint: 'wss://custom.example.com',
272
+ features: ['streaming', 'bidirectional'],
273
+ },
274
+ },
275
+ },
276
+ };
277
+ };
278
+
279
+ // Example 6: Runtime bridge configuration
280
+ export class AgentBridgeManager {
281
+ private agent: Agent;
282
+
283
+ constructor(agent: Agent) {
284
+ this.agent = agent;
285
+ }
286
+
287
+ isMCPEnabled(): boolean {
288
+ return this.agent.bridge?.mcp?.enabled ?? false;
289
+ }
290
+
291
+ getMCPTransport(): 'stdio' | 'sse' | 'websocket' | undefined {
292
+ return this.agent.bridge?.mcp?.server_type;
293
+ }
294
+
295
+ getMCPTools(): MCPTool[] {
296
+ return this.agent.bridge?.mcp?.tools ?? [];
297
+ }
298
+
299
+ getMCPResources(): MCPResource[] {
300
+ return this.agent.bridge?.mcp?.resources ?? [];
301
+ }
302
+
303
+ getMCPPrompts(): MCPPrompt[] {
304
+ return this.agent.bridge?.mcp?.prompts ?? [];
305
+ }
306
+
307
+ getSupportedBridges(): string[] {
308
+ const bridges: string[] = [];
309
+ if (this.agent.bridge?.mcp?.enabled) bridges.push('mcp');
310
+ if (this.agent.bridge?.openapi?.enabled) bridges.push('openapi');
311
+ if (this.agent.bridge?.langchain?.enabled) bridges.push('langchain');
312
+ if (this.agent.bridge?.crewai?.enabled) bridges.push('crewai');
313
+ if (this.agent.bridge?.autogen?.enabled) bridges.push('autogen');
314
+ if (this.agent.bridge?.a2a?.enabled) bridges.push('a2a');
315
+ return bridges;
316
+ }
317
+
318
+ isMultiBridge(): boolean {
319
+ return this.getSupportedBridges().length > 1;
320
+ }
321
+ }
322
+
323
+ // Example 7: Usage example
324
+ export const exampleUsage = () => {
325
+ // Create an MCP agent
326
+ const mcpAgentRequest = createMCPAgent();
327
+ console.log(
328
+ 'MCP Agent Configuration:',
329
+ JSON.stringify(mcpAgentRequest, null, 2)
330
+ );
331
+
332
+ // Create a multi-bridge agent
333
+ const multiBridgeRequest = createMultiBridgeAgent();
334
+ console.log(
335
+ 'Multi-Bridge Agent:',
336
+ JSON.stringify(multiBridgeRequest, null, 2)
337
+ );
338
+
339
+ // Validate MCP configuration
340
+ const mcpConfig: MCPBridgeConfig = {
341
+ enabled: true,
342
+ server_type: 'stdio',
343
+ tools: [{ name: 'test_tool', description: 'Test tool' }],
344
+ };
345
+ const isValid = validateMCPConfig(mcpConfig);
346
+ console.log('MCP Config Valid:', isValid);
347
+ };
348
+
349
+ // Export types for use in other modules
350
+ export type {
351
+ Agent,
352
+ CreateAgentRequest,
353
+ BridgeConfig,
354
+ MCPBridgeConfig,
355
+ MCPTool,
356
+ MCPResource,
357
+ MCPPrompt,
358
+ };
@@ -0,0 +1,43 @@
1
+ {
2
+ "apiVersion": "ossa/v0.2.3",
3
+ "kind": "Agent",
4
+ "metadata": {
5
+ "name": "edge-chat-agent",
6
+ "version": "1.0.0",
7
+ "description": "Vercel AI SDK edge runtime agent"
8
+ },
9
+ "spec": {
10
+ "role": "You are a helpful AI assistant running on Vercel Edge.",
11
+ "llm": {
12
+ "provider": "openai",
13
+ "model": "gpt-4",
14
+ "temperature": 0.7
15
+ },
16
+ "tools": []
17
+ },
18
+ "extensions": {
19
+ "vercel_ai": {
20
+ "enabled": true,
21
+ "runtime": "edge",
22
+ "stream": true,
23
+ "route": "/api/chat",
24
+ "tools": [
25
+ {
26
+ "name": "get_weather",
27
+ "description": "Get current weather for a location",
28
+ "parameters": {
29
+ "type": "object",
30
+ "properties": {
31
+ "location": {
32
+ "type": "string",
33
+ "description": "City name"
34
+ }
35
+ },
36
+ "required": ["location"]
37
+ }
38
+ }
39
+ ]
40
+ }
41
+ }
42
+ }
43
+
@@ -0,0 +1,33 @@
1
+ version: "3.8"
2
+
3
+ services:
4
+ ossa:
5
+ build:
6
+ context: ..
7
+ dockerfile: Dockerfile
8
+ container_name: ossa
9
+ ports:
10
+ - "7001:7001"
11
+ environment:
12
+ - NODE_ENV=production
13
+ - PORT=7001
14
+ - HOST=0.0.0.0
15
+ networks:
16
+ - llm-network
17
+ healthcheck:
18
+ test:
19
+ [
20
+ "CMD",
21
+ "node",
22
+ "-e",
23
+ "require('http').get('http://localhost:7001/health', (r) => process.exit(r.statusCode === 200 ? 0 : 1))",
24
+ ]
25
+ interval: 30s
26
+ timeout: 10s
27
+ retries: 3
28
+ start_period: 30s
29
+ restart: unless-stopped
30
+
31
+ networks:
32
+ llm-network:
33
+ external: true
package/junit.xml ADDED
@@ -0,0 +1 @@
1
+ <?xml version="1.0" encoding="UTF-8"?><testsuites></testsuites>