@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.
- package/.devfile.yaml +1 -1
- package/.env.example +1 -1
- package/.github/ISSUE_TEMPLATE/bug_report.yml +63 -0
- package/.github/ISSUE_TEMPLATE/feature_request.yml +40 -0
- package/.github/workflows/dependabot-comment.yml +34 -0
- package/.github/workflows/pr-comment.yml +33 -0
- package/.husky/pre-commit +5 -0
- package/.kiro/config.json +21 -0
- package/.kiro/settings/mcp.json +61 -0
- package/.kiro/specs/scripts-migration-api-first/design.md +883 -0
- package/.kiro/specs/scripts-migration-api-first/requirements.md +165 -0
- package/.kiro/specs/scripts-migration-api-first/tasks.md +539 -0
- package/.kiro/specs/{website-design-audit → website-brand-identity}/design.md +381 -0
- package/.kiro/specs/{website-design-audit → website-brand-identity}/requirements.md +88 -0
- package/.kiro/specs/website-brand-identity/tasks.md +981 -0
- package/.version.json +2 -2
- package/.wiki-config.json +24 -0
- package/CHANGELOG.md +34 -18
- package/CODEOWNERS +75 -0
- package/CONTRIBUTING.md +1 -1
- package/README.md +176 -239
- package/bin/ossa-dev +42 -0
- package/bin/ossa-export +32 -0
- package/bin/ossa-generate +60 -0
- package/bin/ossa-health +40 -0
- package/bin/ossa-init +26 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/repositories/schema.repository.d.ts +6 -1
- package/dist/repositories/schema.repository.d.ts.map +1 -1
- package/dist/repositories/schema.repository.js +63 -36
- package/dist/repositories/schema.repository.js.map +1 -1
- package/dist/services/github-sync/github-client.d.ts +14 -0
- package/dist/services/github-sync/github-client.d.ts.map +1 -0
- package/dist/services/github-sync/github-client.js +41 -0
- package/dist/services/github-sync/github-client.js.map +1 -0
- package/dist/services/github-sync/gitlab-client.d.ts +17 -0
- package/dist/services/github-sync/gitlab-client.d.ts.map +1 -0
- package/dist/services/github-sync/gitlab-client.js +42 -0
- package/dist/services/github-sync/gitlab-client.js.map +1 -0
- package/dist/services/github-sync/schemas.d.ts +46 -0
- package/dist/services/github-sync/schemas.d.ts.map +1 -0
- package/dist/services/github-sync/schemas.js +36 -0
- package/dist/services/github-sync/schemas.js.map +1 -0
- package/dist/services/github-sync/sync.service.d.ts +27 -0
- package/dist/services/github-sync/sync.service.d.ts.map +1 -0
- package/dist/services/github-sync/sync.service.js +99 -0
- package/dist/services/github-sync/sync.service.js.map +1 -0
- package/dist/services/migration.service.d.ts +4 -3
- package/dist/services/migration.service.d.ts.map +1 -1
- package/dist/services/migration.service.js +11 -10
- package/dist/services/migration.service.js.map +1 -1
- package/dist/services/release-automation/release.service.js +1 -1
- package/dist/services/release-automation/release.service.js.map +1 -1
- package/dist/services/release-automation/schemas/release.schema.js +1 -1
- package/dist/services/runtime/claude/capability-mapper.d.ts +84 -0
- package/dist/services/runtime/claude/capability-mapper.d.ts.map +1 -0
- package/dist/services/runtime/claude/capability-mapper.js +245 -0
- package/dist/services/runtime/claude/capability-mapper.js.map +1 -0
- package/dist/services/runtime/claude/claude-adapter.d.ts +80 -0
- package/dist/services/runtime/claude/claude-adapter.d.ts.map +1 -0
- package/dist/services/runtime/claude/claude-adapter.js +287 -0
- package/dist/services/runtime/claude/claude-adapter.js.map +1 -0
- package/dist/services/runtime/claude/manifest-parser.d.ts +77 -0
- package/dist/services/runtime/claude/manifest-parser.d.ts.map +1 -0
- package/dist/services/runtime/claude/manifest-parser.js +169 -0
- package/dist/services/runtime/claude/manifest-parser.js.map +1 -0
- package/dist/services/runtime/claude/types.d.ts +115 -0
- package/dist/services/runtime/claude/types.d.ts.map +1 -0
- package/dist/services/runtime/claude/types.js +6 -0
- package/dist/services/runtime/claude/types.js.map +1 -0
- package/dist/services/validation.service.d.ts.map +1 -1
- package/dist/services/validation.service.js +12 -1
- package/dist/services/validation.service.js.map +1 -1
- package/dist/spec/v0.2.4/ossa-0.2.4.schema.json +85 -208
- package/dist/spec/v0.2.6/CHANGELOG.md +401 -0
- package/dist/spec/v0.2.6/README.md +72 -0
- package/dist/spec/v0.2.6/migrations/v0.2.3-to-v0.2.4.md +599 -0
- package/dist/spec/v0.2.6/migrations/v0.2.5-RC-to-v0.2.6.md +65 -0
- package/dist/spec/{v0.2.4/ossa-0.2.4-dev.schema.json → v0.2.6/ossa-0.2.6.schema.json} +128 -38
- package/dist/spec/v0.2.6/ossa-0.2.6.yaml +581 -0
- package/dist/spec/v0.2.6-dev/CHANGELOG.md +164 -0
- package/dist/spec/v0.2.6-dev/README.md +75 -0
- package/dist/spec/v0.2.6-dev/migrations/v0.2.2-to-v0.2.3.md +343 -0
- package/dist/spec/v0.2.6-dev/migrations/v0.2.3-to-v0.2.4.md +599 -0
- package/dist/spec/v0.2.6-dev/ossa-0.2.5.yaml +581 -0
- package/dist/spec/v0.2.6-dev/ossa-0.2.6-dev.yaml +448 -0
- package/dist/spec/v0.2.7/core/agentgraph.md +324 -0
- package/dist/spec/v0.2.7/resources/agentgraph.yaml +135 -0
- package/dist/spec/v0.2.8/CHANGELOG.md +401 -0
- package/dist/spec/v0.2.8/README.md +72 -0
- package/dist/spec/v0.2.8/migrations/v0.2.3-to-v0.2.4.md +599 -0
- package/dist/spec/v0.2.8/migrations/v0.2.5-RC-to-v0.2.6.md +65 -0
- package/dist/spec/v0.2.8/migrations/v0.2.6-to-v0.2.8.md +81 -0
- package/dist/spec/v0.2.8/ossa-0.2.8.schema.json +3153 -0
- package/dist/spec/v0.2.8/ossa-0.2.8.yaml +581 -0
- package/dist/types/index.d.ts +3 -2
- package/dist/types/index.d.ts.map +1 -1
- package/dist/utils/index.d.ts +6 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +6 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/version.d.ts +68 -0
- package/dist/utils/version.d.ts.map +1 -0
- package/dist/utils/version.js +156 -0
- package/dist/utils/version.js.map +1 -0
- package/docs/brand-guide/01-brand-overview.md +37 -0
- package/docs/brand-guide/02-logo-usage.md +43 -0
- package/docs/brand-guide/03-color-palette.md +70 -0
- package/docs/brand-guide/04-typography.md +82 -0
- package/docs/brand-guide/05-voice-and-tone.md +108 -0
- package/docs/brand-guide/06-visual-elements.md +137 -0
- package/docs/brand-guide/07-application-examples.md +153 -0
- package/docs/brand-guide/OssaLogo/OssA_Logo.svg +21 -0
- package/docs/brand-guide/OssaLogo/brand.af +0 -0
- package/docs/brand-guide/README.md +107 -0
- package/docs/comparison.md +315 -0
- package/docs/operations/automation-roadmap.md +245 -0
- package/docs/operations/github-sync-strategy.md +357 -0
- package/eslint-report.json +1 -0
- package/examples/adk-integration/code-review-workflow.yml +1 -1
- package/examples/adk-integration/customer-support.yml +1 -1
- package/examples/adk-integration/data-pipeline.yml +1 -1
- package/examples/advanced/workflows/hybrid-model-strategy.yaml +1 -1
- package/examples/agent-manifests/critics/critic-agent.yaml +1 -1
- package/examples/agent-manifests/governors/governor-agent.yaml +1 -1
- package/examples/agent-manifests/integrators/integrator-agent.yaml +1 -1
- package/examples/agent-manifests/judges/judge-agent.yaml +1 -1
- package/examples/agent-manifests/monitors/monitor-agent.yaml +1 -1
- package/examples/agent-manifests/orchestrators/orchestrator-agent.yaml +1 -1
- package/examples/agent-manifests/sample-compliant-agent.yaml +1 -1
- package/examples/agent-manifests/workers/worker-agent.yaml +1 -1
- package/examples/anthropic/claude-assistant.ossa.json +5 -4
- package/examples/autogen/multi-agent.ossa.json +6 -4
- package/examples/claude-code/code-reviewer.ossa.yaml +78 -0
- package/examples/claude-code/ossa-validator.ossa.yaml +80 -0
- package/examples/common_npm/agent-router.ossa.yaml +1 -0
- package/examples/common_npm/agent-router.v0.2.2.ossa.yaml +1 -1
- package/examples/crewai/research-team.ossa.json +14 -5
- package/examples/cursor/code-review-agent.ossa.json +21 -6
- package/examples/drupal/gitlab-ml-recommender.ossa.yaml +1 -0
- package/examples/drupal/gitlab-ml-recommender.v0.2.2.ossa.yaml +1 -1
- package/examples/extensions/drupal-v1.yml +1 -1
- package/examples/extensions/kagent-v1.yml +1 -1
- package/examples/getting-started/hello-world-complete.ossa.yaml +1 -1
- package/examples/integration-patterns/agent-to-agent-orchestration.ossa.yaml +4 -4
- package/examples/kagent/compliance-validator.ossa.yaml +1 -1
- package/examples/kagent/cost-optimizer.ossa.yaml +1 -1
- package/examples/kagent/documentation-agent.ossa.yaml +1 -1
- package/examples/kagent/k8s-troubleshooter-v1.ossa.yaml +1 -0
- package/examples/kagent/k8s-troubleshooter-v1.v0.2.2.ossa.yaml +1 -1
- package/examples/kagent/k8s-troubleshooter.ossa.yaml +1 -1
- package/examples/kagent/security-scanner.ossa.yaml +1 -1
- package/examples/langchain/chain-agent.ossa.json +21 -5
- package/examples/langflow/workflow-agent.ossa.json +2 -3
- package/examples/langgraph/state-machine-agent.ossa.json +2 -3
- package/examples/llamaindex/rag-agent.ossa.json +2 -3
- package/examples/migration-guides/from-langchain-to-ossa.yaml +4 -4
- package/examples/multi-agent/README.md +74 -0
- package/examples/multi-agent/conditional-router.ossa.yaml +42 -0
- package/examples/multi-agent/parallel-execution.ossa.yaml +54 -0
- package/examples/multi-agent/sequential-pipeline.ossa.yaml +45 -0
- package/examples/openai/basic-agent.ossa.yaml +1 -1
- package/examples/openai/multi-tool-agent.ossa.json +33 -10
- package/examples/openai/swarm-agent.ossa.json +18 -5
- package/examples/production/document-analyzer-openai.yml +1 -1
- package/examples/quickstart/support-agent.ossa.yaml +1 -1
- package/examples/spec-examples/audit-agent.yml +1 -1
- package/examples/spec-examples/chat-agent.yml +1 -1
- package/examples/spec-examples/compliance-agent.yml +1 -1
- package/examples/spec-examples/monitoring-agent.yml +1 -1
- package/examples/spec-examples/workflow-agent.yml +1 -1
- package/examples/templates/ossa-compliance.yaml +1 -1
- package/examples/vercel/edge-agent.ossa.json +5 -4
- package/gl-code-quality-report.json +62 -0
- package/llms-ctx-full.txt +39 -0
- package/llms-ctx.txt +39 -0
- package/llms.txt +47 -0
- package/openapi/github-sync.yaml +115 -0
- package/package.json +26 -4
- package/scripts/README.md +103 -0
- package/scripts/auto-rebase-mrs.ts +106 -0
- package/scripts/batch-dependabot.sh +57 -0
- package/scripts/configure-gitlab-branch-protection.ts +95 -0
- package/scripts/create-issue-helper.ts +238 -0
- package/scripts/create-milestone-issue.ts +73 -0
- package/scripts/eslint-to-codequality.cjs +34 -0
- package/scripts/fix-schema-formats.js +82 -0
- package/scripts/generate-agents-catalog.ts +77 -0
- package/scripts/generate-api-docs.ts +218 -0
- package/scripts/generate-cli-docs.ts +410 -0
- package/scripts/generate-config-docs.ts +109 -0
- package/scripts/generate-errors-docs.ts +76 -0
- package/scripts/generate-examples-docs.ts +99 -0
- package/scripts/generate-llms-ctx.sh +17 -0
- package/scripts/generate-schema-docs.ts +317 -0
- package/scripts/generate-types-docs.ts +48 -0
- package/scripts/lowercase-docs.ts +43 -0
- package/scripts/manage-milestone-mrs.ts +279 -0
- package/scripts/rebase-all-mrs.sh +75 -0
- package/scripts/sync-github-pr.sh +48 -0
- package/scripts/sync-version.js +32 -0
- package/scripts/sync-wiki.sh +50 -0
- package/scripts/validate-all.js +127 -0
- package/scripts/validate-schema.ts +2 -1
- package/spec/v0.2.4/ossa-0.2.4.schema.json +85 -208
- package/spec/v0.2.6/CHANGELOG.md +401 -0
- package/spec/v0.2.6/README.md +72 -0
- package/spec/v0.2.6/migrations/v0.2.3-to-v0.2.4.md +599 -0
- package/spec/v0.2.6/migrations/v0.2.5-RC-to-v0.2.6.md +65 -0
- package/spec/{v0.2.4/ossa-0.2.4-dev.schema.json → v0.2.6/ossa-0.2.6.schema.json} +128 -38
- package/spec/v0.2.6/ossa-0.2.6.yaml +581 -0
- package/spec/v0.2.6-dev/CHANGELOG.md +164 -0
- package/spec/v0.2.6-dev/README.md +75 -0
- package/spec/v0.2.6-dev/migrations/v0.2.2-to-v0.2.3.md +343 -0
- package/spec/v0.2.6-dev/migrations/v0.2.3-to-v0.2.4.md +599 -0
- package/spec/v0.2.6-dev/ossa-0.2.5.yaml +581 -0
- package/spec/v0.2.6-dev/ossa-0.2.6-dev.yaml +448 -0
- package/spec/v0.2.7/core/agentgraph.md +324 -0
- package/spec/v0.2.7/resources/agentgraph.yaml +135 -0
- package/spec/v0.2.8/CHANGELOG.md +401 -0
- package/spec/v0.2.8/README.md +72 -0
- package/spec/v0.2.8/migrations/v0.2.3-to-v0.2.4.md +599 -0
- package/spec/v0.2.8/migrations/v0.2.5-RC-to-v0.2.6.md +65 -0
- package/spec/v0.2.8/migrations/v0.2.6-to-v0.2.8.md +81 -0
- package/spec/v0.2.8/ossa-0.2.8.schema.json +3153 -0
- package/spec/v0.2.8/ossa-0.2.8.yaml +581 -0
- package/test-results/junit.xml +299 -0
- package/.kiro/specs/agent-buildkit-templates/design.md +0 -495
- package/.kiro/specs/agent-buildkit-templates/requirements.md +0 -165
- package/.kiro/specs/kiro-ide-supercharger/README.md +0 -202
- package/.kiro/specs/kiro-ide-supercharger/design.md +0 -1005
- package/.kiro/specs/kiro-ide-supercharger/requirements.md +0 -141
- package/.kiro/specs/kiro-ide-supercharger/tasks.md +0 -507
- package/bin/validate-ossa-0.2.5-RC.ts +0 -244
- package/docs/issue-19-completion-summary.md +0 -648
- package/docs/issue-19-validation.md +0 -351
- package/scripts/lib/exec.ts +0 -37
- package/scripts/lib/file-ops.ts +0 -58
- package/scripts/lib/version.ts +0 -83
- package/website/.lighthouserc.ts +0 -24
- package/website/.prettierrc +0 -10
- package/website/Dockerfile +0 -30
- package/website/app/about/page.tsx +0 -295
- package/website/app/blog/[slug]/page.tsx +0 -208
- package/website/app/blog/page.tsx +0 -249
- package/website/app/design-guide/page.tsx +0 -511
- package/website/app/docs/[[...slug]]/page.tsx +0 -847
- package/website/app/docs/core-concepts/project-structure/page.tsx +0 -349
- package/website/app/ecosystem/page.tsx +0 -375
- package/website/app/examples/page.tsx +0 -133
- package/website/app/globals.scss +0 -135
- package/website/app/layout.tsx +0 -106
- package/website/app/license/page.tsx +0 -183
- package/website/app/not-found.tsx +0 -18
- package/website/app/page.tsx +0 -474
- package/website/app/playground/page.tsx +0 -487
- package/website/app/robots.ts +0 -19
- package/website/app/rss.xml/route.ts +0 -74
- package/website/app/schema/page.tsx +0 -1001
- package/website/app/sitemap.ts +0 -56
- package/website/app/specification/page.tsx +0 -287
- package/website/components/InstallCommand.tsx +0 -96
- package/website/components/Logo.tsx +0 -97
- package/website/components/StructuredData.tsx +0 -65
- package/website/components/docs/DocsSearch.tsx +0 -104
- package/website/components/docs/DocsSidebar.tsx +0 -155
- package/website/components/docs/MarkdownContent.tsx +0 -401
- package/website/components/docs/VersionSelector.tsx +0 -105
- package/website/components/examples/ExamplesViewer.tsx +0 -293
- package/website/components/layout/Footer.tsx +0 -116
- package/website/components/layout/Header.tsx +0 -168
- package/website/components/schema/SchemaComponentsAccordion.tsx +0 -84
- package/website/components/schema/SchemaExplorer.tsx +0 -213
- package/website/content/blog/OpenAPI-AI-Agents-Standard.md +0 -285
- package/website/content/blog/Why-Formal-Standards-Matter-Now.md +0 -198
- package/website/content/blog/gitlab-kubernetes-agent-ecosystem.md +0 -286
- package/website/content/blog/introducing-ossa-framework.md +0 -328
- package/website/content/blog/ossa-production-results.md +0 -279
- package/website/content/blog/welcome-to-ossa.md +0 -43
- package/website/content/blog/why-ai-agents-need-open-standard.md +0 -98
- package/website/content/docs/00-HOME.md +0 -153
- package/website/content/docs/AIFlow-Framework-Integration-with-OSSA.md +0 -107
- package/website/content/docs/Examples.md +0 -71
- package/website/content/docs/OpenAPI-Extensions.md +0 -934
- package/website/content/docs/adapters/openai-adapter.md +0 -693
- package/website/content/docs/architecture/execution-flow.md +0 -335
- package/website/content/docs/architecture/multi-agent-systems.md +0 -737
- package/website/content/docs/architecture/overview.md +0 -121
- package/website/content/docs/architecture/stack-integration.md +0 -461
- package/website/content/docs/changelog.md +0 -246
- package/website/content/docs/contributing.md +0 -599
- package/website/content/docs/core-concepts/Project-Structure.md +0 -348
- package/website/content/docs/ecosystem/framework-support.md +0 -819
- package/website/content/docs/ecosystem/overview.md +0 -366
- package/website/content/docs/examples/AIFlow-Framework-Integration-with-OSSA.md +0 -107
- package/website/content/docs/examples/Migration-Guides.md +0 -214
- package/website/content/docs/for-audiences/Architects.md +0 -224
- package/website/content/docs/for-audiences/Developers.md +0 -220
- package/website/content/docs/for-audiences/Enterprises.md +0 -256
- package/website/content/docs/for-audiences/Students-Researchers.md +0 -122
- package/website/content/docs/getting-started/5-Minute-Overview.md +0 -85
- package/website/content/docs/getting-started/First-Agent.md +0 -196
- package/website/content/docs/getting-started/Hello-World.md +0 -184
- package/website/content/docs/getting-started/Installation.md +0 -155
- package/website/content/docs/getting-started/index.md +0 -92
- package/website/content/docs/getting-started/running-agents.md +0 -309
- package/website/content/docs/getting-started.md +0 -91
- package/website/content/docs/integrations/aiflow.md +0 -104
- package/website/content/docs/integrations/drupal.md +0 -105
- package/website/content/docs/migration-guides/00-INDEX.md +0 -76
- package/website/content/docs/migration-guides/README.md +0 -133
- package/website/content/docs/migration-guides/agent-schema-comparison.md +0 -232
- package/website/content/docs/migration-guides/anthropic-mcp-to-ossa.md +0 -1750
- package/website/content/docs/migration-guides/crewai-to-ossa.md +0 -274
- package/website/content/docs/migration-guides/drupal-eca-to-ossa.md +0 -2017
- package/website/content/docs/migration-guides/general-agent-schema.yml +0 -247
- package/website/content/docs/migration-guides/index.md +0 -133
- package/website/content/docs/migration-guides/langchain-to-ossa.md +0 -1714
- package/website/content/docs/migration-guides/langflow-to-ossa.md +0 -2075
- package/website/content/docs/migration-guides/migration-manifest.json +0 -64
- package/website/content/docs/migration-guides/openai-to-ossa.md +0 -1202
- package/website/content/docs/openapi-extensions/examples.md +0 -550
- package/website/content/docs/openapi-extensions/index.md +0 -551
- package/website/content/docs/openapi-extensions/operation-extensions.md +0 -457
- package/website/content/docs/openapi-extensions/root-extensions.md +0 -410
- package/website/content/docs/ossa-compliant-badge.md +0 -251
- package/website/content/docs/pre-release/index.md +0 -175
- package/website/content/docs/quick-reference.md +0 -17
- package/website/content/docs/readme.md +0 -35
- package/website/content/docs/schema-reference/agent-spec.md +0 -406
- package/website/content/docs/schema-reference/autonomy.md +0 -568
- package/website/content/docs/schema-reference/constraints.md +0 -543
- package/website/content/docs/schema-reference/index.md +0 -176
- package/website/content/docs/schema-reference/llm-config.md +0 -445
- package/website/content/docs/schema-reference/observability.md +0 -654
- package/website/content/docs/schema-reference/ossa-manifest.md +0 -309
- package/website/content/docs/schema-reference/taxonomy.md +0 -509
- package/website/content/docs/schema-reference/tools.md +0 -628
- package/website/content/docs/templates/blog-post.md +0 -43
- package/website/content/docs/use-cases/00-index.md +0 -395
- package/website/content/docs/use-cases/cicd-code-review.md +0 -1236
- package/website/content/docs/use-cases/customer-support.md +0 -1234
- package/website/content/docs/use-cases/enterprise-compliance.md +0 -1208
- package/website/content/docs/use-cases/research-multi-agent.md +0 -1161
- package/website/content/docs/versioning.md +0 -288
- package/website/lib/version.ts +0 -35
- package/website/lib/versions.json +0 -78
- package/website/next.config.ts +0 -18
- package/website/nginx.conf +0 -32
- package/website/package-lock.json +0 -9679
- package/website/package.json +0 -59
- package/website/postcss.config.mjs +0 -9
- package/website/scripts/fetch-versions.js +0 -166
- package/website/scripts/generate-examples-index.js +0 -163
- package/website/scripts/merge-docs-to-wiki.ts +0 -207
- package/website/scripts/sync-version.js +0 -72
- package/website/scripts/sync-wiki.ts +0 -322
- package/website/scripts/upload-wiki.ts +0 -199
- package/website/styles/_variables.scss +0 -36
- package/website/tailwind.config.ts +0 -136
- /package/dist/spec/v0.2.4/{ossa-0.2.4-dev.yaml → ossa-0.2.4.yaml} +0 -0
- /package/spec/v0.2.4/{ossa-0.2.4-dev.yaml → ossa-0.2.4.yaml} +0 -0
|
@@ -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.5-RC/OSSA-SPECIFICATION-v0.2.x.md](https://github.com/blueflyio/openstandardagents/blob/main/spec/v0.2.5-RC/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
|
-
|