@bluefly/openstandardagents 0.2.7 → 0.2.9

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 (327) hide show
  1. package/.devfile.yaml +1 -1
  2. package/.env.example +1 -1
  3. package/.github/AGENTS.md +245 -0
  4. package/.github/agents/github-issue-triage.ossa.yaml +99 -0
  5. package/.github/agents/github-pr-triage.ossa.yaml +137 -0
  6. package/.github/workflows/issue-sync-to-gitlab.yml +138 -0
  7. package/.github/workflows/pr-triage-to-gitlab.yml +164 -0
  8. package/.version.json +2 -2
  9. package/.wiki-config.json +24 -0
  10. package/CHANGELOG.md +44 -18
  11. package/CODEOWNERS +75 -0
  12. package/CONTRIBUTING.md +103 -4
  13. package/README.md +178 -243
  14. package/dist/index.d.ts +1 -0
  15. package/dist/index.d.ts.map +1 -1
  16. package/dist/index.js +2 -0
  17. package/dist/index.js.map +1 -1
  18. package/dist/repositories/schema.repository.d.ts +6 -1
  19. package/dist/repositories/schema.repository.d.ts.map +1 -1
  20. package/dist/repositories/schema.repository.js +49 -27
  21. package/dist/repositories/schema.repository.js.map +1 -1
  22. package/dist/services/migration.service.d.ts +4 -3
  23. package/dist/services/migration.service.d.ts.map +1 -1
  24. package/dist/services/migration.service.js +11 -10
  25. package/dist/services/migration.service.js.map +1 -1
  26. package/dist/services/release-automation/release.service.js +1 -1
  27. package/dist/services/release-automation/release.service.js.map +1 -1
  28. package/dist/services/release-automation/schemas/release.schema.js +1 -1
  29. package/dist/services/release-automation/webhook.service.js +3 -3
  30. package/dist/services/release-automation/webhook.service.js.map +1 -1
  31. package/dist/services/runtime/claude/claude-adapter.d.ts +1 -1
  32. package/dist/services/runtime/claude/claude-adapter.d.ts.map +1 -1
  33. package/dist/services/runtime/claude/claude-adapter.js +2 -2
  34. package/dist/services/runtime/claude/claude-adapter.js.map +1 -1
  35. package/dist/spec/v0.2.8/CHANGELOG.md +401 -0
  36. package/dist/spec/v0.2.8/README.md +72 -0
  37. package/dist/spec/v0.2.8/migrations/v0.2.3-to-v0.2.4.md +599 -0
  38. package/dist/spec/v0.2.8/migrations/v0.2.5-RC-to-v0.2.6.md +65 -0
  39. package/dist/spec/v0.2.8/migrations/v0.2.6-to-v0.2.8.md +81 -0
  40. package/{spec/v0.2.6-dev/ossa-0.2.5.schema.json → dist/spec/v0.2.8/ossa-0.2.8.schema.json} +1509 -52
  41. package/dist/spec/v0.2.8/ossa-0.2.8.yaml +581 -0
  42. package/dist/spec/v0.2.9/a2a-protocol.md +1337 -0
  43. package/dist/spec/v0.2.9/agent.md +1946 -0
  44. package/dist/spec/v0.2.9/capabilities/index.yaml +25 -0
  45. package/dist/spec/v0.2.9/capabilities/memory.yaml +251 -0
  46. package/dist/spec/v0.2.9/capability-schema.md +576 -0
  47. package/dist/spec/v0.2.9/compliance-profiles.md +533 -0
  48. package/dist/spec/v0.2.9/conformance-testing.md +1527 -0
  49. package/dist/spec/v0.2.9/gitlab-duo-integration.md +621 -0
  50. package/dist/spec/v0.2.9/ossa-0.2.9.schema.json +3699 -0
  51. package/dist/spec/v0.2.9/runtime-semantics.md +464 -0
  52. package/dist/spec/v0.2.9/security-model.md +1245 -0
  53. package/dist/spec/v0.2.9/semantic-conventions.md +347 -0
  54. package/dist/spec/v0.2.9/types.ts +522 -0
  55. package/dist/types/index.d.ts +3 -2
  56. package/dist/types/index.d.ts.map +1 -1
  57. package/dist/types/policy.d.ts +377 -0
  58. package/dist/types/policy.d.ts.map +1 -0
  59. package/dist/types/policy.js +84 -0
  60. package/dist/types/policy.js.map +1 -0
  61. package/dist/utils/index.d.ts +6 -0
  62. package/dist/utils/index.d.ts.map +1 -0
  63. package/dist/utils/index.js +6 -0
  64. package/dist/utils/index.js.map +1 -0
  65. package/dist/utils/version.d.ts +68 -0
  66. package/dist/utils/version.d.ts.map +1 -0
  67. package/dist/utils/version.js +156 -0
  68. package/dist/utils/version.js.map +1 -0
  69. package/docs/specs/policy-dsl.md +925 -0
  70. package/eslint-report.json +1 -0
  71. package/examples/adk-integration/code-review-workflow.yml +1 -1
  72. package/examples/adk-integration/customer-support.yml +1 -1
  73. package/examples/adk-integration/data-pipeline.yml +1 -1
  74. package/examples/advanced/reasoning-agent.yaml +136 -0
  75. package/examples/advanced/workflows/hybrid-model-strategy.yaml +1 -1
  76. package/examples/agent-manifests/critics/critic-agent.yaml +1 -1
  77. package/examples/agent-manifests/governors/governor-agent.yaml +1 -1
  78. package/examples/agent-manifests/integrators/integrator-agent.yaml +1 -1
  79. package/examples/agent-manifests/judges/judge-agent.yaml +1 -1
  80. package/examples/agent-manifests/monitors/monitor-agent.yaml +1 -1
  81. package/examples/agent-manifests/orchestrators/orchestrator-agent.yaml +1 -1
  82. package/examples/agent-manifests/sample-compliant-agent.yaml +1 -1
  83. package/examples/agent-manifests/workers/worker-agent.yaml +1 -1
  84. package/examples/agents-md/code-agent.ossa.json +100 -0
  85. package/examples/agents-md/monorepo-agent.ossa.yaml +180 -0
  86. package/examples/anthropic/claude-assistant.ossa.json +1 -1
  87. package/examples/autogen/multi-agent.ossa.json +1 -1
  88. package/examples/claude-code/code-reviewer.ossa.yaml +78 -0
  89. package/examples/claude-code/ossa-validator.ossa.yaml +80 -0
  90. package/examples/common_npm/agent-router.ossa.yaml +1 -0
  91. package/examples/common_npm/agent-router.v0.2.2.ossa.yaml +1 -1
  92. package/examples/crewai/research-team.ossa.json +1 -1
  93. package/examples/cursor/code-review-agent.ossa.json +1 -1
  94. package/examples/drupal/gitlab-ml-recommender.ossa.yaml +1 -0
  95. package/examples/drupal/gitlab-ml-recommender.v0.2.2.ossa.yaml +1 -1
  96. package/examples/extensions/agents-md-v1.yml +175 -0
  97. package/examples/extensions/drupal-v1.yml +1 -1
  98. package/examples/extensions/kagent-v1.yml +1 -1
  99. package/examples/getting-started/hello-world-complete.ossa.yaml +1 -1
  100. package/examples/integration-patterns/agent-to-agent-orchestration.ossa.yaml +4 -4
  101. package/examples/kagent/compliance-validator.ossa.yaml +1 -1
  102. package/examples/kagent/cost-optimizer.ossa.yaml +1 -1
  103. package/examples/kagent/documentation-agent.ossa.yaml +1 -1
  104. package/examples/kagent/k8s-troubleshooter-v1.ossa.yaml +1 -0
  105. package/examples/kagent/k8s-troubleshooter-v1.v0.2.2.ossa.yaml +1 -1
  106. package/examples/kagent/k8s-troubleshooter.ossa.yaml +1 -1
  107. package/examples/kagent/security-scanner.ossa.yaml +1 -1
  108. package/examples/langchain/chain-agent.ossa.json +1 -1
  109. package/examples/langflow/workflow-agent.ossa.json +1 -1
  110. package/examples/langgraph/state-machine-agent.ossa.json +1 -1
  111. package/examples/llamaindex/rag-agent.ossa.json +1 -1
  112. package/examples/migration-guides/from-langchain-to-ossa.yaml +4 -4
  113. package/examples/multi-agent/README.md +74 -0
  114. package/examples/multi-agent/conditional-router.ossa.yaml +42 -0
  115. package/examples/multi-agent/parallel-execution.ossa.yaml +54 -0
  116. package/examples/multi-agent/sequential-pipeline.ossa.yaml +45 -0
  117. package/examples/openai/basic-agent.ossa.yaml +1 -1
  118. package/examples/openai/multi-tool-agent.ossa.json +1 -1
  119. package/examples/openai/swarm-agent.ossa.json +1 -1
  120. package/examples/production/document-analyzer-openai.yml +1 -1
  121. package/examples/quickstart/support-agent.ossa.yaml +1 -1
  122. package/examples/spec-examples/audit-agent.yml +1 -1
  123. package/examples/spec-examples/chat-agent.yml +1 -1
  124. package/examples/spec-examples/compliance-agent.yml +1 -1
  125. package/examples/spec-examples/monitoring-agent.yml +1 -1
  126. package/examples/spec-examples/workflow-agent.yml +1 -1
  127. package/examples/templates/ossa-compliance.yaml +1 -1
  128. package/examples/vercel/edge-agent.ossa.json +1 -1
  129. package/gl-code-quality-report.json +62 -0
  130. package/llms-ctx-full.txt +39 -0
  131. package/llms-ctx.txt +39 -0
  132. package/llms.txt +47 -0
  133. package/package.json +6 -3
  134. package/scripts/README.md +25 -0
  135. package/scripts/compliance-audit.ts +796 -0
  136. package/scripts/eslint-to-codequality.cjs +34 -0
  137. package/scripts/generate-agents-catalog.ts +2 -1
  138. package/scripts/generate-api-docs.ts +2 -1
  139. package/scripts/generate-examples-docs.ts +2 -1
  140. package/scripts/generate-llms-ctx.sh +17 -0
  141. package/scripts/generate-schema-docs.ts +31 -10
  142. package/scripts/sync-version.js +4 -12
  143. package/scripts/validate-schema.ts +2 -1
  144. package/spec/v0.2.8/CHANGELOG.md +401 -0
  145. package/spec/v0.2.8/README.md +72 -0
  146. package/spec/v0.2.8/migrations/v0.2.3-to-v0.2.4.md +599 -0
  147. package/spec/v0.2.8/migrations/v0.2.5-RC-to-v0.2.6.md +65 -0
  148. package/spec/v0.2.8/migrations/v0.2.6-to-v0.2.8.md +81 -0
  149. package/spec/{v0.2.6-dev/ossa-0.2.6-dev.schema.json → v0.2.8/ossa-0.2.8.schema.json} +1509 -52
  150. package/spec/v0.2.8/ossa-0.2.8.yaml +581 -0
  151. package/spec/v0.2.9/a2a-protocol.md +1337 -0
  152. package/spec/v0.2.9/agent.md +1946 -0
  153. package/spec/v0.2.9/capabilities/index.yaml +25 -0
  154. package/spec/v0.2.9/capabilities/memory.yaml +251 -0
  155. package/spec/v0.2.9/capability-schema.md +576 -0
  156. package/spec/v0.2.9/compliance-profiles.md +533 -0
  157. package/spec/v0.2.9/conformance-testing.md +1527 -0
  158. package/spec/v0.2.9/gitlab-duo-integration.md +621 -0
  159. package/spec/v0.2.9/ossa-0.2.9.schema.json +3699 -0
  160. package/spec/v0.2.9/runtime-semantics.md +464 -0
  161. package/spec/v0.2.9/security-model.md +1245 -0
  162. package/spec/v0.2.9/semantic-conventions.md +347 -0
  163. package/spec/v0.2.9/types.ts +522 -0
  164. package/test-results/junit.xml +337 -0
  165. package/.github/workflows/pr-comment.yml +0 -33
  166. package/bin/validate-ossa-0.2.5-RC.ts +0 -244
  167. package/dist/spec/v0.2.6-dev/ossa-0.2.5.schema.json +0 -1696
  168. package/dist/spec/v0.2.6-dev/ossa-0.2.6-dev.schema.json +0 -1696
  169. package/scripts/lib/exec.ts +0 -37
  170. package/scripts/lib/file-ops.ts +0 -58
  171. package/scripts/lib/version.ts +0 -83
  172. package/website/.lighthouserc.ts +0 -24
  173. package/website/.prettierrc +0 -10
  174. package/website/DESIGN_SYSTEM_IMPLEMENTATION.md +0 -445
  175. package/website/Dockerfile +0 -30
  176. package/website/app/about/page.tsx +0 -304
  177. package/website/app/blog/[slug]/page.tsx +0 -208
  178. package/website/app/blog/page.tsx +0 -249
  179. package/website/app/design-guide/page.tsx +0 -511
  180. package/website/app/docs/[[...slug]]/page.tsx +0 -847
  181. package/website/app/docs/core-concepts/project-structure/page.tsx +0 -349
  182. package/website/app/ecosystem/page.tsx +0 -410
  183. package/website/app/examples/page.tsx +0 -133
  184. package/website/app/globals.scss +0 -370
  185. package/website/app/layout.tsx +0 -106
  186. package/website/app/license/page.tsx +0 -183
  187. package/website/app/not-found.tsx +0 -18
  188. package/website/app/page.tsx +0 -686
  189. package/website/app/page.tsx.bak +0 -679
  190. package/website/app/page.tsx.bak2 +0 -649
  191. package/website/app/playground/page.tsx +0 -487
  192. package/website/app/robots.ts +0 -19
  193. package/website/app/rss.xml/route.ts +0 -74
  194. package/website/app/schema/page.tsx +0 -1001
  195. package/website/app/sitemap.ts +0 -56
  196. package/website/app/specification/page.tsx +0 -287
  197. package/website/components/InstallCommand.tsx +0 -96
  198. package/website/components/Logo.tsx +0 -97
  199. package/website/components/StructuredData.tsx +0 -65
  200. package/website/components/docs/DocsSearch.tsx +0 -104
  201. package/website/components/docs/DocsSidebar.tsx +0 -155
  202. package/website/components/docs/MarkdownContent.tsx +0 -401
  203. package/website/components/docs/VersionSelector.tsx +0 -105
  204. package/website/components/examples/ExamplesViewer.tsx +0 -293
  205. package/website/components/layout/Footer.tsx +0 -116
  206. package/website/components/layout/Header.tsx +0 -172
  207. package/website/components/schema/SchemaComponentsAccordion.tsx +0 -84
  208. package/website/components/schema/SchemaExplorer.tsx +0 -213
  209. package/website/components/ui/Badge.tsx +0 -82
  210. package/website/components/ui/Button.tsx +0 -116
  211. package/website/components/ui/Card.tsx +0 -167
  212. package/website/components/ui/Checkbox.tsx +0 -141
  213. package/website/components/ui/Input.tsx +0 -169
  214. package/website/components/ui/Radio.tsx +0 -141
  215. package/website/components/ui/Select.tsx +0 -182
  216. package/website/components/ui/Tag.tsx +0 -158
  217. package/website/components/ui/Textarea.tsx +0 -195
  218. package/website/components/ui/index.ts +0 -11
  219. package/website/content/blog/OpenAPI-AI-Agents-Standard.md +0 -285
  220. package/website/content/blog/Why-Formal-Standards-Matter-Now.md +0 -198
  221. package/website/content/blog/gitlab-kubernetes-agent-ecosystem.md +0 -286
  222. package/website/content/blog/introducing-ossa-framework.md +0 -328
  223. package/website/content/blog/ossa-production-results.md +0 -279
  224. package/website/content/blog/welcome-to-ossa.md +0 -43
  225. package/website/content/blog/why-ai-agents-need-open-standard.md +0 -98
  226. package/website/content/docs/00-home.md +0 -153
  227. package/website/content/docs/adapters/openai-adapter.md +0 -693
  228. package/website/content/docs/agents/catalog.md +0 -28
  229. package/website/content/docs/aiflow-framework-integration-with-ossa.md +0 -107
  230. package/website/content/docs/api-reference/index.md +0 -38
  231. package/website/content/docs/api-reference/ossa-core-api.md +0 -634
  232. package/website/content/docs/api-reference/ossa-registry-api.md +0 -515
  233. package/website/content/docs/api-reference/unified-agent-gateway.md +0 -599
  234. package/website/content/docs/architecture/execution-flow.md +0 -335
  235. package/website/content/docs/architecture/multi-agent-systems.md +0 -737
  236. package/website/content/docs/architecture/overview.md +0 -121
  237. package/website/content/docs/architecture/stack-integration.md +0 -461
  238. package/website/content/docs/changelog.md +0 -246
  239. package/website/content/docs/cli-reference/index.md +0 -111
  240. package/website/content/docs/cli-reference/ossa-agents.md +0 -70
  241. package/website/content/docs/cli-reference/ossa-export.md +0 -56
  242. package/website/content/docs/cli-reference/ossa-generate.md +0 -66
  243. package/website/content/docs/cli-reference/ossa-gitlab-agent.md +0 -57
  244. package/website/content/docs/cli-reference/ossa-import.md +0 -56
  245. package/website/content/docs/cli-reference/ossa-init.md +0 -57
  246. package/website/content/docs/cli-reference/ossa-migrate.md +0 -62
  247. package/website/content/docs/cli-reference/ossa-run.md +0 -66
  248. package/website/content/docs/cli-reference/ossa-schema.md +0 -57
  249. package/website/content/docs/cli-reference/ossa-setup.md +0 -57
  250. package/website/content/docs/cli-reference/ossa-validate.md +0 -66
  251. package/website/content/docs/configuration/index.md +0 -97
  252. package/website/content/docs/contributing.md +0 -599
  253. package/website/content/docs/deployment/github-mirroring.md +0 -924
  254. package/website/content/docs/documentation.md +0 -100
  255. package/website/content/docs/ecosystem/framework-support.md +0 -1361
  256. package/website/content/docs/ecosystem/overview.md +0 -366
  257. package/website/content/docs/errors/index.md +0 -10
  258. package/website/content/docs/examples/aiflow-framework-integration-with-ossa.md +0 -107
  259. package/website/content/docs/examples/catalog.md +0 -300
  260. package/website/content/docs/for-audiences/students-researchers.md +0 -122
  261. package/website/content/docs/getting-started/index.md +0 -92
  262. package/website/content/docs/getting-started/installation.md +0 -155
  263. package/website/content/docs/getting-started/running-agents.md +0 -309
  264. package/website/content/docs/getting-started.md +0 -91
  265. package/website/content/docs/integrations/aiflow.md +0 -104
  266. package/website/content/docs/integrations/drupal.md +0 -105
  267. package/website/content/docs/migration-guides/agent-schema-comparison.md +0 -232
  268. package/website/content/docs/migration-guides/anthropic-mcp-to-ossa.md +0 -1750
  269. package/website/content/docs/migration-guides/crewai-to-ossa.md +0 -274
  270. package/website/content/docs/migration-guides/drupal-eca-to-ossa.md +0 -2017
  271. package/website/content/docs/migration-guides/general-agent-schema.yml +0 -247
  272. package/website/content/docs/migration-guides/index.md +0 -133
  273. package/website/content/docs/migration-guides/langchain-to-ossa.md +0 -1714
  274. package/website/content/docs/migration-guides/langflow-to-ossa.md +0 -2075
  275. package/website/content/docs/migration-guides/migration-manifest.json +0 -64
  276. package/website/content/docs/migration-guides/openai-to-ossa.md +0 -1202
  277. package/website/content/docs/openapi-extensions/examples.md +0 -550
  278. package/website/content/docs/openapi-extensions/index.md +0 -551
  279. package/website/content/docs/openapi-extensions/operation-extensions.md +0 -457
  280. package/website/content/docs/openapi-extensions/root-extensions.md +0 -410
  281. package/website/content/docs/ossa-compliant-badge.md +0 -251
  282. package/website/content/docs/pre-release/index.md +0 -175
  283. package/website/content/docs/quick-reference.md +0 -17
  284. package/website/content/docs/readme.md +0 -35
  285. package/website/content/docs/releases/v0.2.6.md +0 -99
  286. package/website/content/docs/schema-reference/agent-capabilities.md +0 -50
  287. package/website/content/docs/schema-reference/agent-id.md +0 -52
  288. package/website/content/docs/schema-reference/agent-name.md +0 -50
  289. package/website/content/docs/schema-reference/agent-role.md +0 -54
  290. package/website/content/docs/schema-reference/agent-spec.md +0 -406
  291. package/website/content/docs/schema-reference/agent-version.md +0 -50
  292. package/website/content/docs/schema-reference/autonomy.md +0 -568
  293. package/website/content/docs/schema-reference/constraints.md +0 -543
  294. package/website/content/docs/schema-reference/index.md +0 -45
  295. package/website/content/docs/schema-reference/llm-config.md +0 -445
  296. package/website/content/docs/schema-reference/observability.md +0 -654
  297. package/website/content/docs/schema-reference/ossa-manifest.md +0 -309
  298. package/website/content/docs/schema-reference/taxonomy.md +0 -509
  299. package/website/content/docs/schema-reference/tools.md +0 -628
  300. package/website/content/docs/templates/blog-post.md +0 -43
  301. package/website/content/docs/types-reference/index.md +0 -105
  302. package/website/content/docs/use-cases/00-index.md +0 -395
  303. package/website/content/docs/use-cases/cicd-code-review.md +0 -1236
  304. package/website/content/docs/use-cases/customer-support.md +0 -1234
  305. package/website/content/docs/use-cases/enterprise-compliance.md +0 -1208
  306. package/website/content/docs/use-cases/research-multi-agent.md +0 -1161
  307. package/website/content/docs/versioning.md +0 -288
  308. package/website/dev.sh +0 -53
  309. package/website/docker-compose.dev.yml +0 -36
  310. package/website/lib/version.ts +0 -35
  311. package/website/lib/versions.json +0 -103
  312. package/website/next.config.ts +0 -18
  313. package/website/nginx.conf +0 -32
  314. package/website/package-lock.json +0 -9679
  315. package/website/package.json +0 -59
  316. package/website/postcss.config.mjs +0 -9
  317. package/website/scripts/fetch-versions.js +0 -166
  318. package/website/scripts/generate-examples-index.js +0 -163
  319. package/website/scripts/merge-docs-to-wiki.ts +0 -207
  320. package/website/scripts/sync-version.js +0 -72
  321. package/website/scripts/sync-wiki.ts +0 -322
  322. package/website/scripts/upload-wiki.ts +0 -199
  323. package/website/styles/_spacing.scss +0 -453
  324. package/website/styles/_tokens.scss +0 -245
  325. package/website/styles/_typography.scss +0 -361
  326. package/website/styles/_variables.scss +0 -287
  327. package/website/tailwind.config.ts +0 -170
@@ -1,551 +0,0 @@
1
- # OSSA OpenAPI/Swagger Specification Extensions
2
-
3
- > **Note**: This content is ready to copy-paste into GitLab Wiki pages.
4
- > Main page: `OpenAPI Extensions`
5
- > URL: `/docs/openapi-extensions` (relative to wiki)
6
-
7
- ## Overview
8
-
9
- OSSA (Open Standard for Scalable Agents) extends OpenAPI 3.1 specifications with AI agent-specific metadata, capabilities, and configuration. These extensions enable OpenAPI specs to describe not just REST APIs, but the full agent behavior including autonomy levels, LLM configuration, tool usage, and compliance requirements.
10
-
11
- **Key Benefits:**
12
- - **Agent Discovery**: OpenAPI specs become agent manifests that describe capabilities
13
- - **Type Safety**: Full TypeScript types and JSON Schema validation
14
- - **Tool Integration**: Declare MCP servers and tools directly in API specs
15
- - **Compliance**: Built-in support for governance, security, and observability
16
- - **Framework Agnostic**: Works with any agent runtime (LangChain, CrewAI, kAgent, etc.)
17
-
18
- ## Table of Contents
19
-
20
- 1. [Root-Level Extensions](#root-level-extensions)
21
- 2. [Operation-Level Extensions](#operation-level-extensions)
22
- 3. [Parameter Extensions](#parameter-extensions)
23
- 4. [Schema Extensions](#schema-extensions)
24
- 5. [Complete Examples](#complete-examples)
25
- 6. [Integration with OSSA Manifests](#integration-with-ossa-manifests)
26
-
27
- ---
28
-
29
- ## Root-Level Extensions
30
-
31
- Extensions that can be added at the root level of an OpenAPI 3.1 specification.
32
-
33
- ### x-ossa-metadata
34
-
35
- Embeds comprehensive OSSA agent metadata in OpenAPI spec root. Provides governance, compliance, security, and observability metadata.
36
-
37
- **Location**: Root level of OpenAPI spec
38
-
39
- **Example**:
40
-
41
- ```yaml
42
- openapi: 3.1.0
43
- info:
44
- title: Kubernetes Troubleshooter Agent API
45
- version: 1.0.0
46
-
47
- x-ossa-metadata:
48
- version: 0.2.x
49
- compliance:
50
- level: enterprise
51
- frameworks:
52
- - OSSA
53
- - OpenAPI 3.1
54
- - RFC7807
55
- governance:
56
- approved: true
57
- approvedBy: Platform Team
58
- approvalDate: 2024-01-15
59
- security:
60
- classification: internal
61
- authentication: required
62
- encryption: tls1.3
63
- observability:
64
- tracing: true
65
- metrics: true
66
- logging: true
67
- ```
68
-
69
- **See**: [Full Documentation](https://github.com/blueflyio/openstandardagents/blob/main/docs/openapi-extensions.md#x-ossa-metadata)
70
-
71
- ### x-ossa
72
-
73
- Core OSSA compliance information with agent identification and validation metadata.
74
-
75
- **Location**: Root level or `info` section of OpenAPI spec
76
-
77
- **Example**:
78
-
79
- ```yaml
80
- x-ossa:
81
- version: 0.2.x
82
- agent:
83
- id: k8s-troubleshooter
84
- type: worker
85
- compliance:
86
- standards:
87
- - openapi-first
88
- - dry
89
- - crud
90
- - solid
91
- - type-safe
92
- validated: true
93
- validatedAt: "2024-01-15T10:30:00Z"
94
- ```
95
-
96
- **See**: [Full Documentation](https://github.com/blueflyio/openstandardagents/blob/main/docs/openapi-extensions.md#x-ossa)
97
-
98
- ### x-agent
99
-
100
- Agent-specific capabilities, tools, environment, and rules configuration.
101
-
102
- **Location**: Root level or `info` section of OpenAPI spec
103
-
104
- **Example**:
105
-
106
- ```yaml
107
- x-agent:
108
- capabilities:
109
- - data-transformation
110
- - csv-parsing
111
- - json-validation
112
- tools:
113
- - postgres-mcp
114
- - redis-mcp
115
- environment:
116
- processingTimeout: 300
117
- maxFileSize: "100MB"
118
- rules:
119
- - no-external-api-calls
120
- - validate-all-inputs
121
- ```
122
-
123
- **See**: [Full Documentation](https://github.com/blueflyio/openstandardagents/blob/main/docs/openapi-extensions.md#x-agent)
124
-
125
- ---
126
-
127
- ## Operation-Level Extensions
128
-
129
- Extensions that can be added to individual OpenAPI operations (GET, POST, PUT, DELETE, etc.).
130
-
131
- ### x-ossa-capability
132
-
133
- Links an OpenAPI operation to an OSSA agent capability.
134
-
135
- **Location**: Operation object within path item
136
-
137
- **Example**:
138
-
139
- ```yaml
140
- paths:
141
- /api/v1/process-data:
142
- post:
143
- summary: Process incoming data
144
- operationId: processData
145
- x-ossa-capability:
146
- name: data-transformation
147
- description: Transforms CSV data to JSON format
148
- requestBody:
149
- # ... request body ...
150
- responses:
151
- # ... responses ...
152
- ```
153
-
154
- **See**: [Full Documentation](https://github.com/blueflyio/openstandardagents/blob/main/docs/openapi-extensions.md#x-ossa-capability)
155
-
156
- ### x-ossa-autonomy
157
-
158
- Defines autonomy level and approval requirements for operation execution.
159
-
160
- **Location**: Operation object within path item
161
-
162
- **Autonomy Levels**:
163
- - `supervised` - Requires human approval before execution
164
- - `semi-autonomous` - Can execute with automatic approval under certain conditions
165
- - `autonomous` - Can execute without human intervention
166
-
167
- **Example**:
168
-
169
- ```yaml
170
- paths:
171
- /api/v1/delete-resource:
172
- delete:
173
- summary: Delete a resource
174
- operationId: deleteResource
175
- x-ossa-autonomy:
176
- level: supervised
177
- approval_required: true
178
- allowed_actions:
179
- - read_resource
180
- - validate_deletion
181
- blocked_actions:
182
- - permanent_delete
183
- ```
184
-
185
- **See**: [Full Documentation](https://github.com/blueflyio/openstandardagents/blob/main/docs/openapi-extensions.md#x-ossa-autonomy)
186
-
187
- ### x-ossa-constraints
188
-
189
- Defines cost, token, performance, and time constraints for operation execution.
190
-
191
- **Location**: Operation object within path item
192
-
193
- **Example**:
194
-
195
- ```yaml
196
- paths:
197
- /api/v1/generate-report:
198
- post:
199
- summary: Generate comprehensive report
200
- operationId: generateReport
201
- x-ossa-constraints:
202
- cost:
203
- maxTokensPerDay: 50000
204
- maxTokensPerRequest: 4000
205
- maxCostPerDay: 10.0
206
- currency: USD
207
- performance:
208
- maxLatencySeconds: 30
209
- maxConcurrentRequests: 5
210
- time:
211
- maxExecutionTime: 300
212
- ```
213
-
214
- **See**: [Full Documentation](https://github.com/blueflyio/openstandardagents/blob/main/docs/openapi-extensions.md#x-ossa-constraints)
215
-
216
- ### x-ossa-tools
217
-
218
- Specifies MCP servers or tools required for operation execution.
219
-
220
- **Location**: Operation object within path item
221
-
222
- **Example**:
223
-
224
- ```yaml
225
- paths:
226
- /api/v1/diagnose-issue:
227
- post:
228
- summary: Diagnose Kubernetes issue
229
- operationId: diagnoseIssue
230
- x-ossa-tools:
231
- - type: mcp
232
- server: kubernetes-mcp
233
- namespace: default
234
- capabilities:
235
- - get_pods
236
- - get_logs
237
- - get_events
238
- ```
239
-
240
- **See**: [Full Documentation](https://github.com/blueflyio/openstandardagents/blob/main/docs/openapi-extensions.md#x-ossa-tools)
241
-
242
- ### x-ossa-llm
243
-
244
- Overrides LLM configuration for a specific operation.
245
-
246
- **Location**: Operation object within path item
247
-
248
- **Example**:
249
-
250
- ```yaml
251
- paths:
252
- /api/v1/analyze-code:
253
- post:
254
- summary: Analyze code for issues
255
- operationId: analyzeCode
256
- x-ossa-llm:
257
- provider: openai
258
- model: gpt-4
259
- temperature: 0.2
260
- maxTokens: 4000
261
- ```
262
-
263
- **See**: [Full Documentation](https://github.com/blueflyio/openstandardagents/blob/main/docs/openapi-extensions.md#x-ossa-llm)
264
-
265
- ---
266
-
267
- ## Parameter Extensions
268
-
269
- Extensions for OpenAPI parameters (headers, query params, path params, cookies).
270
-
271
- ### x-ossa-agent-id
272
-
273
- Standard header parameter for agent identification in agent-to-agent communication.
274
-
275
- **Example**:
276
-
277
- ```yaml
278
- components:
279
- parameters:
280
- X-Ossa-Agent-Id:
281
- name: X-OSSA-Agent-ID
282
- in: header
283
- description: Unique identifier of the agent making the request
284
- required: false
285
- schema:
286
- type: string
287
- pattern: "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
288
- ```
289
-
290
- **See**: [Full Documentation](https://github.com/blueflyio/openstandardagents/blob/main/docs/openapi-extensions.md#x-ossa-agent-id)
291
-
292
- ### x-ossa-version
293
-
294
- Standard header parameter for OSSA specification version in requests.
295
-
296
- **Example**:
297
-
298
- ```yaml
299
- components:
300
- parameters:
301
- X-Ossa-Version:
302
- name: X-OSSA-Version
303
- in: header
304
- description: OSSA specification version the agent supports
305
- required: false
306
- schema:
307
- type: string
308
- pattern: "^\\d+\\.\\d+\\.\\d+(-[a-zA-Z0-9]+)?$"
309
- ```
310
-
311
- **See**: [Full Documentation](https://github.com/blueflyio/openstandardagents/blob/main/docs/openapi-extensions.md#x-ossa-version)
312
-
313
- ---
314
-
315
- ## Schema Extensions
316
-
317
- Extensions for OpenAPI schema definitions.
318
-
319
- ### x-ossa-capability-schema
320
-
321
- Extends schema definition with capability metadata, linking OpenAPI schemas to OSSA capabilities.
322
-
323
- **Location**: Schema definition in `components.schemas`
324
-
325
- **Example**:
326
-
327
- ```yaml
328
- components:
329
- schemas:
330
- DataProcessingInput:
331
- type: object
332
- required: [csvData]
333
- properties:
334
- csvData:
335
- type: string
336
- x-ossa-capability-schema:
337
- capabilityName: data-transformation
338
- input: true
339
- validation:
340
- required: true
341
- strict: true
342
- ```
343
-
344
- **See**: [Full Documentation](https://github.com/blueflyio/openstandardagents/blob/main/docs/openapi-extensions.md#x-ossa-capability-schema)
345
-
346
- ---
347
-
348
- ## Complete Examples
349
-
350
- ### Minimal Agent API
351
-
352
- See: [`examples/openapi-extensions/minimal-agent-api.openapi.yml`](https://github.com/blueflyio/openstandardagents/blob/main/examples/openapi-extensions/minimal-agent-api.openapi.yml)
353
-
354
- ### Worker Agent API
355
-
356
- See: [`examples/openapi-extensions/worker-agent-api.openapi.yml`](https://github.com/blueflyio/openstandardagents/blob/main/examples/openapi-extensions/worker-agent-api.openapi.yml)
357
-
358
- ### Orchestrator Agent API
359
-
360
- See: [`examples/openapi-extensions/orchestrator-agent-api.openapi.yml`](https://github.com/blueflyio/openstandardagents/blob/main/examples/openapi-extensions/orchestrator-agent-api.openapi.yml)
361
-
362
- ---
363
-
364
- ## Integration with OSSA Manifests
365
-
366
- OSSA OpenAPI extensions complement OSSA agent manifests (`.ossa.yaml` files). They serve different but related purposes:
367
-
368
- - **OSSA Agent Manifest** (`.ossa.yaml`) - Declarative agent definition with full configuration
369
- - **OpenAPI Specification with OSSA Extensions** - API interface definition with agent metadata
370
-
371
- See [Full Documentation](https://github.com/blueflyio/openstandardagents/blob/main/docs/openapi-extensions.md#integration-with-ossa-manifests) for details.
372
-
373
- ---
374
-
375
- ## Quick Reference
376
-
377
- | Extension | Location | Purpose |
378
- |-----------|----------|---------|
379
- | `x-ossa-metadata` | Root | Comprehensive agent metadata |
380
- | `x-ossa` | Root | Core OSSA compliance info |
381
- | `x-agent` | Root | Agent capabilities & config |
382
- | `x-ossa-capability` | Operation | Link operation to capability |
383
- | `x-ossa-autonomy` | Operation | Define autonomy level |
384
- | `x-ossa-constraints` | Operation | Cost & performance limits |
385
- | `x-ossa-tools` | Operation | Required MCP servers/tools |
386
- | `x-ossa-llm` | Operation | Override LLM config |
387
- | `x-ossa-agent-id` | Parameter | Agent identification header |
388
- | `x-ossa-version` | Parameter | OSSA version header |
389
- | `x-ossa-capability-schema` | Schema | Capability schema metadata |
390
-
391
- ---
392
-
393
- ## Resources
394
-
395
- - **Full Documentation**: [docs/openapi-extensions.md](https://github.com/blueflyio/openstandardagents/blob/main/docs/openapi-extensions.md)
396
- - **JSON Schema**: [docs/schemas/openapi-extensions.schema.json](https://github.com/blueflyio/openstandardagents/blob/main/docs/schemas/openapi-extensions.schema.json)
397
- - **Examples**: [examples/openapi-extensions/](https://github.com/blueflyio/openstandardagents/tree/main/examples/openapi-extensions)
398
- - **OSSA Specification**: [spec/v0.2.6/OSSA-SPECIFICATION-v0.2.x.md](https://github.com/blueflyio/openstandardagents/blob/main/spec/v0.2.6/OSSA-SPECIFICATION-v0.2.2.md)
399
- - **npm Package**: [@bluefly/openstandardagents](https://www.npmjs.com/package/@bluefly/openstandardagents)
400
-
401
- ---
402
-
403
- *For complete documentation with all examples and details, see the [main documentation file](https://github.com/blueflyio/openstandardagents/blob/main/docs/openapi-extensions.md).*
404
-
405
-
406
- ---
407
-
408
- ## Integration with OSSA Manifests
409
-
410
- OSSA OpenAPI extensions complement OSSA agent manifests (`.ossa.yaml` files). They serve different but related purposes:
411
-
412
- - **OSSA Agent Manifest** (`.ossa.yaml`) - Declarative agent definition with full configuration, capabilities, tools, LLM settings, and runtime configuration
413
- - **OpenAPI Specification with OSSA Extensions** - API interface definition with agent metadata, operation-level autonomy, constraints, and tool requirements
414
-
415
- ### When to Use Each
416
-
417
- **Use OSSA Manifest (`.ossa.yaml`)** when:
418
- - Defining the complete agent configuration
419
- - Specifying runtime environment (k8s, docker, serverless)
420
- - Declaring all agent capabilities in one place
421
- - Configuring default LLM settings
422
- - Defining agent-to-agent communication protocols
423
-
424
- **Use OpenAPI with OSSA Extensions** when:
425
- - Documenting REST API endpoints
426
- - Linking API operations to agent capabilities
427
- - Defining operation-specific autonomy levels
428
- - Setting per-operation cost and performance constraints
429
- - Specifying which tools are needed for each API call
430
-
431
- ### Combining Both
432
-
433
- You can use both together:
434
-
435
- 1. **OSSA Manifest** defines the agent's overall configuration
436
- 2. **OpenAPI Spec** defines the API interface with OSSA extensions
437
- 3. The `x-ossa-capability` extension links API operations to capabilities defined in the manifest
438
-
439
- Example workflow:
440
- ```yaml
441
- # agent.ossa.yaml
442
- apiVersion: ossa/v0.2.x
443
- kind: Agent
444
- metadata:
445
- name: data-processor
446
- spec:
447
- capabilities:
448
- - name: data-transformation
449
- description: Transform CSV to JSON
450
- # ... capability config ...
451
-
452
- # agent.openapi.yml
453
- openapi: 3.1.0
454
- paths:
455
- /api/v1/transform:
456
- post:
457
- x-ossa-capability:
458
- name: data-transformation # Links to capability in manifest
459
- # ... operation config ...
460
- ```
461
-
462
- ---
463
-
464
- ## Governance & Autonomy Guidance
465
-
466
- ### Autonomy Levels
467
-
468
- - **supervised**: Human must approve before execution
469
- - **semi-autonomous**: Human approves plan, agent executes bounded actions
470
- - **autonomous**: No pre-approval; audit + guardrails required
471
-
472
- ### Recommended Policies
473
-
474
- - Always define `x-ossa-autonomy.level` and `approval_required` per operation
475
- - Denylist high-risk actions in `blocked_actions`
476
- - Constrain costs/latency via `x-ossa-constraints`
477
- - Require `x-ossa-agent-id` and `x-ossa-version` headers for traceability
478
-
479
- ### Example Policy Snippets
480
-
481
- ```yaml
482
- x-ossa-autonomy:
483
- level: supervised
484
- approval_required: true
485
- allowed_actions: [read_only]
486
- blocked_actions: [write_resource, exec_shell]
487
- ```
488
-
489
- ```yaml
490
- x-ossa-constraints:
491
- cost:
492
- maxTokensPerRequest: 2000
493
- maxCostPerDay: 5
494
- currency: USD
495
- performance:
496
- maxLatencySeconds: 30
497
- maxConcurrentRequests: 3
498
- ```
499
-
500
- ### Audit/Observability
501
-
502
- Enable in root `x-ossa-metadata.observability` and propagate request IDs across calls.
503
-
504
- ---
505
-
506
- ## Advanced Examples
507
-
508
- ### Idempotent Write Guard
509
-
510
- ```yaml
511
- paths:
512
- /api/v1/config/update:
513
- post:
514
- x-ossa-capability:
515
- name: config-update
516
- description: Safe config updates with dry-run
517
- input: true
518
- output: true
519
- x-ossa-autonomy:
520
- level: semi-autonomous
521
- approval_required: true
522
- blocked_actions: [restart_cluster]
523
- x-ossa-constraints:
524
- performance:
525
- maxLatencySeconds: 60
526
- parameters:
527
- - name: X-Request-Id
528
- in: header
529
- required: true
530
- schema:
531
- type: string
532
- ```
533
-
534
- ### Dual-LLM Strategy Per Operation
535
-
536
- ```yaml
537
- x-ossa-llm:
538
- provider: openai
539
- model: gpt-4o
540
- temperature: 0.2
541
- ```
542
-
543
- ```yaml
544
- x-ossa-llm:
545
- provider: anthropic
546
- model: claude-3-5-sonnet
547
- temperature: 0.1
548
- ```
549
-
550
- Use staging flags to A/B test safety/performance.
551
-