@bluefly/openstandardagents 0.2.4
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/.env.example +41 -0
- package/.eslintrc.cjs +43 -0
- package/.github/PULL_REQUEST_TEMPLATE.md +39 -0
- package/.github/dependabot.yml +58 -0
- package/.github/workflows/ci.yml +154 -0
- package/.github/workflows/codeql.yml +41 -0
- package/.github/workflows/dependabot-auto-merge.yml +28 -0
- package/.github/workflows/release.yml +103 -0
- package/.prettierignore +7 -0
- package/.prettierrc.json +10 -0
- package/.redocly.yaml +9 -0
- package/.releaserc.json +84 -0
- package/.releaserc.json.disabled +81 -0
- package/CHANGELOG.md +152 -0
- package/CONTRIBUTING.md +249 -0
- package/LICENSE +190 -0
- package/README.md +280 -0
- package/bin/ossa +8 -0
- package/bin/validate-ossa-0.2.2.ts +244 -0
- package/dist/di-container.d.ts +18 -0
- package/dist/di-container.d.ts.map +1 -0
- package/dist/di-container.js +43 -0
- package/dist/di-container.js.map +1 -0
- package/dist/index.d.ts +13 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +17 -0
- package/dist/index.js.map +1 -0
- package/dist/repositories/manifest.repository.d.ts +26 -0
- package/dist/repositories/manifest.repository.d.ts.map +1 -0
- package/dist/repositories/manifest.repository.js +90 -0
- package/dist/repositories/manifest.repository.js.map +1 -0
- package/dist/repositories/schema.repository.d.ts +30 -0
- package/dist/repositories/schema.repository.d.ts.map +1 -0
- package/dist/repositories/schema.repository.js +143 -0
- package/dist/repositories/schema.repository.js.map +1 -0
- package/dist/services/generation.service.d.ts +54 -0
- package/dist/services/generation.service.d.ts.map +1 -0
- package/dist/services/generation.service.js +298 -0
- package/dist/services/generation.service.js.map +1 -0
- package/dist/services/migration.service.d.ts +30 -0
- package/dist/services/migration.service.d.ts.map +1 -0
- package/dist/services/migration.service.js +231 -0
- package/dist/services/migration.service.js.map +1 -0
- package/dist/services/runtime/openai.adapter.d.ts +94 -0
- package/dist/services/runtime/openai.adapter.d.ts.map +1 -0
- package/dist/services/runtime/openai.adapter.js +209 -0
- package/dist/services/runtime/openai.adapter.js.map +1 -0
- package/dist/services/validation.service.d.ts +45 -0
- package/dist/services/validation.service.d.ts.map +1 -0
- package/dist/services/validation.service.js +362 -0
- package/dist/services/validation.service.js.map +1 -0
- package/dist/services/validators/anthropic.validator.d.ts +9 -0
- package/dist/services/validators/anthropic.validator.d.ts.map +1 -0
- package/dist/services/validators/anthropic.validator.js +105 -0
- package/dist/services/validators/anthropic.validator.js.map +1 -0
- package/dist/services/validators/autogen.validator.d.ts +9 -0
- package/dist/services/validators/autogen.validator.d.ts.map +1 -0
- package/dist/services/validators/autogen.validator.js +111 -0
- package/dist/services/validators/autogen.validator.js.map +1 -0
- package/dist/services/validators/crewai.validator.d.ts +9 -0
- package/dist/services/validators/crewai.validator.d.ts.map +1 -0
- package/dist/services/validators/crewai.validator.js +117 -0
- package/dist/services/validators/crewai.validator.js.map +1 -0
- package/dist/services/validators/cursor.validator.d.ts +9 -0
- package/dist/services/validators/cursor.validator.d.ts.map +1 -0
- package/dist/services/validators/cursor.validator.js +88 -0
- package/dist/services/validators/cursor.validator.js.map +1 -0
- package/dist/services/validators/index.d.ts +15 -0
- package/dist/services/validators/index.d.ts.map +1 -0
- package/dist/services/validators/index.js +15 -0
- package/dist/services/validators/index.js.map +1 -0
- package/dist/services/validators/langchain.validator.d.ts +9 -0
- package/dist/services/validators/langchain.validator.d.ts.map +1 -0
- package/dist/services/validators/langchain.validator.js +103 -0
- package/dist/services/validators/langchain.validator.js.map +1 -0
- package/dist/services/validators/langflow.validator.d.ts +9 -0
- package/dist/services/validators/langflow.validator.d.ts.map +1 -0
- package/dist/services/validators/langflow.validator.js +92 -0
- package/dist/services/validators/langflow.validator.js.map +1 -0
- package/dist/services/validators/langgraph.validator.d.ts +9 -0
- package/dist/services/validators/langgraph.validator.d.ts.map +1 -0
- package/dist/services/validators/langgraph.validator.js +123 -0
- package/dist/services/validators/langgraph.validator.js.map +1 -0
- package/dist/services/validators/llamaindex.validator.d.ts +9 -0
- package/dist/services/validators/llamaindex.validator.d.ts.map +1 -0
- package/dist/services/validators/llamaindex.validator.js +121 -0
- package/dist/services/validators/llamaindex.validator.js.map +1 -0
- package/dist/services/validators/openai.validator.d.ts +9 -0
- package/dist/services/validators/openai.validator.d.ts.map +1 -0
- package/dist/services/validators/openai.validator.js +126 -0
- package/dist/services/validators/openai.validator.js.map +1 -0
- package/dist/services/validators/vercel-ai.validator.d.ts +9 -0
- package/dist/services/validators/vercel-ai.validator.d.ts.map +1 -0
- package/dist/services/validators/vercel-ai.validator.js +99 -0
- package/dist/services/validators/vercel-ai.validator.js.map +1 -0
- package/dist/spec/v0.1.9/agent-autonomous-extensions.json +234 -0
- package/dist/spec/v0.1.9/ecosystem-compliance.json +235 -0
- package/dist/spec/v0.1.9/ossa-v0.1.9.schema.json +695 -0
- package/dist/spec/v0.1.9/ossa-v0.1.9.schema.json.backup +695 -0
- package/dist/spec/v0.1.9/reasoning-compliance.json +654 -0
- package/dist/spec/v0.2.2/kagent-enhancements.json +395 -0
- package/dist/spec/v0.2.2/ossa-0.2.2.schema.json +906 -0
- package/dist/spec/v0.2.2/ossa-0.2.2.yaml +448 -0
- package/dist/spec/v0.2.2/ossa-reasoning-compliance-1.0.schema.json +424 -0
- package/dist/spec/v0.2.3/CHANGELOG.md +176 -0
- package/dist/spec/v0.2.3/README.md +154 -0
- package/dist/spec/v0.2.3/migrations/v0.2.2-to-v0.2.3.md +343 -0
- package/dist/spec/v0.2.3/ossa-0.2.3.schema.json +1397 -0
- package/dist/spec/v0.2.3/ossa-0.2.3.yaml +448 -0
- package/dist/spec/v0.2.4-dev/CHANGELOG.md +403 -0
- package/dist/spec/v0.2.4-dev/migrations/v0.2.3-to-v0.2.4.md +599 -0
- package/dist/spec/v0.2.4-dev/ossa-0.2.4-dev.schema.json +1696 -0
- package/dist/spec/v0.2.4-dev/ossa-0.2.4-dev.yaml +581 -0
- package/dist/spec/v0.2.5-dev/CHANGELOG.md +171 -0
- package/dist/spec/v0.2.5-dev/examples/customer-support-graph.ossa.yaml +362 -0
- package/dist/spec/v0.2.5-dev/examples/parallel-processors.ossa.yaml +464 -0
- package/dist/spec/v0.2.5-dev/examples/research-team.ossa.yaml +440 -0
- package/dist/spec/v0.2.5-dev/migrations/v0.2.4-to-v0.2.5.md +317 -0
- package/dist/spec/v0.2.5-dev/ossa-0.2.5-dev.schema.json +1732 -0
- package/dist/spec/v0.2.5-dev/ossa-0.2.5-dev.yaml +409 -0
- package/dist/types/index.d.ts +178 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +6 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/openapi-extensions.d.ts +164 -0
- package/dist/types/openapi-extensions.d.ts.map +1 -0
- package/dist/types/openapi-extensions.js +6 -0
- package/dist/types/openapi-extensions.js.map +1 -0
- package/docs/OSSA-COMPLIANT-BADGE.md +248 -0
- package/docs/README.md +31 -0
- package/docs/VERSIONING.md +284 -0
- package/docs/agent-openapi-spec.yml +942 -0
- package/docs/getting-started.md +87 -0
- package/docs/migration/general-agent-schema.yml +255 -0
- package/docs/migration/migration-manifest.json +64 -0
- package/docs/openapi-extensions.md +930 -0
- package/docs/schemas/openapi-extensions.schema.json +486 -0
- package/examples/adk-integration/code-review-workflow.yml +136 -0
- package/examples/adk-integration/customer-support.yml +263 -0
- package/examples/adk-integration/data-pipeline.yml +173 -0
- package/examples/advanced/patterns/compliance-context-production.json +53 -0
- package/examples/advanced/patterns/model-router.ts +274 -0
- package/examples/advanced/patterns/smart-model-routing.ts +248 -0
- package/examples/advanced/workflows/hybrid-model-strategy.yaml +232 -0
- package/examples/agent-manifests/critics/critic-agent.yaml +149 -0
- package/examples/agent-manifests/governors/governor-agent.yaml +128 -0
- package/examples/agent-manifests/integrators/integrator-agent.yaml +103 -0
- package/examples/agent-manifests/judges/judge-agent.yaml +153 -0
- package/examples/agent-manifests/monitors/monitor-agent.yaml +122 -0
- package/examples/agent-manifests/orchestrators/orchestrator-agent.yaml +247 -0
- package/examples/agent-manifests/sample-compliant-agent.yaml +147 -0
- package/examples/agent-manifests/workers/worker-agent.yaml +82 -0
- package/examples/anthropic/claude-assistant.ossa.json +45 -0
- package/examples/architecture/model-configuration/ollama-integration.ts +110 -0
- package/examples/autogen/multi-agent.ossa.json +37 -0
- package/examples/bridge-configurations.yaml +346 -0
- package/examples/bridges/Dockerfile.production +87 -0
- package/examples/bridges/__pycache__/aiflow-bridge-enhanced.cpython-313.pyc +0 -0
- package/examples/bridges/__pycache__/aiflow-phoenix-tracing.cpython-313.pyc +0 -0
- package/examples/bridges/__pycache__/test_aiflow_integration.cpython-313.pyc +0 -0
- package/examples/bridges/aiflow-bridge-enhanced.py +462 -0
- package/examples/bridges/aiflow-bridge-example.yml +310 -0
- package/examples/bridges/aiflow-phoenix-tracing.py +310 -0
- package/examples/bridges/aiflow-registration-api.openapi.yml +439 -0
- package/examples/bridges/k8s/configmap.yaml +121 -0
- package/examples/bridges/k8s/deployment-simple.yaml +34 -0
- package/examples/bridges/k8s/deployment.yaml +275 -0
- package/examples/bridges/k8s/hpa.yaml +126 -0
- package/examples/bridges/k8s/ingress.yaml +155 -0
- package/examples/bridges/kagent-bridge-example.yml +94 -0
- package/examples/bridges/load-tests/Dockerfile +28 -0
- package/examples/bridges/load-tests/k6-load-test.js +302 -0
- package/examples/bridges/load-tests/requirements.txt +20 -0
- package/examples/bridges/loadtest/k6-scenarios.js +270 -0
- package/examples/bridges/phase4/SLO-SLA.yaml +249 -0
- package/examples/bridges/phase4/chaos-tests.yaml +226 -0
- package/examples/bridges/requirements.txt +24 -0
- package/examples/bridges/test_aiflow_integration.py +341 -0
- package/examples/common_npm/agent-router.ossa.yaml +182 -0
- package/examples/common_npm/agent-router.v0.2.2.ossa.yaml +60 -0
- package/examples/compliance-agent.yml +155 -0
- package/examples/crewai/research-team.ossa.json +36 -0
- package/examples/cursor/code-review-agent.ossa.json +47 -0
- package/examples/drupal/gitlab-ml-recommender.ossa.yaml +609 -0
- package/examples/drupal/gitlab-ml-recommender.v0.2.2.ossa.yaml +68 -0
- package/examples/enterprise/agent.yml +452 -0
- package/examples/extensions/drupal-v1.yml +266 -0
- package/examples/extensions/kagent-v1.yml +167 -0
- package/examples/getting-started/hello-world-complete.ossa.yaml +266 -0
- package/examples/integration-patterns/agent-to-agent-orchestration.ossa.yaml +376 -0
- package/examples/kagent/README.md +31 -0
- package/examples/kagent/compliance-validator.ossa.yaml +111 -0
- package/examples/kagent/cost-optimizer.ossa.yaml +93 -0
- package/examples/kagent/documentation-agent.ossa.yaml +91 -0
- package/examples/kagent/k8s-troubleshooter-v1.ossa.yaml +269 -0
- package/examples/kagent/k8s-troubleshooter-v1.v0.2.2.ossa.yaml +106 -0
- package/examples/kagent/k8s-troubleshooter.ossa.yaml +257 -0
- package/examples/kagent/security-scanner.ossa.yaml +140 -0
- package/examples/langchain/chain-agent.ossa.json +42 -0
- package/examples/langflow/workflow-agent.ossa.json +39 -0
- package/examples/langgraph/state-machine-agent.ossa.json +59 -0
- package/examples/llamaindex/rag-agent.ossa.json +41 -0
- package/examples/migration-guides/from-langchain-to-ossa.yaml +309 -0
- package/examples/minimal/agent.yml +152 -0
- package/examples/minimal/openapi.yaml +95 -0
- package/examples/openai/swarm-agent.ossa.json +59 -0
- package/examples/openapi-extensions/README.md +87 -0
- package/examples/openapi-extensions/minimal-agent-api.openapi.yml +288 -0
- package/examples/openapi-extensions/orchestrator-agent-api.openapi.yml +633 -0
- package/examples/openapi-extensions/worker-agent-api.openapi.yml +533 -0
- package/examples/production/agent.yml +713 -0
- package/examples/production/document-analyzer-openai.yml +134 -0
- package/examples/quickstart/support-agent.ossa.yaml +59 -0
- package/examples/service-registry-usage.ts +423 -0
- package/examples/spec-examples/audit-agent.yml +147 -0
- package/examples/spec-examples/chat-agent.yml +189 -0
- package/examples/spec-examples/compliance-agent.yml +204 -0
- package/examples/spec-examples/data-processing-agent.yml +132 -0
- package/examples/spec-examples/development-agent.yml +138 -0
- package/examples/spec-examples/edge-agent.yml +101 -0
- package/examples/spec-examples/integration-agent.yml +129 -0
- package/examples/spec-examples/monitoring-agent.yml +130 -0
- package/examples/spec-examples/serverless-agent.yml +82 -0
- package/examples/spec-examples/workflow-agent.yml +223 -0
- package/examples/templates/ossa-compliance.yaml +56 -0
- package/examples/typescript/advanced/demo-registry.ts +168 -0
- package/examples/typescript/mcpb-agent-example.ts +358 -0
- package/examples/vercel/edge-agent.ossa.json +43 -0
- package/infrastructure/docker-compose.yml +33 -0
- package/junit.xml +1 -0
- package/openapi/drupal-agent-api.openapi.yaml +348 -0
- package/openapi/gitlab-orchestrator.openapi.yaml +330 -0
- package/openapi/helm-generator.openapi.yaml +389 -0
- package/openapi/ossa-core-api.openapi.yaml +1448 -0
- package/openapi/ossa-registry-api.openapi.yaml +980 -0
- package/openapi/ossa-registry.openapi.yaml +782 -0
- package/openapi/self-evolving-ecosystem.openapi.yaml +1530 -0
- package/openapi/unified-agent-gateway.openapi.yaml +833 -0
- package/ossa-website-swarm-tasks.json +105 -0
- package/package.json +132 -0
- package/release.config.js +64 -0
- package/spec/v0.1.9/agent-autonomous-extensions.json +234 -0
- package/spec/v0.1.9/ecosystem-compliance.json +235 -0
- package/spec/v0.1.9/ossa-v0.1.9.schema.json +695 -0
- package/spec/v0.1.9/ossa-v0.1.9.schema.json.backup +695 -0
- package/spec/v0.1.9/reasoning-compliance.json +654 -0
- package/spec/v0.2.2/kagent-enhancements.json +395 -0
- package/spec/v0.2.2/ossa-0.2.2.schema.json +906 -0
- package/spec/v0.2.2/ossa-0.2.2.yaml +448 -0
- package/spec/v0.2.2/ossa-reasoning-compliance-1.0.schema.json +424 -0
- package/spec/v0.2.3/CHANGELOG.md +176 -0
- package/spec/v0.2.3/README.md +154 -0
- package/spec/v0.2.3/migrations/v0.2.2-to-v0.2.3.md +343 -0
- package/spec/v0.2.3/ossa-0.2.3.schema.json +1397 -0
- package/spec/v0.2.3/ossa-0.2.3.yaml +448 -0
- package/spec/v0.2.4-dev/CHANGELOG.md +403 -0
- package/spec/v0.2.4-dev/migrations/v0.2.3-to-v0.2.4.md +599 -0
- package/spec/v0.2.4-dev/ossa-0.2.4-dev.schema.json +1696 -0
- package/spec/v0.2.4-dev/ossa-0.2.4-dev.yaml +581 -0
- package/spec/v0.2.5-dev/CHANGELOG.md +171 -0
- package/spec/v0.2.5-dev/examples/customer-support-graph.ossa.yaml +362 -0
- package/spec/v0.2.5-dev/examples/parallel-processors.ossa.yaml +464 -0
- package/spec/v0.2.5-dev/examples/research-team.ossa.yaml +440 -0
- package/spec/v0.2.5-dev/migrations/v0.2.4-to-v0.2.5.md +317 -0
- package/spec/v0.2.5-dev/ossa-0.2.5-dev.schema.json +1732 -0
- package/spec/v0.2.5-dev/ossa-0.2.5-dev.yaml +409 -0
- package/test-results.xml +1 -0
- package/website/.lighthouserc.js +20 -0
- package/website/.prettierrc +10 -0
- package/website/Dockerfile +17 -0
- package/website/app/about/page.tsx +295 -0
- package/website/app/api/validate/route.ts +88 -0
- package/website/app/blog/[slug]/page.tsx +167 -0
- package/website/app/blog/page.tsx +162 -0
- package/website/app/docs/[[...slug]]/page.tsx +349 -0
- package/website/app/docs/core-concepts/project-structure/page.tsx +349 -0
- package/website/app/ecosystem/page.tsx +375 -0
- package/website/app/examples/page.tsx +123 -0
- package/website/app/globals.css +108 -0
- package/website/app/layout.tsx +106 -0
- package/website/app/page.tsx +409 -0
- package/website/app/playground/page.tsx +507 -0
- package/website/app/robots.ts +19 -0
- package/website/app/rss.xml/route.ts +74 -0
- package/website/app/schema/page.tsx +970 -0
- package/website/app/sitemap.ts +56 -0
- package/website/app/specification/page.tsx +211 -0
- package/website/components/InstallCommand.tsx +96 -0
- package/website/components/Logo.tsx +24 -0
- package/website/components/StructuredData.tsx +65 -0
- package/website/components/docs/DocsSearch.tsx +104 -0
- package/website/components/docs/DocsSidebar.tsx +118 -0
- package/website/components/docs/MarkdownContent.tsx +183 -0
- package/website/components/docs/VersionSelector.tsx +49 -0
- package/website/components/examples/ExamplesViewer.tsx +293 -0
- package/website/components/layout/Footer.tsx +111 -0
- package/website/components/layout/Header.tsx +170 -0
- package/website/components/schema/SchemaExplorer.tsx +213 -0
- package/website/content/blog/OpenAPI-AI-Agents-Standard.md +285 -0
- package/website/content/blog/Why-Formal-Standards-Matter-Now.md +209 -0
- package/website/content/blog/introducing-ossa-framework.md +328 -0
- package/website/content/blog/ossa-production-results.md +279 -0
- package/website/content/blog/welcome-to-ossa.md +43 -0
- package/website/content/blog/why-ai-agents-need-open-standard.md +98 -0
- package/website/content/docs/00-HOME.md +160 -0
- package/website/content/docs/AIFlow-Framework-Integration-with-OSSA.md +107 -0
- package/website/content/docs/OpenAPI-Extensions.md +498 -0
- package/website/content/docs/architecture/execution-flow.md +335 -0
- package/website/content/docs/architecture/multi-agent-systems.md +737 -0
- package/website/content/docs/architecture/overview.md +121 -0
- package/website/content/docs/architecture/stack-integration.md +461 -0
- package/website/content/docs/changelog.md +246 -0
- package/website/content/docs/contributing.md +599 -0
- package/website/content/docs/core-concepts/project-structure.md +348 -0
- package/website/content/docs/ecosystem/framework-support.md +821 -0
- package/website/content/docs/ecosystem/overview.md +366 -0
- package/website/content/docs/examples/Migration-Guides.md +214 -0
- package/website/content/docs/examples.md +71 -0
- package/website/content/docs/for-audiences/Enterprises.md +256 -0
- package/website/content/docs/for-audiences/Students-Researchers.md +122 -0
- package/website/content/docs/for-audiences/architects.md +224 -0
- package/website/content/docs/for-audiences/developers.md +220 -0
- package/website/content/docs/getting-started/5-minute-overview.md +85 -0
- package/website/content/docs/getting-started/Hello-World.md +184 -0
- package/website/content/docs/getting-started/first-agent.md +196 -0
- package/website/content/docs/getting-started/installation.md +155 -0
- package/website/content/docs/getting-started/running-agents.md +107 -0
- package/website/content/docs/integrations/aiflow.md +104 -0
- package/website/content/docs/integrations/drupal.md +105 -0
- package/website/content/docs/migration-guides/00-index.md +76 -0
- package/website/content/docs/migration-guides/README.md +133 -0
- package/website/content/docs/migration-guides/anthropic-mcp-to-ossa.md +1750 -0
- package/website/content/docs/migration-guides/crewai-to-ossa.md +274 -0
- package/website/content/docs/migration-guides/drupal-eca-to-ossa.md +2017 -0
- package/website/content/docs/migration-guides/index.md +133 -0
- package/website/content/docs/migration-guides/langchain-to-ossa.md +1714 -0
- package/website/content/docs/migration-guides/langflow-to-ossa.md +2075 -0
- package/website/content/docs/migration-guides/openai-to-ossa.md +1202 -0
- package/website/content/docs/openapi-extensions/examples.md +550 -0
- package/website/content/docs/openapi-extensions/index.md +495 -0
- package/website/content/docs/openapi-extensions/operation-extensions.md +398 -0
- package/website/content/docs/openapi-extensions/root-extensions.md +364 -0
- package/website/content/docs/pre-release/index.md +175 -0
- package/website/content/docs/quick-reference.md +17 -0
- package/website/content/docs/schema-reference/agent-spec.md +406 -0
- package/website/content/docs/schema-reference/autonomy.md +568 -0
- package/website/content/docs/schema-reference/constraints.md +543 -0
- package/website/content/docs/schema-reference/index.md +176 -0
- package/website/content/docs/schema-reference/llm-config.md +445 -0
- package/website/content/docs/schema-reference/observability.md +654 -0
- package/website/content/docs/schema-reference/ossa-manifest.md +309 -0
- package/website/content/docs/schema-reference/taxonomy.md +509 -0
- package/website/content/docs/schema-reference/tools.md +628 -0
- package/website/content/docs/templates/blog-post.md +43 -0
- package/website/content/docs/use-cases/00-index.md +395 -0
- package/website/content/docs/use-cases/cicd-code-review.md +1236 -0
- package/website/content/docs/use-cases/customer-support.md +1234 -0
- package/website/content/docs/use-cases/enterprise-compliance.md +1208 -0
- package/website/content/docs/use-cases/research-multi-agent.md +1161 -0
- package/website/lib/version.ts +18 -0
- package/website/next.config.js +17 -0
- package/website/next.config.ts +16 -0
- package/website/nginx.conf +32 -0
- package/website/package-lock.json +9145 -0
- package/website/package.json +53 -0
- package/website/postcss.config.js +7 -0
- package/website/postcss.config.mjs +9 -0
- package/website/scripts/sync-version.js +44 -0
- package/website/scripts/sync-wiki.ts +261 -0
- package/website/tailwind.config.js +58 -0
- package/website/tailwind.config.ts +65 -0
|
@@ -0,0 +1,533 @@
|
|
|
1
|
+
# ============================================================================
|
|
2
|
+
# OSSA OpenAPI Extensions Example: Full-Featured Worker Agent
|
|
3
|
+
# ============================================================================
|
|
4
|
+
#
|
|
5
|
+
# PURPOSE:
|
|
6
|
+
# Demonstrates the complete set of OSSA OpenAPI extensions for enterprise
|
|
7
|
+
# agent APIs. This is a production-ready example showing Kubernetes pod
|
|
8
|
+
# diagnostics with comprehensive governance, security, and observability.
|
|
9
|
+
#
|
|
10
|
+
# KEY FEATURES:
|
|
11
|
+
# - Enterprise compliance tracking (SOC2, governance approval)
|
|
12
|
+
# - Security metadata (authentication, encryption, classification)
|
|
13
|
+
# - Advanced autonomy controls (allowed/blocked actions)
|
|
14
|
+
# - Cost and performance constraints
|
|
15
|
+
# - MCP tool integration (Kubernetes MCP server)
|
|
16
|
+
# - Reusable components (parameters, schemas)
|
|
17
|
+
# - Error responses (RFC 7807 Problem Details)
|
|
18
|
+
#
|
|
19
|
+
# ARCHITECTURE:
|
|
20
|
+
# OpenAPI 3.1 Spec
|
|
21
|
+
# + x-ossa-metadata (enterprise governance)
|
|
22
|
+
# + x-ossa (agent configuration)
|
|
23
|
+
# + x-agent (deprecated, for backward compatibility)
|
|
24
|
+
# + x-ossa-capability (capability metadata with schemas)
|
|
25
|
+
# + x-ossa-autonomy (supervised mode with action controls)
|
|
26
|
+
# + x-ossa-constraints (cost, performance, time limits)
|
|
27
|
+
# + x-ossa-tools (MCP server integrations)
|
|
28
|
+
# + components/parameters (reusable OSSA headers)
|
|
29
|
+
# + components/schemas (capability input/output schemas)
|
|
30
|
+
# → Enterprise-Grade OSSA Agent API
|
|
31
|
+
#
|
|
32
|
+
# USE CASE:
|
|
33
|
+
# Kubernetes SRE agent that diagnoses pod failures by:
|
|
34
|
+
# 1. Querying pod status via Kubernetes MCP tools
|
|
35
|
+
# 2. Analyzing logs and events with LLM reasoning
|
|
36
|
+
# 3. Correlating metrics for root cause analysis
|
|
37
|
+
# 4. Generating actionable recommendations with evidence
|
|
38
|
+
#
|
|
39
|
+
# RELATED DOCUMENTATION:
|
|
40
|
+
# - OSSA OpenAPI Extensions: spec/OSSA_OpenAPI_Extensions.md
|
|
41
|
+
# - MCP Tools: https://modelcontextprotocol.io
|
|
42
|
+
# - RFC 7807 Problem Details: https://tools.ietf.org/html/rfc7807
|
|
43
|
+
# - Kubernetes Troubleshooting: https://kubernetes.io/docs/tasks/debug/
|
|
44
|
+
# ============================================================================
|
|
45
|
+
|
|
46
|
+
openapi: 3.1.0
|
|
47
|
+
|
|
48
|
+
# ============================================================================
|
|
49
|
+
# API Information (Standard OpenAPI)
|
|
50
|
+
# ============================================================================
|
|
51
|
+
info:
|
|
52
|
+
title: Kubernetes Troubleshooter Agent API
|
|
53
|
+
version: 1.0.0
|
|
54
|
+
description: |
|
|
55
|
+
Full-featured worker agent API demonstrating all OSSA OpenAPI extensions.
|
|
56
|
+
This agent diagnoses Kubernetes pod failures and issues.
|
|
57
|
+
|
|
58
|
+
# ============================================================================
|
|
59
|
+
# OSSA Metadata Extension (Enterprise-Grade)
|
|
60
|
+
# ============================================================================
|
|
61
|
+
# Comprehensive metadata for governance, security, and observability.
|
|
62
|
+
# This example shows enterprise-level compliance tracking.
|
|
63
|
+
# ============================================================================
|
|
64
|
+
x-ossa-metadata:
|
|
65
|
+
# OSSA specification version
|
|
66
|
+
version: 0.2.2
|
|
67
|
+
|
|
68
|
+
# Compliance tracking for enterprise governance
|
|
69
|
+
compliance:
|
|
70
|
+
level: enterprise # basic | intermediate | advanced | enterprise
|
|
71
|
+
frameworks:
|
|
72
|
+
- OSSA # Open Standard for System Agents
|
|
73
|
+
- OpenAPI 3.1 # Base specification
|
|
74
|
+
- RFC7807 # Problem Details for HTTP APIs
|
|
75
|
+
|
|
76
|
+
# Governance approval tracking (required for enterprise deployments)
|
|
77
|
+
governance:
|
|
78
|
+
approved: true
|
|
79
|
+
approvedBy: Platform Team # Approving authority
|
|
80
|
+
approvalDate: "2024-01-15" # ISO 8601 date
|
|
81
|
+
|
|
82
|
+
# Security metadata for access control and encryption
|
|
83
|
+
security:
|
|
84
|
+
classification: internal # public | internal | confidential | restricted
|
|
85
|
+
authentication: required # Authentication enforcement
|
|
86
|
+
encryption: tls1.3 # Minimum TLS version
|
|
87
|
+
|
|
88
|
+
# Observability configuration for production monitoring
|
|
89
|
+
observability:
|
|
90
|
+
tracing: true # OpenTelemetry distributed tracing
|
|
91
|
+
metrics: true # Prometheus metrics
|
|
92
|
+
logging: true # Structured logging (JSON)
|
|
93
|
+
|
|
94
|
+
# ============================================================================
|
|
95
|
+
# OSSA Agent Configuration
|
|
96
|
+
# ============================================================================
|
|
97
|
+
x-ossa:
|
|
98
|
+
version: 0.2.2
|
|
99
|
+
|
|
100
|
+
agent:
|
|
101
|
+
# Agent identifier
|
|
102
|
+
id: k8s-troubleshooter
|
|
103
|
+
|
|
104
|
+
# Worker type: task-based, stateless execution
|
|
105
|
+
type: worker
|
|
106
|
+
|
|
107
|
+
# Compliance standards adherence
|
|
108
|
+
compliance:
|
|
109
|
+
standards:
|
|
110
|
+
- openapi-first # API-first design
|
|
111
|
+
- dry # Don't Repeat Yourself
|
|
112
|
+
- crud # Create/Read/Update/Delete patterns
|
|
113
|
+
- solid # SOLID principles
|
|
114
|
+
- type-safe # Strong typing with JSON Schema
|
|
115
|
+
validated: true
|
|
116
|
+
validatedAt: "2024-01-15T10:30:00Z"
|
|
117
|
+
|
|
118
|
+
# ============================================================================
|
|
119
|
+
# Legacy x-agent Extension (Deprecated)
|
|
120
|
+
# ============================================================================
|
|
121
|
+
# Included for backward compatibility with OSSA 0.1.x.
|
|
122
|
+
# New implementations should use x-ossa instead.
|
|
123
|
+
# ============================================================================
|
|
124
|
+
x-agent:
|
|
125
|
+
# Legacy capability list (use x-ossa-capability on operations instead)
|
|
126
|
+
capabilities:
|
|
127
|
+
- pod-diagnostics
|
|
128
|
+
- log-analysis
|
|
129
|
+
- event-correlation
|
|
130
|
+
|
|
131
|
+
# Legacy tools list (use x-ossa-tools on operations instead)
|
|
132
|
+
tools:
|
|
133
|
+
- kubernetes-mcp
|
|
134
|
+
- buildkit-agent-protocol
|
|
135
|
+
|
|
136
|
+
# Agent-specific environment configuration
|
|
137
|
+
environment:
|
|
138
|
+
defaultNamespace: default # Default Kubernetes namespace
|
|
139
|
+
logRetention: 7d # Log retention period
|
|
140
|
+
|
|
141
|
+
# Legacy rules (use x-ossa-autonomy on operations instead)
|
|
142
|
+
rules:
|
|
143
|
+
- read-only-operations
|
|
144
|
+
- require-approval-for-writes
|
|
145
|
+
|
|
146
|
+
# ============================================================================
|
|
147
|
+
# Reusable Components (Standard OpenAPI)
|
|
148
|
+
# ============================================================================
|
|
149
|
+
# components section allows defining reusable parameters, schemas, responses,
|
|
150
|
+
# etc. This promotes DRY and consistency across the API.
|
|
151
|
+
# ============================================================================
|
|
152
|
+
components:
|
|
153
|
+
# ==========================================================================
|
|
154
|
+
# Reusable Parameters
|
|
155
|
+
# ==========================================================================
|
|
156
|
+
# OSSA-specific headers for agent identification and versioning.
|
|
157
|
+
# These can be referenced across multiple operations.
|
|
158
|
+
# ==========================================================================
|
|
159
|
+
parameters:
|
|
160
|
+
# OSSA Agent ID header (for multi-agent routing)
|
|
161
|
+
X-Ossa-Agent-Id:
|
|
162
|
+
name: X-OSSA-Agent-ID
|
|
163
|
+
in: header
|
|
164
|
+
description: Unique identifier of the agent making the request
|
|
165
|
+
required: false # Optional for backward compatibility
|
|
166
|
+
schema:
|
|
167
|
+
type: string
|
|
168
|
+
# Kubernetes-style DNS label (RFC 1123)
|
|
169
|
+
pattern: "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
|
|
170
|
+
example: k8s-troubleshooter
|
|
171
|
+
|
|
172
|
+
# OSSA Version header (for version negotiation)
|
|
173
|
+
X-Ossa-Version:
|
|
174
|
+
name: X-OSSA-Version
|
|
175
|
+
in: header
|
|
176
|
+
description: OSSA specification version the agent supports
|
|
177
|
+
required: false
|
|
178
|
+
schema:
|
|
179
|
+
type: string
|
|
180
|
+
# Semantic versioning pattern (semver.org)
|
|
181
|
+
pattern: "^\\d+\\.\\d+\\.\\d+(-[a-zA-Z0-9]+)?$"
|
|
182
|
+
example: "0.2.2"
|
|
183
|
+
|
|
184
|
+
# ==========================================================================
|
|
185
|
+
# Reusable Schemas
|
|
186
|
+
# ==========================================================================
|
|
187
|
+
# Define capability input/output schemas as components for reusability.
|
|
188
|
+
# These schemas are referenced by both x-ossa-capability and requestBody.
|
|
189
|
+
# ==========================================================================
|
|
190
|
+
schemas:
|
|
191
|
+
# Input schema for pod diagnostics capability
|
|
192
|
+
PodDiagnosticRequest:
|
|
193
|
+
type: object
|
|
194
|
+
|
|
195
|
+
# Required fields for pod identification
|
|
196
|
+
required:
|
|
197
|
+
- podName
|
|
198
|
+
- namespace
|
|
199
|
+
|
|
200
|
+
properties:
|
|
201
|
+
# Pod name (Kubernetes resource name)
|
|
202
|
+
podName:
|
|
203
|
+
type: string
|
|
204
|
+
description: Name of the pod to diagnose
|
|
205
|
+
example: "my-app-7d4f6b8c9"
|
|
206
|
+
|
|
207
|
+
# Kubernetes namespace
|
|
208
|
+
namespace:
|
|
209
|
+
type: string
|
|
210
|
+
description: Kubernetes namespace
|
|
211
|
+
example: "production"
|
|
212
|
+
|
|
213
|
+
# Optional flag to include logs (increases latency and cost)
|
|
214
|
+
includeLogs:
|
|
215
|
+
type: boolean
|
|
216
|
+
default: true
|
|
217
|
+
description: Whether to include pod logs in diagnosis
|
|
218
|
+
|
|
219
|
+
# ======================================================================
|
|
220
|
+
# OSSA Capability Schema Extension
|
|
221
|
+
# ======================================================================
|
|
222
|
+
# Links this schema to a specific capability and marks it as input.
|
|
223
|
+
# Enables validation and documentation generation.
|
|
224
|
+
# ======================================================================
|
|
225
|
+
x-ossa-capability-schema:
|
|
226
|
+
capabilityName: pod-diagnostics # Must match capability name
|
|
227
|
+
input: true # This is an input schema
|
|
228
|
+
validation:
|
|
229
|
+
required: true # Validation is required
|
|
230
|
+
strict: true # Use strict validation (no extra fields)
|
|
231
|
+
|
|
232
|
+
# Output schema for pod diagnostics capability
|
|
233
|
+
PodDiagnosticResponse:
|
|
234
|
+
type: object
|
|
235
|
+
|
|
236
|
+
properties:
|
|
237
|
+
# Overall pod health status (determined by LLM analysis)
|
|
238
|
+
status:
|
|
239
|
+
type: string
|
|
240
|
+
enum:
|
|
241
|
+
- healthy # Pod is running normally
|
|
242
|
+
- degraded # Pod has non-critical issues
|
|
243
|
+
- failed # Pod is not functioning
|
|
244
|
+
description: Overall pod health status
|
|
245
|
+
|
|
246
|
+
# List of identified issues (from log/event/metric analysis)
|
|
247
|
+
issues:
|
|
248
|
+
type: array
|
|
249
|
+
items:
|
|
250
|
+
type: object
|
|
251
|
+
properties:
|
|
252
|
+
# Issue severity level
|
|
253
|
+
severity:
|
|
254
|
+
type: string
|
|
255
|
+
enum:
|
|
256
|
+
- critical # Immediate action required
|
|
257
|
+
- warning # Attention needed
|
|
258
|
+
- info # Informational
|
|
259
|
+
# Human-readable issue description
|
|
260
|
+
message:
|
|
261
|
+
type: string
|
|
262
|
+
# Affected Kubernetes resource
|
|
263
|
+
resource:
|
|
264
|
+
type: string
|
|
265
|
+
|
|
266
|
+
# AI-generated recommendations (LLM reasoning over issues)
|
|
267
|
+
recommendations:
|
|
268
|
+
type: array
|
|
269
|
+
items:
|
|
270
|
+
type: string
|
|
271
|
+
description: Recommended actions to resolve issues
|
|
272
|
+
|
|
273
|
+
# Diagnostic metadata for audit and performance tracking
|
|
274
|
+
metadata:
|
|
275
|
+
type: object
|
|
276
|
+
properties:
|
|
277
|
+
# Timestamp when diagnosis completed
|
|
278
|
+
diagnosedAt:
|
|
279
|
+
type: string
|
|
280
|
+
format: date-time
|
|
281
|
+
# Total execution time for performance monitoring
|
|
282
|
+
executionTimeMs:
|
|
283
|
+
type: integer
|
|
284
|
+
|
|
285
|
+
# Link to capability (marks as output schema)
|
|
286
|
+
x-ossa-capability-schema:
|
|
287
|
+
capabilityName: pod-diagnostics
|
|
288
|
+
output: true # This is an output schema
|
|
289
|
+
|
|
290
|
+
# ============================================================================
|
|
291
|
+
# API Paths with Full OSSA Extensions
|
|
292
|
+
# ============================================================================
|
|
293
|
+
paths:
|
|
294
|
+
# ==========================================================================
|
|
295
|
+
# /api/v1/diagnose/pod - Kubernetes Pod Diagnostics
|
|
296
|
+
# ==========================================================================
|
|
297
|
+
# Full-featured OSSA operation demonstrating all OpenAPI extensions:
|
|
298
|
+
# - x-ossa-capability: Capability metadata with schema references
|
|
299
|
+
# - x-ossa-autonomy: Supervised mode with action allowlists/blocklists
|
|
300
|
+
# - x-ossa-constraints: Cost, performance, and time limits
|
|
301
|
+
# - x-ossa-tools: MCP tool integrations
|
|
302
|
+
# - x-ossa-llm: LLM configuration
|
|
303
|
+
# - Reusable parameters and schemas via $ref
|
|
304
|
+
# ==========================================================================
|
|
305
|
+
/api/v1/diagnose/pod:
|
|
306
|
+
post:
|
|
307
|
+
summary: Diagnose pod issues
|
|
308
|
+
description: |
|
|
309
|
+
Analyzes a Kubernetes pod to identify failures, configuration issues,
|
|
310
|
+
and resource constraints. Uses MCP tools to gather pod logs, events, and metrics.
|
|
311
|
+
|
|
312
|
+
operationId: diagnosePod
|
|
313
|
+
|
|
314
|
+
tags:
|
|
315
|
+
- Diagnostics
|
|
316
|
+
|
|
317
|
+
# ======================================================================
|
|
318
|
+
# OSSA Capability Extension (Full Form)
|
|
319
|
+
# ======================================================================
|
|
320
|
+
# Full capability definition with schema references.
|
|
321
|
+
# Enables contract-first design and automatic validation.
|
|
322
|
+
# ======================================================================
|
|
323
|
+
x-ossa-capability:
|
|
324
|
+
name: pod-diagnostics
|
|
325
|
+
description: Diagnose Kubernetes pod failures and issues
|
|
326
|
+
|
|
327
|
+
# Reference to input schema in components/schemas
|
|
328
|
+
inputSchema:
|
|
329
|
+
$ref: "#/components/schemas/PodDiagnosticRequest"
|
|
330
|
+
|
|
331
|
+
# Reference to output schema in components/schemas
|
|
332
|
+
outputSchema:
|
|
333
|
+
$ref: "#/components/schemas/PodDiagnosticResponse"
|
|
334
|
+
|
|
335
|
+
# ======================================================================
|
|
336
|
+
# OSSA Autonomy Extension (Advanced)
|
|
337
|
+
# ======================================================================
|
|
338
|
+
# Fine-grained control over agent autonomy.
|
|
339
|
+
# Uses allowlists and blocklists for precise action control.
|
|
340
|
+
# ======================================================================
|
|
341
|
+
x-ossa-autonomy:
|
|
342
|
+
# Supervised mode: human approval required before execution
|
|
343
|
+
level: supervised
|
|
344
|
+
|
|
345
|
+
# Explicit approval requirement (overrides level)
|
|
346
|
+
approval_required: true
|
|
347
|
+
|
|
348
|
+
# Allowed actions (allowlist pattern)
|
|
349
|
+
# Agent can ONLY perform these Kubernetes operations
|
|
350
|
+
allowed_actions:
|
|
351
|
+
- read_pods # Get pod status
|
|
352
|
+
- read_logs # Fetch pod logs
|
|
353
|
+
- read_events # Get Kubernetes events
|
|
354
|
+
- read_metrics # Query metrics server
|
|
355
|
+
|
|
356
|
+
# Blocked actions (blocklist pattern)
|
|
357
|
+
# Agent CANNOT perform these operations (safety critical)
|
|
358
|
+
blocked_actions:
|
|
359
|
+
- delete_pods # No pod deletion
|
|
360
|
+
- scale_deployments # No scaling changes
|
|
361
|
+
- modify_configs # No config mutations
|
|
362
|
+
|
|
363
|
+
# ======================================================================
|
|
364
|
+
# OSSA Constraints Extension
|
|
365
|
+
# ======================================================================
|
|
366
|
+
# Multi-dimensional constraints for cost control, performance,
|
|
367
|
+
# and time limits. Prevents runaway resource consumption.
|
|
368
|
+
# ======================================================================
|
|
369
|
+
x-ossa-constraints:
|
|
370
|
+
# Cost constraints (prevents budget overruns)
|
|
371
|
+
cost:
|
|
372
|
+
maxTokensPerDay: 50000 # Daily token budget
|
|
373
|
+
maxTokensPerRequest: 4000 # Per-request token limit
|
|
374
|
+
maxCostPerDay: 10.0 # Daily cost cap (USD)
|
|
375
|
+
currency: USD # Currency for cost tracking
|
|
376
|
+
|
|
377
|
+
# Performance constraints (SLA enforcement)
|
|
378
|
+
performance:
|
|
379
|
+
maxLatencySeconds: 30 # Maximum response time
|
|
380
|
+
maxConcurrentRequests: 5 # Concurrency limit
|
|
381
|
+
|
|
382
|
+
# Time constraints (prevents hung executions)
|
|
383
|
+
time:
|
|
384
|
+
maxExecutionTime: 300 # Maximum execution time (5 minutes)
|
|
385
|
+
|
|
386
|
+
# ======================================================================
|
|
387
|
+
# OSSA Tools Extension
|
|
388
|
+
# ======================================================================
|
|
389
|
+
# Defines MCP tools this operation can use.
|
|
390
|
+
# Each tool provides specific capabilities for Kubernetes interaction.
|
|
391
|
+
# ======================================================================
|
|
392
|
+
x-ossa-tools:
|
|
393
|
+
# Kubernetes MCP server for cluster interaction
|
|
394
|
+
- type: mcp # Tool type (mcp, http, grpc)
|
|
395
|
+
server: kubernetes-mcp # MCP server name
|
|
396
|
+
namespace: default # Kubernetes namespace
|
|
397
|
+
|
|
398
|
+
# MCP capabilities this operation uses
|
|
399
|
+
capabilities:
|
|
400
|
+
- get_pods # kubectl get pods
|
|
401
|
+
- get_logs # kubectl logs
|
|
402
|
+
- get_events # kubectl get events
|
|
403
|
+
- describe_resource # kubectl describe
|
|
404
|
+
- get_metrics # metrics-server query
|
|
405
|
+
|
|
406
|
+
# BuildKit Agent Protocol for documentation and log analysis
|
|
407
|
+
- type: mcp
|
|
408
|
+
server: buildkit-agent-protocol
|
|
409
|
+
namespace: default
|
|
410
|
+
capabilities:
|
|
411
|
+
- search_documentation # Search k8s docs
|
|
412
|
+
- analyze_logs # LLM-powered log analysis
|
|
413
|
+
|
|
414
|
+
# ======================================================================
|
|
415
|
+
# OSSA LLM Extension
|
|
416
|
+
# ======================================================================
|
|
417
|
+
# LLM configuration for this specific operation.
|
|
418
|
+
# GPT-4 for complex reasoning over diagnostic data.
|
|
419
|
+
# ======================================================================
|
|
420
|
+
x-ossa-llm:
|
|
421
|
+
provider: openai # LLM provider
|
|
422
|
+
model: gpt-4 # High-quality reasoning model
|
|
423
|
+
temperature: 0.2 # Low temperature for consistency
|
|
424
|
+
maxTokens: 4000 # Max output tokens
|
|
425
|
+
|
|
426
|
+
# Reference reusable parameters from components
|
|
427
|
+
parameters:
|
|
428
|
+
- $ref: "#/components/parameters/X-Ossa-Agent-Id"
|
|
429
|
+
- $ref: "#/components/parameters/X-Ossa-Version"
|
|
430
|
+
|
|
431
|
+
# Standard OpenAPI request body (references component schema)
|
|
432
|
+
requestBody:
|
|
433
|
+
required: true
|
|
434
|
+
content:
|
|
435
|
+
application/json:
|
|
436
|
+
# Reference to input schema (DRY principle)
|
|
437
|
+
schema:
|
|
438
|
+
$ref: "#/components/schemas/PodDiagnosticRequest"
|
|
439
|
+
|
|
440
|
+
# Response definitions with examples
|
|
441
|
+
responses:
|
|
442
|
+
# Success response (200 OK)
|
|
443
|
+
'200':
|
|
444
|
+
description: Diagnosis completed successfully
|
|
445
|
+
content:
|
|
446
|
+
application/json:
|
|
447
|
+
# Reference to output schema (DRY principle)
|
|
448
|
+
schema:
|
|
449
|
+
$ref: "#/components/schemas/PodDiagnosticResponse"
|
|
450
|
+
|
|
451
|
+
# Example response for documentation and testing
|
|
452
|
+
example:
|
|
453
|
+
status: degraded
|
|
454
|
+
issues:
|
|
455
|
+
- severity: warning
|
|
456
|
+
message: "High memory usage detected (95%)"
|
|
457
|
+
resource: "my-app-7d4f6b8c9"
|
|
458
|
+
- severity: info
|
|
459
|
+
message: "Pod restart count: 3"
|
|
460
|
+
resource: "my-app-7d4f6b8c9"
|
|
461
|
+
recommendations:
|
|
462
|
+
- "Increase memory limit or optimize application memory usage"
|
|
463
|
+
- "Review pod restart logs for patterns"
|
|
464
|
+
metadata:
|
|
465
|
+
diagnosedAt: "2024-01-15T10:30:00Z"
|
|
466
|
+
executionTimeMs: 2341
|
|
467
|
+
|
|
468
|
+
# Client error - invalid request (400 Bad Request)
|
|
469
|
+
'400':
|
|
470
|
+
description: Invalid request
|
|
471
|
+
content:
|
|
472
|
+
application/json:
|
|
473
|
+
schema:
|
|
474
|
+
type: object
|
|
475
|
+
properties:
|
|
476
|
+
error:
|
|
477
|
+
type: string
|
|
478
|
+
|
|
479
|
+
# Forbidden - approval required or insufficient permissions (403 Forbidden)
|
|
480
|
+
# This is triggered when x-ossa-autonomy.approval_required is true
|
|
481
|
+
# or when blocked_actions are attempted
|
|
482
|
+
'403':
|
|
483
|
+
description: Insufficient permissions or approval required
|
|
484
|
+
content:
|
|
485
|
+
application/json:
|
|
486
|
+
schema:
|
|
487
|
+
type: object
|
|
488
|
+
properties:
|
|
489
|
+
error:
|
|
490
|
+
type: string
|
|
491
|
+
# Indicates whether human approval is needed
|
|
492
|
+
approvalRequired:
|
|
493
|
+
type: boolean
|
|
494
|
+
|
|
495
|
+
# ============================================================================
|
|
496
|
+
# End of Full-Featured OSSA OpenAPI Example
|
|
497
|
+
# ============================================================================
|
|
498
|
+
#
|
|
499
|
+
# VALIDATION:
|
|
500
|
+
# # Validate OpenAPI spec
|
|
501
|
+
# swagger-cli validate worker-agent-api.openapi.yml
|
|
502
|
+
#
|
|
503
|
+
# # Validate OSSA extensions
|
|
504
|
+
# ossa validate worker-agent-api.openapi.yml
|
|
505
|
+
#
|
|
506
|
+
# CODE GENERATION:
|
|
507
|
+
# # Generate server with OSSA middleware
|
|
508
|
+
# ossa generate server -i worker-agent-api.openapi.yml -o ./server
|
|
509
|
+
#
|
|
510
|
+
# # Generate typed client SDK
|
|
511
|
+
# ossa generate client -i worker-agent-api.openapi.yml -o ./client
|
|
512
|
+
#
|
|
513
|
+
# KEY FEATURES DEMONSTRATED:
|
|
514
|
+
# 1. Enterprise compliance tracking (x-ossa-metadata)
|
|
515
|
+
# 2. Advanced autonomy controls (allowed/blocked actions)
|
|
516
|
+
# 3. Multi-dimensional constraints (cost, performance, time)
|
|
517
|
+
# 4. MCP tool integration (Kubernetes and BuildKit)
|
|
518
|
+
# 5. Reusable components (parameters, schemas)
|
|
519
|
+
# 6. Capability schema linking (x-ossa-capability-schema)
|
|
520
|
+
# 7. RFC 7807 error responses
|
|
521
|
+
# 8. OpenAPI 3.1 $ref usage for DRY
|
|
522
|
+
#
|
|
523
|
+
# COMPARISON WITH MINIMAL EXAMPLE:
|
|
524
|
+
# - minimal-agent-api.openapi.yml: Basic OSSA extensions
|
|
525
|
+
# - worker-agent-api.openapi.yml: Full enterprise features
|
|
526
|
+
#
|
|
527
|
+
# RELATED EXAMPLES:
|
|
528
|
+
# - examples/drupal/gitlab-ml-recommender.ossa.yaml (YAML manifest format)
|
|
529
|
+
# - examples/bridges/aiflow-bridge-example.yml (framework bridge)
|
|
530
|
+
# - examples/openapi-extensions/minimal-agent-api.openapi.yml (basics)
|
|
531
|
+
# - spec/OSSA_OpenAPI_Extensions.md (complete specification)
|
|
532
|
+
# ============================================================================
|
|
533
|
+
|