@bluefly/openstandardagents 0.2.4 → 0.2.7
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/.cursorrules +84 -0
- package/.devfile.yaml +87 -0
- package/.env.example +25 -3
- 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/.github/workflows/release.yml +1 -1
- 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-brand-identity/design.md +1060 -0
- package/.kiro/specs/website-brand-identity/requirements.md +287 -0
- package/.kiro/specs/website-brand-identity/tasks.md +981 -0
- package/.releaserc.json +5 -4
- package/.version.json +6 -0
- package/CHANGELOG.md +163 -96
- package/CONTRIBUTING.md +23 -5
- package/README.md +130 -43
- package/bin/ossa +24 -3
- 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/bin/ossa-validate-all +55 -0
- package/bin/ossa-version +23 -0
- package/bin/validate-ossa-0.2.4.ts +244 -0
- package/bin/validate-ossa-0.2.5-RC.ts +244 -0
- package/bin/validate-ossa.ts +273 -0
- package/dist/di-container.d.ts +1 -1
- package/dist/di-container.d.ts.map +1 -1
- package/dist/di-container.js.map +1 -1
- package/dist/repositories/schema.repository.d.ts +17 -2
- package/dist/repositories/schema.repository.d.ts.map +1 -1
- package/dist/repositories/schema.repository.js +102 -19
- package/dist/repositories/schema.repository.js.map +1 -1
- package/dist/services/generation.service.d.ts +7 -5
- package/dist/services/generation.service.d.ts.map +1 -1
- package/dist/services/generation.service.js +92 -44
- package/dist/services/generation.service.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/gitlab-agent.service.d.ts +94 -0
- package/dist/services/gitlab-agent.service.d.ts.map +1 -0
- package/dist/services/gitlab-agent.service.js +162 -0
- package/dist/services/gitlab-agent.service.js.map +1 -0
- package/dist/services/migration.service.d.ts +3 -3
- package/dist/services/migration.service.d.ts.map +1 -1
- package/dist/services/migration.service.js +108 -61
- package/dist/services/migration.service.js.map +1 -1
- package/dist/services/release-automation/base-crud.service.d.ts +93 -0
- package/dist/services/release-automation/base-crud.service.d.ts.map +1 -0
- package/dist/services/release-automation/base-crud.service.js +68 -0
- package/dist/services/release-automation/base-crud.service.js.map +1 -0
- package/dist/services/release-automation/index.d.ts +12 -0
- package/dist/services/release-automation/index.d.ts.map +1 -0
- package/dist/services/release-automation/index.js +12 -0
- package/dist/services/release-automation/index.js.map +1 -0
- package/dist/services/release-automation/merge-request.service.d.ts +119 -0
- package/dist/services/release-automation/merge-request.service.d.ts.map +1 -0
- package/dist/services/release-automation/merge-request.service.js +212 -0
- package/dist/services/release-automation/merge-request.service.js.map +1 -0
- package/dist/services/release-automation/milestone.service.d.ts +104 -0
- package/dist/services/release-automation/milestone.service.d.ts.map +1 -0
- package/dist/services/release-automation/milestone.service.js +207 -0
- package/dist/services/release-automation/milestone.service.js.map +1 -0
- package/dist/services/release-automation/release.service.d.ts +118 -0
- package/dist/services/release-automation/release.service.d.ts.map +1 -0
- package/dist/services/release-automation/release.service.js +207 -0
- package/dist/services/release-automation/release.service.js.map +1 -0
- package/dist/services/release-automation/schemas/release.schema.d.ts +299 -0
- package/dist/services/release-automation/schemas/release.schema.d.ts.map +1 -0
- package/dist/services/release-automation/schemas/release.schema.js +269 -0
- package/dist/services/release-automation/schemas/release.schema.js.map +1 -0
- package/dist/services/release-automation/tag.service.d.ts +99 -0
- package/dist/services/release-automation/tag.service.d.ts.map +1 -0
- package/dist/services/release-automation/tag.service.js +180 -0
- package/dist/services/release-automation/tag.service.js.map +1 -0
- package/dist/services/release-automation/webhook.service.d.ts +37 -0
- package/dist/services/release-automation/webhook.service.d.ts.map +1 -0
- package/dist/services/release-automation/webhook.service.js +173 -0
- package/dist/services/release-automation/webhook.service.js.map +1 -0
- 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/runtime/openai.adapter.d.ts.map +1 -1
- package/dist/services/runtime/openai.adapter.js.map +1 -1
- package/dist/services/validation.service.d.ts.map +1 -1
- package/dist/services/validation.service.js +35 -11
- package/dist/services/validation.service.js.map +1 -1
- package/dist/services/validators/anthropic.validator.d.ts +2 -2
- package/dist/services/validators/anthropic.validator.d.ts.map +1 -1
- package/dist/services/validators/anthropic.validator.js +14 -9
- package/dist/services/validators/anthropic.validator.js.map +1 -1
- package/dist/services/validators/autogen.validator.d.ts +2 -2
- package/dist/services/validators/autogen.validator.d.ts.map +1 -1
- package/dist/services/validators/autogen.validator.js +18 -15
- package/dist/services/validators/autogen.validator.js.map +1 -1
- package/dist/services/validators/crewai.validator.d.ts +2 -2
- package/dist/services/validators/crewai.validator.d.ts.map +1 -1
- package/dist/services/validators/crewai.validator.js +18 -17
- package/dist/services/validators/crewai.validator.js.map +1 -1
- package/dist/services/validators/cursor.validator.d.ts +2 -2
- package/dist/services/validators/cursor.validator.d.ts.map +1 -1
- package/dist/services/validators/cursor.validator.js +15 -11
- package/dist/services/validators/cursor.validator.js.map +1 -1
- package/dist/services/validators/langchain.validator.d.ts +2 -2
- package/dist/services/validators/langchain.validator.d.ts.map +1 -1
- package/dist/services/validators/langchain.validator.js +14 -11
- package/dist/services/validators/langchain.validator.js.map +1 -1
- package/dist/services/validators/langflow.validator.d.ts +2 -2
- package/dist/services/validators/langflow.validator.d.ts.map +1 -1
- package/dist/services/validators/langflow.validator.js +14 -9
- package/dist/services/validators/langflow.validator.js.map +1 -1
- package/dist/services/validators/langgraph.validator.d.ts +2 -2
- package/dist/services/validators/langgraph.validator.d.ts.map +1 -1
- package/dist/services/validators/langgraph.validator.js +23 -18
- package/dist/services/validators/langgraph.validator.js.map +1 -1
- package/dist/services/validators/llamaindex.validator.d.ts +2 -2
- package/dist/services/validators/llamaindex.validator.d.ts.map +1 -1
- package/dist/services/validators/llamaindex.validator.js +19 -16
- package/dist/services/validators/llamaindex.validator.js.map +1 -1
- package/dist/services/validators/openai.validator.d.ts +2 -2
- package/dist/services/validators/openai.validator.d.ts.map +1 -1
- package/dist/services/validators/openai.validator.js +20 -16
- package/dist/services/validators/openai.validator.js.map +1 -1
- package/dist/services/validators/vercel-ai.validator.d.ts +2 -2
- package/dist/services/validators/vercel-ai.validator.d.ts.map +1 -1
- package/dist/services/validators/vercel-ai.validator.js +16 -15
- package/dist/services/validators/vercel-ai.validator.js.map +1 -1
- package/dist/spec/v0.2.0/ossa-0.2.0.schema.json +0 -0
- package/dist/spec/v0.2.1/ossa-0.2.1.schema.json +555 -0
- package/dist/spec/v0.2.3/CHANGELOG.md +7 -7
- package/dist/spec/v0.2.3/README.md +9 -9
- package/dist/spec/v0.2.3/migrations/v0.2.2-to-v0.2.3.md +18 -18
- package/{spec/v0.2.4-dev → dist/spec/v0.2.4}/CHANGELOG.md +8 -8
- package/dist/spec/{v0.2.4-dev → v0.2.4}/migrations/v0.2.3-to-v0.2.4.md +10 -10
- package/dist/spec/{v0.2.4-dev/ossa-0.2.4-dev.yaml → v0.2.4/ossa-0.2.4.yaml} +1 -1
- package/dist/spec/v0.2.5/CHANGELOG.md +401 -0
- package/dist/spec/v0.2.5/README.md +72 -0
- package/dist/spec/v0.2.5/migrations/v0.2.3-to-v0.2.4.md +599 -0
- package/dist/spec/v0.2.5/ossa-0.2.5.schema.json +1696 -0
- package/dist/spec/v0.2.5/ossa-0.2.5.yaml +581 -0
- package/dist/spec/v0.2.5-RC/CHANGELOG.md +401 -0
- package/dist/spec/v0.2.5-RC/README.md +72 -0
- package/{spec/v0.2.4-dev → dist/spec/v0.2.5-RC}/migrations/v0.2.3-to-v0.2.4.md +10 -10
- package/dist/spec/v0.2.5-RC/ossa-0.2.5-RC.schema.json +1696 -0
- package/dist/spec/v0.2.5-RC/ossa-0.2.5-RC.yaml +581 -0
- 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.6/ossa-0.2.6.schema.json +1786 -0
- 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.schema.json +1696 -0
- package/dist/spec/v0.2.6-dev/ossa-0.2.5.yaml +581 -0
- package/dist/spec/{v0.2.5-dev/ossa-0.2.5-dev.schema.json → v0.2.6-dev/ossa-0.2.6-dev.schema.json} +323 -359
- 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/types/index.d.ts +6 -1
- package/dist/types/index.d.ts.map +1 -1
- 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/examples/anthropic/claude-assistant.ossa.json +5 -4
- package/examples/autogen/multi-agent.ossa.json +6 -4
- package/examples/bridges/Dockerfile.production +1 -1
- package/examples/crewai/research-team.ossa.json +14 -5
- package/examples/cursor/code-review-agent.ossa.json +21 -6
- package/examples/enterprise/agent.yml +1 -1
- package/examples/getting-started/hello-world-complete.ossa.yaml +2 -2
- package/examples/integration-patterns/agent-to-agent-orchestration.ossa.yaml +4 -4
- 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/openai/basic-agent.ossa.yaml +61 -0
- package/examples/openai/multi-tool-agent.ossa.json +188 -0
- package/examples/openai/swarm-agent.ossa.json +18 -5
- package/examples/openapi-extensions/README.md +1 -1
- package/examples/quickstart/support-agent.ossa.yaml +1 -1
- package/examples/vercel/edge-agent.ossa.json +5 -4
- package/infrastructure/gitlab-agent/rbac.yaml +126 -0
- package/infrastructure/gitlab-agent/values.yaml +150 -0
- package/infrastructure/k8s/monitoring/00-namespace.yaml +7 -0
- package/infrastructure/k8s/monitoring/01-prometheus.yaml +142 -0
- package/infrastructure/k8s/monitoring/02-grafana.yaml +63 -0
- package/infrastructure/k8s/monitoring/03-lightweight.yaml +121 -0
- package/infrastructure/k8s/monitoring/README.md +73 -0
- package/infrastructure/k8s/monitoring/deploy.sh +38 -0
- package/openapi/CHANGELOG.md +21 -0
- package/openapi/README.md +46 -0
- package/openapi/{ossa-core-api.openapi.yaml → core/ossa-core-api.openapi.yaml} +59 -4
- package/openapi/{ossa-registry.openapi.yaml → core/ossa-registry.openapi.yaml} +75 -2
- package/openapi/{unified-agent-gateway.openapi.yaml → core/unified-agent-gateway.openapi.yaml} +3 -3
- package/openapi/github-sync.yaml +115 -0
- package/openapi/reference-implementations/aiflow-bridge-api.openapi.yaml +136 -0
- package/openapi/reference-implementations/compliance-agent-api.openapi.yaml +192 -0
- package/openapi/reference-implementations/crewai-agent-api.openapi.yaml +149 -0
- package/openapi/reference-implementations/critic-agent-api.openapi.yaml +151 -0
- package/openapi/reference-implementations/document-analyzer-api.openapi.yaml +217 -0
- package/openapi/reference-implementations/getting-started-hello-world-api.openapi.yaml +149 -0
- package/openapi/reference-implementations/gitlab-ml-recommender-api.openapi.yaml +151 -0
- package/openapi/reference-implementations/governor-agent-api.openapi.yaml +193 -0
- package/openapi/reference-implementations/integrator-agent-api.openapi.yaml +165 -0
- package/openapi/reference-implementations/judge-agent-api.openapi.yaml +148 -0
- package/openapi/reference-implementations/k8s-troubleshooter-api.openapi.yaml +167 -0
- package/openapi/reference-implementations/langchain-agent-api.openapi.yaml +171 -0
- package/openapi/reference-implementations/monitor-agent-api.openapi.yaml +171 -0
- package/openapi/reference-implementations/orchestrator-agent-api.openapi.yaml +242 -0
- package/openapi/reference-implementations/quickstart-support-agent-api.openapi.yaml +187 -0
- package/openapi/{self-evolving-ecosystem.openapi.yaml → reference-implementations/self-evolving-ecosystem.openapi.yaml} +2 -2
- package/openapi/reference-implementations/worker-agent-api.openapi.yaml +208 -0
- package/openapi/reference-implementations/workflow-orchestrator-api.openapi.yaml +193 -0
- package/package.json +53 -22
- package/release.config.js +20 -5
- package/scripts/README.md +103 -0
- package/scripts/auto-rebase-mrs.ts +106 -0
- package/scripts/batch-dependabot.sh +57 -0
- package/scripts/bump-version.ts +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/enhanced-version-manager.ts +257 -0
- package/scripts/fix-schema-formats.js +82 -0
- package/scripts/gen-types.ts +51 -0
- package/scripts/gen-zod.ts +51 -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-schema-docs.ts +296 -0
- package/scripts/generate-types-docs.ts +48 -0
- package/scripts/lib/exec.ts +37 -0
- package/scripts/lib/file-ops.ts +58 -0
- package/scripts/lib/version.ts +83 -0
- package/scripts/lowercase-docs.ts +43 -0
- package/scripts/manage-milestone-mrs.ts +279 -0
- package/scripts/process-doc-templates.ts +37 -0
- package/scripts/rebase-all-mrs.sh +75 -0
- package/scripts/schemas/package.schema.ts +75 -0
- package/scripts/setup-branch-protection.sh +33 -0
- package/scripts/sync-github-pr.sh +48 -0
- package/scripts/sync-version.js +40 -0
- package/scripts/sync-version.ts +39 -0
- package/scripts/sync-versions.ts +488 -0
- package/scripts/sync-wiki.sh +50 -0
- package/scripts/validate-all.js +127 -0
- package/scripts/validate-schema.ts +49 -0
- package/spec/v0.2.0/ossa-0.2.0.schema.json +0 -0
- package/spec/v0.2.1/ossa-0.2.1.schema.json +555 -0
- package/spec/v0.2.3/CHANGELOG.md +7 -7
- package/spec/v0.2.3/README.md +9 -9
- package/spec/v0.2.3/migrations/v0.2.2-to-v0.2.3.md +18 -18
- package/{dist/spec/v0.2.4-dev → spec/v0.2.4}/CHANGELOG.md +8 -8
- package/spec/v0.2.4/migrations/v0.2.3-to-v0.2.4.md +599 -0
- package/spec/{v0.2.4-dev/ossa-0.2.4-dev.yaml → v0.2.4/ossa-0.2.4.yaml} +1 -1
- package/spec/v0.2.5/CHANGELOG.md +401 -0
- package/spec/v0.2.5/README.md +72 -0
- package/spec/v0.2.5/migrations/v0.2.3-to-v0.2.4.md +599 -0
- package/spec/v0.2.5/ossa-0.2.5.schema.json +1696 -0
- package/spec/v0.2.5/ossa-0.2.5.yaml +581 -0
- package/spec/v0.2.5-RC/CHANGELOG.md +401 -0
- package/spec/v0.2.5-RC/README.md +72 -0
- package/spec/v0.2.5-RC/migrations/v0.2.3-to-v0.2.4.md +599 -0
- package/spec/v0.2.5-RC/ossa-0.2.5-RC.schema.json +1696 -0
- package/spec/v0.2.5-RC/ossa-0.2.5-RC.yaml +581 -0
- 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.6/ossa-0.2.6.schema.json +1786 -0
- 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.schema.json +1696 -0
- package/spec/v0.2.6-dev/ossa-0.2.5.yaml +581 -0
- package/spec/{v0.2.5-dev/ossa-0.2.5-dev.schema.json → v0.2.6-dev/ossa-0.2.6-dev.schema.json} +323 -359
- 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/website/{.lighthouserc.js → .lighthouserc.ts} +5 -1
- package/website/DESIGN_SYSTEM_IMPLEMENTATION.md +445 -0
- package/website/Dockerfile +18 -5
- package/website/app/about/page.tsx +60 -51
- package/website/app/blog/[slug]/page.tsx +61 -20
- package/website/app/blog/page.tsx +120 -33
- package/website/app/design-guide/page.tsx +511 -0
- package/website/app/docs/[[...slug]]/page.tsx +641 -143
- package/website/app/ecosystem/page.tsx +146 -111
- package/website/app/examples/page.tsx +51 -41
- package/website/app/globals.scss +370 -0
- package/website/app/layout.tsx +2 -2
- package/website/app/license/page.tsx +183 -0
- package/website/app/not-found.tsx +18 -0
- package/website/app/page.tsx +513 -236
- package/website/app/page.tsx.bak +679 -0
- package/website/app/page.tsx.bak2 +649 -0
- package/website/app/playground/page.tsx +25 -45
- package/website/app/schema/page.tsx +423 -392
- package/website/app/specification/page.tsx +245 -169
- package/website/components/Logo.tsx +75 -2
- package/website/components/docs/DocsSidebar.tsx +40 -3
- package/website/components/docs/MarkdownContent.tsx +265 -47
- package/website/components/docs/VersionSelector.tsx +64 -8
- package/website/components/examples/ExamplesViewer.tsx +2 -2
- package/website/components/layout/Footer.tsx +6 -1
- package/website/components/layout/Header.tsx +44 -42
- package/website/components/schema/SchemaComponentsAccordion.tsx +84 -0
- package/website/components/schema/SchemaExplorer.tsx +4 -4
- package/website/components/ui/Badge.tsx +82 -0
- package/website/components/ui/Button.tsx +116 -0
- package/website/components/ui/Card.tsx +167 -0
- package/website/components/ui/Checkbox.tsx +141 -0
- package/website/components/ui/Input.tsx +169 -0
- package/website/components/ui/Radio.tsx +141 -0
- package/website/components/ui/Select.tsx +182 -0
- package/website/components/ui/Tag.tsx +158 -0
- package/website/components/ui/Textarea.tsx +195 -0
- package/website/components/ui/index.ts +11 -0
- package/website/content/blog/OpenAPI-AI-Agents-Standard.md +276 -276
- package/website/content/blog/Why-Formal-Standards-Matter-Now.md +3 -14
- package/website/content/blog/gitlab-kubernetes-agent-ecosystem.md +286 -0
- package/website/content/blog/introducing-ossa-framework.md +1 -1
- package/website/content/blog/ossa-production-results.md +5 -5
- package/website/content/blog/welcome-to-ossa.md +2 -2
- package/website/content/blog/why-ai-agents-need-open-standard.md +5 -5
- package/website/content/docs/{00-HOME.md → 00-home.md} +18 -25
- package/website/content/docs/adapters/openai-adapter.md +693 -0
- package/website/content/docs/agents/catalog.md +28 -0
- package/website/content/docs/aiflow-framework-integration-with-ossa.md +107 -0
- package/website/content/docs/api-reference/index.md +38 -0
- package/website/content/docs/api-reference/ossa-core-api.md +634 -0
- package/website/content/docs/api-reference/ossa-registry-api.md +515 -0
- package/website/content/docs/api-reference/unified-agent-gateway.md +599 -0
- package/website/content/docs/architecture/execution-flow.md +3 -3
- package/website/content/docs/architecture/multi-agent-systems.md +4 -4
- package/website/content/docs/architecture/overview.md +4 -4
- package/website/content/docs/architecture/stack-integration.md +4 -4
- package/website/content/docs/changelog.md +4 -4
- package/website/content/docs/cli-reference/index.md +111 -0
- package/website/content/docs/cli-reference/ossa-agents.md +70 -0
- package/website/content/docs/cli-reference/ossa-export.md +56 -0
- package/website/content/docs/cli-reference/ossa-generate.md +66 -0
- package/website/content/docs/cli-reference/ossa-gitlab-agent.md +57 -0
- package/website/content/docs/cli-reference/ossa-import.md +56 -0
- package/website/content/docs/cli-reference/ossa-init.md +57 -0
- package/website/content/docs/cli-reference/ossa-migrate.md +62 -0
- package/website/content/docs/cli-reference/ossa-run.md +66 -0
- package/website/content/docs/cli-reference/ossa-schema.md +57 -0
- package/website/content/docs/cli-reference/ossa-setup.md +57 -0
- package/website/content/docs/cli-reference/ossa-validate.md +66 -0
- package/website/content/docs/configuration/index.md +97 -0
- package/website/content/docs/contributing.md +2 -2
- package/website/content/docs/deployment/github-mirroring.md +924 -0
- package/website/content/docs/documentation.md +100 -0
- package/website/content/docs/ecosystem/framework-support.md +551 -11
- package/website/content/docs/errors/index.md +10 -0
- package/website/content/docs/{AIFlow-Framework-Integration-with-OSSA.md → examples/aiflow-framework-integration-with-ossa.md} +2 -2
- package/website/content/docs/examples/catalog.md +300 -0
- package/website/content/docs/for-audiences/{Students-Researchers.md → students-researchers.md} +1 -1
- package/website/content/docs/getting-started/index.md +92 -0
- package/website/content/docs/getting-started/installation.md +7 -7
- package/website/content/docs/getting-started/running-agents.md +215 -13
- package/{docs → website/content/docs}/getting-started.md +10 -6
- package/website/content/docs/integrations/aiflow.md +2 -2
- package/website/content/docs/integrations/drupal.md +2 -2
- package/website/content/docs/migration-guides/agent-schema-comparison.md +232 -0
- package/website/content/docs/migration-guides/anthropic-mcp-to-ossa.md +5 -5
- package/website/content/docs/migration-guides/crewai-to-ossa.md +3 -3
- package/website/content/docs/migration-guides/drupal-eca-to-ossa.md +11 -11
- package/{docs/migration → website/content/docs/migration-guides}/general-agent-schema.yml +1 -9
- package/website/content/docs/migration-guides/index.md +1 -1
- package/website/content/docs/migration-guides/langchain-to-ossa.md +17 -17
- package/website/content/docs/migration-guides/langflow-to-ossa.md +3 -3
- package/website/content/docs/migration-guides/openai-to-ossa.md +10 -10
- package/website/content/docs/openapi-extensions/examples.md +9 -9
- package/website/content/docs/openapi-extensions/index.md +59 -3
- package/website/content/docs/openapi-extensions/operation-extensions.md +61 -2
- package/website/content/docs/openapi-extensions/root-extensions.md +49 -3
- package/{docs/OSSA-COMPLIANT-BADGE.md → website/content/docs/ossa-compliant-badge.md} +18 -15
- package/website/content/docs/pre-release/index.md +10 -10
- package/website/content/docs/readme.md +35 -0
- package/website/content/docs/releases/v0.2.6.md +99 -0
- package/website/content/docs/schema-reference/agent-capabilities.md +50 -0
- package/website/content/docs/schema-reference/agent-id.md +52 -0
- package/website/content/docs/schema-reference/agent-name.md +50 -0
- package/website/content/docs/schema-reference/agent-role.md +54 -0
- package/website/content/docs/schema-reference/agent-spec.md +2 -2
- package/website/content/docs/schema-reference/agent-version.md +50 -0
- package/website/content/docs/schema-reference/autonomy.md +5 -5
- package/website/content/docs/schema-reference/constraints.md +5 -5
- package/website/content/docs/schema-reference/index.md +26 -157
- package/website/content/docs/schema-reference/llm-config.md +1 -1
- package/website/content/docs/schema-reference/observability.md +5 -5
- package/website/content/docs/schema-reference/ossa-manifest.md +6 -6
- package/website/content/docs/schema-reference/taxonomy.md +3 -3
- package/website/content/docs/types-reference/index.md +105 -0
- package/website/content/docs/use-cases/00-index.md +1 -1
- package/{docs/VERSIONING.md → website/content/docs/versioning.md} +9 -5
- package/website/dev.sh +53 -0
- package/website/docker-compose.dev.yml +36 -0
- package/website/lib/version.ts +18 -1
- package/website/lib/versions.json +103 -0
- package/website/next.config.ts +3 -1
- package/website/package-lock.json +552 -18
- package/website/package.json +11 -5
- package/website/postcss.config.mjs +1 -1
- package/website/scripts/fetch-versions.js +166 -0
- package/website/scripts/generate-examples-index.js +163 -0
- package/website/scripts/merge-docs-to-wiki.ts +207 -0
- package/website/scripts/sync-version.js +28 -0
- package/website/scripts/sync-wiki.ts +64 -3
- package/website/scripts/upload-wiki.ts +199 -0
- package/website/styles/_spacing.scss +453 -0
- package/website/styles/_tokens.scss +245 -0
- package/website/styles/_typography.scss +361 -0
- package/website/styles/_variables.scss +287 -0
- package/website/tailwind.config.ts +127 -22
- package/.releaserc.json.disabled +0 -81
- package/dist/spec/v0.2.5-dev/CHANGELOG.md +0 -171
- package/dist/spec/v0.2.5-dev/examples/customer-support-graph.ossa.yaml +0 -362
- package/dist/spec/v0.2.5-dev/examples/parallel-processors.ossa.yaml +0 -464
- package/dist/spec/v0.2.5-dev/examples/research-team.ossa.yaml +0 -440
- package/dist/spec/v0.2.5-dev/migrations/v0.2.4-to-v0.2.5.md +0 -317
- package/dist/spec/v0.2.5-dev/ossa-0.2.5-dev.yaml +0 -409
- package/docs/README.md +0 -31
- package/docs/agent-openapi-spec.yml +0 -942
- package/docs/openapi-extensions.md +0 -930
- package/docs/schemas/openapi-extensions.schema.json +0 -486
- package/openapi/gitlab-orchestrator.openapi.yaml +0 -330
- package/ossa-website-swarm-tasks.json +0 -105
- package/spec/v0.2.5-dev/CHANGELOG.md +0 -171
- package/spec/v0.2.5-dev/examples/customer-support-graph.ossa.yaml +0 -362
- package/spec/v0.2.5-dev/examples/parallel-processors.ossa.yaml +0 -464
- package/spec/v0.2.5-dev/examples/research-team.ossa.yaml +0 -440
- package/spec/v0.2.5-dev/migrations/v0.2.4-to-v0.2.5.md +0 -317
- package/spec/v0.2.5-dev/ossa-0.2.5-dev.yaml +0 -409
- package/website/app/api/validate/route.ts +0 -88
- package/website/app/globals.css +0 -108
- package/website/content/docs/OpenAPI-Extensions.md +0 -498
- package/website/content/docs/core-concepts/project-structure.md +0 -348
- package/website/content/docs/examples/Migration-Guides.md +0 -214
- package/website/content/docs/examples.md +0 -71
- package/website/content/docs/for-audiences/Enterprises.md +0 -256
- package/website/content/docs/for-audiences/architects.md +0 -224
- package/website/content/docs/for-audiences/developers.md +0 -220
- package/website/content/docs/getting-started/5-minute-overview.md +0 -85
- package/website/content/docs/getting-started/Hello-World.md +0 -184
- package/website/content/docs/getting-started/first-agent.md +0 -196
- package/website/content/docs/migration-guides/00-index.md +0 -76
- package/website/content/docs/migration-guides/README.md +0 -133
- package/website/next.config.js +0 -17
- package/website/postcss.config.js +0 -7
- package/website/tailwind.config.js +0 -58
- /package/dist/spec/{v0.2.4-dev/ossa-0.2.4-dev.schema.json → v0.2.4/ossa-0.2.4.schema.json} +0 -0
- /package/openapi/{ossa-registry-api.openapi.yaml → core/ossa-registry-api.openapi.yaml} +0 -0
- /package/openapi/{drupal-agent-api.openapi.yaml → reference-implementations/drupal-agent-api.openapi.yaml} +0 -0
- /package/openapi/{helm-generator.openapi.yaml → reference-implementations/helm-generator.openapi.yaml} +0 -0
- /package/spec/{v0.2.4-dev/ossa-0.2.4-dev.schema.json → v0.2.4/ossa-0.2.4.schema.json} +0 -0
- /package/{docs/migration → website/content/docs/migration-guides}/migration-manifest.json +0 -0
package/website/app/page.tsx
CHANGED
|
@@ -1,44 +1,82 @@
|
|
|
1
1
|
import Link from 'next/link';
|
|
2
|
+
import type { Metadata } from 'next';
|
|
2
3
|
import { Logo } from '@/components/Logo';
|
|
4
|
+
import { Card, CardHeader, CardTitle, CardContent } from '@/components/ui/Card';
|
|
5
|
+
import fs from 'fs';
|
|
6
|
+
import path from 'path';
|
|
7
|
+
|
|
8
|
+
// Get version dynamically
|
|
9
|
+
function getVersion(): string {
|
|
10
|
+
try {
|
|
11
|
+
const pkgPath = path.join(process.cwd(), '../package.json');
|
|
12
|
+
if (fs.existsSync(pkgPath)) {
|
|
13
|
+
const pkg = JSON.parse(fs.readFileSync(pkgPath, 'utf8'));
|
|
14
|
+
return pkg.version;
|
|
15
|
+
}
|
|
16
|
+
} catch (error) {
|
|
17
|
+
console.error('Failed to load version:', error);
|
|
18
|
+
}
|
|
19
|
+
return '0.2.6';
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
export const metadata: Metadata = {
|
|
23
|
+
title: 'Open Standard Agents - Industry Standard for Agent Orchestration',
|
|
24
|
+
description: 'The vendor-neutral specification for multi-agent systems. Write once, deploy anywhere. Zero vendor lock-in.',
|
|
25
|
+
};
|
|
3
26
|
|
|
4
27
|
export default function HomePage() {
|
|
28
|
+
const version = getVersion();
|
|
29
|
+
|
|
5
30
|
return (
|
|
6
31
|
<div className="flex flex-col">
|
|
7
32
|
{/* Hero Section */}
|
|
8
|
-
<section className="bg-gradient-
|
|
9
|
-
<div className="container mx-auto max-w-
|
|
10
|
-
<div className="mb-
|
|
11
|
-
<
|
|
12
|
-
|
|
13
|
-
alt="OSSA Logo"
|
|
14
|
-
className="h-24 w-24 mb-6 animate-pulse"
|
|
15
|
-
/>
|
|
16
|
-
<span className="inline-block px-4 py-2 bg-white/20 backdrop-blur-sm rounded-full text-sm font-medium">
|
|
17
|
-
The OpenAPI for AI Agents
|
|
33
|
+
<section className="bg-gradient-to-br from-secondary via-primary to-accent text-white py-24 px-4">
|
|
34
|
+
<div className="container mx-auto max-w-[1440px] text-center">
|
|
35
|
+
<div className="mb-6 flex flex-col items-center">
|
|
36
|
+
<span className="inline-block px-4 py-2 bg-white/20 backdrop-blur-sm rounded-full text-sm font-medium mb-4">
|
|
37
|
+
The OpenAPI for AI Agents (v{version})
|
|
18
38
|
</span>
|
|
19
39
|
</div>
|
|
20
|
-
<h1 className="text-
|
|
21
|
-
Open Standard for
|
|
22
|
-
<span className="bg-gradient-to-r from-yellow-300 via-orange-300 to-pink-300 bg-clip-text text-transparent animate-pulse">
|
|
23
|
-
Scalable Agents
|
|
24
|
-
</span>
|
|
40
|
+
<h1 className="text-4xl md:text-6xl lg:text-7xl font-bold mb-6 leading-tight">
|
|
41
|
+
Open Standard for AI Agents
|
|
25
42
|
</h1>
|
|
26
|
-
<p className="text-
|
|
27
|
-
|
|
28
|
-
</p>
|
|
29
|
-
<p className="text-xl md:text-2xl mb-8 text-gray-200 max-w-4xl mx-auto">
|
|
30
|
-
A vendor-neutral, open specification for defining, deploying, and managing AI agents.
|
|
31
|
-
Just as OpenAPI standardizes REST APIs, Open Standard Agents standardizes agent interoperability
|
|
32
|
-
across frameworks, runtimes, and organizations.
|
|
43
|
+
<p className="text-2xl md:text-3xl lg:text-4xl mb-6 font-bold">
|
|
44
|
+
Vendor-neutral, compliance-ready, enterprise-grade
|
|
33
45
|
</p>
|
|
46
|
+
<div className="max-w-4xl mx-auto mb-8 space-y-3">
|
|
47
|
+
<p className="text-lg md:text-xl text-gray-100 flex items-center justify-center gap-2">
|
|
48
|
+
<svg className="w-5 h-5 flex-shrink-0" fill="currentColor" viewBox="0 0 20 20">
|
|
49
|
+
<path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clipRule="evenodd" />
|
|
50
|
+
</svg>
|
|
51
|
+
Switch between AI providers without code changes
|
|
52
|
+
</p>
|
|
53
|
+
<p className="text-lg md:text-xl text-gray-100 flex items-center justify-center gap-2">
|
|
54
|
+
<svg className="w-5 h-5 flex-shrink-0" fill="currentColor" viewBox="0 0 20 20">
|
|
55
|
+
<path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clipRule="evenodd" />
|
|
56
|
+
</svg>
|
|
57
|
+
Built-in compliance and security frameworks
|
|
58
|
+
</p>
|
|
59
|
+
<p className="text-lg md:text-xl text-gray-100 flex items-center justify-center gap-2">
|
|
60
|
+
<svg className="w-5 h-5 flex-shrink-0" fill="currentColor" viewBox="0 0 20 20">
|
|
61
|
+
<path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clipRule="evenodd" />
|
|
62
|
+
</svg>
|
|
63
|
+
Standardized agent lifecycle and governance
|
|
64
|
+
</p>
|
|
65
|
+
<p className="text-lg md:text-xl text-gray-100 flex items-center justify-center gap-2">
|
|
66
|
+
<svg className="w-5 h-5 flex-shrink-0" fill="currentColor" viewBox="0 0 20 20">
|
|
67
|
+
<path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clipRule="evenodd" />
|
|
68
|
+
</svg>
|
|
69
|
+
Multi-runtime support (Node.js, Python, more)
|
|
70
|
+
</p>
|
|
71
|
+
</div>
|
|
34
72
|
<div className="flex flex-col sm:flex-row gap-4 justify-center mb-12">
|
|
35
|
-
<
|
|
73
|
+
<Link href="#get-started" className="text-lg px-8 py-4 bg-[#3224c9] text-white font-bold rounded-lg shadow-xl hover:shadow-2xl transform hover:scale-105 transition-all border-2 border-white hover:bg-white hover:text-[#3224c9]">
|
|
36
74
|
Get Started
|
|
37
|
-
</
|
|
75
|
+
</Link>
|
|
38
76
|
<Link href="https://github.com/blueflyio/openstandardagents" className="btn-outline border-white text-white hover:bg-white hover:text-primary text-lg px-8 py-4" target="_blank" rel="noopener noreferrer">
|
|
39
77
|
View on GitHub
|
|
40
78
|
</Link>
|
|
41
|
-
<Link href="/schema" className="btn-outline border-white text-white hover:bg-white hover:text-primary text-lg px-8 py-4">
|
|
79
|
+
<Link href="/schema/" className="btn-outline border-white text-white hover:bg-white hover:text-primary text-lg px-8 py-4">
|
|
42
80
|
View Schema
|
|
43
81
|
</Link>
|
|
44
82
|
</div>
|
|
@@ -47,62 +85,25 @@ export default function HomePage() {
|
|
|
47
85
|
<svg className="w-5 h-5" fill="currentColor" viewBox="0 0 20 20">
|
|
48
86
|
<path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clipRule="evenodd" />
|
|
49
87
|
</svg>
|
|
50
|
-
<span>Vendor-Neutral</span>
|
|
88
|
+
<span className="font-bold">Vendor-Neutral</span>
|
|
51
89
|
</div>
|
|
52
90
|
<div className="flex items-center gap-2">
|
|
53
91
|
<svg className="w-5 h-5" fill="currentColor" viewBox="0 0 20 20">
|
|
54
92
|
<path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clipRule="evenodd" />
|
|
55
93
|
</svg>
|
|
56
|
-
<span>Framework-Agnostic</span>
|
|
94
|
+
<span className="font-bold">Framework-Agnostic</span>
|
|
57
95
|
</div>
|
|
58
96
|
<div className="flex items-center gap-2">
|
|
59
97
|
<svg className="w-5 h-5" fill="currentColor" viewBox="0 0 20 20">
|
|
60
98
|
<path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clipRule="evenodd" />
|
|
61
99
|
</svg>
|
|
62
|
-
<span>Open Source</span>
|
|
100
|
+
<span className="font-bold">Open Source</span>
|
|
63
101
|
</div>
|
|
64
102
|
<div className="flex items-center gap-2">
|
|
65
103
|
<svg className="w-5 h-5" fill="currentColor" viewBox="0 0 20 20">
|
|
66
104
|
<path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clipRule="evenodd" />
|
|
67
105
|
</svg>
|
|
68
|
-
<span>JSON Schema Validated</span>
|
|
69
|
-
</div>
|
|
70
|
-
</div>
|
|
71
|
-
</div>
|
|
72
|
-
</section>
|
|
73
|
-
|
|
74
|
-
{/* Why OSSA - The Problem Section */}
|
|
75
|
-
<section className="py-16 px-4 bg-gradient-to-br from-amber-50 via-orange-50 to-yellow-50">
|
|
76
|
-
<div className="container mx-auto max-w-5xl">
|
|
77
|
-
<div className="text-center mb-8">
|
|
78
|
-
<h2 className="text-4xl font-bold mb-6 text-gray-900">Why Does This Matter?</h2>
|
|
79
|
-
</div>
|
|
80
|
-
<div className="prose prose-lg max-w-none">
|
|
81
|
-
<p className="text-xl text-gray-700 mb-6 leading-relaxed">
|
|
82
|
-
In the world of AI agents, <strong className="text-gray-900">everyone calls an agent something different</strong>.
|
|
83
|
-
LangChain has "chains," CrewAI has "crews," OpenAI has "assistants," Anthropic has Claude with "tools."
|
|
84
|
-
Every framework invents its own terminology, its own configuration format, its own orchestration model.
|
|
85
|
-
</p>
|
|
86
|
-
<p className="text-xl text-gray-700 mb-6 leading-relaxed">
|
|
87
|
-
This fragmentation creates <strong className="text-red-600">vendor lock-in</strong>, makes agents impossible
|
|
88
|
-
to share between teams, and forces developers to rewrite everything when switching frameworks. Want to move
|
|
89
|
-
your LangChain agent to CrewAI? Complete rewrite. Need to deploy the same agent logic across multiple
|
|
90
|
-
frameworks? Maintain separate implementations.
|
|
91
|
-
</p>
|
|
92
|
-
<p className="text-xl text-gray-700 mb-6 leading-relaxed">
|
|
93
|
-
Imagine if every API framework required its own documentation format—that was the world before OpenAPI.
|
|
94
|
-
Every API provider wrote docs differently, integration was chaos, and tooling couldn't be shared.
|
|
95
|
-
<strong className="text-gray-900"> OpenAPI solved this by creating one standard that every API could follow</strong>.
|
|
96
|
-
</p>
|
|
97
|
-
<div className="bg-white rounded-xl p-8 shadow-lg border-2 border-blue-200">
|
|
98
|
-
<p className="text-2xl text-gray-900 font-bold mb-4">
|
|
99
|
-
OSSA solves this for AI agents.
|
|
100
|
-
</p>
|
|
101
|
-
<p className="text-xl text-gray-700">
|
|
102
|
-
<strong>One standard. Any framework. True portability.</strong> Define your agent once in OSSA format,
|
|
103
|
-
then deploy it with LangChain, CrewAI, Anthropic, OpenAI, or any other framework. Just like OpenAPI
|
|
104
|
-
unified REST APIs, OSSA unifies AI agents.
|
|
105
|
-
</p>
|
|
106
|
+
<span className="font-bold">JSON Schema Validated</span>
|
|
106
107
|
</div>
|
|
107
108
|
</div>
|
|
108
109
|
</div>
|
|
@@ -110,7 +111,7 @@ export default function HomePage() {
|
|
|
110
111
|
|
|
111
112
|
{/* What is OSSA Section */}
|
|
112
113
|
<section className="py-20 px-4 bg-white">
|
|
113
|
-
<div className="container mx-auto max-w-
|
|
114
|
+
<div className="container mx-auto max-w-[1440px]">
|
|
114
115
|
<div className="text-center mb-16">
|
|
115
116
|
<h2 className="text-5xl font-bold mb-6">What is Open Standard Agents?</h2>
|
|
116
117
|
<p className="text-xl text-gray-600 max-w-3xl mx-auto">
|
|
@@ -119,169 +120,408 @@ export default function HomePage() {
|
|
|
119
120
|
runtimes, and organizations.
|
|
120
121
|
</p>
|
|
121
122
|
</div>
|
|
122
|
-
|
|
123
|
+
|
|
123
124
|
<div className="grid md:grid-cols-3 gap-8 mb-12">
|
|
124
|
-
<
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
</
|
|
143
|
-
<
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
<
|
|
155
|
-
|
|
156
|
-
</
|
|
157
|
-
|
|
125
|
+
<Card variant="default" padding="lg" elevation={1} hover>
|
|
126
|
+
<CardHeader>
|
|
127
|
+
<CardTitle className="text-primary">Specification Standard</CardTitle>
|
|
128
|
+
</CardHeader>
|
|
129
|
+
<CardContent>
|
|
130
|
+
<p className="text-gray-700 mb-4">
|
|
131
|
+
OSSA is <strong>NOT a framework</strong> - it's a specification that defines the contract
|
|
132
|
+
for agent definition, deployment, and management.
|
|
133
|
+
</p>
|
|
134
|
+
<p className="text-gray-700">
|
|
135
|
+
Just like OpenAPI doesn't implement APIs, OSSA doesn't implement agents.
|
|
136
|
+
It provides the standard that implementations follow.
|
|
137
|
+
</p>
|
|
138
|
+
</CardContent>
|
|
139
|
+
</Card>
|
|
140
|
+
<Card variant="default" padding="lg" elevation={1} hover>
|
|
141
|
+
<CardHeader>
|
|
142
|
+
<CardTitle className="text-primary">Framework-Agnostic</CardTitle>
|
|
143
|
+
</CardHeader>
|
|
144
|
+
<CardContent>
|
|
145
|
+
<p className="text-gray-700 mb-4">
|
|
146
|
+
Works seamlessly with any LLM framework or SDK - LangChain, Anthropic, OpenAI,
|
|
147
|
+
CrewAI, Langflow, AutoGen, and more.
|
|
148
|
+
</p>
|
|
149
|
+
<p className="text-gray-700">
|
|
150
|
+
Deploy to Kubernetes, Docker, serverless, or on-premise. OSSA is infrastructure-agnostic.
|
|
151
|
+
</p>
|
|
152
|
+
</CardContent>
|
|
153
|
+
</Card>
|
|
154
|
+
<Card variant="default" padding="lg" elevation={1} hover>
|
|
155
|
+
<CardHeader>
|
|
156
|
+
<CardTitle className="text-primary">Vendor-Neutral</CardTitle>
|
|
157
|
+
</CardHeader>
|
|
158
|
+
<CardContent>
|
|
159
|
+
<p className="text-gray-700 mb-4">
|
|
160
|
+
No vendor lock-in. Write once, deploy anywhere. Move agents between teams,
|
|
161
|
+
organizations, and infrastructures without rewriting code.
|
|
162
|
+
</p>
|
|
163
|
+
<p className="text-gray-700">
|
|
164
|
+
Maintained by the open source community, ensuring long-term viability and innovation.
|
|
165
|
+
</p>
|
|
166
|
+
</CardContent>
|
|
167
|
+
</Card>
|
|
158
168
|
</div>
|
|
159
169
|
|
|
160
170
|
{/* OpenAPI Comparison */}
|
|
161
|
-
<div className="bg-
|
|
162
|
-
<
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
171
|
+
<div className="bg-gradient-to-br from-blue-50 via-indigo-50 to-purple-50 rounded-2xl p-8 md:p-12 mt-16 border-2 border-blue-100 shadow-xl">
|
|
172
|
+
<div className="text-center mb-12">
|
|
173
|
+
<h3 className="text-4xl md:text-5xl font-bold mb-4 bg-gradient-to-r from-primary via-secondary to-primary bg-clip-text text-transparent">
|
|
174
|
+
The OpenAPI for Agents
|
|
175
|
+
</h3>
|
|
176
|
+
<div className="w-24 h-1 bg-gradient-to-r from-primary to-secondary mx-auto rounded-full"></div>
|
|
177
|
+
</div>
|
|
178
|
+
<div className="grid md:grid-cols-2 lg:grid-cols-4 gap-6 max-w-[1440px] mx-auto">
|
|
179
|
+
<Card variant="default" padding="md" elevation={2} hover className="border-2 border-blue-100">
|
|
180
|
+
<h4 className="text-xl font-bold mb-5 text-primary pb-3 border-b-2 border-blue-100">OpenAPI for REST</h4>
|
|
166
181
|
<ul className="space-y-3 text-gray-700">
|
|
167
|
-
<li className="flex items-start gap-
|
|
168
|
-
<svg className="w-5 h-5 text-
|
|
182
|
+
<li className="flex items-start gap-3">
|
|
183
|
+
<svg className="w-5 h-5 text-primary mt-0.5 flex-shrink-0" fill="currentColor" viewBox="0 0 20 20">
|
|
169
184
|
<path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clipRule="evenodd" />
|
|
170
185
|
</svg>
|
|
171
|
-
<span>Standardizes REST API contracts</span>
|
|
186
|
+
<span className="font-medium">Standardizes REST API contracts</span>
|
|
172
187
|
</li>
|
|
173
|
-
<li className="flex items-start gap-
|
|
174
|
-
<svg className="w-5 h-5 text-
|
|
188
|
+
<li className="flex items-start gap-3">
|
|
189
|
+
<svg className="w-5 h-5 text-primary mt-0.5 flex-shrink-0" fill="currentColor" viewBox="0 0 20 20">
|
|
175
190
|
<path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clipRule="evenodd" />
|
|
176
191
|
</svg>
|
|
177
|
-
<span>Enables API interoperability</span>
|
|
192
|
+
<span className="font-medium">Enables API interoperability</span>
|
|
178
193
|
</li>
|
|
179
|
-
<li className="flex items-start gap-
|
|
180
|
-
<svg className="w-5 h-5 text-
|
|
194
|
+
<li className="flex items-start gap-3">
|
|
195
|
+
<svg className="w-5 h-5 text-primary mt-0.5 flex-shrink-0" fill="currentColor" viewBox="0 0 20 20">
|
|
181
196
|
<path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clipRule="evenodd" />
|
|
182
197
|
</svg>
|
|
183
|
-
<span>Vendor-neutral specification</span>
|
|
198
|
+
<span className="font-medium">Vendor-neutral specification</span>
|
|
184
199
|
</li>
|
|
185
|
-
<li className="flex items-start gap-
|
|
186
|
-
<svg className="w-5 h-5 text-
|
|
200
|
+
<li className="flex items-start gap-3">
|
|
201
|
+
<svg className="w-5 h-5 text-primary mt-0.5 flex-shrink-0" fill="currentColor" viewBox="0 0 20 20">
|
|
187
202
|
<path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clipRule="evenodd" />
|
|
188
203
|
</svg>
|
|
189
|
-
<span>JSON Schema validation</span>
|
|
204
|
+
<span className="font-medium">JSON Schema validation</span>
|
|
190
205
|
</li>
|
|
191
206
|
</ul>
|
|
192
|
-
</
|
|
193
|
-
<
|
|
194
|
-
<h4 className="text-xl font-
|
|
207
|
+
</Card>
|
|
208
|
+
<Card variant="default" padding="md" elevation={2} hover className="border-2 border-blue-100">
|
|
209
|
+
<h4 className="text-xl font-bold mb-5 text-secondary pb-3 border-b-2 border-cyan-100">OSSA for AI Agents</h4>
|
|
195
210
|
<ul className="space-y-3 text-gray-700">
|
|
196
|
-
<li className="flex items-start gap-
|
|
197
|
-
<svg className="w-5 h-5 text-
|
|
211
|
+
<li className="flex items-start gap-3">
|
|
212
|
+
<svg className="w-5 h-5 text-secondary mt-0.5 flex-shrink-0" fill="currentColor" viewBox="0 0 20 20">
|
|
198
213
|
<path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clipRule="evenodd" />
|
|
199
214
|
</svg>
|
|
200
|
-
<span>Standardizes AI agent contracts</span>
|
|
215
|
+
<span className="font-medium">Standardizes AI agent contracts</span>
|
|
201
216
|
</li>
|
|
202
|
-
<li className="flex items-start gap-
|
|
203
|
-
<svg className="w-5 h-5 text-
|
|
217
|
+
<li className="flex items-start gap-3">
|
|
218
|
+
<svg className="w-5 h-5 text-secondary mt-0.5 flex-shrink-0" fill="currentColor" viewBox="0 0 20 20">
|
|
204
219
|
<path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clipRule="evenodd" />
|
|
205
220
|
</svg>
|
|
206
|
-
<span>Enables agent interoperability</span>
|
|
221
|
+
<span className="font-medium">Enables agent interoperability</span>
|
|
207
222
|
</li>
|
|
208
|
-
<li className="flex items-start gap-
|
|
209
|
-
<svg className="w-5 h-5 text-
|
|
223
|
+
<li className="flex items-start gap-3">
|
|
224
|
+
<svg className="w-5 h-5 text-secondary mt-0.5 flex-shrink-0" fill="currentColor" viewBox="0 0 20 20">
|
|
210
225
|
<path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clipRule="evenodd" />
|
|
211
226
|
</svg>
|
|
212
|
-
<span>Vendor-neutral specification</span>
|
|
227
|
+
<span className="font-medium">Vendor-neutral specification</span>
|
|
213
228
|
</li>
|
|
214
|
-
<li className="flex items-start gap-
|
|
215
|
-
<svg className="w-5 h-5 text-
|
|
229
|
+
<li className="flex items-start gap-3">
|
|
230
|
+
<svg className="w-5 h-5 text-secondary mt-0.5 flex-shrink-0" fill="currentColor" viewBox="0 0 20 20">
|
|
216
231
|
<path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clipRule="evenodd" />
|
|
217
232
|
</svg>
|
|
218
|
-
<span>JSON Schema validation</span>
|
|
233
|
+
<span className="font-medium">JSON Schema validation</span>
|
|
219
234
|
</li>
|
|
220
235
|
</ul>
|
|
221
|
-
</
|
|
236
|
+
</Card>
|
|
237
|
+
<Card variant="default" padding="md" elevation={2} hover className="border-2 border-blue-100">
|
|
238
|
+
<h4 className="text-xl font-bold mb-5 text-primary pb-3 border-b-2 border-blue-100">OpenAPI Integration</h4>
|
|
239
|
+
<ul className="space-y-3 text-gray-700">
|
|
240
|
+
<li className="flex items-start gap-3">
|
|
241
|
+
<svg className="w-5 h-5 text-primary mt-0.5 flex-shrink-0" fill="currentColor" viewBox="0 0 20 20">
|
|
242
|
+
<path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clipRule="evenodd" />
|
|
243
|
+
</svg>
|
|
244
|
+
<span className="font-medium">Seamless OpenAPI compatibility</span>
|
|
245
|
+
</li>
|
|
246
|
+
<li className="flex items-start gap-3">
|
|
247
|
+
<svg className="w-5 h-5 text-primary mt-0.5 flex-shrink-0" fill="currentColor" viewBox="0 0 20 20">
|
|
248
|
+
<path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clipRule="evenodd" />
|
|
249
|
+
</svg>
|
|
250
|
+
<span className="font-medium">Import existing OpenAPI specs</span>
|
|
251
|
+
</li>
|
|
252
|
+
<li className="flex items-start gap-3">
|
|
253
|
+
<svg className="w-5 h-5 text-primary mt-0.5 flex-shrink-0" fill="currentColor" viewBox="0 0 20 20">
|
|
254
|
+
<path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clipRule="evenodd" />
|
|
255
|
+
</svg>
|
|
256
|
+
<span className="font-medium">Export agents as OpenAPI</span>
|
|
257
|
+
</li>
|
|
258
|
+
<li className="flex items-start gap-3">
|
|
259
|
+
<svg className="w-5 h-5 text-primary mt-0.5 flex-shrink-0" fill="currentColor" viewBox="0 0 20 20">
|
|
260
|
+
<path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clipRule="evenodd" />
|
|
261
|
+
</svg>
|
|
262
|
+
<span className="font-medium">Unified API and agent standards</span>
|
|
263
|
+
</li>
|
|
264
|
+
</ul>
|
|
265
|
+
</Card>
|
|
266
|
+
<Card variant="default" padding="md" elevation={2} hover className="border-2 border-blue-100">
|
|
267
|
+
<h4 className="text-xl font-bold mb-5 text-secondary pb-3 border-b-2 border-cyan-100">API-to-Agent Bridge</h4>
|
|
268
|
+
<ul className="space-y-3 text-gray-700">
|
|
269
|
+
<li className="flex items-start gap-3">
|
|
270
|
+
<svg className="w-5 h-5 text-secondary mt-0.5 flex-shrink-0" fill="currentColor" viewBox="0 0 20 20">
|
|
271
|
+
<path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clipRule="evenodd" />
|
|
272
|
+
</svg>
|
|
273
|
+
<span className="font-medium">Connect REST APIs to agents</span>
|
|
274
|
+
</li>
|
|
275
|
+
<li className="flex items-start gap-3">
|
|
276
|
+
<svg className="w-5 h-5 text-secondary mt-0.5 flex-shrink-0" fill="currentColor" viewBox="0 0 20 20">
|
|
277
|
+
<path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clipRule="evenodd" />
|
|
278
|
+
</svg>
|
|
279
|
+
<span className="font-medium">Use OpenAPI as agent tools</span>
|
|
280
|
+
</li>
|
|
281
|
+
<li className="flex items-start gap-3">
|
|
282
|
+
<svg className="w-5 h-5 text-secondary mt-0.5 flex-shrink-0" fill="currentColor" viewBox="0 0 20 20">
|
|
283
|
+
<path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clipRule="evenodd" />
|
|
284
|
+
</svg>
|
|
285
|
+
<span className="font-medium">Automatic API discovery</span>
|
|
286
|
+
</li>
|
|
287
|
+
<li className="flex items-start gap-3">
|
|
288
|
+
<svg className="w-5 h-5 text-secondary mt-0.5 flex-shrink-0" fill="currentColor" viewBox="0 0 20 20">
|
|
289
|
+
<path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clipRule="evenodd" />
|
|
290
|
+
</svg>
|
|
291
|
+
<span className="font-medium">Bidirectional integration</span>
|
|
292
|
+
</li>
|
|
293
|
+
</ul>
|
|
294
|
+
</Card>
|
|
222
295
|
</div>
|
|
223
296
|
</div>
|
|
224
297
|
</div>
|
|
225
298
|
</section>
|
|
226
299
|
|
|
300
|
+
{/* Why OSSA - The Problem Section */}
|
|
301
|
+
<section className="py-16 px-4 bg-white">
|
|
302
|
+
<div className="container mx-auto max-w-5xl">
|
|
303
|
+
<div className="text-center mb-12">
|
|
304
|
+
<h2 className="text-4xl md:text-5xl font-bold mb-4 text-gray-900">Why Does This Matter?</h2>
|
|
305
|
+
<p className="text-xl text-gray-600">Leading with portability, regulatory compliance, and vendor independence</p>
|
|
306
|
+
</div>
|
|
307
|
+
<div className="grid grid-cols-1 md:grid-cols-3 gap-6 mb-8">
|
|
308
|
+
<Card variant="default" padding="lg" elevation={1}>
|
|
309
|
+
<h3 className="text-2xl font-bold mb-3 text-gray-900">Portability: Avoid Vendor Lock-in</h3>
|
|
310
|
+
<p className="text-lg text-gray-700 leading-relaxed">
|
|
311
|
+
Switch between AI providers (OpenAI, Anthropic, Azure) without rewriting code. Define your agent once in OSSA format,
|
|
312
|
+
deploy anywhere. No more complete rewrites when changing frameworks.
|
|
313
|
+
</p>
|
|
314
|
+
</Card>
|
|
315
|
+
<Card variant="default" padding="lg" elevation={1}>
|
|
316
|
+
<h3 className="text-2xl font-bold mb-3 text-gray-900">Regulatory Compliance: Built-in Frameworks</h3>
|
|
317
|
+
<p className="text-lg text-gray-700 leading-relaxed">
|
|
318
|
+
Meet SOC2, FedRAMP, HIPAA, and GDPR requirements with standardized security models, audit trails,
|
|
319
|
+
and data boundary controls. Compliance-ready from day one.
|
|
320
|
+
</p>
|
|
321
|
+
</Card>
|
|
322
|
+
<Card variant="default" padding="lg" elevation={1}>
|
|
323
|
+
<h3 className="text-2xl font-bold mb-3 text-gray-900">Vendor Independence: True Interoperability</h3>
|
|
324
|
+
<p className="text-lg text-gray-700 leading-relaxed">
|
|
325
|
+
Community-driven standard, not controlled by any single company. Works with LangChain, CrewAI, AutoGen,
|
|
326
|
+
and any framework. Your agents, your choice.
|
|
327
|
+
</p>
|
|
328
|
+
</Card>
|
|
329
|
+
</div>
|
|
330
|
+
<Card variant="featured" padding="lg" elevation={3}>
|
|
331
|
+
<p className="text-2xl text-gray-900 font-bold mb-4">
|
|
332
|
+
OSSA solves this for AI agents.
|
|
333
|
+
</p>
|
|
334
|
+
<p className="text-xl text-gray-700">
|
|
335
|
+
<strong>One standard. Any framework. True portability.</strong> Define your agent once in OSSA format,
|
|
336
|
+
then deploy it with LangChain, CrewAI, Anthropic, OpenAI, or any other framework. Just like OpenAPI
|
|
337
|
+
unified REST APIs, OSSA unifies AI agents.
|
|
338
|
+
</p>
|
|
339
|
+
</Card>
|
|
340
|
+
</div>
|
|
341
|
+
</section>
|
|
342
|
+
|
|
227
343
|
{/* Quick Start Section */}
|
|
228
344
|
<section id="get-started" className="py-20 px-4 bg-gray-50 scroll-mt-20">
|
|
229
|
-
<div className="container mx-auto max-w-
|
|
345
|
+
<div className="container mx-auto max-w-[1440px]">
|
|
230
346
|
<div className="text-center mb-12">
|
|
231
|
-
<
|
|
347
|
+
<div className="flex items-center justify-center mb-6">
|
|
348
|
+
<div className="w-12 h-12 bg-gradient-to-br from-secondary via-primary to-accent rounded-lg flex items-center justify-center mr-4">
|
|
349
|
+
<svg className="w-6 h-6 text-white" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
350
|
+
<path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M13 10V3L4 14h7v7l9-11h-7z" />
|
|
351
|
+
</svg>
|
|
352
|
+
</div>
|
|
353
|
+
<h2 className="text-5xl font-bold text-primary">Get Started in Minutes</h2>
|
|
354
|
+
</div>
|
|
232
355
|
<p className="text-xl text-gray-600 max-w-3xl mx-auto">
|
|
233
356
|
Install the CLI, create your first agent, and start building with Open Standard Agents.
|
|
234
357
|
</p>
|
|
235
358
|
</div>
|
|
236
|
-
|
|
359
|
+
|
|
237
360
|
<div className="grid md:grid-cols-2 gap-8 max-w-5xl mx-auto mb-12">
|
|
238
|
-
<
|
|
239
|
-
<
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
361
|
+
<Card variant="default" padding="lg" elevation={2}>
|
|
362
|
+
<CardHeader>
|
|
363
|
+
<CardTitle className="text-primary">1. Install CLI</CardTitle>
|
|
364
|
+
</CardHeader>
|
|
365
|
+
<CardContent>
|
|
366
|
+
<div className="bg-code-bg rounded-lg p-3 sm:p-4 overflow-x-auto">
|
|
367
|
+
<pre className="text-code-text text-xs sm:text-sm whitespace-pre-wrap break-all sm:break-normal sm:whitespace-pre">
|
|
368
|
+
<code>npm install -g @bluefly/openstandardagents</code>
|
|
369
|
+
</pre>
|
|
370
|
+
</div>
|
|
371
|
+
</CardContent>
|
|
372
|
+
</Card>
|
|
373
|
+
<Card variant="default" padding="lg" elevation={2}>
|
|
374
|
+
<CardHeader>
|
|
375
|
+
<CardTitle className="text-primary">2. Create Agent</CardTitle>
|
|
376
|
+
</CardHeader>
|
|
377
|
+
<CardContent>
|
|
378
|
+
<div className="bg-code-bg rounded-lg p-3 sm:p-4 overflow-x-auto">
|
|
379
|
+
<pre className="text-code-text text-xs sm:text-sm whitespace-pre-wrap break-all sm:break-normal sm:whitespace-pre">
|
|
380
|
+
<code>{`osa init my-agent
|
|
251
381
|
cd my-agent`}</code>
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
<
|
|
258
|
-
<
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
382
|
+
</pre>
|
|
383
|
+
</div>
|
|
384
|
+
</CardContent>
|
|
385
|
+
</Card>
|
|
386
|
+
<Card variant="default" padding="lg" elevation={2}>
|
|
387
|
+
<CardHeader>
|
|
388
|
+
<CardTitle className="text-primary">3. Validate</CardTitle>
|
|
389
|
+
</CardHeader>
|
|
390
|
+
<CardContent>
|
|
391
|
+
<div className="bg-code-bg rounded-lg p-3 sm:p-4 overflow-x-auto">
|
|
392
|
+
<pre className="text-code-text text-xs sm:text-sm whitespace-pre-wrap break-all sm:break-normal sm:whitespace-pre">
|
|
393
|
+
<code>osa validate my-agent.ossa.yaml</code>
|
|
394
|
+
</pre>
|
|
395
|
+
</div>
|
|
396
|
+
</CardContent>
|
|
397
|
+
</Card>
|
|
398
|
+
<Card variant="default" padding="lg" elevation={2}>
|
|
399
|
+
<CardHeader>
|
|
400
|
+
<CardTitle className="text-primary">4. Export</CardTitle>
|
|
401
|
+
</CardHeader>
|
|
402
|
+
<CardContent>
|
|
403
|
+
<div className="bg-code-bg rounded-lg p-3 sm:p-4 overflow-x-auto">
|
|
404
|
+
<pre className="text-code-text text-xs sm:text-sm whitespace-pre-wrap break-all sm:break-normal sm:whitespace-pre">
|
|
405
|
+
<code>{`osa export --to cursor
|
|
268
406
|
osa export --to langchain`}</code>
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
407
|
+
</pre>
|
|
408
|
+
</div>
|
|
409
|
+
</CardContent>
|
|
410
|
+
</Card>
|
|
272
411
|
</div>
|
|
273
|
-
|
|
412
|
+
|
|
274
413
|
<div className="text-center">
|
|
275
|
-
<Link href="/docs/getting-started/5-minute-overview" className="btn-primary text-lg px-8 py-4">
|
|
414
|
+
<Link href="/docs/getting-started/5-minute-overview/" className="btn-primary text-lg px-8 py-4">
|
|
276
415
|
Read Full Getting Started Guide
|
|
277
416
|
</Link>
|
|
278
417
|
</div>
|
|
279
418
|
</div>
|
|
280
419
|
</section>
|
|
281
420
|
|
|
421
|
+
{/* Comparison Matrix Section */}
|
|
422
|
+
<section className="py-20 px-4 bg-gradient-to-br from-gray-50 to-blue-50">
|
|
423
|
+
<div className="container mx-auto max-w-[1440px]">
|
|
424
|
+
<div className="text-center mb-12">
|
|
425
|
+
<h2 className="text-4xl md:text-5xl font-bold mb-4">How OSSA Compares</h2>
|
|
426
|
+
<p className="text-xl text-gray-600 max-w-3xl mx-auto">
|
|
427
|
+
OSSA is a specification standard, not a framework. See how it enables true interoperability.
|
|
428
|
+
</p>
|
|
429
|
+
</div>
|
|
430
|
+
|
|
431
|
+
{/* Desktop Table */}
|
|
432
|
+
<div className="hidden lg:block overflow-x-auto">
|
|
433
|
+
<table className="w-full bg-white rounded-lg shadow-lg overflow-hidden">
|
|
434
|
+
<thead className="bg-gradient-to-r from-primary to-secondary text-white">
|
|
435
|
+
<tr>
|
|
436
|
+
<th className="px-6 py-4 text-left font-bold">Feature</th>
|
|
437
|
+
<th className="px-6 py-4 text-center font-bold">OSSA</th>
|
|
438
|
+
<th className="px-6 py-4 text-center font-bold">LangChain</th>
|
|
439
|
+
<th className="px-6 py-4 text-center font-bold">AutoGen</th>
|
|
440
|
+
<th className="px-6 py-4 text-center font-bold">MCP</th>
|
|
441
|
+
<th className="px-6 py-4 text-center font-bold">Semantic Kernel</th>
|
|
442
|
+
</tr>
|
|
443
|
+
</thead>
|
|
444
|
+
<tbody className="divide-y divide-gray-200">
|
|
445
|
+
<tr className="hover:bg-gray-50">
|
|
446
|
+
<td className="px-6 py-4 font-medium text-gray-900">Vendor Neutral<br/><span className="text-sm font-normal text-gray-600">Not controlled by any single company</span></td>
|
|
447
|
+
<td className="px-6 py-4 text-center"><svg className="w-6 h-6 mx-auto text-green-600" fill="currentColor" viewBox="0 0 20 20"><path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clipRule="evenodd" /></svg></td>
|
|
448
|
+
<td className="px-6 py-4 text-center"><svg className="w-6 h-6 mx-auto text-red-600" fill="currentColor" viewBox="0 0 20 20"><path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z" clipRule="evenodd" /></svg></td>
|
|
449
|
+
<td className="px-6 py-4 text-center"><svg className="w-6 h-6 mx-auto text-red-600" fill="currentColor" viewBox="0 0 20 20"><path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z" clipRule="evenodd" /></svg></td>
|
|
450
|
+
<td className="px-6 py-4 text-center"><svg className="w-6 h-6 mx-auto text-red-600" fill="currentColor" viewBox="0 0 20 20"><path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z" clipRule="evenodd" /></svg></td>
|
|
451
|
+
<td className="px-6 py-4 text-center"><svg className="w-6 h-6 mx-auto text-red-600" fill="currentColor" viewBox="0 0 20 20"><path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z" clipRule="evenodd" /></svg></td>
|
|
452
|
+
</tr>
|
|
453
|
+
<tr className="hover:bg-gray-50 bg-blue-50">
|
|
454
|
+
<td className="px-6 py-4 font-medium text-gray-900">Formal Standard<br/><span className="text-sm font-normal text-gray-600">JSON Schema validated specification</span></td>
|
|
455
|
+
<td className="px-6 py-4 text-center"><svg className="w-6 h-6 mx-auto text-green-600" fill="currentColor" viewBox="0 0 20 20"><path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clipRule="evenodd" /></svg></td>
|
|
456
|
+
<td className="px-6 py-4 text-center"><svg className="w-6 h-6 mx-auto text-red-600" fill="currentColor" viewBox="0 0 20 20"><path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z" clipRule="evenodd" /></svg></td>
|
|
457
|
+
<td className="px-6 py-4 text-center"><svg className="w-6 h-6 mx-auto text-red-600" fill="currentColor" viewBox="0 0 20 20"><path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z" clipRule="evenodd" /></svg></td>
|
|
458
|
+
<td className="px-6 py-4 text-center"><svg className="w-6 h-6 mx-auto text-green-600" fill="currentColor" viewBox="0 0 20 20"><path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clipRule="evenodd" /></svg></td>
|
|
459
|
+
<td className="px-6 py-4 text-center"><svg className="w-6 h-6 mx-auto text-red-600" fill="currentColor" viewBox="0 0 20 20"><path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z" clipRule="evenodd" /></svg></td>
|
|
460
|
+
</tr>
|
|
461
|
+
<tr className="hover:bg-gray-50">
|
|
462
|
+
<td className="px-6 py-4 font-medium text-gray-900">Multi-runtime<br/><span className="text-sm font-normal text-gray-600">Works across Node.js, Python, and more</span></td>
|
|
463
|
+
<td className="px-6 py-4 text-center"><svg className="w-6 h-6 mx-auto text-green-600" fill="currentColor" viewBox="0 0 20 20"><path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clipRule="evenodd" /></svg></td>
|
|
464
|
+
<td className="px-6 py-4 text-center"><svg className="w-6 h-6 mx-auto text-red-600" fill="currentColor" viewBox="0 0 20 20"><path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z" clipRule="evenodd" /></svg></td>
|
|
465
|
+
<td className="px-6 py-4 text-center"><svg className="w-6 h-6 mx-auto text-red-600" fill="currentColor" viewBox="0 0 20 20"><path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z" clipRule="evenodd" /></svg></td>
|
|
466
|
+
<td className="px-6 py-4 text-center"><svg className="w-6 h-6 mx-auto text-green-600" fill="currentColor" viewBox="0 0 20 20"><path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clipRule="evenodd" /></svg></td>
|
|
467
|
+
<td className="px-6 py-4 text-center"><svg className="w-6 h-6 mx-auto text-red-600" fill="currentColor" viewBox="0 0 20 20"><path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z" clipRule="evenodd" /></svg></td>
|
|
468
|
+
</tr>
|
|
469
|
+
<tr className="hover:bg-gray-50 bg-blue-50">
|
|
470
|
+
<td className="px-6 py-4 font-medium text-gray-900">Enterprise Governance<br/><span className="text-sm font-normal text-gray-600">Built-in audit trails and policy controls</span></td>
|
|
471
|
+
<td className="px-6 py-4 text-center"><svg className="w-6 h-6 mx-auto text-green-600" fill="currentColor" viewBox="0 0 20 20"><path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clipRule="evenodd" /></svg></td>
|
|
472
|
+
<td className="px-6 py-4 text-center"><svg className="w-6 h-6 mx-auto text-red-600" fill="currentColor" viewBox="0 0 20 20"><path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z" clipRule="evenodd" /></svg></td>
|
|
473
|
+
<td className="px-6 py-4 text-center"><svg className="w-6 h-6 mx-auto text-red-600" fill="currentColor" viewBox="0 0 20 20"><path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z" clipRule="evenodd" /></svg></td>
|
|
474
|
+
<td className="px-6 py-4 text-center"><svg className="w-6 h-6 mx-auto text-red-600" fill="currentColor" viewBox="0 0 20 20"><path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z" clipRule="evenodd" /></svg></td>
|
|
475
|
+
<td className="px-6 py-4 text-center"><svg className="w-6 h-6 mx-auto text-red-600" fill="currentColor" viewBox="0 0 20 20"><path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z" clipRule="evenodd" /></svg></td>
|
|
476
|
+
</tr>
|
|
477
|
+
<tr className="hover:bg-gray-50">
|
|
478
|
+
<td className="px-6 py-4 font-medium text-gray-900">Compliance Ready<br/><span className="text-sm font-normal text-gray-600">SOC2, FedRAMP, HIPAA, GDPR frameworks</span></td>
|
|
479
|
+
<td className="px-6 py-4 text-center"><svg className="w-6 h-6 mx-auto text-green-600" fill="currentColor" viewBox="0 0 20 20"><path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clipRule="evenodd" /></svg></td>
|
|
480
|
+
<td className="px-6 py-4 text-center"><svg className="w-6 h-6 mx-auto text-red-600" fill="currentColor" viewBox="0 0 20 20"><path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z" clipRule="evenodd" /></svg></td>
|
|
481
|
+
<td className="px-6 py-4 text-center"><svg className="w-6 h-6 mx-auto text-red-600" fill="currentColor" viewBox="0 0 20 20"><path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z" clipRule="evenodd" /></svg></td>
|
|
482
|
+
<td className="px-6 py-4 text-center"><svg className="w-6 h-6 mx-auto text-red-600" fill="currentColor" viewBox="0 0 20 20"><path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z" clipRule="evenodd" /></svg></td>
|
|
483
|
+
<td className="px-6 py-4 text-center"><svg className="w-6 h-6 mx-auto text-red-600" fill="currentColor" viewBox="0 0 20 20"><path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z" clipRule="evenodd" /></svg></td>
|
|
484
|
+
</tr>
|
|
485
|
+
<tr className="hover:bg-gray-50 bg-blue-50">
|
|
486
|
+
<td className="px-6 py-4 font-medium text-gray-900">Open Source<br/><span className="text-sm font-normal text-gray-600">Community-driven development</span></td>
|
|
487
|
+
<td className="px-6 py-4 text-center"><svg className="w-6 h-6 mx-auto text-green-600" fill="currentColor" viewBox="0 0 20 20"><path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clipRule="evenodd" /></svg></td>
|
|
488
|
+
<td className="px-6 py-4 text-center"><svg className="w-6 h-6 mx-auto text-green-600" fill="currentColor" viewBox="0 0 20 20"><path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clipRule="evenodd" /></svg></td>
|
|
489
|
+
<td className="px-6 py-4 text-center"><svg className="w-6 h-6 mx-auto text-green-600" fill="currentColor" viewBox="0 0 20 20"><path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clipRule="evenodd" /></svg></td>
|
|
490
|
+
<td className="px-6 py-4 text-center"><svg className="w-6 h-6 mx-auto text-green-600" fill="currentColor" viewBox="0 0 20 20"><path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clipRule="evenodd" /></svg></td>
|
|
491
|
+
<td className="px-6 py-4 text-center"><svg className="w-6 h-6 mx-auto text-green-600" fill="currentColor" viewBox="0 0 20 20"><path fillRule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clipRule="evenodd" /></svg></td>
|
|
492
|
+
</tr>
|
|
493
|
+
</tbody>
|
|
494
|
+
</table>
|
|
495
|
+
</div>
|
|
496
|
+
|
|
497
|
+
{/* Mobile Cards */}
|
|
498
|
+
<div className="lg:hidden space-y-4">
|
|
499
|
+
<Card variant="featured" padding="lg" elevation={2}>
|
|
500
|
+
<h3 className="text-xl font-bold mb-4 text-primary">OSSA</h3>
|
|
501
|
+
<div className="space-y-2 text-sm">
|
|
502
|
+
<div className="flex justify-between"><span>Vendor Neutral</span><span className="text-xl">✅</span></div>
|
|
503
|
+
<div className="flex justify-between"><span>Formal Standard</span><span className="text-xl">✅</span></div>
|
|
504
|
+
<div className="flex justify-between"><span>Multi-runtime</span><span className="text-xl">✅</span></div>
|
|
505
|
+
<div className="flex justify-between"><span>Enterprise Governance</span><span className="text-xl">✅</span></div>
|
|
506
|
+
<div className="flex justify-between"><span>Compliance Ready</span><span className="text-xl">✅</span></div>
|
|
507
|
+
<div className="flex justify-between"><span>Open Source</span><span className="text-xl">✅</span></div>
|
|
508
|
+
</div>
|
|
509
|
+
</Card>
|
|
510
|
+
<Card variant="default" padding="md" elevation={1}>
|
|
511
|
+
<h3 className="text-lg font-bold mb-3">LangChain / AutoGen / Semantic Kernel</h3>
|
|
512
|
+
<p className="text-sm text-gray-600">Framework-specific implementations. Open source but vendor-controlled.</p>
|
|
513
|
+
</Card>
|
|
514
|
+
<Card variant="default" padding="md" elevation={1}>
|
|
515
|
+
<h3 className="text-lg font-bold mb-3">MCP (Model Context Protocol)</h3>
|
|
516
|
+
<p className="text-sm text-gray-600">Formal standard with multi-runtime support. Focused on context, not full agent lifecycle.</p>
|
|
517
|
+
</Card>
|
|
518
|
+
</div>
|
|
519
|
+
</div>
|
|
520
|
+
</section>
|
|
521
|
+
|
|
282
522
|
{/* Integrations & Adoption Section */}
|
|
283
523
|
<section className="py-16 px-4 bg-gray-50">
|
|
284
|
-
<div className="container mx-auto max-w-
|
|
524
|
+
<div className="container mx-auto max-w-[1440px]">
|
|
285
525
|
<div className="text-center mb-12">
|
|
286
526
|
<h2 className="text-4xl font-bold mb-4">Works With Your Favorite Tools</h2>
|
|
287
527
|
<p className="text-xl text-gray-600 max-w-3xl mx-auto">
|
|
@@ -290,19 +530,29 @@ osa export --to langchain`}</code>
|
|
|
290
530
|
</p>
|
|
291
531
|
</div>
|
|
292
532
|
|
|
293
|
-
{/* Logos Grid */}
|
|
294
|
-
<div className="grid grid-cols-2 md:grid-cols-4 lg:grid-cols-6 gap-8 items-center justify-items-center mb-
|
|
533
|
+
{/* Logos Grid - Row 1 */}
|
|
534
|
+
<div className="grid grid-cols-2 md:grid-cols-4 lg:grid-cols-6 gap-8 items-center justify-items-center mb-8">
|
|
295
535
|
<Logo domain="openai.com" name="OpenAI" />
|
|
296
536
|
<Logo domain="anthropic.com" name="Anthropic" />
|
|
297
|
-
<Logo domain="google
|
|
537
|
+
<Logo domain="deepmind.google" name="Gemini" />
|
|
298
538
|
<Logo domain="microsoft.com" name="Microsoft" />
|
|
299
539
|
<Logo domain="langchain.com" name="LangChain" />
|
|
300
540
|
<Logo domain="huggingface.co" name="Hugging Face" />
|
|
301
|
-
|
|
541
|
+
</div>
|
|
542
|
+
|
|
543
|
+
{/* Logos Grid - Row 2 */}
|
|
544
|
+
<div className="grid grid-cols-2 md:grid-cols-4 lg:grid-cols-6 gap-8 items-center justify-items-center mb-12">
|
|
545
|
+
<Logo domain="kagent.dev" name="kAgent" />
|
|
546
|
+
<Logo domain="crewai.com" name="CrewAI" />
|
|
547
|
+
<Logo domain="langflow.com" name="Langflow" />
|
|
548
|
+
<Logo domain="llamaindex.ai" name="LlamaIndex" />
|
|
549
|
+
<Logo domain="langchain.com" name="LangGraph" />
|
|
550
|
+
<Logo domain="modelcontextprotocol.io" name="MCP" />
|
|
551
|
+
<Logo domain="drupal.org" name="Drupal" />
|
|
552
|
+
<Logo domain="librechat.com" name="LibreChat" />
|
|
302
553
|
<Logo domain="docker.com" name="Docker" />
|
|
303
554
|
<Logo domain="kubernetes.io" name="Kubernetes" />
|
|
304
555
|
<Logo domain="aws.amazon.com" name="AWS" />
|
|
305
|
-
<Logo domain="cursor.sh" name="Cursor" />
|
|
306
556
|
<Logo domain="github.com" name="GitHub" />
|
|
307
557
|
</div>
|
|
308
558
|
|
|
@@ -310,7 +560,7 @@ osa export --to langchain`}</code>
|
|
|
310
560
|
<p className="text-lg text-gray-600 mb-6">
|
|
311
561
|
And many more frameworks, platforms, and tools...
|
|
312
562
|
</p>
|
|
313
|
-
<Link href="/docs/ecosystem/framework-support" className="btn-primary">
|
|
563
|
+
<Link href="/docs/ecosystem/framework-support/" className="btn-primary">
|
|
314
564
|
View All Integrations
|
|
315
565
|
</Link>
|
|
316
566
|
</div>
|
|
@@ -319,7 +569,7 @@ osa export --to langchain`}</code>
|
|
|
319
569
|
|
|
320
570
|
{/* Features Section */}
|
|
321
571
|
<section className="py-20 px-4 bg-white">
|
|
322
|
-
<div className="container mx-auto max-w-
|
|
572
|
+
<div className="container mx-auto max-w-[1440px]">
|
|
323
573
|
<div className="text-center mb-16">
|
|
324
574
|
<h2 className="text-5xl font-bold mb-6">Why Open Standard Agents?</h2>
|
|
325
575
|
<p className="text-xl text-gray-600 max-w-3xl mx-auto">
|
|
@@ -327,61 +577,89 @@ osa export --to langchain`}</code>
|
|
|
327
577
|
frameworks, teams, and infrastructures.
|
|
328
578
|
</p>
|
|
329
579
|
</div>
|
|
330
|
-
|
|
580
|
+
|
|
331
581
|
<div className="grid md:grid-cols-2 lg:grid-cols-4 gap-8">
|
|
332
|
-
<
|
|
333
|
-
<
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
<
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
<
|
|
355
|
-
|
|
356
|
-
</
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
<
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
<
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
582
|
+
<Card variant="default" padding="md" elevation={1} hover className="text-center">
|
|
583
|
+
<CardHeader>
|
|
584
|
+
<CardTitle className="text-xl">Framework-Agnostic</CardTitle>
|
|
585
|
+
</CardHeader>
|
|
586
|
+
<CardContent>
|
|
587
|
+
<p className="text-gray-700">
|
|
588
|
+
Works with LangChain, Anthropic, OpenAI, CrewAI, Langflow, AutoGen, and more.
|
|
589
|
+
No vendor lock-in.
|
|
590
|
+
</p>
|
|
591
|
+
</CardContent>
|
|
592
|
+
</Card>
|
|
593
|
+
<Card variant="default" padding="md" elevation={1} hover className="text-center">
|
|
594
|
+
<CardHeader>
|
|
595
|
+
<CardTitle className="text-xl">Portable</CardTitle>
|
|
596
|
+
</CardHeader>
|
|
597
|
+
<CardContent>
|
|
598
|
+
<p className="text-gray-700">
|
|
599
|
+
Move agents between teams, organizations, and infrastructures without rewriting code.
|
|
600
|
+
</p>
|
|
601
|
+
</CardContent>
|
|
602
|
+
</Card>
|
|
603
|
+
<Card variant="default" padding="md" elevation={1} hover className="text-center">
|
|
604
|
+
<CardHeader>
|
|
605
|
+
<CardTitle className="text-xl">Validatable</CardTitle>
|
|
606
|
+
</CardHeader>
|
|
607
|
+
<CardContent>
|
|
608
|
+
<p className="text-gray-700">
|
|
609
|
+
JSON Schema validation ensures correctness before deployment. Catch errors early.
|
|
610
|
+
</p>
|
|
611
|
+
</CardContent>
|
|
612
|
+
</Card>
|
|
613
|
+
<Card variant="default" padding="md" elevation={1} hover className="text-center">
|
|
614
|
+
<CardHeader>
|
|
615
|
+
<CardTitle className="text-xl">Well-Documented</CardTitle>
|
|
616
|
+
</CardHeader>
|
|
617
|
+
<CardContent>
|
|
618
|
+
<p className="text-gray-700">
|
|
619
|
+
Comprehensive documentation, examples, and tooling. Built for developers, by developers.
|
|
620
|
+
</p>
|
|
621
|
+
</CardContent>
|
|
622
|
+
</Card>
|
|
623
|
+
<Card variant="default" padding="md" elevation={1} hover className="text-center">
|
|
624
|
+
<CardHeader>
|
|
625
|
+
<CardTitle className="text-xl">Open Source</CardTitle>
|
|
626
|
+
</CardHeader>
|
|
627
|
+
<CardContent>
|
|
628
|
+
<p className="text-gray-700">
|
|
629
|
+
Apache 2.0 licensed. Community-driven. Transparent development process.
|
|
630
|
+
</p>
|
|
631
|
+
</CardContent>
|
|
632
|
+
</Card>
|
|
633
|
+
<Card variant="default" padding="md" elevation={1} hover className="text-center">
|
|
634
|
+
<CardHeader>
|
|
635
|
+
<CardTitle className="text-xl">Fast Integration</CardTitle>
|
|
636
|
+
</CardHeader>
|
|
637
|
+
<CardContent>
|
|
638
|
+
<p className="text-gray-700">
|
|
639
|
+
Export to any framework format. Import existing agents. Seamless migration paths.
|
|
640
|
+
</p>
|
|
641
|
+
</CardContent>
|
|
642
|
+
</Card>
|
|
643
|
+
<Card variant="default" padding="md" elevation={1} hover className="text-center">
|
|
644
|
+
<CardHeader>
|
|
645
|
+
<CardTitle className="text-xl">Secure by Design</CardTitle>
|
|
646
|
+
</CardHeader>
|
|
647
|
+
<CardContent>
|
|
648
|
+
<p className="text-gray-700">
|
|
649
|
+
Built-in security patterns, authentication, and compliance features.
|
|
650
|
+
</p>
|
|
651
|
+
</CardContent>
|
|
652
|
+
</Card>
|
|
653
|
+
<Card variant="default" padding="md" elevation={1} hover className="text-center">
|
|
654
|
+
<CardHeader>
|
|
655
|
+
<CardTitle className="text-xl">Observable</CardTitle>
|
|
656
|
+
</CardHeader>
|
|
657
|
+
<CardContent>
|
|
658
|
+
<p className="text-gray-700">
|
|
659
|
+
Built-in observability, logging, and monitoring. Track agent performance and behavior.
|
|
660
|
+
</p>
|
|
661
|
+
</CardContent>
|
|
662
|
+
</Card>
|
|
385
663
|
</div>
|
|
386
664
|
</div>
|
|
387
665
|
</section>
|
|
@@ -394,7 +672,7 @@ osa export --to langchain`}</code>
|
|
|
394
672
|
Join the community and start building with Open Standard Agents today.
|
|
395
673
|
</p>
|
|
396
674
|
<div className="flex flex-col sm:flex-row gap-4 justify-center">
|
|
397
|
-
<Link href="/examples" className="btn-secondary
|
|
675
|
+
<Link href="/examples/" className="btn-secondary">
|
|
398
676
|
View Examples
|
|
399
677
|
</Link>
|
|
400
678
|
<Link href="https://github.com/blueflyio/openstandardagents/issues" className="btn-outline border-white text-white hover:bg-white hover:text-primary" target="_blank" rel="noopener noreferrer">
|
|
@@ -406,4 +684,3 @@ osa export --to langchain`}</code>
|
|
|
406
684
|
</div>
|
|
407
685
|
);
|
|
408
686
|
}
|
|
409
|
-
|