@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,105 +0,0 @@
1
- 'use client';
2
-
3
- import { usePathname, useRouter } from 'next/navigation';
4
- import { useState } from 'react';
5
- import {
6
- STABLE_VERSION_TAG,
7
- DEV_VERSION_TAG,
8
- ALL_VERSIONS,
9
- STABLE_VERSIONS,
10
- DEV_VERSIONS,
11
- getVersionInfo
12
- } from '@/lib/version';
13
-
14
- export function VersionSelector() {
15
- const [selectedVersion, setSelectedVersion] = useState(STABLE_VERSION_TAG);
16
- const router = useRouter();
17
- const pathname = usePathname();
18
-
19
- const handleVersionChange = (version: string): void => {
20
- setSelectedVersion(version);
21
- // In the future, this could navigate to version-specific docs
22
- // For now, we just update the UI
23
- };
24
-
25
- // Build version options grouped by type
26
- const versionOptions: Array<{ value: string; label: string; disabled: boolean; group?: string }> = [];
27
-
28
- // Add stable versions
29
- if (STABLE_VERSIONS.length > 0) {
30
- STABLE_VERSIONS.forEach((v) => {
31
- const isLatest = v.version === STABLE_VERSION_TAG.replace('v', '');
32
- versionOptions.push({
33
- value: v.tag,
34
- label: `${v.tag}${isLatest ? ' (Latest Stable)' : ''}${v.published ? '' : ' (Unpublished)'}`,
35
- disabled: !v.available,
36
- group: 'stable'
37
- });
38
- });
39
- }
40
-
41
- // Add dev/pre-release versions
42
- if (DEV_VERSIONS.length > 0) {
43
- DEV_VERSIONS.forEach((v) => {
44
- const isLatestDev = v.version === (DEV_VERSION_TAG?.replace('v', '') || '');
45
- const typeLabel = v.type === 'dev' ? 'Dev' : 'Pre-release';
46
- versionOptions.push({
47
- value: v.tag,
48
- label: `${v.tag} (${typeLabel}${isLatestDev ? ' - Latest' : ''})${v.published ? '' : ' - Unpublished'}`,
49
- disabled: !v.available,
50
- group: v.type
51
- });
52
- });
53
- }
54
-
55
- // Fallback if no versions loaded
56
- if (versionOptions.length === 0) {
57
- versionOptions.push({
58
- value: STABLE_VERSION_TAG,
59
- label: `${STABLE_VERSION_TAG} (Current)`,
60
- disabled: false
61
- });
62
- }
63
-
64
- return (
65
- <div className="mb-4">
66
- <label htmlFor="version-select" className="block text-sm font-medium text-gray-700 mb-2">
67
- Version
68
- </label>
69
- <select
70
- id="version-select"
71
- value={selectedVersion}
72
- onChange={(e) => handleVersionChange(e.target.value)}
73
- className="w-full px-3 py-2 border border-gray-300 rounded-lg focus:outline-none focus:ring-2 focus:ring-primary bg-white"
74
- aria-label="Select OSSA version"
75
- aria-describedby="version-description"
76
- >
77
- {versionOptions.map((version) => (
78
- <option
79
- key={version.value}
80
- value={version.value}
81
- disabled={version.disabled}
82
- >
83
- {version.label}
84
- </option>
85
- ))}
86
- </select>
87
- <p id="version-description" className="mt-1 text-sm text-gray-500">
88
- {(() => {
89
- const info = getVersionInfo(selectedVersion.replace('v', ''));
90
- if (info) {
91
- if (info.type === 'stable') {
92
- return 'Stable release - recommended for production';
93
- } else if (info.type === 'dev') {
94
- return 'Development version - may contain breaking changes';
95
- } else {
96
- return 'Pre-release version - use with caution';
97
- }
98
- }
99
- return 'Select a version to view documentation';
100
- })()}
101
- </p>
102
- </div>
103
- );
104
- }
105
-
@@ -1,293 +0,0 @@
1
- 'use client';
2
-
3
- import { useState, useMemo, useEffect } from 'react';
4
- import { useRouter, useSearchParams } from 'next/navigation';
5
- import { Prism as SyntaxHighlighter } from 'react-syntax-highlighter';
6
- import { vscDarkPlus } from 'react-syntax-highlighter/dist/cjs/styles/prism';
7
-
8
- interface ExampleFile {
9
- name: string;
10
- path: string;
11
- content: string;
12
- category: string;
13
- }
14
-
15
- interface ExamplesViewerProps {
16
- examples: ExampleFile[];
17
- }
18
-
19
- export function ExamplesViewer({ examples }: ExamplesViewerProps) {
20
- const router = useRouter();
21
- const searchParams = useSearchParams();
22
-
23
- const [selectedExample, setSelectedExample] = useState<ExampleFile | null>(null);
24
- const [filter, setFilter] = useState<string>('all');
25
- const [searchQuery, setSearchQuery] = useState<string>('');
26
-
27
- // Initialize from URL parameters
28
- useEffect(() => {
29
- const exampleParam = searchParams.get('example');
30
- const categoryParam = searchParams.get('category');
31
- const searchParam = searchParams.get('search');
32
-
33
- if (exampleParam) {
34
- const example = examples.find(ex => ex.path === exampleParam);
35
- if (example) setSelectedExample(example);
36
- } else if (examples.length > 0) {
37
- setSelectedExample(examples[0]);
38
- }
39
-
40
- if (categoryParam) setFilter(categoryParam);
41
- if (searchParam) setSearchQuery(searchParam);
42
- }, [examples, searchParams]);
43
-
44
- // Update URL when selection changes
45
- const handleSelectExample = (example: ExampleFile) => {
46
- setSelectedExample(example);
47
- const params = new URLSearchParams(searchParams.toString());
48
- params.set('example', example.path);
49
- if (filter !== 'all') params.set('category', filter);
50
- if (searchQuery) params.set('search', searchQuery);
51
- router.push(`/examples?${params.toString()}`, { scroll: false });
52
- };
53
-
54
- const handleFilterChange = (newFilter: string) => {
55
- setFilter(newFilter);
56
- const params = new URLSearchParams(searchParams.toString());
57
- if (newFilter !== 'all') {
58
- params.set('category', newFilter);
59
- } else {
60
- params.delete('category');
61
- }
62
- router.push(`/examples?${params.toString()}`, { scroll: false });
63
- };
64
-
65
- const handleSearchChange = (query: string) => {
66
- setSearchQuery(query);
67
- const params = new URLSearchParams(searchParams.toString());
68
- if (query) {
69
- params.set('search', query);
70
- } else {
71
- params.delete('search');
72
- }
73
- router.push(`/examples?${params.toString()}`, { scroll: false });
74
- };
75
-
76
- const categories = useMemo(() => {
77
- const cats = new Set(examples.map((ex) => ex.category));
78
- return Array.from(cats).sort();
79
- }, [examples]);
80
-
81
- const filteredExamples = useMemo(() => {
82
- let filtered = examples;
83
-
84
- if (filter !== 'all') {
85
- filtered = filtered.filter((ex) => ex.category === filter);
86
- }
87
-
88
- if (searchQuery) {
89
- const query = searchQuery.toLowerCase();
90
- filtered = filtered.filter(
91
- (ex) =>
92
- ex.name.toLowerCase().includes(query) ||
93
- ex.path.toLowerCase().includes(query) ||
94
- ex.content.toLowerCase().includes(query)
95
- );
96
- }
97
-
98
- return filtered;
99
- }, [examples, filter, searchQuery]);
100
-
101
- const getLanguage = (filename: string): string => {
102
- if (filename.endsWith('.ts')) return 'typescript';
103
- if (filename.endsWith('.json')) return 'json';
104
- if (filename.endsWith('.yml') || filename.endsWith('.yaml')) return 'yaml';
105
- return 'text';
106
- };
107
-
108
- const copyToClipboard = async (text: string): Promise<void> => {
109
- try {
110
- await navigator.clipboard.writeText(text);
111
- // Could add a toast notification here
112
- } catch (error) {
113
- console.error('Failed to copy:', error);
114
- }
115
- };
116
-
117
- return (
118
- <div className="grid lg:grid-cols-3 gap-6">
119
- {/* Sidebar */}
120
- <div className="lg:col-span-1">
121
- <div className="card border-2 border-gray-300 sticky top-4">
122
- <div className="flex items-center mb-4">
123
- <svg className="w-6 h-6 text-primary mr-2" fill="none" stroke="currentColor" viewBox="0 0 24 24">
124
- <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M3 7v10a2 2 0 002 2h14a2 2 0 002-2V9a2 2 0 00-2-2h-6l-2-2H5a2 2 0 00-2 2z" />
125
- </svg>
126
- <h2 className="text-2xl font-bold text-gray-900">Browse Examples</h2>
127
- </div>
128
-
129
- {/* Search */}
130
- <div className="relative mb-4">
131
- <div className="absolute inset-y-0 left-0 pl-3 flex items-center pointer-events-none">
132
- <svg className="h-5 w-5 text-gray-400" fill="none" stroke="currentColor" viewBox="0 0 24 24">
133
- <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z" />
134
- </svg>
135
- </div>
136
- <input
137
- type="search"
138
- placeholder="Search examples..."
139
- value={searchQuery}
140
- onChange={(e) => handleSearchChange(e.target.value)}
141
- className="w-full pl-10 pr-3 py-3 border-2 border-gray-300 rounded-lg focus:outline-none focus:ring-2 focus:ring-primary focus:border-primary text-base"
142
- aria-label="Search examples"
143
- />
144
- </div>
145
-
146
- {/* Category Filter */}
147
- <div className="relative mb-4">
148
- <div className="absolute inset-y-0 left-0 pl-3 flex items-center pointer-events-none">
149
- <svg className="h-5 w-5 text-gray-400" fill="none" stroke="currentColor" viewBox="0 0 24 24">
150
- <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M7 7h.01M7 3h5c.512 0 1.024.195 1.414.586l7 7a2 2 0 010 2.828l-7 7a2 2 0 01-2.828 0l-7-7A1.994 1.994 0 013 12V7a4 4 0 014-4z" />
151
- </svg>
152
- </div>
153
- <select
154
- value={filter}
155
- onChange={(e) => handleFilterChange(e.target.value)}
156
- className="w-full pl-10 pr-3 py-3 border-2 border-gray-300 rounded-lg focus:outline-none focus:ring-2 focus:ring-primary focus:border-primary text-base appearance-none bg-white"
157
- >
158
- <option value="all">All Categories ({filteredExamples.length})</option>
159
- {categories.map((cat) => (
160
- <option key={cat} value={cat}>
161
- {cat} ({examples.filter(ex => ex.category === cat).length})
162
- </option>
163
- ))}
164
- </select>
165
- </div>
166
-
167
- {/* Results Count */}
168
- <div className="mb-3 px-2">
169
- <span className="text-sm font-semibold text-gray-700">
170
- {filteredExamples.length} {filteredExamples.length === 1 ? 'example' : 'examples'} found
171
- </span>
172
- </div>
173
-
174
- {/* Example List */}
175
- <div className="space-y-2 max-h-96 overflow-y-auto pr-2">
176
- {filteredExamples.map((example) => (
177
- <button
178
- key={example.path}
179
- onClick={() => handleSelectExample(example)}
180
- className={`w-full text-left px-4 py-3 rounded-lg text-sm transition-all border-2 ${
181
- selectedExample?.path === example.path
182
- ? 'bg-gradient-to-r from-secondary via-primary to-accent text-white border-primary shadow-md'
183
- : 'bg-white border-gray-200 hover:border-primary/50 hover:shadow-md'
184
- }`}
185
- >
186
- <div className="font-bold mb-1 truncate">{example.name}</div>
187
- <div
188
- className={`text-xs truncate flex items-center ${
189
- selectedExample?.path === example.path
190
- ? 'text-white/80'
191
- : 'text-gray-500'
192
- }`}
193
- >
194
- <svg className="w-3 h-3 mr-1" fill="none" stroke="currentColor" viewBox="0 0 24 24">
195
- <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M7 7h.01M7 3h5c.512 0 1.024.195 1.414.586l7 7a2 2 0 010 2.828l-7 7a2 2 0 01-2.828 0l-7-7A1.994 1.994 0 013 12V7a4 4 0 014-4z" />
196
- </svg>
197
- {example.category}
198
- </div>
199
- </button>
200
- ))}
201
- </div>
202
- </div>
203
- </div>
204
-
205
- {/* Main Content */}
206
- <div className="lg:col-span-2">
207
- {selectedExample ? (
208
- <div className="card border-2 border-gray-300 shadow-lg">
209
- <div className="flex flex-col md:flex-row md:items-center justify-between mb-6 gap-4">
210
- <div className="flex-1">
211
- <div className="flex items-center mb-2">
212
- <svg className="w-6 h-6 text-primary mr-2" fill="none" stroke="currentColor" viewBox="0 0 24 24">
213
- <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" />
214
- </svg>
215
- <h2 className="text-3xl font-bold text-gray-900">{selectedExample.name}</h2>
216
- </div>
217
- <div className="flex items-center gap-3 text-sm">
218
- <span className="flex items-center text-gray-600">
219
- <svg className="w-4 h-4 mr-1" fill="none" stroke="currentColor" viewBox="0 0 24 24">
220
- <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M3 7v10a2 2 0 002 2h14a2 2 0 002-2V9a2 2 0 00-2-2h-6l-2-2H5a2 2 0 00-2 2z" />
221
- </svg>
222
- {selectedExample.path}
223
- </span>
224
- <span className="text-gray-400">•</span>
225
- <span className="inline-flex items-center px-3 py-1 rounded-full text-xs font-semibold bg-primary/10 text-primary border border-primary/20">
226
- {selectedExample.category}
227
- </span>
228
- <span className="text-gray-400">•</span>
229
- <span className="text-gray-600">{selectedExample.content.split('\n').length} lines</span>
230
- </div>
231
- </div>
232
- <button
233
- onClick={() => copyToClipboard(selectedExample.content)}
234
- className="bg-gradient-to-r from-secondary via-primary to-accent text-white px-6 py-3 rounded-lg font-medium hover:shadow-lg transition-all flex items-center gap-2"
235
- aria-label="Copy example code to clipboard"
236
- title="Copy code"
237
- >
238
- <svg className="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">
239
- <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z" />
240
- </svg>
241
- Copy Code
242
- </button>
243
- </div>
244
-
245
- <div className="border-2 border-gray-300 rounded-xl overflow-hidden shadow-md">
246
- <SyntaxHighlighter
247
- language={getLanguage(selectedExample.name)}
248
- style={vscDarkPlus}
249
- customStyle={{
250
- margin: 0,
251
- borderRadius: 0,
252
- fontSize: '15px',
253
- padding: '1.5rem',
254
- }}
255
- showLineNumbers
256
- wrapLines
257
- >
258
- {selectedExample.content}
259
- </SyntaxHighlighter>
260
- </div>
261
-
262
- {/* Quick Actions */}
263
- <div className="mt-6 bg-gradient-to-br from-blue-50 to-cyan-50 rounded-xl p-5 border border-blue-200">
264
- <h3 className="font-bold text-blue-900 mb-3 flex items-center">
265
- <svg className="w-5 h-5 mr-2" fill="none" stroke="currentColor" viewBox="0 0 24 24">
266
- <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M13 10V3L4 14h7v7l9-11h-7z" />
267
- </svg>
268
- Quick Actions
269
- </h3>
270
- <div className="grid md:grid-cols-2 gap-3">
271
- <a href={`/playground?source=examples&example=${encodeURIComponent(selectedExample.name)}`} className="bg-white border-2 border-blue-200 rounded-lg p-3 hover:border-blue-400 hover:shadow-md transition-all">
272
- <div className="font-semibold text-blue-900">✏️ Try in Playground</div>
273
- <div className="text-xs text-gray-600 mt-1">Test and modify this example</div>
274
- </a>
275
- <a href="/schema#components" className="bg-white border-2 border-blue-200 rounded-lg p-3 hover:border-blue-400 hover:shadow-md transition-all">
276
- <div className="font-semibold text-blue-900">📖 View Schema Reference</div>
277
- <div className="text-xs text-gray-600 mt-1">Learn about all fields</div>
278
- </a>
279
- </div>
280
- </div>
281
- </div>
282
- ) : (
283
- <div className="card border-2 border-dashed border-gray-300 text-center py-20">
284
- <div className="text-6xl mb-4">👈</div>
285
- <p className="text-gray-600 text-lg font-semibold mb-2">Select an example to view</p>
286
- <p className="text-gray-500">Choose from {examples.length} examples on the left</p>
287
- </div>
288
- )}
289
- </div>
290
- </div>
291
- );
292
- }
293
-
@@ -1,116 +0,0 @@
1
- import Link from 'next/link';
2
-
3
- export function Footer() {
4
- return (
5
- <footer className="bg-gray-900 text-gray-300 py-12 px-4">
6
- <div className="container mx-auto max-w-6xl">
7
- <div className="grid md:grid-cols-4 gap-8 mb-8">
8
- <div>
9
- <h3 className="text-white font-semibold mb-4">Open Standard Agents</h3>
10
- <p className="text-sm">
11
- OSSA is an Open Standard for AI Agents. The vendor-neutral specification was created by Thomas Scola, founder of Bluefly.io.
12
- </p>
13
- </div>
14
- <div>
15
- <h4 className="text-white font-semibold mb-4">Documentation</h4>
16
- <ul className="space-y-2 text-sm">
17
- <li>
18
- <Link href="/docs/getting-started" className="hover:text-white transition-colors">
19
- Getting Started
20
- </Link>
21
- </li>
22
- <li>
23
- <Link href="/docs" className="hover:text-white transition-colors">
24
- Full Documentation
25
- </Link>
26
- </li>
27
- <li>
28
- <Link href="/schema" className="hover:text-white transition-colors">
29
- Schema Reference
30
- </Link>
31
- </li>
32
- </ul>
33
- </div>
34
- <div>
35
- <h4 className="text-white font-semibold mb-4">Resources</h4>
36
- <ul className="space-y-2 text-sm">
37
- <li>
38
- <Link href="/examples" className="hover:text-white transition-colors">
39
- Examples
40
- </Link>
41
- </li>
42
- <li>
43
- <Link href="/playground" className="hover:text-white transition-colors">
44
- Playground
45
- </Link>
46
- </li>
47
- <li>
48
- <Link href="/blog" className="hover:text-white transition-colors">
49
- Blog
50
- </Link>
51
- </li>
52
- <li>
53
- <Link href="/design-guide" className="hover:text-white transition-colors">
54
- Design Guide
55
- </Link>
56
- </li>
57
- </ul>
58
- </div>
59
- <div>
60
- <h4 className="text-white font-semibold mb-4">Community</h4>
61
- <ul className="space-y-2 text-sm">
62
- <li>
63
- <a
64
- href="https://github.com/blueflyio/openstandardagents"
65
- target="_blank"
66
- rel="noopener noreferrer"
67
- className="hover:text-white transition-colors flex items-center gap-2"
68
- >
69
- <svg className="h-5 w-5" fill="currentColor" viewBox="0 0 24 24">
70
- <path fillRule="evenodd" d="M12 2C6.477 2 2 6.484 2 12.017c0 4.425 2.865 8.18 6.839 9.504.5.092.682-.217.682-.483 0-.237-.008-.868-.013-1.703-2.782.605-3.369-1.343-3.369-1.343-.454-1.158-1.11-1.466-1.11-1.466-.908-.62.069-.608.069-.608 1.003.07 1.531 1.032 1.531 1.032.892 1.53 2.341 1.088 2.91.832.092-.647.35-1.088.636-1.338-2.22-.253-4.555-1.113-4.555-4.951 0-1.093.39-1.988 1.029-2.688-.103-.253-.446-1.272.098-2.65 0 0 .84-.27 2.75 1.026A9.564 9.564 0 0112 6.844c.85.004 1.705.115 2.504.337 1.909-1.296 2.747-1.027 2.747-1.027.546 1.379.202 2.398.1 2.651.64.7 1.028 1.595 1.028 2.688 0 3.848-2.339 4.695-4.566 4.943.359.309.678.92.678 1.855 0 1.338-.012 2.419-.012 2.747 0 .268.18.58.688.482A10.019 10.019 0 0022 12.017C22 6.484 17.522 2 12 2z" clipRule="evenodd" />
71
- </svg>
72
- GitHub
73
- </a>
74
- </li>
75
- <li>
76
- <a
77
- href="https://github.com/blueflyio/openstandardagents/issues"
78
- target="_blank"
79
- rel="noopener noreferrer"
80
- className="hover:text-white transition-colors"
81
- >
82
- Issues
83
- </a>
84
- </li>
85
- <li>
86
- <a
87
- href="https://www.npmjs.com/package/@bluefly/openstandardagents"
88
- target="_blank"
89
- rel="noopener noreferrer"
90
- className="hover:text-white transition-colors"
91
- >
92
- npm Package
93
- </a>
94
- </li>
95
- </ul>
96
- </div>
97
- </div>
98
- <div className="border-t border-gray-700 pt-8 text-sm text-center">
99
- <p>
100
- © {new Date().getFullYear()} Open Standard Agents Organization. Licensed under{' '}
101
- <a
102
- href="https://www.apache.org/licenses/LICENSE-2.0"
103
- target="_blank"
104
- rel="noopener noreferrer"
105
- className="hover:text-white transition-colors"
106
- >
107
- Apache 2.0
108
- </a>
109
- .
110
- </p>
111
- </div>
112
- </div>
113
- </footer>
114
- );
115
- }
116
-