@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
@@ -1,5 +1,6 @@
1
1
  import Link from 'next/link';
2
2
  import type { Metadata } from 'next';
3
+ import { Card, CardHeader, CardTitle, CardContent } from '@/components/ui/Card';
3
4
 
4
5
  export const metadata: Metadata = {
5
6
  title: 'Ecosystem - Open Standard Agents',
@@ -209,14 +210,14 @@ export default function EcosystemPage() {
209
210
 
210
211
  <div className="grid md:grid-cols-2 lg:grid-cols-3 gap-6">
211
212
  {runtimes.map((runtime) => (
212
- <div key={runtime.name} className="card p-6 hover:shadow-lg transition-shadow">
213
+ <Card key={runtime.name} variant="default" padding="md" elevation={1} hover>
213
214
  <div className="flex items-center justify-between mb-4">
214
215
  <span className="text-4xl">{runtime.logo}</span>
215
216
  <StatusBadge status={runtime.status} />
216
217
  </div>
217
218
  <h3 className="text-xl font-semibold mb-2">{runtime.name}</h3>
218
219
  <p className="text-gray-600">{runtime.notes}</p>
219
- </div>
220
+ </Card>
220
221
  ))}
221
222
  </div>
222
223
  </section>
@@ -225,109 +226,125 @@ export default function EcosystemPage() {
225
226
  <section className="mb-16">
226
227
  <h2 className="text-4xl font-bold mb-6 text-primary">Integration Ecosystem</h2>
227
228
  <div className="grid md:grid-cols-2 gap-6">
228
- <div className="card p-6">
229
- <h3 className="text-2xl font-semibold mb-4 text-primary">Tool Integration</h3>
230
- <ul className="space-y-3 text-gray-700">
231
- <li className="flex items-start">
232
- <span className="text-green-500 mr-2">✓</span>
233
- <span><strong>MCP Servers:</strong> Native Model Context Protocol support</span>
234
- </li>
235
- <li className="flex items-start">
236
- <span className="text-green-500 mr-2">✓</span>
237
- <span><strong>OpenAPI/REST:</strong> Standard HTTP API integration</span>
238
- </li>
239
- <li className="flex items-start">
240
- <span className="text-green-500 mr-2">✓</span>
241
- <span><strong>GraphQL:</strong> Query-based data fetching</span>
242
- </li>
243
- <li className="flex items-start">
244
- <span className="text-green-500 mr-2">✓</span>
245
- <span><strong>gRPC:</strong> High-performance RPC protocols</span>
246
- </li>
247
- <li className="flex items-start">
248
- <span className="text-green-500 mr-2">✓</span>
249
- <span><strong>WebSockets:</strong> Real-time bidirectional communication</span>
250
- </li>
251
- </ul>
252
- </div>
229
+ <Card variant="default" padding="md" elevation={1}>
230
+ <CardHeader>
231
+ <CardTitle className="text-primary">Tool Integration</CardTitle>
232
+ </CardHeader>
233
+ <CardContent>
234
+ <ul className="space-y-3 text-gray-700">
235
+ <li className="flex items-start">
236
+ <span className="text-green-500 mr-2">✓</span>
237
+ <span><strong>MCP Servers:</strong> Native Model Context Protocol support</span>
238
+ </li>
239
+ <li className="flex items-start">
240
+ <span className="text-green-500 mr-2">✓</span>
241
+ <span><strong>OpenAPI/REST:</strong> Standard HTTP API integration</span>
242
+ </li>
243
+ <li className="flex items-start">
244
+ <span className="text-green-500 mr-2">✓</span>
245
+ <span><strong>GraphQL:</strong> Query-based data fetching</span>
246
+ </li>
247
+ <li className="flex items-start">
248
+ <span className="text-green-500 mr-2">✓</span>
249
+ <span><strong>gRPC:</strong> High-performance RPC protocols</span>
250
+ </li>
251
+ <li className="flex items-start">
252
+ <span className="text-green-500 mr-2">✓</span>
253
+ <span><strong>WebSockets:</strong> Real-time bidirectional communication</span>
254
+ </li>
255
+ </ul>
256
+ </CardContent>
257
+ </Card>
253
258
 
254
- <div className="card p-6">
255
- <h3 className="text-2xl font-semibold mb-4 text-primary">Data Integration</h3>
256
- <ul className="space-y-3 text-gray-700">
257
- <li className="flex items-start">
258
- <span className="text-green-500 mr-2">✓</span>
259
- <span><strong>Vector Databases:</strong> Pinecone, Weaviate, Qdrant</span>
260
- </li>
261
- <li className="flex items-start">
262
- <span className="text-green-500 mr-2">✓</span>
263
- <span><strong>SQL Databases:</strong> PostgreSQL, MySQL, SQLite</span>
264
- </li>
265
- <li className="flex items-start">
266
- <span className="text-green-500 mr-2">✓</span>
267
- <span><strong>NoSQL:</strong> MongoDB, Redis, DynamoDB</span>
268
- </li>
269
- <li className="flex items-start">
270
- <span className="text-green-500 mr-2">✓</span>
271
- <span><strong>Message Queues:</strong> RabbitMQ, Kafka, SQS</span>
272
- </li>
273
- <li className="flex items-start">
274
- <span className="text-green-500 mr-2">✓</span>
275
- <span><strong>Object Storage:</strong> S3, GCS, Azure Blob</span>
276
- </li>
277
- </ul>
278
- </div>
259
+ <Card variant="default" padding="md" elevation={1}>
260
+ <CardHeader>
261
+ <CardTitle className="text-primary">Data Integration</CardTitle>
262
+ </CardHeader>
263
+ <CardContent>
264
+ <ul className="space-y-3 text-gray-700">
265
+ <li className="flex items-start">
266
+ <span className="text-green-500 mr-2">✓</span>
267
+ <span><strong>Vector Databases:</strong> Pinecone, Weaviate, Qdrant</span>
268
+ </li>
269
+ <li className="flex items-start">
270
+ <span className="text-green-500 mr-2">✓</span>
271
+ <span><strong>SQL Databases:</strong> PostgreSQL, MySQL, SQLite</span>
272
+ </li>
273
+ <li className="flex items-start">
274
+ <span className="text-green-500 mr-2">✓</span>
275
+ <span><strong>NoSQL:</strong> MongoDB, Redis, DynamoDB</span>
276
+ </li>
277
+ <li className="flex items-start">
278
+ <span className="text-green-500 mr-2">✓</span>
279
+ <span><strong>Message Queues:</strong> RabbitMQ, Kafka, SQS</span>
280
+ </li>
281
+ <li className="flex items-start">
282
+ <span className="text-green-500 mr-2">✓</span>
283
+ <span><strong>Object Storage:</strong> S3, GCS, Azure Blob</span>
284
+ </li>
285
+ </ul>
286
+ </CardContent>
287
+ </Card>
279
288
 
280
- <div className="card p-6">
281
- <h3 className="text-2xl font-semibold mb-4 text-primary">Monitoring & Observability</h3>
282
- <ul className="space-y-3 text-gray-700">
283
- <li className="flex items-start">
284
- <span className="text-green-500 mr-2">✓</span>
285
- <span><strong>OpenTelemetry:</strong> Distributed tracing support</span>
286
- </li>
287
- <li className="flex items-start">
288
- <span className="text-green-500 mr-2">✓</span>
289
- <span><strong>Prometheus:</strong> Metrics collection and alerting</span>
290
- </li>
291
- <li className="flex items-start">
292
- <span className="text-green-500 mr-2">✓</span>
293
- <span><strong>Grafana:</strong> Visualization and dashboards</span>
294
- </li>
295
- <li className="flex items-start">
296
- <span className="text-green-500 mr-2">✓</span>
297
- <span><strong>Sentry:</strong> Error tracking and reporting</span>
298
- </li>
299
- <li className="flex items-start">
300
- <span className="text-green-500 mr-2">✓</span>
301
- <span><strong>DataDog:</strong> Full-stack monitoring</span>
302
- </li>
303
- </ul>
304
- </div>
289
+ <Card variant="default" padding="md" elevation={1}>
290
+ <CardHeader>
291
+ <CardTitle className="text-primary">Monitoring & Observability</CardTitle>
292
+ </CardHeader>
293
+ <CardContent>
294
+ <ul className="space-y-3 text-gray-700">
295
+ <li className="flex items-start">
296
+ <span className="text-green-500 mr-2">✓</span>
297
+ <span><strong>OpenTelemetry:</strong> Distributed tracing support</span>
298
+ </li>
299
+ <li className="flex items-start">
300
+ <span className="text-green-500 mr-2">✓</span>
301
+ <span><strong>Prometheus:</strong> Metrics collection and alerting</span>
302
+ </li>
303
+ <li className="flex items-start">
304
+ <span className="text-green-500 mr-2">✓</span>
305
+ <span><strong>Grafana:</strong> Visualization and dashboards</span>
306
+ </li>
307
+ <li className="flex items-start">
308
+ <span className="text-green-500 mr-2">✓</span>
309
+ <span><strong>Sentry:</strong> Error tracking and reporting</span>
310
+ </li>
311
+ <li className="flex items-start">
312
+ <span className="text-green-500 mr-2">✓</span>
313
+ <span><strong>DataDog:</strong> Full-stack monitoring</span>
314
+ </li>
315
+ </ul>
316
+ </CardContent>
317
+ </Card>
305
318
 
306
- <div className="card p-6">
307
- <h3 className="text-2xl font-semibold mb-4 text-primary">CI/CD & DevOps</h3>
308
- <ul className="space-y-3 text-gray-700">
309
- <li className="flex items-start">
310
- <span className="text-green-500 mr-2">✓</span>
311
- <span><strong>GitHub Actions:</strong> Automated testing and deployment</span>
312
- </li>
313
- <li className="flex items-start">
314
- <span className="text-green-500 mr-2">✓</span>
315
- <span><strong>GitLab CI/CD:</strong> Pipeline automation</span>
316
- </li>
317
- <li className="flex items-start">
318
- <span className="text-green-500 mr-2">✓</span>
319
- <span><strong>Jenkins:</strong> Continuous integration server</span>
320
- </li>
321
- <li className="flex items-start">
322
- <span className="text-green-500 mr-2">✓</span>
323
- <span><strong>ArgoCD:</strong> GitOps continuous delivery</span>
324
- </li>
325
- <li className="flex items-start">
326
- <span className="text-green-500 mr-2">✓</span>
327
- <span><strong>Terraform:</strong> Infrastructure as code</span>
328
- </li>
329
- </ul>
330
- </div>
319
+ <Card variant="default" padding="md" elevation={1}>
320
+ <CardHeader>
321
+ <CardTitle className="text-primary">CI/CD & DevOps</CardTitle>
322
+ </CardHeader>
323
+ <CardContent>
324
+ <ul className="space-y-3 text-gray-700">
325
+ <li className="flex items-start">
326
+ <span className="text-green-500 mr-2">✓</span>
327
+ <span><strong>GitHub Actions:</strong> Automated testing and deployment</span>
328
+ </li>
329
+ <li className="flex items-start">
330
+ <span className="text-green-500 mr-2">✓</span>
331
+ <span><strong>GitLab CI/CD:</strong> Pipeline automation</span>
332
+ </li>
333
+ <li className="flex items-start">
334
+ <span className="text-green-500 mr-2">✓</span>
335
+ <span><strong>Jenkins:</strong> Continuous integration server</span>
336
+ </li>
337
+ <li className="flex items-start">
338
+ <span className="text-green-500 mr-2">✓</span>
339
+ <span><strong>ArgoCD:</strong> GitOps continuous delivery</span>
340
+ </li>
341
+ <li className="flex items-start">
342
+ <span className="text-green-500 mr-2">✓</span>
343
+ <span><strong>Terraform:</strong> Infrastructure as code</span>
344
+ </li>
345
+ </ul>
346
+ </CardContent>
347
+ </Card>
331
348
  </div>
332
349
  </section>
333
350
 
@@ -335,17 +352,35 @@ export default function EcosystemPage() {
335
352
  <section className="mb-16">
336
353
  <h2 className="text-4xl font-bold mb-6 text-primary">Community & Resources</h2>
337
354
  <div className="grid md:grid-cols-3 gap-6">
338
- <Link href="/docs/ecosystem/overview" className="card-hover p-6">
339
- <h3 className="text-xl font-semibold mb-2 text-primary">Ecosystem Overview</h3>
340
- <p className="text-gray-700">Learn about the OSSA ecosystem architecture and integration patterns.</p>
355
+ <Link href="/docs/ecosystem/overview">
356
+ <Card variant="interactive" padding="md" elevation={1} className="h-full">
357
+ <CardHeader>
358
+ <CardTitle className="text-primary">Ecosystem Overview</CardTitle>
359
+ </CardHeader>
360
+ <CardContent>
361
+ <p className="text-gray-700">Learn about the OSSA ecosystem architecture and integration patterns.</p>
362
+ </CardContent>
363
+ </Card>
341
364
  </Link>
342
- <Link href="/docs/ecosystem/framework-support" className="card-hover p-6">
343
- <h3 className="text-xl font-semibold mb-2 text-primary">Framework Support Guide</h3>
344
- <p className="text-gray-700">Detailed compatibility information and migration guides for each framework.</p>
365
+ <Link href="/docs/ecosystem/framework-support">
366
+ <Card variant="interactive" padding="md" elevation={1} className="h-full">
367
+ <CardHeader>
368
+ <CardTitle className="text-primary">Framework Support Guide</CardTitle>
369
+ </CardHeader>
370
+ <CardContent>
371
+ <p className="text-gray-700">Detailed compatibility information and migration guides for each framework.</p>
372
+ </CardContent>
373
+ </Card>
345
374
  </Link>
346
- <Link href="/examples" className="card-hover p-6">
347
- <h3 className="text-xl font-semibold mb-2 text-primary">Integration Examples</h3>
348
- <p className="text-gray-700">Real-world examples of OSSA integrations across frameworks and platforms.</p>
375
+ <Link href="/examples">
376
+ <Card variant="interactive" padding="md" elevation={1} className="h-full">
377
+ <CardHeader>
378
+ <CardTitle className="text-primary">Integration Examples</CardTitle>
379
+ </CardHeader>
380
+ <CardContent>
381
+ <p className="text-gray-700">Real-world examples of OSSA integrations across frameworks and platforms.</p>
382
+ </CardContent>
383
+ </Card>
349
384
  </Link>
350
385
  </div>
351
386
  </section>
@@ -11,49 +11,40 @@ interface ExampleFile {
11
11
  }
12
12
 
13
13
  function getAllExamples(): ExampleFile[] {
14
- // Check for mounted examples directory (Docker) or local development
15
- const examplesDir = fs.existsSync('/examples')
16
- ? '/examples'
17
- : path.join(process.cwd(), '../examples');
18
- const examples: ExampleFile[] = [];
19
-
20
- if (!fs.existsSync(examplesDir)) {
21
- return examples;
22
- }
23
-
24
- function traverseDir(dir: string, category = ''): void {
25
- const entries = fs.readdirSync(dir, { withFileTypes: true });
26
-
27
- for (const entry of entries) {
28
- const fullPath = path.join(dir, entry.name);
29
- const relativePath = path.relative(examplesDir, fullPath);
30
-
31
- if (entry.isDirectory()) {
32
- traverseDir(fullPath, entry.name);
33
- } else if (
34
- entry.isFile() &&
35
- (entry.name.endsWith('.yml') ||
36
- entry.name.endsWith('.yaml') ||
37
- entry.name.endsWith('.json') ||
38
- entry.name.endsWith('.ts'))
39
- ) {
40
- try {
41
- const content = fs.readFileSync(fullPath, 'utf8');
42
- examples.push({
43
- name: entry.name,
44
- path: relativePath,
45
- content,
46
- category: category || 'root',
47
- });
48
- } catch (error) {
49
- // Skip files that can't be read
14
+ try {
15
+ // Try multiple absolute paths
16
+ const paths = [
17
+ path.resolve(process.cwd(), 'public', 'examples.json'),
18
+ path.join(process.cwd(), 'public', 'examples.json'),
19
+ path.resolve(__dirname, '..', '..', 'public', 'examples.json'),
20
+ ];
21
+
22
+ for (const examplesJsonPath of paths) {
23
+ if (fs.existsSync(examplesJsonPath)) {
24
+ const content = fs.readFileSync(examplesJsonPath, 'utf8');
25
+ const examples = JSON.parse(content);
26
+ if (Array.isArray(examples) && examples.length > 0) {
27
+ return examples;
50
28
  }
51
29
  }
52
30
  }
31
+
32
+ // If still not found, try reading from public directory directly
33
+ const publicDir = path.resolve(process.cwd(), 'public');
34
+ const directPath = path.join(publicDir, 'examples.json');
35
+ if (fs.existsSync(directPath)) {
36
+ const content = fs.readFileSync(directPath, 'utf8');
37
+ const examples = JSON.parse(content);
38
+ if (Array.isArray(examples)) {
39
+ return examples;
40
+ }
41
+ }
42
+
43
+ return [];
44
+ } catch (error) {
45
+ console.error('Error loading examples:', error);
46
+ return [];
53
47
  }
54
-
55
- traverseDir(examplesDir);
56
- return examples;
57
48
  }
58
49
 
59
50
  export default function ExamplesPage() {
@@ -65,10 +56,29 @@ export default function ExamplesPage() {
65
56
  return acc;
66
57
  }, {} as Record<string, number>);
67
58
 
59
+ // Extract unique frameworks from example paths and content
60
+ const frameworkNames = [
61
+ 'kagent', 'langchain', 'crewai', 'openai', 'anthropic',
62
+ 'autogen', 'langflow', 'langgraph', 'llamaindex', 'cursor',
63
+ 'vercel', 'drupal', 'mcp', 'huggingface', 'google', 'aws',
64
+ 'azure', 'github', 'docker', 'kubernetes'
65
+ ];
66
+
67
+ const frameworksInExamples = new Set<string>();
68
+ examples.forEach(ex => {
69
+ const pathLower = ex.path.toLowerCase();
70
+ const contentLower = ex.content.toLowerCase();
71
+ frameworkNames.forEach(fw => {
72
+ if (pathLower.includes(fw) || contentLower.includes(`"${fw}"`) || contentLower.includes(`'${fw}'`)) {
73
+ frameworksInExamples.add(fw);
74
+ }
75
+ });
76
+ });
77
+
68
78
  return (
69
79
  <>
70
80
  {/* Hero Section */}
71
- <div className="bg-gradient-to-br from-primary via-accent to-secondary text-white py-16 px-4">
81
+ <div className="bg-gradient-to-br from-blue-600 via-primary to-secondary text-white py-16 px-4">
72
82
  <div className="container mx-auto max-w-6xl text-center">
73
83
  <div className="inline-flex items-center justify-center w-20 h-20 bg-white/20 backdrop-blur-sm rounded-full mb-6">
74
84
  <svg className="w-10 h-10" fill="none" stroke="currentColor" viewBox="0 0 24 24">
@@ -100,7 +110,7 @@ export default function ExamplesPage() {
100
110
  </div>
101
111
  <div className="w-px h-12 bg-gray-300"></div>
102
112
  <div className="text-center">
103
- <div className="text-3xl font-bold text-primary">15+</div>
113
+ <div className="text-3xl font-bold text-primary">{frameworksInExamples.size}</div>
104
114
  <div className="text-sm text-gray-600">Frameworks</div>
105
115
  </div>
106
116
  </div>