@bluefly/openstandardagents 0.2.5-RC → 0.2.8

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 (365) hide show
  1. package/.devfile.yaml +1 -1
  2. package/.env.example +1 -1
  3. package/.github/ISSUE_TEMPLATE/bug_report.yml +63 -0
  4. package/.github/ISSUE_TEMPLATE/feature_request.yml +40 -0
  5. package/.github/workflows/dependabot-comment.yml +34 -0
  6. package/.github/workflows/pr-comment.yml +33 -0
  7. package/.husky/pre-commit +5 -0
  8. package/.kiro/config.json +21 -0
  9. package/.kiro/settings/mcp.json +61 -0
  10. package/.kiro/specs/scripts-migration-api-first/design.md +883 -0
  11. package/.kiro/specs/scripts-migration-api-first/requirements.md +165 -0
  12. package/.kiro/specs/scripts-migration-api-first/tasks.md +539 -0
  13. package/.kiro/specs/{website-design-audit → website-brand-identity}/design.md +381 -0
  14. package/.kiro/specs/{website-design-audit → website-brand-identity}/requirements.md +88 -0
  15. package/.kiro/specs/website-brand-identity/tasks.md +981 -0
  16. package/.version.json +2 -2
  17. package/.wiki-config.json +24 -0
  18. package/CHANGELOG.md +34 -18
  19. package/CODEOWNERS +75 -0
  20. package/CONTRIBUTING.md +1 -1
  21. package/README.md +176 -239
  22. package/bin/ossa-dev +42 -0
  23. package/bin/ossa-export +32 -0
  24. package/bin/ossa-generate +60 -0
  25. package/bin/ossa-health +40 -0
  26. package/bin/ossa-init +26 -0
  27. package/dist/index.d.ts +1 -0
  28. package/dist/index.d.ts.map +1 -1
  29. package/dist/index.js +2 -0
  30. package/dist/index.js.map +1 -1
  31. package/dist/repositories/schema.repository.d.ts +6 -1
  32. package/dist/repositories/schema.repository.d.ts.map +1 -1
  33. package/dist/repositories/schema.repository.js +63 -36
  34. package/dist/repositories/schema.repository.js.map +1 -1
  35. package/dist/services/github-sync/github-client.d.ts +14 -0
  36. package/dist/services/github-sync/github-client.d.ts.map +1 -0
  37. package/dist/services/github-sync/github-client.js +41 -0
  38. package/dist/services/github-sync/github-client.js.map +1 -0
  39. package/dist/services/github-sync/gitlab-client.d.ts +17 -0
  40. package/dist/services/github-sync/gitlab-client.d.ts.map +1 -0
  41. package/dist/services/github-sync/gitlab-client.js +42 -0
  42. package/dist/services/github-sync/gitlab-client.js.map +1 -0
  43. package/dist/services/github-sync/schemas.d.ts +46 -0
  44. package/dist/services/github-sync/schemas.d.ts.map +1 -0
  45. package/dist/services/github-sync/schemas.js +36 -0
  46. package/dist/services/github-sync/schemas.js.map +1 -0
  47. package/dist/services/github-sync/sync.service.d.ts +27 -0
  48. package/dist/services/github-sync/sync.service.d.ts.map +1 -0
  49. package/dist/services/github-sync/sync.service.js +99 -0
  50. package/dist/services/github-sync/sync.service.js.map +1 -0
  51. package/dist/services/migration.service.d.ts +4 -3
  52. package/dist/services/migration.service.d.ts.map +1 -1
  53. package/dist/services/migration.service.js +11 -10
  54. package/dist/services/migration.service.js.map +1 -1
  55. package/dist/services/release-automation/release.service.js +1 -1
  56. package/dist/services/release-automation/release.service.js.map +1 -1
  57. package/dist/services/release-automation/schemas/release.schema.js +1 -1
  58. package/dist/services/runtime/claude/capability-mapper.d.ts +84 -0
  59. package/dist/services/runtime/claude/capability-mapper.d.ts.map +1 -0
  60. package/dist/services/runtime/claude/capability-mapper.js +245 -0
  61. package/dist/services/runtime/claude/capability-mapper.js.map +1 -0
  62. package/dist/services/runtime/claude/claude-adapter.d.ts +80 -0
  63. package/dist/services/runtime/claude/claude-adapter.d.ts.map +1 -0
  64. package/dist/services/runtime/claude/claude-adapter.js +287 -0
  65. package/dist/services/runtime/claude/claude-adapter.js.map +1 -0
  66. package/dist/services/runtime/claude/manifest-parser.d.ts +77 -0
  67. package/dist/services/runtime/claude/manifest-parser.d.ts.map +1 -0
  68. package/dist/services/runtime/claude/manifest-parser.js +169 -0
  69. package/dist/services/runtime/claude/manifest-parser.js.map +1 -0
  70. package/dist/services/runtime/claude/types.d.ts +115 -0
  71. package/dist/services/runtime/claude/types.d.ts.map +1 -0
  72. package/dist/services/runtime/claude/types.js +6 -0
  73. package/dist/services/runtime/claude/types.js.map +1 -0
  74. package/dist/services/validation.service.d.ts.map +1 -1
  75. package/dist/services/validation.service.js +12 -1
  76. package/dist/services/validation.service.js.map +1 -1
  77. package/dist/spec/v0.2.4/ossa-0.2.4.schema.json +85 -208
  78. package/dist/spec/v0.2.6/CHANGELOG.md +401 -0
  79. package/dist/spec/v0.2.6/README.md +72 -0
  80. package/dist/spec/v0.2.6/migrations/v0.2.3-to-v0.2.4.md +599 -0
  81. package/dist/spec/v0.2.6/migrations/v0.2.5-RC-to-v0.2.6.md +65 -0
  82. package/dist/spec/{v0.2.4/ossa-0.2.4-dev.schema.json → v0.2.6/ossa-0.2.6.schema.json} +128 -38
  83. package/dist/spec/v0.2.6/ossa-0.2.6.yaml +581 -0
  84. package/dist/spec/v0.2.6-dev/CHANGELOG.md +164 -0
  85. package/dist/spec/v0.2.6-dev/README.md +75 -0
  86. package/dist/spec/v0.2.6-dev/migrations/v0.2.2-to-v0.2.3.md +343 -0
  87. package/dist/spec/v0.2.6-dev/migrations/v0.2.3-to-v0.2.4.md +599 -0
  88. package/dist/spec/v0.2.6-dev/ossa-0.2.5.yaml +581 -0
  89. package/dist/spec/v0.2.6-dev/ossa-0.2.6-dev.yaml +448 -0
  90. package/dist/spec/v0.2.7/core/agentgraph.md +324 -0
  91. package/dist/spec/v0.2.7/resources/agentgraph.yaml +135 -0
  92. package/dist/spec/v0.2.8/CHANGELOG.md +401 -0
  93. package/dist/spec/v0.2.8/README.md +72 -0
  94. package/dist/spec/v0.2.8/migrations/v0.2.3-to-v0.2.4.md +599 -0
  95. package/dist/spec/v0.2.8/migrations/v0.2.5-RC-to-v0.2.6.md +65 -0
  96. package/dist/spec/v0.2.8/migrations/v0.2.6-to-v0.2.8.md +81 -0
  97. package/dist/spec/v0.2.8/ossa-0.2.8.schema.json +3153 -0
  98. package/dist/spec/v0.2.8/ossa-0.2.8.yaml +581 -0
  99. package/dist/types/index.d.ts +3 -2
  100. package/dist/types/index.d.ts.map +1 -1
  101. package/dist/utils/index.d.ts +6 -0
  102. package/dist/utils/index.d.ts.map +1 -0
  103. package/dist/utils/index.js +6 -0
  104. package/dist/utils/index.js.map +1 -0
  105. package/dist/utils/version.d.ts +68 -0
  106. package/dist/utils/version.d.ts.map +1 -0
  107. package/dist/utils/version.js +156 -0
  108. package/dist/utils/version.js.map +1 -0
  109. package/docs/brand-guide/01-brand-overview.md +37 -0
  110. package/docs/brand-guide/02-logo-usage.md +43 -0
  111. package/docs/brand-guide/03-color-palette.md +70 -0
  112. package/docs/brand-guide/04-typography.md +82 -0
  113. package/docs/brand-guide/05-voice-and-tone.md +108 -0
  114. package/docs/brand-guide/06-visual-elements.md +137 -0
  115. package/docs/brand-guide/07-application-examples.md +153 -0
  116. package/docs/brand-guide/OssaLogo/OssA_Logo.svg +21 -0
  117. package/docs/brand-guide/OssaLogo/brand.af +0 -0
  118. package/docs/brand-guide/README.md +107 -0
  119. package/docs/comparison.md +315 -0
  120. package/docs/operations/automation-roadmap.md +245 -0
  121. package/docs/operations/github-sync-strategy.md +357 -0
  122. package/eslint-report.json +1 -0
  123. package/examples/adk-integration/code-review-workflow.yml +1 -1
  124. package/examples/adk-integration/customer-support.yml +1 -1
  125. package/examples/adk-integration/data-pipeline.yml +1 -1
  126. package/examples/advanced/workflows/hybrid-model-strategy.yaml +1 -1
  127. package/examples/agent-manifests/critics/critic-agent.yaml +1 -1
  128. package/examples/agent-manifests/governors/governor-agent.yaml +1 -1
  129. package/examples/agent-manifests/integrators/integrator-agent.yaml +1 -1
  130. package/examples/agent-manifests/judges/judge-agent.yaml +1 -1
  131. package/examples/agent-manifests/monitors/monitor-agent.yaml +1 -1
  132. package/examples/agent-manifests/orchestrators/orchestrator-agent.yaml +1 -1
  133. package/examples/agent-manifests/sample-compliant-agent.yaml +1 -1
  134. package/examples/agent-manifests/workers/worker-agent.yaml +1 -1
  135. package/examples/anthropic/claude-assistant.ossa.json +5 -4
  136. package/examples/autogen/multi-agent.ossa.json +6 -4
  137. package/examples/claude-code/code-reviewer.ossa.yaml +78 -0
  138. package/examples/claude-code/ossa-validator.ossa.yaml +80 -0
  139. package/examples/common_npm/agent-router.ossa.yaml +1 -0
  140. package/examples/common_npm/agent-router.v0.2.2.ossa.yaml +1 -1
  141. package/examples/crewai/research-team.ossa.json +14 -5
  142. package/examples/cursor/code-review-agent.ossa.json +21 -6
  143. package/examples/drupal/gitlab-ml-recommender.ossa.yaml +1 -0
  144. package/examples/drupal/gitlab-ml-recommender.v0.2.2.ossa.yaml +1 -1
  145. package/examples/extensions/drupal-v1.yml +1 -1
  146. package/examples/extensions/kagent-v1.yml +1 -1
  147. package/examples/getting-started/hello-world-complete.ossa.yaml +1 -1
  148. package/examples/integration-patterns/agent-to-agent-orchestration.ossa.yaml +4 -4
  149. package/examples/kagent/compliance-validator.ossa.yaml +1 -1
  150. package/examples/kagent/cost-optimizer.ossa.yaml +1 -1
  151. package/examples/kagent/documentation-agent.ossa.yaml +1 -1
  152. package/examples/kagent/k8s-troubleshooter-v1.ossa.yaml +1 -0
  153. package/examples/kagent/k8s-troubleshooter-v1.v0.2.2.ossa.yaml +1 -1
  154. package/examples/kagent/k8s-troubleshooter.ossa.yaml +1 -1
  155. package/examples/kagent/security-scanner.ossa.yaml +1 -1
  156. package/examples/langchain/chain-agent.ossa.json +21 -5
  157. package/examples/langflow/workflow-agent.ossa.json +2 -3
  158. package/examples/langgraph/state-machine-agent.ossa.json +2 -3
  159. package/examples/llamaindex/rag-agent.ossa.json +2 -3
  160. package/examples/migration-guides/from-langchain-to-ossa.yaml +4 -4
  161. package/examples/multi-agent/README.md +74 -0
  162. package/examples/multi-agent/conditional-router.ossa.yaml +42 -0
  163. package/examples/multi-agent/parallel-execution.ossa.yaml +54 -0
  164. package/examples/multi-agent/sequential-pipeline.ossa.yaml +45 -0
  165. package/examples/openai/basic-agent.ossa.yaml +1 -1
  166. package/examples/openai/multi-tool-agent.ossa.json +33 -10
  167. package/examples/openai/swarm-agent.ossa.json +18 -5
  168. package/examples/production/document-analyzer-openai.yml +1 -1
  169. package/examples/quickstart/support-agent.ossa.yaml +1 -1
  170. package/examples/spec-examples/audit-agent.yml +1 -1
  171. package/examples/spec-examples/chat-agent.yml +1 -1
  172. package/examples/spec-examples/compliance-agent.yml +1 -1
  173. package/examples/spec-examples/monitoring-agent.yml +1 -1
  174. package/examples/spec-examples/workflow-agent.yml +1 -1
  175. package/examples/templates/ossa-compliance.yaml +1 -1
  176. package/examples/vercel/edge-agent.ossa.json +5 -4
  177. package/gl-code-quality-report.json +62 -0
  178. package/llms-ctx-full.txt +39 -0
  179. package/llms-ctx.txt +39 -0
  180. package/llms.txt +47 -0
  181. package/openapi/github-sync.yaml +115 -0
  182. package/package.json +26 -4
  183. package/scripts/README.md +103 -0
  184. package/scripts/auto-rebase-mrs.ts +106 -0
  185. package/scripts/batch-dependabot.sh +57 -0
  186. package/scripts/configure-gitlab-branch-protection.ts +95 -0
  187. package/scripts/create-issue-helper.ts +238 -0
  188. package/scripts/create-milestone-issue.ts +73 -0
  189. package/scripts/eslint-to-codequality.cjs +34 -0
  190. package/scripts/fix-schema-formats.js +82 -0
  191. package/scripts/generate-agents-catalog.ts +77 -0
  192. package/scripts/generate-api-docs.ts +218 -0
  193. package/scripts/generate-cli-docs.ts +410 -0
  194. package/scripts/generate-config-docs.ts +109 -0
  195. package/scripts/generate-errors-docs.ts +76 -0
  196. package/scripts/generate-examples-docs.ts +99 -0
  197. package/scripts/generate-llms-ctx.sh +17 -0
  198. package/scripts/generate-schema-docs.ts +317 -0
  199. package/scripts/generate-types-docs.ts +48 -0
  200. package/scripts/lowercase-docs.ts +43 -0
  201. package/scripts/manage-milestone-mrs.ts +279 -0
  202. package/scripts/rebase-all-mrs.sh +75 -0
  203. package/scripts/sync-github-pr.sh +48 -0
  204. package/scripts/sync-version.js +32 -0
  205. package/scripts/sync-wiki.sh +50 -0
  206. package/scripts/validate-all.js +127 -0
  207. package/scripts/validate-schema.ts +2 -1
  208. package/spec/v0.2.4/ossa-0.2.4.schema.json +85 -208
  209. package/spec/v0.2.6/CHANGELOG.md +401 -0
  210. package/spec/v0.2.6/README.md +72 -0
  211. package/spec/v0.2.6/migrations/v0.2.3-to-v0.2.4.md +599 -0
  212. package/spec/v0.2.6/migrations/v0.2.5-RC-to-v0.2.6.md +65 -0
  213. package/spec/{v0.2.4/ossa-0.2.4-dev.schema.json → v0.2.6/ossa-0.2.6.schema.json} +128 -38
  214. package/spec/v0.2.6/ossa-0.2.6.yaml +581 -0
  215. package/spec/v0.2.6-dev/CHANGELOG.md +164 -0
  216. package/spec/v0.2.6-dev/README.md +75 -0
  217. package/spec/v0.2.6-dev/migrations/v0.2.2-to-v0.2.3.md +343 -0
  218. package/spec/v0.2.6-dev/migrations/v0.2.3-to-v0.2.4.md +599 -0
  219. package/spec/v0.2.6-dev/ossa-0.2.5.yaml +581 -0
  220. package/spec/v0.2.6-dev/ossa-0.2.6-dev.yaml +448 -0
  221. package/spec/v0.2.7/core/agentgraph.md +324 -0
  222. package/spec/v0.2.7/resources/agentgraph.yaml +135 -0
  223. package/spec/v0.2.8/CHANGELOG.md +401 -0
  224. package/spec/v0.2.8/README.md +72 -0
  225. package/spec/v0.2.8/migrations/v0.2.3-to-v0.2.4.md +599 -0
  226. package/spec/v0.2.8/migrations/v0.2.5-RC-to-v0.2.6.md +65 -0
  227. package/spec/v0.2.8/migrations/v0.2.6-to-v0.2.8.md +81 -0
  228. package/spec/v0.2.8/ossa-0.2.8.schema.json +3153 -0
  229. package/spec/v0.2.8/ossa-0.2.8.yaml +581 -0
  230. package/test-results/junit.xml +299 -0
  231. package/.kiro/specs/agent-buildkit-templates/design.md +0 -495
  232. package/.kiro/specs/agent-buildkit-templates/requirements.md +0 -165
  233. package/.kiro/specs/kiro-ide-supercharger/README.md +0 -202
  234. package/.kiro/specs/kiro-ide-supercharger/design.md +0 -1005
  235. package/.kiro/specs/kiro-ide-supercharger/requirements.md +0 -141
  236. package/.kiro/specs/kiro-ide-supercharger/tasks.md +0 -507
  237. package/bin/validate-ossa-0.2.5-RC.ts +0 -244
  238. package/docs/issue-19-completion-summary.md +0 -648
  239. package/docs/issue-19-validation.md +0 -351
  240. package/scripts/lib/exec.ts +0 -37
  241. package/scripts/lib/file-ops.ts +0 -58
  242. package/scripts/lib/version.ts +0 -83
  243. package/website/.lighthouserc.ts +0 -24
  244. package/website/.prettierrc +0 -10
  245. package/website/Dockerfile +0 -30
  246. package/website/app/about/page.tsx +0 -295
  247. package/website/app/blog/[slug]/page.tsx +0 -208
  248. package/website/app/blog/page.tsx +0 -249
  249. package/website/app/design-guide/page.tsx +0 -511
  250. package/website/app/docs/[[...slug]]/page.tsx +0 -847
  251. package/website/app/docs/core-concepts/project-structure/page.tsx +0 -349
  252. package/website/app/ecosystem/page.tsx +0 -375
  253. package/website/app/examples/page.tsx +0 -133
  254. package/website/app/globals.scss +0 -135
  255. package/website/app/layout.tsx +0 -106
  256. package/website/app/license/page.tsx +0 -183
  257. package/website/app/not-found.tsx +0 -18
  258. package/website/app/page.tsx +0 -474
  259. package/website/app/playground/page.tsx +0 -487
  260. package/website/app/robots.ts +0 -19
  261. package/website/app/rss.xml/route.ts +0 -74
  262. package/website/app/schema/page.tsx +0 -1001
  263. package/website/app/sitemap.ts +0 -56
  264. package/website/app/specification/page.tsx +0 -287
  265. package/website/components/InstallCommand.tsx +0 -96
  266. package/website/components/Logo.tsx +0 -97
  267. package/website/components/StructuredData.tsx +0 -65
  268. package/website/components/docs/DocsSearch.tsx +0 -104
  269. package/website/components/docs/DocsSidebar.tsx +0 -155
  270. package/website/components/docs/MarkdownContent.tsx +0 -401
  271. package/website/components/docs/VersionSelector.tsx +0 -105
  272. package/website/components/examples/ExamplesViewer.tsx +0 -293
  273. package/website/components/layout/Footer.tsx +0 -116
  274. package/website/components/layout/Header.tsx +0 -168
  275. package/website/components/schema/SchemaComponentsAccordion.tsx +0 -84
  276. package/website/components/schema/SchemaExplorer.tsx +0 -213
  277. package/website/content/blog/OpenAPI-AI-Agents-Standard.md +0 -285
  278. package/website/content/blog/Why-Formal-Standards-Matter-Now.md +0 -198
  279. package/website/content/blog/gitlab-kubernetes-agent-ecosystem.md +0 -286
  280. package/website/content/blog/introducing-ossa-framework.md +0 -328
  281. package/website/content/blog/ossa-production-results.md +0 -279
  282. package/website/content/blog/welcome-to-ossa.md +0 -43
  283. package/website/content/blog/why-ai-agents-need-open-standard.md +0 -98
  284. package/website/content/docs/00-HOME.md +0 -153
  285. package/website/content/docs/AIFlow-Framework-Integration-with-OSSA.md +0 -107
  286. package/website/content/docs/Examples.md +0 -71
  287. package/website/content/docs/OpenAPI-Extensions.md +0 -934
  288. package/website/content/docs/adapters/openai-adapter.md +0 -693
  289. package/website/content/docs/architecture/execution-flow.md +0 -335
  290. package/website/content/docs/architecture/multi-agent-systems.md +0 -737
  291. package/website/content/docs/architecture/overview.md +0 -121
  292. package/website/content/docs/architecture/stack-integration.md +0 -461
  293. package/website/content/docs/changelog.md +0 -246
  294. package/website/content/docs/contributing.md +0 -599
  295. package/website/content/docs/core-concepts/Project-Structure.md +0 -348
  296. package/website/content/docs/ecosystem/framework-support.md +0 -819
  297. package/website/content/docs/ecosystem/overview.md +0 -366
  298. package/website/content/docs/examples/AIFlow-Framework-Integration-with-OSSA.md +0 -107
  299. package/website/content/docs/examples/Migration-Guides.md +0 -214
  300. package/website/content/docs/for-audiences/Architects.md +0 -224
  301. package/website/content/docs/for-audiences/Developers.md +0 -220
  302. package/website/content/docs/for-audiences/Enterprises.md +0 -256
  303. package/website/content/docs/for-audiences/Students-Researchers.md +0 -122
  304. package/website/content/docs/getting-started/5-Minute-Overview.md +0 -85
  305. package/website/content/docs/getting-started/First-Agent.md +0 -196
  306. package/website/content/docs/getting-started/Hello-World.md +0 -184
  307. package/website/content/docs/getting-started/Installation.md +0 -155
  308. package/website/content/docs/getting-started/index.md +0 -92
  309. package/website/content/docs/getting-started/running-agents.md +0 -309
  310. package/website/content/docs/getting-started.md +0 -91
  311. package/website/content/docs/integrations/aiflow.md +0 -104
  312. package/website/content/docs/integrations/drupal.md +0 -105
  313. package/website/content/docs/migration-guides/00-INDEX.md +0 -76
  314. package/website/content/docs/migration-guides/README.md +0 -133
  315. package/website/content/docs/migration-guides/agent-schema-comparison.md +0 -232
  316. package/website/content/docs/migration-guides/anthropic-mcp-to-ossa.md +0 -1750
  317. package/website/content/docs/migration-guides/crewai-to-ossa.md +0 -274
  318. package/website/content/docs/migration-guides/drupal-eca-to-ossa.md +0 -2017
  319. package/website/content/docs/migration-guides/general-agent-schema.yml +0 -247
  320. package/website/content/docs/migration-guides/index.md +0 -133
  321. package/website/content/docs/migration-guides/langchain-to-ossa.md +0 -1714
  322. package/website/content/docs/migration-guides/langflow-to-ossa.md +0 -2075
  323. package/website/content/docs/migration-guides/migration-manifest.json +0 -64
  324. package/website/content/docs/migration-guides/openai-to-ossa.md +0 -1202
  325. package/website/content/docs/openapi-extensions/examples.md +0 -550
  326. package/website/content/docs/openapi-extensions/index.md +0 -551
  327. package/website/content/docs/openapi-extensions/operation-extensions.md +0 -457
  328. package/website/content/docs/openapi-extensions/root-extensions.md +0 -410
  329. package/website/content/docs/ossa-compliant-badge.md +0 -251
  330. package/website/content/docs/pre-release/index.md +0 -175
  331. package/website/content/docs/quick-reference.md +0 -17
  332. package/website/content/docs/readme.md +0 -35
  333. package/website/content/docs/schema-reference/agent-spec.md +0 -406
  334. package/website/content/docs/schema-reference/autonomy.md +0 -568
  335. package/website/content/docs/schema-reference/constraints.md +0 -543
  336. package/website/content/docs/schema-reference/index.md +0 -176
  337. package/website/content/docs/schema-reference/llm-config.md +0 -445
  338. package/website/content/docs/schema-reference/observability.md +0 -654
  339. package/website/content/docs/schema-reference/ossa-manifest.md +0 -309
  340. package/website/content/docs/schema-reference/taxonomy.md +0 -509
  341. package/website/content/docs/schema-reference/tools.md +0 -628
  342. package/website/content/docs/templates/blog-post.md +0 -43
  343. package/website/content/docs/use-cases/00-index.md +0 -395
  344. package/website/content/docs/use-cases/cicd-code-review.md +0 -1236
  345. package/website/content/docs/use-cases/customer-support.md +0 -1234
  346. package/website/content/docs/use-cases/enterprise-compliance.md +0 -1208
  347. package/website/content/docs/use-cases/research-multi-agent.md +0 -1161
  348. package/website/content/docs/versioning.md +0 -288
  349. package/website/lib/version.ts +0 -35
  350. package/website/lib/versions.json +0 -78
  351. package/website/next.config.ts +0 -18
  352. package/website/nginx.conf +0 -32
  353. package/website/package-lock.json +0 -9679
  354. package/website/package.json +0 -59
  355. package/website/postcss.config.mjs +0 -9
  356. package/website/scripts/fetch-versions.js +0 -166
  357. package/website/scripts/generate-examples-index.js +0 -163
  358. package/website/scripts/merge-docs-to-wiki.ts +0 -207
  359. package/website/scripts/sync-version.js +0 -72
  360. package/website/scripts/sync-wiki.ts +0 -322
  361. package/website/scripts/upload-wiki.ts +0 -199
  362. package/website/styles/_variables.scss +0 -36
  363. package/website/tailwind.config.ts +0 -136
  364. /package/dist/spec/v0.2.4/{ossa-0.2.4-dev.yaml → ossa-0.2.4.yaml} +0 -0
  365. /package/spec/v0.2.4/{ossa-0.2.4-dev.yaml → ossa-0.2.4.yaml} +0 -0
@@ -1,1001 +0,0 @@
1
- import Link from 'next/link';
2
- import { SchemaExplorer } from '@/components/schema/SchemaExplorer';
3
- import { SchemaComponentsAccordion } from '@/components/schema/SchemaComponentsAccordion';
4
- import { STABLE_VERSION, STABLE_VERSION_TAG, getSchemaPath } from '@/lib/version';
5
- import { Logo } from '@/components/Logo';
6
- import fs from 'fs';
7
- import path from 'path';
8
-
9
- // Get actual stable version from versions.json (not website package.json)
10
- function getStableVersion(): string {
11
- try {
12
- const versionsPath = path.join(process.cwd(), 'lib', 'versions.json');
13
- if (fs.existsSync(versionsPath)) {
14
- const versions = JSON.parse(fs.readFileSync(versionsPath, 'utf8'));
15
- return versions.stable || '0.2.4';
16
- }
17
- } catch (error) {
18
- console.error('Error reading versions.json:', error);
19
- }
20
- // Fallback to 0.2.4 if versions.json not available
21
- return '0.2.4';
22
- }
23
-
24
- // Try to load schema dynamically - fallback to stable version
25
- function loadSchema(version?: string): any {
26
- const stableVersion = version || getStableVersion();
27
- try {
28
- // Try to load from public/schemas first
29
- const publicSchemaPath = path.join(process.cwd(), 'public', 'schemas', `ossa-${stableVersion}.schema.json`);
30
- if (fs.existsSync(publicSchemaPath)) {
31
- return JSON.parse(fs.readFileSync(publicSchemaPath, 'utf8'));
32
- }
33
-
34
- // Fallback to spec directory
35
- const specSchemaPath = path.join(process.cwd(), '..', 'spec', `v${stableVersion}`, `ossa-${stableVersion}.schema.json`);
36
- if (fs.existsSync(specSchemaPath)) {
37
- return JSON.parse(fs.readFileSync(specSchemaPath, 'utf8'));
38
- }
39
-
40
- // Final fallback - try to require (for build time)
41
- try {
42
- return require(`../../public/schemas/ossa-${stableVersion}.schema.json`);
43
- } catch {
44
- // If all else fails, return null
45
- return null;
46
- }
47
- } catch (error) {
48
- console.error('Error loading schema:', error);
49
- return null;
50
- }
51
- }
52
-
53
- export default function SchemaPage() {
54
- const stableVersion = getStableVersion();
55
- const schema = loadSchema(stableVersion);
56
-
57
- if (!schema) {
58
- return (
59
- <div className="container mx-auto max-w-7xl px-4 py-8">
60
- <h1 className="text-4xl font-bold mb-4">Schema Explorer</h1>
61
- <p className="text-lg text-gray-600">
62
- Schema file not found. Please ensure the OSSA schema is available.
63
- </p>
64
- </div>
65
- );
66
- }
67
-
68
- return (
69
- <>
70
- {/* Hero Section */}
71
- <div className="bg-gradient-to-br from-secondary via-primary to-accent text-white py-16 px-4">
72
- <div className="container mx-auto max-w-6xl text-center">
73
- <div className="inline-flex items-center justify-center w-20 h-20 bg-white/20 backdrop-blur-sm rounded-full mb-6">
74
- <svg className="w-10 h-10" fill="none" stroke="currentColor" viewBox="0 0 24 24">
75
- <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z" />
76
- </svg>
77
- </div>
78
- <h1 className="text-5xl font-bold mb-4">OSSA Schema Reference</h1>
79
- <p className="text-xl text-white/90 mb-2">
80
- Complete JSON Schema for defining portable, framework-agnostic AI agents
81
- </p>
82
- <p className="text-lg text-white/80">
83
- Version v{stableVersion} • The OpenAPI for AI Agents
84
- </p>
85
- </div>
86
- </div>
87
-
88
- <div className="container mx-auto max-w-7xl px-4 py-12">
89
- {/* Schema Architecture Diagram - MOVED TO TOP */}
90
- <section className="mb-16">
91
- <div className="bg-gradient-to-br from-amber-50 via-orange-50 to-yellow-50 rounded-2xl p-8 mb-8">
92
- <div className="flex items-start mb-6">
93
- <div className="w-12 h-12 bg-gradient-to-br from-secondary via-primary to-accent rounded-lg flex items-center justify-center mr-4 flex-shrink-0">
94
- <svg className="w-6 h-6 text-white" fill="none" stroke="currentColor" viewBox="0 0 24 24">
95
- <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M8.228 9c.549-1.165 2.03-2 3.772-2 2.21 0 4 1.343 4 3 0 1.4-1.278 2.575-3.006 2.907-.542.104-.994.54-.994 1.093m0 3h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" />
96
- </svg>
97
- </div>
98
- <div>
99
- <h2 className="text-3xl font-bold mb-4 text-gray-900">Why This Schema?</h2>
100
- <div className="space-y-4 text-lg text-gray-700">
101
- <p>
102
- <strong className="text-primary">The Problem:</strong> Every AI framework defines agents differently.
103
- LangChain has "chains," CrewAI has "crews," OpenAI has "assistants," Anthropic has different tools.
104
- This creates <span className="text-red-600 font-semibold">vendor lock-in</span> and makes it impossible to share agents between teams or frameworks.
105
- </p>
106
- <p>
107
- <strong className="text-secondary">The Solution:</strong> OSSA provides a single, standard way to describe agents that works everywhere.
108
- Like OpenAPI revolutionized REST APIs, OSSA revolutionizes AI agents.
109
- </p>
110
- <p>
111
- <strong className="text-primary">The Result:</strong> Write your agent definition once, deploy it to any framework.
112
- Switch providers without rewriting code. Share agents across organizations. True portability.
113
- </p>
114
- </div>
115
- </div>
116
- </div>
117
- </div>
118
- </section>
119
-
120
- {/* Schema Architecture Diagram */}
121
- <section className="mb-16">
122
- <div className="flex items-center mb-8">
123
- <div className="w-12 h-12 bg-gradient-to-br from-secondary via-primary to-accent rounded-lg flex items-center justify-center mr-4">
124
- <svg className="w-6 h-6 text-white" fill="none" stroke="currentColor" viewBox="0 0 24 24">
125
- <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M19 11H5m14 0a2 2 0 012 2v6a2 2 0 01-2 2H5a2 2 0 01-2-2v-6a2 2 0 012-2m14 0V9a2 2 0 00-2-2M5 11V9a2 2 0 012-2m0 0V5a2 2 0 012-2h6a2 2 0 012 2v2M7 7h10" />
126
- </svg>
127
- </div>
128
- <h2 className="text-3xl font-bold text-primary">Schema Architecture</h2>
129
- </div>
130
-
131
- {/* Visual Structure Diagram with HTML/CSS */}
132
- <div className="bg-white rounded-2xl shadow-lg p-8 mb-8 border-2 border-gray-300">
133
- <h3 className="text-2xl font-bold mb-4 text-center text-gray-900">OSSA Agent Manifest Structure</h3>
134
- <p className="text-center text-gray-600 mb-8 text-base">
135
- Complete breakdown of all manifest components and their relationships
136
- </p>
137
-
138
- <div className="space-y-6">
139
- {/* Root */}
140
- <div className="bg-gradient-to-r from-secondary via-primary to-accent text-white rounded-xl p-6 text-center shadow-md">
141
- <div className="font-bold text-2xl mb-2">OSSA Agent Manifest</div>
142
- <div className="text-base opacity-90">agent.yaml / agent.json</div>
143
- </div>
144
-
145
- {/* Top Level Fields */}
146
- <div className="grid md:grid-cols-3 gap-6">
147
- <div className="bg-blue-50/50 border-2 border-blue-200 rounded-xl p-6 shadow-sm hover:shadow-md transition-shadow">
148
- <div className="font-bold text-gray-900 mb-2 text-xl">apiVersion</div>
149
- <div className="text-base text-gray-600 mb-3">Specifies the OSSA specification version</div>
150
- <div className="text-lg text-gray-800 font-mono">ossa/v{stableVersion}</div>
151
- </div>
152
- <div className="bg-green-50/50 border-2 border-green-200 rounded-xl p-6 shadow-sm hover:shadow-md transition-shadow">
153
- <div className="font-bold text-gray-900 mb-2 text-xl">kind</div>
154
- <div className="text-base text-gray-600 mb-3">Resource type identifier that specifies what type of OSSA resource this manifest defines.</div>
155
- <div className="text-lg text-gray-800 font-mono mb-3">Agent</div>
156
- <div className="text-sm text-gray-700 space-y-2 pt-3 border-t border-green-200">
157
- <p><strong className="text-gray-900">Agent</strong> is the primary resource type in OSSA. An Agent represents an autonomous AI system that can:</p>
158
- <ul className="list-disc list-inside space-y-1 text-gray-600 ml-2">
159
- <li>Process natural language instructions</li>
160
- <li>Make decisions and take actions</li>
161
- <li>Use tools and interact with external systems</li>
162
- <li>Maintain context and state across interactions</li>
163
- </ul>
164
- <p className="text-gray-600">Think of an Agent as a reusable, portable definition of an AI assistant that can be deployed to any framework.</p>
165
- </div>
166
- </div>
167
- <div className="bg-purple-50/50 border-2 border-purple-200 rounded-xl p-6 shadow-sm hover:shadow-md transition-shadow">
168
- <div className="font-bold text-gray-900 mb-2 text-xl">metadata</div>
169
- <div className="text-base text-gray-600 mb-3">Agent identification and labeling</div>
170
- <div className="text-base text-gray-700 space-y-1.5 mt-3">
171
- <div>• name - Unique agent identifier</div>
172
- <div>• version - Agent version number</div>
173
- <div>• description - Human-readable description</div>
174
- <div>• labels - Key-value metadata tags</div>
175
- <div>• annotations - Additional metadata</div>
176
- </div>
177
- </div>
178
- </div>
179
-
180
- {/* Main Content: spec and extensions - STACKED */}
181
- <div className="space-y-6">
182
- {/* spec */}
183
- <div className="bg-gradient-to-br from-blue-50/30 to-indigo-50/30 border-2 border-blue-200 rounded-xl p-6 shadow-md">
184
- <div className="font-bold text-primary text-2xl mb-3">spec</div>
185
- <div className="text-base text-gray-700 mb-6">Core agent configuration including behavior, capabilities, and operational settings.</div>
186
- <div className="space-y-3">
187
- {/* role */}
188
- <div className="bg-white rounded-lg p-5 border-2 border-gray-200 shadow-sm hover:shadow-md transition-all">
189
- <div className="font-bold text-gray-900 text-lg mb-2">role</div>
190
- <div className="text-base text-gray-700 mb-3">Defines the agent's system prompt and identity. This is the core instruction that tells the agent who it is and how it should behave.</div>
191
- <div className="text-sm text-gray-600 bg-gray-50 rounded p-3 font-mono border border-gray-200">
192
- type: string (multi-line)
193
- </div>
194
- </div>
195
-
196
- {/* llm */}
197
- <div className="bg-white rounded-lg p-5 border-2 border-gray-200 shadow-sm hover:shadow-md transition-all">
198
- <div className="font-bold text-gray-900 text-lg mb-2">llm</div>
199
- <div className="text-base text-gray-700 mb-4">Configuration for the Large Language Model that powers the agent's reasoning and responses.</div>
200
- <div className="grid grid-cols-2 gap-3 text-base text-gray-700">
201
- <div className="bg-gray-50 rounded-lg p-3 border border-gray-200">
202
- <strong className="text-gray-900">provider</strong>
203
- <div className="text-sm text-gray-600 mt-1">openai | anthropic | azure</div>
204
- </div>
205
- <div className="bg-gray-50 rounded-lg p-3 border border-gray-200">
206
- <strong className="text-gray-900">model</strong>
207
- <div className="text-sm text-gray-600 mt-1">gpt-4, claude-3, etc.</div>
208
- </div>
209
- <div className="bg-gray-50 rounded-lg p-3 border border-gray-200">
210
- <strong className="text-gray-900">temperature</strong>
211
- <div className="text-sm text-gray-600 mt-1">0.0 - 2.0 (creativity level)</div>
212
- </div>
213
- <div className="bg-gray-50 rounded-lg p-3 border border-gray-200">
214
- <strong className="text-gray-900">max_tokens</strong>
215
- <div className="text-sm text-gray-600 mt-1">Maximum response length</div>
216
- </div>
217
- </div>
218
- </div>
219
-
220
- {/* tools */}
221
- <div className="bg-white rounded-lg p-5 border-2 border-gray-200 shadow-sm hover:shadow-md transition-all">
222
- <div className="font-bold text-gray-900 text-lg mb-2">tools</div>
223
- <div className="text-base text-gray-700 mb-4">Capabilities the agent can use to interact with external systems and perform actions.</div>
224
- <div className="text-base text-gray-700 space-y-2.5">
225
- <div className="bg-gray-50 border border-gray-200 rounded-lg p-3">
226
- <strong className="text-gray-900">http</strong>
227
- <div className="text-sm text-gray-600 mt-1">Make REST API calls to external services</div>
228
- </div>
229
- <div className="bg-gray-50 border border-gray-200 rounded-lg p-3">
230
- <strong className="text-gray-900">code</strong>
231
- <div className="text-sm text-gray-600 mt-1">Execute Python, JavaScript, or Shell scripts</div>
232
- </div>
233
- <div className="bg-gray-50 border border-gray-200 rounded-lg p-3">
234
- <strong className="text-gray-900">database</strong>
235
- <div className="text-sm text-gray-600 mt-1">Run SQL queries against databases</div>
236
- </div>
237
- <div className="bg-gray-50 border border-gray-200 rounded-lg p-3">
238
- <strong className="text-gray-900">file</strong>
239
- <div className="text-sm text-gray-600 mt-1">Read and write file system operations</div>
240
- </div>
241
- <div className="bg-gray-50 border border-gray-200 rounded-lg p-3">
242
- <strong className="text-gray-900">search</strong>
243
- <div className="text-sm text-gray-600 mt-1">Web search and vector similarity search</div>
244
- </div>
245
- </div>
246
- </div>
247
-
248
- {/* taxonomy */}
249
- <div className="bg-white rounded-lg p-5 border-2 border-gray-200 shadow-sm hover:shadow-md transition-all">
250
- <div className="font-bold text-gray-900 text-lg mb-2">taxonomy</div>
251
- <div className="text-base text-gray-700 mb-4">Categorization metadata for organizing and discovering agents across domains and use cases.</div>
252
- <div className="grid grid-cols-2 gap-3 text-base">
253
- <div className="bg-gray-50 rounded-lg p-3 border border-gray-200">
254
- <strong className="text-gray-900">domain</strong>
255
- <div className="text-sm text-gray-600 mt-1">customer_service, engineering, etc.</div>
256
- </div>
257
- <div className="bg-gray-50 rounded-lg p-3 border border-gray-200">
258
- <strong className="text-gray-900">subdomain</strong>
259
- <div className="text-sm text-gray-600 mt-1">technical_support, devops, etc.</div>
260
- </div>
261
- <div className="bg-gray-50 rounded-lg p-3 border border-gray-200">
262
- <strong className="text-gray-900">use_case</strong>
263
- <div className="text-sm text-gray-600 mt-1">troubleshooting, automation</div>
264
- </div>
265
- <div className="bg-gray-50 rounded-lg p-3 border border-gray-200">
266
- <strong className="text-gray-900">industry</strong>
267
- <div className="text-sm text-gray-600 mt-1">saas, healthcare, finance</div>
268
- </div>
269
- </div>
270
- </div>
271
-
272
- {/* autonomy */}
273
- <div className="bg-white rounded-lg p-5 border-2 border-gray-200 shadow-sm hover:shadow-md transition-all">
274
- <div className="font-bold text-gray-900 text-lg mb-2">autonomy</div>
275
- <div className="text-base text-gray-700 mb-4">Controls how independently the agent can operate, from fully manual (L0) to fully autonomous (L5).</div>
276
- <div className="space-y-2.5 text-base">
277
- <div className="bg-gray-50 border border-gray-200 rounded-lg p-3">
278
- <strong className="text-gray-900">level</strong>
279
- <div className="text-sm text-gray-600 mt-1">L0 (no autonomy) → L5 (full autonomy)</div>
280
- </div>
281
- <div className="bg-gray-50 border border-gray-200 rounded-lg p-3">
282
- <strong className="text-gray-900">approval_required</strong>
283
- <div className="text-sm text-gray-600 mt-1">List of actions that require human approval before execution</div>
284
- </div>
285
- <div className="bg-gray-50 border border-gray-200 rounded-lg p-3">
286
- <strong className="text-gray-900">human_in_loop</strong>
287
- <div className="text-sm text-gray-600 mt-1">Notification and escalation settings for human oversight</div>
288
- </div>
289
- </div>
290
- </div>
291
-
292
- {/* observability */}
293
- <div className="bg-white rounded-lg p-5 border-2 border-gray-200 shadow-sm hover:shadow-md transition-all">
294
- <div className="font-bold text-gray-900 text-lg mb-2">observability</div>
295
- <div className="text-base text-gray-700 mb-4">Monitoring and debugging capabilities for tracking agent behavior and performance.</div>
296
- <div className="grid grid-cols-3 gap-3 text-base">
297
- <div className="bg-gray-50 rounded-lg p-3 border border-gray-200 text-center">
298
- <div className="font-bold text-gray-900">logging</div>
299
- <div className="text-sm text-gray-600 mt-1">Logs & audit trails</div>
300
- </div>
301
- <div className="bg-gray-50 rounded-lg p-3 border border-gray-200 text-center">
302
- <div className="font-bold text-gray-900">metrics</div>
303
- <div className="text-sm text-gray-600 mt-1">Performance data</div>
304
- </div>
305
- <div className="bg-gray-50 rounded-lg p-3 border border-gray-200 text-center">
306
- <div className="font-bold text-gray-900">tracing</div>
307
- <div className="text-sm text-gray-600 mt-1">Execution paths</div>
308
- </div>
309
- </div>
310
- </div>
311
-
312
- {/* constraints (additional) */}
313
- <div className="bg-white rounded-lg p-5 border-2 border-gray-200 shadow-sm hover:shadow-md transition-all">
314
- <div className="font-bold text-gray-900 text-lg mb-2 flex items-center gap-2">
315
- constraints
316
- <span className="text-sm bg-gray-200 text-gray-700 px-2 py-1 rounded font-normal">Optional</span>
317
- </div>
318
- <div className="text-base text-gray-700 mb-4">Resource limits and operational boundaries to ensure safe and controlled agent execution.</div>
319
- <div className="grid grid-cols-2 gap-3 text-base">
320
- <div className="bg-gray-50 rounded-lg p-3 border border-gray-200">
321
- <strong className="text-gray-900">cost</strong>
322
- <div className="text-sm text-gray-600 mt-1">Budget and spending limits</div>
323
- </div>
324
- <div className="bg-gray-50 rounded-lg p-3 border border-gray-200">
325
- <strong className="text-gray-900">performance</strong>
326
- <div className="text-sm text-gray-600 mt-1">Timeout and rate limiting</div>
327
- </div>
328
- <div className="bg-gray-50 rounded-lg p-3 border border-gray-200">
329
- <strong className="text-gray-900">resources</strong>
330
- <div className="text-sm text-gray-600 mt-1">Memory and CPU constraints</div>
331
- </div>
332
- <div className="bg-gray-50 rounded-lg p-3 border border-gray-200">
333
- <strong className="text-gray-900">security</strong>
334
- <div className="text-sm text-gray-600 mt-1">Access control and permissions</div>
335
- </div>
336
- </div>
337
- </div>
338
- </div>
339
- </div>
340
-
341
- {/* extensions */}
342
- <div className="bg-gradient-to-br from-purple-50/30 to-pink-50/30 border-2 border-purple-200 rounded-xl p-6 shadow-md">
343
- <div className="font-bold text-secondary text-2xl mb-3">extensions</div>
344
- <div className="text-base text-gray-700 mb-6">Optional framework-specific configurations that extend the core OSSA specification for platform-specific features.</div>
345
- <div className="text-base text-gray-800 mb-6 font-semibold">Supported frameworks:</div>
346
- <div className="grid grid-cols-2 md:grid-cols-3 lg:grid-cols-4 xl:grid-cols-6 gap-4">
347
- <Logo domain="kagent.dev" name="kAgent" />
348
- <Logo domain="langchain.com" name="LangChain" />
349
- <Logo domain="crewai.com" name="CrewAI" />
350
- <Logo domain="openai.com" name="OpenAI" />
351
- <Logo domain="anthropic.com" name="Anthropic" />
352
- <Logo domain="cursor.sh" name="Cursor" />
353
- <Logo domain="langflow.com" name="Langflow" />
354
- <Logo domain="microsoft.com" name="AutoGen" />
355
- <Logo domain="vercel.com" name="Vercel AI" />
356
- <Logo domain="llamaindex.ai" name="LlamaIndex" />
357
- <Logo domain="langchain.com" name="LangGraph" />
358
- <Logo domain="drupal.org" name="Drupal" />
359
- <Logo domain="librechat.com" name="LibreChat" />
360
- <Logo domain="modelcontextprotocol.io" name="MCP" />
361
- <Logo domain="huggingface.co" name="Hugging Face" />
362
- <Logo domain="google.com" name="Google" />
363
- <Logo domain="aws.amazon.com" name="AWS" />
364
- <Logo domain="azure.com" name="Azure" />
365
- <Logo domain="github.com" name="GitHub" />
366
- <Logo domain="docker.com" name="Docker" />
367
- <Logo domain="kubernetes.io" name="Kubernetes" />
368
- </div>
369
- </div>
370
- </div>
371
- </div>
372
- </div>
373
- </section>
374
-
375
- {/* Data Flow Diagram */}
376
- <section className="mb-16">
377
- <div className="flex items-center mb-8">
378
- <div className="w-12 h-12 bg-gradient-to-br from-secondary via-primary to-accent rounded-lg flex items-center justify-center mr-4">
379
- <svg className="w-6 h-6 text-white" fill="none" stroke="currentColor" viewBox="0 0 24 24">
380
- <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M13 10V3L4 14h7v7l9-11h-7z" />
381
- </svg>
382
- </div>
383
- <h2 className="text-3xl font-bold text-secondary">Data Flow: How OSSA Works</h2>
384
- </div>
385
-
386
- <div className="grid md:grid-cols-2 gap-6 mb-8">
387
- {/* Flow 1: Agent Definition to Execution */}
388
- <div className="bg-white rounded-xl shadow-lg p-6 border border-gray-200">
389
- <h3 className="text-lg font-bold mb-4 text-primary">1. Definition → Execution</h3>
390
- <div className="bg-gray-50 rounded-lg p-4 font-mono text-xs space-y-2">
391
- <div className="flex items-center">
392
- <div className="w-8 h-8 bg-primary text-white rounded-full flex items-center justify-center mr-3 flex-shrink-0">1</div>
393
- <div>
394
- <div className="font-semibold">Write agent.yaml</div>
395
- <div className="text-gray-600">Define role, LLM, tools</div>
396
- </div>
397
- </div>
398
- <div className="ml-4 border-l-2 border-primary h-4"></div>
399
- <div className="flex items-center">
400
- <div className="w-8 h-8 bg-secondary text-white rounded-full flex items-center justify-center mr-3 flex-shrink-0">2</div>
401
- <div>
402
- <div className="font-semibold">Validate schema</div>
403
- <div className="text-gray-600">JSON Schema validation</div>
404
- </div>
405
- </div>
406
- <div className="ml-4 border-l-2 border-secondary h-4"></div>
407
- <div className="flex items-center">
408
- <div className="w-8 h-8 bg-primary text-white rounded-full flex items-center justify-center mr-3 flex-shrink-0">3</div>
409
- <div>
410
- <div className="font-semibold">Load into runtime</div>
411
- <div className="text-gray-600">kAgent / LangChain / etc</div>
412
- </div>
413
- </div>
414
- <div className="ml-4 border-l-2 border-primary h-4"></div>
415
- <div className="flex items-center">
416
- <div className="w-8 h-8 bg-secondary text-white rounded-full flex items-center justify-center mr-3 flex-shrink-0">4</div>
417
- <div>
418
- <div className="font-semibold">Execute agent</div>
419
- <div className="text-gray-600">Run tasks, call LLM, use tools</div>
420
- </div>
421
- </div>
422
- </div>
423
- </div>
424
-
425
- {/* Flow 2: Cross-Framework Portability */}
426
- <div className="bg-white rounded-xl shadow-lg p-6 border border-gray-200">
427
- <h3 className="text-lg font-bold mb-4 text-secondary">2. Cross-Framework Portability</h3>
428
- <div className="bg-gray-50 rounded-lg p-4 font-mono text-xs space-y-2">
429
- <div className="flex items-center">
430
- <div className="w-8 h-8 bg-primary text-white rounded-full flex items-center justify-center mr-3 flex-shrink-0">A</div>
431
- <div>
432
- <div className="font-semibold">agent.yaml (OSSA)</div>
433
- <div className="text-gray-600">Framework-agnostic definition</div>
434
- </div>
435
- </div>
436
- <div className="ml-4 border-l-2 border-dashed border-primary h-4"></div>
437
- <div className="text-center text-gray-500 font-bold">↓ Export to ↓</div>
438
- <div className="ml-4 border-l-2 border-dashed border-primary h-4"></div>
439
- <div className="space-y-2">
440
- <div className="bg-blue-50 p-2 rounded border-l-2 border-blue-500">
441
- <strong>LangChain</strong>: chains.json
442
- </div>
443
- <div className="bg-purple-50 p-2 rounded border-l-2 border-purple-500">
444
- <strong>CrewAI</strong>: crew_config.yaml
445
- </div>
446
- <div className="bg-green-50 p-2 rounded border-l-2 border-green-500">
447
- <strong>OpenAI</strong>: assistant_config.json
448
- </div>
449
- <div className="bg-orange-50 p-2 rounded border-l-2 border-orange-500">
450
- <strong>Anthropic</strong>: claude_tools.json
451
- </div>
452
- </div>
453
- </div>
454
- </div>
455
- </div>
456
-
457
- {/* Visual Data Flow Diagram - Clean HTML/CSS Version */}
458
- <div className="bg-gradient-to-br from-gray-50 to-gray-100 rounded-2xl p-8 border-2 border-gray-300">
459
- <h3 className="text-2xl font-bold mb-4 text-center text-gray-900">Complete Agent Lifecycle</h3>
460
- <p className="text-center text-gray-600 mb-8 text-base">From development to deployment across any framework</p>
461
-
462
- <div className="space-y-6">
463
- {/* Step 1: Developer */}
464
- <div className="flex flex-col items-center">
465
- <div className="bg-white border-2 border-gray-300 rounded-xl p-6 shadow-md w-full max-w-md text-center">
466
- <div className="text-lg font-bold mb-2 text-gray-900">Developer</div>
467
- <div className="text-base text-gray-700">Writes OSSA Manifest</div>
468
- <div className="text-sm mt-2 text-gray-600 font-mono">agent.yaml</div>
469
- </div>
470
- <div className="w-0.5 h-12 bg-gray-300"></div>
471
- </div>
472
-
473
- {/* Step 2: Validation */}
474
- <div className="flex flex-col items-center">
475
- <div className="grid md:grid-cols-2 gap-4 w-full max-w-4xl">
476
- <div className="bg-gray-800 text-white rounded-xl p-6 shadow-lg">
477
- <div className="text-lg font-bold mb-2">OSSA Schema Validator</div>
478
- <div className="text-sm opacity-90">JSON Schema validation engine</div>
479
- </div>
480
- <div className="bg-white border-2 border-gray-300 rounded-xl p-6 shadow-md">
481
- <div className="text-base font-bold text-gray-900 mb-3">Validation Checks:</div>
482
- <div className="space-y-2 text-sm text-gray-700">
483
- <div className="flex items-center">
484
- <span className="text-green-600 mr-2">✓</span>
485
- <span>Required fields present</span>
486
- </div>
487
- <div className="flex items-center">
488
- <span className="text-green-600 mr-2">✓</span>
489
- <span>Correct types</span>
490
- </div>
491
- <div className="flex items-center">
492
- <span className="text-green-600 mr-2">✓</span>
493
- <span>Value constraints</span>
494
- </div>
495
- <div className="flex items-center">
496
- <span className="text-green-600 mr-2">✓</span>
497
- <span>Schema compliance</span>
498
- </div>
499
- </div>
500
- </div>
501
- </div>
502
- <div className="w-0.5 h-12 bg-gray-300"></div>
503
- <div className="bg-gray-800 text-white px-6 py-2 rounded-full font-bold shadow-md">
504
- Valid Manifest
505
- </div>
506
- <div className="w-0.5 h-12 bg-gray-300"></div>
507
- </div>
508
-
509
- {/* Step 3: Framework Adapter Layer */}
510
- <div className="flex flex-col items-center">
511
- <div className="bg-gray-800 text-white rounded-xl p-6 shadow-lg w-full max-w-3xl text-center">
512
- <div className="text-xl font-bold mb-2">Framework Adapter Layer</div>
513
- <div className="text-base opacity-90">Converts OSSA → Framework-Specific Config</div>
514
- </div>
515
- <div className="flex space-x-2 mt-4">
516
- <div className="w-0.5 h-12 bg-gray-300"></div>
517
- <div className="w-0.5 h-12 bg-gray-300"></div>
518
- <div className="w-0.5 h-12 bg-gray-300"></div>
519
- <div className="w-0.5 h-12 bg-gray-300"></div>
520
- </div>
521
- </div>
522
-
523
- {/* Step 4: Runtimes */}
524
- <div className="flex flex-col items-center">
525
- <div className="grid md:grid-cols-4 gap-4 w-full max-w-5xl">
526
- <div className="bg-white border-2 border-gray-300 rounded-xl p-5 shadow-md text-center">
527
- <div className="text-base font-bold mb-2 text-gray-900">kAgent</div>
528
- <div className="text-xs text-gray-600">Runtime</div>
529
- </div>
530
- <div className="bg-white border-2 border-gray-300 rounded-xl p-5 shadow-md text-center">
531
- <div className="text-base font-bold mb-2 text-gray-900">LangChain</div>
532
- <div className="text-xs text-gray-600">Runtime</div>
533
- </div>
534
- <div className="bg-white border-2 border-gray-300 rounded-xl p-5 shadow-md text-center">
535
- <div className="text-base font-bold mb-2 text-gray-900">CrewAI</div>
536
- <div className="text-xs text-gray-600">Runtime</div>
537
- </div>
538
- <div className="bg-white border-2 border-gray-300 rounded-xl p-5 shadow-md text-center">
539
- <div className="text-base font-bold mb-2 text-gray-900">OpenAI</div>
540
- <div className="text-xs text-gray-600">Runtime</div>
541
- </div>
542
- </div>
543
- <div className="flex justify-center mt-4 space-x-2">
544
- <div className="w-0.5 h-12 bg-gray-300"></div>
545
- <div className="w-0.5 h-12 bg-gray-300"></div>
546
- <div className="w-0.5 h-12 bg-gray-300"></div>
547
- <div className="w-0.5 h-12 bg-gray-300"></div>
548
- </div>
549
- </div>
550
-
551
- {/* Step 5: Agent Execution */}
552
- <div className="flex flex-col items-center">
553
- <div className="bg-white border-2 border-gray-300 rounded-xl p-6 shadow-md w-full max-w-2xl">
554
- <div className="text-xl font-bold mb-4 text-center text-gray-900">Agent Execution</div>
555
- <div className="grid grid-cols-3 gap-3 text-base">
556
- <div className="bg-gray-50 border border-gray-200 rounded-lg p-3 text-center">
557
- <div className="font-bold mb-1 text-gray-900">LLM Calls</div>
558
- <div className="text-sm text-gray-600">GPT-4, Claude, etc.</div>
559
- </div>
560
- <div className="bg-gray-50 border border-gray-200 rounded-lg p-3 text-center">
561
- <div className="font-bold mb-1 text-gray-900">Tool Usage</div>
562
- <div className="text-sm text-gray-600">APIs, Code, DB</div>
563
- </div>
564
- <div className="bg-gray-50 border border-gray-200 rounded-lg p-3 text-center">
565
- <div className="font-bold mb-1 text-gray-900">Task Processing</div>
566
- <div className="text-sm text-gray-600">Execute workflows</div>
567
- </div>
568
- </div>
569
- </div>
570
- <div className="w-0.5 h-12 bg-gray-300"></div>
571
- </div>
572
-
573
- {/* Step 6: Observability */}
574
- <div className="flex flex-col items-center">
575
- <div className="bg-white border-2 border-gray-300 rounded-xl p-6 shadow-md w-full max-w-2xl">
576
- <div className="text-xl font-bold mb-4 text-center text-gray-900">Observability</div>
577
- <div className="grid grid-cols-3 gap-3 text-base">
578
- <div className="bg-gray-50 border border-gray-200 rounded-lg p-3 text-center">
579
- <div className="font-bold mb-1 text-gray-900">Logs</div>
580
- <div className="text-sm text-gray-600">Debug & audit</div>
581
- </div>
582
- <div className="bg-gray-50 border border-gray-200 rounded-lg p-3 text-center">
583
- <div className="font-bold mb-1 text-gray-900">Metrics</div>
584
- <div className="text-sm text-gray-600">Performance data</div>
585
- </div>
586
- <div className="bg-gray-50 border border-gray-200 rounded-lg p-3 text-center">
587
- <div className="font-bold mb-1 text-gray-900">Traces</div>
588
- <div className="text-sm text-gray-600">Execution paths</div>
589
- </div>
590
- </div>
591
- </div>
592
- </div>
593
- </div>
594
- </div>
595
- </section>
596
-
597
- {/* Core Components Breakdown */}
598
- <section className="mb-16">
599
- <div className="flex items-center mb-6">
600
- <div className="w-12 h-12 bg-gradient-to-br from-secondary via-primary to-accent rounded-lg flex items-center justify-center mr-4">
601
- <svg className="w-6 h-6 text-white" fill="none" stroke="currentColor" viewBox="0 0 24 24">
602
- <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M4 6a2 2 0 012-2h2a2 2 0 012 2v2a2 2 0 01-2 2H6a2 2 0 01-2-2V6zM14 6a2 2 0 012-2h2a2 2 0 012 2v2a2 2 0 01-2 2h-2a2 2 0 01-2-2V6zM4 16a2 2 0 012-2h2a2 2 0 012 2v2a2 2 0 01-2 2H6a2 2 0 01-2-2v-2zM14 16a2 2 0 012-2h2a2 2 0 012 2v2a2 2 0 01-2 2h-2a2 2 0 01-2-2v-2z" />
603
- </svg>
604
- </div>
605
- <h2 className="text-3xl font-bold text-primary">Schema Components</h2>
606
- </div>
607
-
608
- <p className="text-lg text-gray-700 mb-8 max-w-4xl">
609
- The OSSA schema is organized into core components that define every aspect of an AI agent.
610
- Each component serves a specific purpose in creating portable, framework-agnostic agent definitions.
611
- Click on any component below to learn more about its structure, purpose, and usage.
612
- </p>
613
-
614
- <SchemaComponentsAccordion
615
- items={[
616
- {
617
- id: 'apiversion-kind',
618
- title: 'apiVersion & kind',
619
- borderColor: 'border-primary',
620
- content: (
621
- <div className="space-y-4">
622
- <div>
623
- <p className="font-semibold text-gray-900 mb-2">WHAT:</p>
624
- <p className="text-gray-700">Version identifier and resource type for the manifest.</p>
625
- </div>
626
- <div>
627
- <p className="font-semibold text-gray-900 mb-2">WHY:</p>
628
- <p className="text-gray-700">Enables schema evolution while maintaining backward compatibility. Like Kubernetes resources or OpenAPI specs, agents can evolve without breaking existing definitions.</p>
629
- </div>
630
- <div>
631
- <p className="font-semibold text-gray-900 mb-2">EXAMPLE:</p>
632
- <div className="bg-gray-900 rounded-lg p-4 mt-2">
633
- <pre className="text-green-400 text-sm font-mono"><code>{`apiVersion: ossa/v${stableVersion}
634
- kind: Agent`}</code></pre>
635
- </div>
636
- </div>
637
- </div>
638
- ),
639
- },
640
- {
641
- id: 'metadata',
642
- title: 'metadata',
643
- borderColor: 'border-secondary',
644
- content: (
645
- <div className="space-y-4">
646
- <div>
647
- <p className="font-semibold text-gray-900 mb-2">WHAT:</p>
648
- <p className="text-gray-700">Identification and classification information: name, version, description, labels, annotations.</p>
649
- </div>
650
- <div>
651
- <p className="font-semibold text-gray-900 mb-2">WHY:</p>
652
- <p className="text-gray-700">
653
- <strong>Discovery:</strong> Find agents by name/labels in catalogs.<br/>
654
- <strong>Versioning:</strong> Track changes over time.<br/>
655
- <strong>Organization:</strong> Group agents by team, project, environment.<br/>
656
- <strong>Documentation:</strong> Human-readable descriptions and URLs.
657
- </p>
658
- </div>
659
- <div>
660
- <p className="font-semibold text-gray-900 mb-2">EXAMPLE:</p>
661
- <div className="bg-gray-900 rounded-lg p-4 mt-2">
662
- <pre className="text-green-400 text-sm font-mono"><code>{`metadata:
663
- name: customer-support-agent
664
- version: 2.1.0
665
- description: Handles tier-1 support tickets with sentiment analysis
666
- labels:
667
- team: support
668
- environment: production
669
- annotations:
670
- docs: https://docs.example.com/agents/support
671
- owner: support-team@example.com`}</code></pre>
672
- </div>
673
- </div>
674
- </div>
675
- ),
676
- },
677
- {
678
- id: 'spec-role',
679
- title: 'spec.role',
680
- borderColor: 'border-primary',
681
- content: (
682
- <div className="space-y-4">
683
- <div>
684
- <p className="font-semibold text-gray-900 mb-2">WHAT:</p>
685
- <p className="text-gray-700">The system prompt / role definition that guides the agent's behavior and personality.</p>
686
- </div>
687
- <div>
688
- <p className="font-semibold text-gray-900 mb-2">WHY:</p>
689
- <p className="text-gray-700">
690
- Defines <strong>who</strong> the agent is, <strong>what</strong> it can do, and <strong>how</strong> it should behave.
691
- This is the agent's identity and primary instruction set that shapes all interactions.
692
- </p>
693
- </div>
694
- <div>
695
- <p className="font-semibold text-gray-900 mb-2">EXAMPLE:</p>
696
- <div className="bg-gray-900 rounded-lg p-4 mt-2">
697
- <pre className="text-green-400 text-sm font-mono"><code>{`spec:
698
- role: |
699
- You are a senior software architect specializing in distributed systems.
700
- Your role is to review code for scalability, security, and best practices.
701
- You provide constructive feedback with specific examples and recommendations.
702
- You communicate in a professional but friendly tone.`}</code></pre>
703
- </div>
704
- </div>
705
- </div>
706
- ),
707
- },
708
- {
709
- id: 'spec-llm',
710
- title: 'spec.llm',
711
- borderColor: 'border-secondary',
712
- content: (
713
- <div className="space-y-4">
714
- <div>
715
- <p className="font-semibold text-gray-900 mb-2">WHAT:</p>
716
- <p className="text-gray-700">LLM provider configuration: model, temperature, max_tokens, top_p, and other parameters.</p>
717
- </div>
718
- <div>
719
- <p className="font-semibold text-gray-900 mb-2">WHY:</p>
720
- <p className="text-gray-700">
721
- <strong>Portability:</strong> Switch from OpenAI to Anthropic without changing agent logic.<br/>
722
- <strong>Optimization:</strong> Tune temperature for creativity vs consistency.<br/>
723
- <strong>Cost Control:</strong> Set token limits and choose appropriate model sizes.<br/>
724
- <strong>Quality:</strong> Configure sampling parameters for best results.
725
- </p>
726
- </div>
727
- <div>
728
- <p className="font-semibold text-gray-900 mb-2">EXAMPLE:</p>
729
- <div className="bg-gray-900 rounded-lg p-4 mt-2">
730
- <pre className="text-green-400 text-sm font-mono"><code>{`spec:
731
- llm:
732
- provider: openai
733
- model: gpt-4-turbo
734
- temperature: 0.7
735
- max_tokens: 2000
736
- top_p: 0.9
737
- frequency_penalty: 0.0
738
- presence_penalty: 0.6`}</code></pre>
739
- </div>
740
- </div>
741
- </div>
742
- ),
743
- },
744
- {
745
- id: 'spec-tools',
746
- title: 'spec.tools',
747
- borderColor: 'border-primary',
748
- content: (
749
- <div className="space-y-4">
750
- <div>
751
- <p className="font-semibold text-gray-900 mb-2">WHAT:</p>
752
- <p className="text-gray-700">Array of tools/functions the agent can call: HTTP APIs, code execution, database queries, file operations, etc.</p>
753
- </div>
754
- <div>
755
- <p className="font-semibold text-gray-900 mb-2">WHY:</p>
756
- <p className="text-gray-700">
757
- Agents need to <strong>take action</strong>, not just respond with text. Tools enable agents to:
758
- interact with APIs, query databases, run code, search the web, manipulate files, and integrate with external systems.
759
- Standardizing tool definitions ensures portability across frameworks.
760
- </p>
761
- </div>
762
- <div>
763
- <p className="font-semibold text-gray-900 mb-2">TYPES:</p>
764
- <ul className="list-disc list-inside text-gray-700 space-y-1 ml-4">
765
- <li><strong>http:</strong> REST API calls</li>
766
- <li><strong>code:</strong> Execute Python/JS/etc</li>
767
- <li><strong>database:</strong> SQL queries</li>
768
- <li><strong>file:</strong> Read/write files</li>
769
- <li><strong>search:</strong> Web/vector search</li>
770
- <li><strong>custom:</strong> Framework-specific tools</li>
771
- </ul>
772
- </div>
773
- <div>
774
- <p className="font-semibold text-gray-900 mb-2">EXAMPLE:</p>
775
- <div className="bg-gray-900 rounded-lg p-4 mt-2">
776
- <pre className="text-green-400 text-sm font-mono"><code>{`spec:
777
- tools:
778
- - type: http
779
- name: search_issues
780
- endpoint: https://api.github.com/search/issues
781
- method: GET
782
- auth:
783
- type: bearer
784
- token: \${GITHUB_TOKEN}
785
-
786
- - type: code
787
- name: analyze_logs
788
- language: python
789
- allowed_libraries: [pandas, numpy]`}</code></pre>
790
- </div>
791
- </div>
792
- </div>
793
- ),
794
- },
795
- {
796
- id: 'spec-taxonomy',
797
- title: 'spec.taxonomy',
798
- borderColor: 'border-secondary',
799
- content: (
800
- <div className="space-y-4">
801
- <div>
802
- <p className="font-semibold text-gray-900 mb-2">WHAT:</p>
803
- <p className="text-gray-700">Classification of agent purpose: domain, subdomain, use_case, and industry.</p>
804
- </div>
805
- <div>
806
- <p className="font-semibold text-gray-900 mb-2">WHY:</p>
807
- <p className="text-gray-700">
808
- <strong>Discoverability:</strong> Find agents for specific use cases in catalogs.<br/>
809
- <strong>Organization:</strong> Group similar agents together.<br/>
810
- <strong>Routing:</strong> Automatically route tasks to appropriate agents.<br/>
811
- <strong>Analytics:</strong> Track agent usage by domain/industry.
812
- </p>
813
- </div>
814
- <div>
815
- <p className="font-semibold text-gray-900 mb-2">EXAMPLE:</p>
816
- <div className="bg-gray-900 rounded-lg p-4 mt-2">
817
- <pre className="text-green-400 text-sm font-mono"><code>{`spec:
818
- taxonomy:
819
- domain: customer_service
820
- subdomain: technical_support
821
- use_case: troubleshooting
822
- industry: saas
823
- tags: [support, automation, tier1]`}</code></pre>
824
- </div>
825
- </div>
826
- </div>
827
- ),
828
- },
829
- {
830
- id: 'spec-autonomy',
831
- title: 'spec.autonomy',
832
- borderColor: 'border-primary',
833
- content: (
834
- <div className="space-y-4">
835
- <div>
836
- <p className="font-semibold text-gray-900 mb-2">WHAT:</p>
837
- <p className="text-gray-700">Defines how much independence the agent has: level (L0-L5), approval_required, human_in_loop settings.</p>
838
- </div>
839
- <div>
840
- <p className="font-semibold text-gray-900 mb-2">WHY:</p>
841
- <p className="text-gray-700">
842
- <strong>Safety:</strong> Prevent agents from taking destructive actions without oversight.<br/>
843
- <strong>Compliance:</strong> Require approvals for regulated operations.<br/>
844
- <strong>Trust:</strong> Gradually increase autonomy as agents prove reliable.<br/>
845
- <strong>Audit:</strong> Track which actions required human approval.
846
- </p>
847
- </div>
848
- <div>
849
- <p className="font-semibold text-gray-900 mb-2">LEVELS:</p>
850
- <ul className="list-disc list-inside text-gray-700 space-y-1 ml-4">
851
- <li><strong>L0:</strong> No autonomy (human controls everything)</li>
852
- <li><strong>L1:</strong> Suggestions only (human approves all actions)</li>
853
- <li><strong>L2:</strong> Conditional autonomy (human approves risky actions)</li>
854
- <li><strong>L3:</strong> High autonomy (human approves critical actions)</li>
855
- <li><strong>L4:</strong> Full autonomy (human notified of actions)</li>
856
- <li><strong>L5:</strong> Complete autonomy (no human oversight)</li>
857
- </ul>
858
- </div>
859
- <div>
860
- <p className="font-semibold text-gray-900 mb-2">EXAMPLE:</p>
861
- <div className="bg-gray-900 rounded-lg p-4 mt-2">
862
- <pre className="text-green-400 text-sm font-mono"><code>{`spec:
863
- autonomy:
864
- level: L2
865
- approval_required:
866
- - delete_operations
867
- - financial_transactions
868
- - user_data_access
869
- human_in_loop:
870
- notification_channels: [slack, email]
871
- timeout_seconds: 300`}</code></pre>
872
- </div>
873
- </div>
874
- </div>
875
- ),
876
- },
877
- {
878
- id: 'spec-observability',
879
- title: 'spec.observability',
880
- borderColor: 'border-secondary',
881
- content: (
882
- <div className="space-y-4">
883
- <div>
884
- <p className="font-semibold text-gray-900 mb-2">WHAT:</p>
885
- <p className="text-gray-700">Logging, metrics, and tracing configuration for monitoring agent behavior.</p>
886
- </div>
887
- <div>
888
- <p className="font-semibold text-gray-900 mb-2">WHY:</p>
889
- <p className="text-gray-700">
890
- <strong>Debugging:</strong> Understand what went wrong when agents fail.<br/>
891
- <strong>Performance:</strong> Track response times, token usage, costs.<br/>
892
- <strong>Quality:</strong> Monitor success rates and user satisfaction.<br/>
893
- <strong>Compliance:</strong> Audit trails for regulated industries.
894
- </p>
895
- </div>
896
- <div>
897
- <p className="font-semibold text-gray-900 mb-2">EXAMPLE:</p>
898
- <div className="bg-gray-900 rounded-lg p-4 mt-2">
899
- <pre className="text-green-400 text-sm font-mono"><code>{`spec:
900
- observability:
901
- logging:
902
- level: info
903
- include_prompts: true
904
- include_responses: true
905
- metrics:
906
- enabled: true
907
- export_to: prometheus
908
- tracing:
909
- enabled: true
910
- provider: opentelemetry
911
- sample_rate: 1.0`}</code></pre>
912
- </div>
913
- </div>
914
- </div>
915
- ),
916
- },
917
- {
918
- id: 'extensions',
919
- title: 'extensions',
920
- borderColor: 'border-primary',
921
- content: (
922
- <div className="space-y-4">
923
- <div>
924
- <p className="font-semibold text-gray-900 mb-2">WHAT:</p>
925
- <p className="text-gray-700">Framework-specific configuration blocks: kagent, buildkit, langchain, crewai, openai, anthropic, cursor, langflow, autogen, etc.</p>
926
- </div>
927
- <div>
928
- <p className="font-semibold text-gray-900 mb-2">WHY:</p>
929
- <p className="text-gray-700">
930
- While OSSA provides a <strong>common core</strong>, each framework has unique features. Extensions allow you to:
931
- leverage framework-specific capabilities, maintain compatibility with existing code, and gradually migrate from proprietary formats.
932
- <strong className="block mt-2">The core spec ensures portability. Extensions provide power.</strong>
933
- </p>
934
- </div>
935
- <div>
936
- <p className="font-semibold text-gray-900 mb-2">EXAMPLE:</p>
937
- <div className="bg-gray-900 rounded-lg p-4 mt-2">
938
- <pre className="text-green-400 text-sm font-mono"><code>{`extensions:
939
- kagent:
940
- mesh_discovery: true
941
- routing_strategy: round_robin
942
-
943
- langchain:
944
- memory_type: conversation_buffer_window
945
- memory_window_size: 5
946
-
947
- openai_agents:
948
- code_interpreter: true
949
- file_search: true`}</code></pre>
950
- </div>
951
- </div>
952
- </div>
953
- ),
954
- },
955
- ]}
956
- />
957
- </section>
958
-
959
- {/* Interactive Schema Explorer */}
960
- <section className="mb-16">
961
- <div className="flex items-center mb-8">
962
- <div className="w-12 h-12 bg-gradient-to-br from-secondary via-primary to-accent rounded-lg flex items-center justify-center mr-4">
963
- <svg className="w-6 h-6 text-white" fill="none" stroke="currentColor" viewBox="0 0 24 24">
964
- <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z" />
965
- </svg>
966
- </div>
967
- <h2 className="text-3xl font-bold text-primary">Interactive Schema Explorer</h2>
968
- </div>
969
- <p className="text-lg text-gray-700 mb-6">
970
- Explore the complete JSON Schema interactively. Click on any property to see its type, description, and validation rules.
971
- </p>
972
- <SchemaExplorer schema={schema} />
973
- </section>
974
-
975
- {/* Next Steps */}
976
- <section className="mb-8">
977
- <div className="bg-gradient-to-br from-primary/10 via-accent/10 to-secondary/10 rounded-2xl p-8">
978
- <h2 className="text-3xl font-bold mb-6 text-center">Ready to Build Agents?</h2>
979
- <div className="grid md:grid-cols-3 gap-4">
980
- <Link href="/playground" className="card-hover p-6 text-center border-l-4 border-primary hover:-translate-y-1 transition-all duration-300">
981
- <div className="text-4xl mb-3">🎮</div>
982
- <h3 className="text-xl font-semibold text-primary mb-2">Try the Playground</h3>
983
- <p className="text-gray-700">Write and validate your first agent manifest</p>
984
- </Link>
985
- <Link href="/examples" className="card-hover p-6 text-center border-l-4 border-secondary hover:-translate-y-1 transition-all duration-300">
986
- <div className="text-4xl mb-3">📚</div>
987
- <h3 className="text-xl font-semibold text-secondary mb-2">Browse Examples</h3>
988
- <p className="text-gray-700">See 58+ real-world agent definitions</p>
989
- </Link>
990
- <Link href="/docs" className="card-hover p-6 text-center border-l-4 border-primary hover:-translate-y-1 transition-all duration-300">
991
- <div className="text-4xl mb-3">📖</div>
992
- <h3 className="text-xl font-semibold text-primary mb-2">Read the Docs</h3>
993
- <p className="text-gray-700">Comprehensive guides and tutorials</p>
994
- </Link>
995
- </div>
996
- </div>
997
- </section>
998
- </div>
999
- </>
1000
- );
1001
- }