@bluefly/openstandardagents 0.1.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.buildkit/agent-first-policy.sh +65 -0
- package/.buildkit/branching-workflow.json +41 -0
- package/.buildkit/hooks.yaml +23 -0
- package/.buildkit/install-buildkit-setup.cjs +483 -0
- package/.cursor/plans/ossa-comprehensive-enhancement-issue-audit-plan.plan.md +735 -0
- package/.cursor/plans/ossa-enterprise-transformation-plan-0ccaf09b.plan.md +373 -0
- package/.cursor/plans/ossa-milestone-organization-and-v0-2-4-release-6dafa4ec.plan.md +214 -0
- package/.cursor/rules/problems.json +483 -0
- package/.cursor/settings.json +29 -0
- package/.cursor/worktrees.json +95 -0
- package/.env.example +41 -0
- package/.env.local +31 -0
- package/.github/ISSUE_TEMPLATE/README.md +33 -0
- package/.github/ISSUE_TEMPLATE/bug_report.md +61 -0
- package/.github/ISSUE_TEMPLATE/config.yml +12 -0
- package/.github/ISSUE_TEMPLATE/feature_request.md +75 -0
- package/.github/wiki_templates/home.md +39 -0
- package/.gitignore.bak +489 -0
- package/.gitlab-ci-trigger +1 -0
- package/.husky/pre-commit +31 -0
- package/.lintstagedrc.json +16 -0
- package/.redocly.yaml +63 -0
- package/.vscode/extensions.json +6 -0
- package/.vscode/settings.json +3 -0
- package/AUDIT_FIXES.md +139 -0
- package/AUDIT_REPORT.md +308 -0
- package/BUILDKIT_INTEGRATION.md +146 -0
- package/Dockerfile +35 -0
- package/README.md +559 -0
- package/dist/adk/adapters/index.d.ts +64 -0
- package/dist/adk/adapters/index.d.ts.map +1 -0
- package/dist/adk/adapters/index.js +257 -0
- package/dist/adk/adapters/index.js.map +1 -0
- package/dist/adk/agents/custom-agent.d.ts +55 -0
- package/dist/adk/agents/custom-agent.d.ts.map +1 -0
- package/dist/adk/agents/custom-agent.js +167 -0
- package/dist/adk/agents/custom-agent.js.map +1 -0
- package/dist/adk/agents/index.d.ts +64 -0
- package/dist/adk/agents/index.d.ts.map +1 -0
- package/dist/adk/agents/index.js +125 -0
- package/dist/adk/agents/index.js.map +1 -0
- package/dist/adk/agents/llm-agent.d.ts +27 -0
- package/dist/adk/agents/llm-agent.d.ts.map +1 -0
- package/dist/adk/agents/llm-agent.js +63 -0
- package/dist/adk/agents/llm-agent.js.map +1 -0
- package/dist/adk/agents/workflow-agent.d.ts +42 -0
- package/dist/adk/agents/workflow-agent.d.ts.map +1 -0
- package/dist/adk/agents/workflow-agent.js +144 -0
- package/dist/adk/agents/workflow-agent.js.map +1 -0
- package/dist/adk/index.d.ts +10 -0
- package/dist/adk/index.d.ts.map +1 -0
- package/dist/adk/index.js +10 -0
- package/dist/adk/index.js.map +1 -0
- package/dist/adk/orchestration/index.d.ts +63 -0
- package/dist/adk/orchestration/index.d.ts.map +1 -0
- package/dist/adk/orchestration/index.js +264 -0
- package/dist/adk/orchestration/index.js.map +1 -0
- package/dist/adk/state/index.d.ts +73 -0
- package/dist/adk/state/index.d.ts.map +1 -0
- package/dist/adk/state/index.js +177 -0
- package/dist/adk/state/index.js.map +1 -0
- package/dist/adk/tools/index.d.ts +65 -0
- package/dist/adk/tools/index.d.ts.map +1 -0
- package/dist/adk/tools/index.js +252 -0
- package/dist/adk/tools/index.js.map +1 -0
- package/dist/cli/agent-deployment.d.ts +34 -0
- package/dist/cli/agent-deployment.d.ts.map +1 -0
- package/dist/cli/agent-deployment.js +396 -0
- package/dist/cli/agent-deployment.js.map +1 -0
- package/dist/cli/commands/discover.command.d.ts +7 -0
- package/dist/cli/commands/discover.command.d.ts.map +1 -0
- package/dist/cli/commands/discover.command.js +80 -0
- package/dist/cli/commands/discover.command.js.map +1 -0
- package/dist/cli/commands/export.command.d.ts +7 -0
- package/dist/cli/commands/export.command.d.ts.map +1 -0
- package/dist/cli/commands/export.command.js +56 -0
- package/dist/cli/commands/export.command.js.map +1 -0
- package/dist/cli/commands/generate.command.d.ts +7 -0
- package/dist/cli/commands/generate.command.d.ts.map +1 -0
- package/dist/cli/commands/generate.command.js +66 -0
- package/dist/cli/commands/generate.command.js.map +1 -0
- package/dist/cli/commands/gitlab-agent.command.d.ts +8 -0
- package/dist/cli/commands/gitlab-agent.command.d.ts.map +1 -0
- package/dist/cli/commands/gitlab-agent.command.js +201 -0
- package/dist/cli/commands/gitlab-agent.command.js.map +1 -0
- package/dist/cli/commands/import.command.d.ts +7 -0
- package/dist/cli/commands/import.command.d.ts.map +1 -0
- package/dist/cli/commands/import.command.js +36 -0
- package/dist/cli/commands/import.command.js.map +1 -0
- package/dist/cli/commands/init.command.d.ts +7 -0
- package/dist/cli/commands/init.command.d.ts.map +1 -0
- package/dist/cli/commands/init.command.js +146 -0
- package/dist/cli/commands/init.command.js.map +1 -0
- package/dist/cli/commands/migrate.command.d.ts +7 -0
- package/dist/cli/commands/migrate.command.d.ts.map +1 -0
- package/dist/cli/commands/migrate.command.js +110 -0
- package/dist/cli/commands/migrate.command.js.map +1 -0
- package/dist/cli/commands/ossa.d.ts +9 -0
- package/dist/cli/commands/ossa.d.ts.map +1 -0
- package/dist/cli/commands/ossa.js +234 -0
- package/dist/cli/commands/ossa.js.map +1 -0
- package/dist/cli/commands/run.command.d.ts +7 -0
- package/dist/cli/commands/run.command.d.ts.map +1 -0
- package/dist/cli/commands/run.command.js +114 -0
- package/dist/cli/commands/run.command.js.map +1 -0
- package/dist/cli/commands/schema.command.d.ts +7 -0
- package/dist/cli/commands/schema.command.d.ts.map +1 -0
- package/dist/cli/commands/schema.command.js +72 -0
- package/dist/cli/commands/schema.command.js.map +1 -0
- package/dist/cli/commands/validate.command.d.ts +7 -0
- package/dist/cli/commands/validate.command.d.ts.map +1 -0
- package/dist/cli/commands/validate.command.js +125 -0
- package/dist/cli/commands/validate.command.js.map +1 -0
- package/dist/cli/commands/worktree.d.ts +7 -0
- package/dist/cli/commands/worktree.d.ts.map +1 -0
- package/dist/cli/commands/worktree.js +509 -0
- package/dist/cli/commands/worktree.js.map +1 -0
- package/dist/cli/index.d.ts +7 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +50 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/ossa-cli.d.ts +52 -0
- package/dist/cli/ossa-cli.d.ts.map +1 -0
- package/dist/cli/ossa-cli.js +1061 -0
- package/dist/cli/ossa-cli.js.map +1 -0
- package/dist/core/index.d.ts +31 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +37 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/mcp-server-implementation.d.ts +39 -0
- package/dist/core/mcp-server-implementation.d.ts.map +1 -0
- package/dist/core/mcp-server-implementation.js +1262 -0
- package/dist/core/mcp-server-implementation.js.map +1 -0
- package/dist/core/orchestrator/index.d.ts +156 -0
- package/dist/core/orchestrator/index.d.ts.map +1 -0
- package/dist/core/orchestrator/index.js +446 -0
- package/dist/core/orchestrator/index.js.map +1 -0
- package/dist/core/orchestrator/ossa-orchestrator.d.ts +106 -0
- package/dist/core/orchestrator/ossa-orchestrator.d.ts.map +1 -0
- package/dist/core/orchestrator/ossa-orchestrator.js +396 -0
- package/dist/core/orchestrator/ossa-orchestrator.js.map +1 -0
- package/dist/di-container.d.ts +18 -0
- package/dist/di-container.d.ts.map +1 -0
- package/dist/di-container.js +46 -0
- package/dist/di-container.js.map +1 -0
- package/dist/index.d.ts +31 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +37 -0
- package/dist/index.js.map +1 -0
- package/dist/protocols/acap.d.ts +61 -0
- package/dist/protocols/acap.d.ts.map +1 -0
- package/dist/protocols/acap.js +92 -0
- package/dist/protocols/acap.js.map +1 -0
- package/dist/protocols/index.d.ts +8 -0
- package/dist/protocols/index.d.ts.map +1 -0
- package/dist/protocols/index.js +8 -0
- package/dist/protocols/index.js.map +1 -0
- package/dist/protocols/rasp.d.ts +58 -0
- package/dist/protocols/rasp.d.ts.map +1 -0
- package/dist/protocols/rasp.js +212 -0
- package/dist/protocols/rasp.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 +144 -0
- package/dist/repositories/schema.repository.js.map +1 -0
- package/dist/server/simple-app.d.ts +18 -0
- package/dist/server/simple-app.d.ts.map +1 -0
- package/dist/server/simple-app.js +155 -0
- package/dist/server/simple-app.js.map +1 -0
- package/dist/server/types/agent.d.ts +498 -0
- package/dist/server/types/agent.d.ts.map +1 -0
- package/dist/server/types/agent.js +37 -0
- package/dist/server/types/agent.js.map +1 -0
- package/dist/server/types/server.d.ts +370 -0
- package/dist/server/types/server.d.ts.map +1 -0
- package/dist/server/types/server.js +68 -0
- package/dist/server/types/server.js.map +1 -0
- package/dist/services/discovery.service.d.ts +78 -0
- package/dist/services/discovery.service.d.ts.map +1 -0
- package/dist/services/discovery.service.js +212 -0
- package/dist/services/discovery.service.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/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 +158 -0
- package/dist/services/gitlab-agent.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/orchestration/worktree-orchestrator.d.ts +146 -0
- package/dist/services/orchestration/worktree-orchestrator.d.ts.map +1 -0
- package/dist/services/orchestration/worktree-orchestrator.js +591 -0
- package/dist/services/orchestration/worktree-orchestrator.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/services/worktree/branching-strategy.d.ts +17 -0
- package/dist/services/worktree/branching-strategy.d.ts.map +1 -0
- package/dist/services/worktree/branching-strategy.js +66 -0
- package/dist/services/worktree/branching-strategy.js.map +1 -0
- package/dist/services/worktree/git-worktree-manager.d.ts +32 -0
- package/dist/services/worktree/git-worktree-manager.d.ts.map +1 -0
- package/dist/services/worktree/git-worktree-manager.js +61 -0
- package/dist/services/worktree/git-worktree-manager.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.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.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/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/README.md +61 -0
- package/dist/spec/v0.2.4-dev/RELEASE-PROCESS.md +130 -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/openapi/CHANGELOG-0.2.4.md +177 -0
- package/dist/spec/v0.2.4-dev/openapi/README-0.2.4.md +51 -0
- package/dist/spec/v0.2.4-dev/openapi/VERIFICATION-0.2.4.md +147 -0
- package/dist/spec/v0.2.4-dev/ossa-0.2.4-dev.schema.json +1717 -0
- package/dist/spec/v0.2.4-dev/ossa-0.2.4-dev.yaml +581 -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/specification/validator.d.ts +82 -0
- package/dist/specification/validator.d.ts.map +1 -0
- package/dist/specification/validator.js +562 -0
- package/dist/specification/validator.js.map +1 -0
- package/dist/types/acdl-api.d.ts +335 -0
- package/dist/types/acdl-api.d.ts.map +1 -0
- package/dist/types/acdl-api.js +6 -0
- package/dist/types/acdl-api.js.map +1 -0
- package/dist/types/agents/index.d.ts +53 -0
- package/dist/types/agents/index.d.ts.map +1 -0
- package/dist/types/agents/index.js +5 -0
- package/dist/types/agents/index.js.map +1 -0
- package/dist/types/api.d.ts +225 -0
- package/dist/types/api.d.ts.map +1 -0
- package/dist/types/api.js +6 -0
- package/dist/types/api.js.map +1 -0
- package/dist/types/architecture/index.d.ts +530 -0
- package/dist/types/architecture/index.d.ts.map +1 -0
- package/dist/types/architecture/index.js +258 -0
- package/dist/types/architecture/index.js.map +1 -0
- package/dist/types/index.d.ts +279 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +68 -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/dist/types/policies/index.d.ts +35 -0
- package/dist/types/policies/index.d.ts.map +1 -0
- package/dist/types/policies/index.js +5 -0
- package/dist/types/policies/index.js.map +1 -0
- package/dist/types/workflows/index.d.ts +40 -0
- package/dist/types/workflows/index.d.ts.map +1 -0
- package/dist/types/workflows/index.js +5 -0
- package/dist/types/workflows/index.js.map +1 -0
- package/dist/utils/version-resolver.d.ts +28 -0
- package/dist/utils/version-resolver.d.ts.map +1 -0
- package/dist/utils/version-resolver.js +110 -0
- package/dist/utils/version-resolver.js.map +1 -0
- package/docker-compose.yml +160 -0
- package/junit.xml +1 -0
- package/package.json +105 -0
- package/public/api-docs.html +206 -0
- package/public/assets/favicon.svg +8 -0
- package/public/assets/script.js +279 -0
- package/public/assets/style.css +632 -0
- package/public/index.html +307 -0
- package/public/redocly-config.yaml +80 -0
- package/public/src/api/acdl-specification.yml +531 -0
- package/public/src/api/clean-architecture.openapi.yml +1435 -0
- package/public/src/api/context7-mcp.openapi.yml +313 -0
- package/public/src/api/magic-mcp.openapi.yml +647 -0
- package/public/src/api/mcp-infrastructure.openapi.yml +904 -0
- package/public/src/api/orchestration.openapi.yml +444 -0
- package/public/src/api/ossa-complete.openapi.yml +2250 -0
- package/public/src/api/project-discovery.openapi.yml +1293 -0
- package/public/src/api/rebuild-audit.openapi.yml +800 -0
- package/public/src/api/specification.openapi.yml +498 -0
- package/public/src/api/voice-agent-specification.yml +640 -0
- package/public/src/api/web-eval-mcp.openapi.yml +426 -0
- package/pyrightconfig.json +13 -0
- package/redocly.yaml +56 -0
- package/spec/v0.1.9/ossa-v0.1.9.schema.json.backup +695 -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.4/ossa-0.2.4.schema.json +1717 -0
- package/spec/v0.2.4/ossa-0.2.4.yaml +581 -0
- package/specs/README.md +31 -0
- package/specs/acdl-specification.yml +531 -0
- package/specs/clean-architecture.openapi.yml +1435 -0
- package/specs/context7-mcp.openapi.yml +313 -0
- package/specs/magic-mcp.openapi.yml +647 -0
- package/specs/mcp-infrastructure.openapi.yml +904 -0
- package/specs/orchestration.openapi.yml +444 -0
- package/specs/ossa-complete.openapi.yml +2250 -0
- package/specs/project-discovery.openapi.yml +1293 -0
- package/specs/rebuild-audit.openapi.yml +800 -0
- package/specs/specification.openapi.yml +498 -0
- package/specs/test-api.openapi.yml +20 -0
- package/specs/voice-agent-specification.yml +640 -0
- package/specs/web-eval-mcp.openapi.yml +426 -0
- package/src/adk/adapters/index.ts +310 -0
- package/src/adk/agents/custom-agent.ts +206 -0
- package/src/adk/agents/index.ts +158 -0
- package/src/adk/agents/llm-agent.ts +76 -0
- package/src/adk/agents/workflow-agent.ts +191 -0
- package/src/adk/index.ts +10 -0
- package/src/adk/orchestration/index.ts +352 -0
- package/src/adk/state/index.ts +217 -0
- package/src/adk/tools/index.ts +291 -0
- package/src/api/acdl-specification.yml +531 -0
- package/src/api/agent-manifest.schema.json +859 -0
- package/src/api/agent-worktree-schema.json +320 -0
- package/src/api/clean-architecture.openapi.yml +1435 -0
- package/src/api/context7-mcp.openapi.yml +313 -0
- package/src/api/magic-mcp.openapi.yml +647 -0
- package/src/api/mcp-infrastructure.openapi.yml +904 -0
- package/src/api/openapi.redoc.config.json +6 -0
- package/src/api/orchestration.openapi.yml +444 -0
- package/src/api/ossa-complete.openapi.yml +2250 -0
- package/src/api/project-discovery.openapi.yml +1293 -0
- package/src/api/rebuild-audit.openapi.yml +800 -0
- package/src/api/specification.openapi.yml +498 -0
- package/src/api/test-api.openapi.yml +20 -0
- package/src/api/voice-agent-specification.yml +640 -0
- package/src/api/web-eval-mcp.openapi.yml +426 -0
- package/src/api/workflow.schema.json +524 -0
- package/src/cli/agent-deployment.ts +452 -0
- package/src/cli/commands/ossa.ts +272 -0
- package/src/cli/commands/worktree.ts +603 -0
- package/src/cli/ossa-cli.ts +1176 -0
- package/src/core/index.ts +42 -0
- package/src/core/mcp-server-implementation.ts +1409 -0
- package/src/core/orchestrator/index.ts +611 -0
- package/src/core/orchestrator/ossa-orchestrator.ts +504 -0
- package/src/mcp/simple-server.ts +322 -0
- package/src/protocols/acap.ts +146 -0
- package/src/protocols/index.ts +8 -0
- package/src/protocols/rasp.ts +263 -0
- package/src/server/app.ts +472 -0
- package/src/server/middleware/agentAccess.ts +10 -0
- package/src/server/middleware/asyncHandler.ts +10 -0
- package/src/server/middleware/auth.ts +10 -0
- package/src/server/middleware/errorHandler.ts +9 -0
- package/src/server/middleware/logging.ts +10 -0
- package/src/server/middleware/metrics.ts +10 -0
- package/src/server/middleware/validation.ts +10 -0
- package/src/server/routes/agents.ts +632 -0
- package/src/server/routes/monitoring.ts +13 -0
- package/src/server/routes/orchestration.ts +13 -0
- package/src/server/routes/specifications.ts +13 -0
- package/src/server/services/AgentService.ts +46 -0
- package/src/server/services/ExecutionService.ts +51 -0
- package/src/server/services/SpecificationService.ts +22 -0
- package/src/server/services/WebhookService.ts +24 -0
- package/src/server/simple-app.ts +174 -0
- package/src/server/types/agent.ts +612 -0
- package/src/server/types/server.ts +465 -0
- package/src/services/orchestration/worktree-orchestrator.ts +779 -0
- package/src/services/worktree/branching-strategy.ts +76 -0
- package/src/services/worktree/git-worktree-manager.ts +86 -0
- package/website/.next/BUILD_ID +1 -0
- package/website/.next/app-build-manifest.json +151 -0
- package/website/.next/app-path-routes-manifest.json +19 -0
- package/website/.next/build-manifest.json +33 -0
- package/website/.next/cache/.previewinfo +1 -0
- package/website/.next/cache/.rscinfo +1 -0
- package/website/.next/cache/.tsbuildinfo +1 -0
- package/website/.next/cache/fetch-cache/920aec34c288eefa97c5efba3baf95a846a0beb0c48a5064980a2c24b83e941c +1 -0
- package/website/.next/cache/fetch-cache/c2ad7a72b43463a0daaa85ca926a8af38defd17ecb64f1fdd2dd4fe2293e8b26 +1 -0
- package/website/.next/cache/fetch-cache/d10eb963d5980c8a50ee9ed24472339ee6da054ead33e00676e61e8b8e62cc83 +1 -0
- package/website/.next/cache/fetch-cache/f243d84640477f3205b74a85013018acd63b692144675630a74d1af8a3e9eab5 +1 -0
- package/website/.next/cache/webpack/client-production/0.pack +0 -0
- package/website/.next/cache/webpack/client-production/1.pack +0 -0
- package/website/.next/cache/webpack/client-production/10.pack +0 -0
- package/website/.next/cache/webpack/client-production/11.pack +0 -0
- package/website/.next/cache/webpack/client-production/12.pack +0 -0
- package/website/.next/cache/webpack/client-production/13.pack +0 -0
- package/website/.next/cache/webpack/client-production/14.pack +0 -0
- package/website/.next/cache/webpack/client-production/15.pack +0 -0
- package/website/.next/cache/webpack/client-production/16.pack +0 -0
- package/website/.next/cache/webpack/client-production/17.pack +0 -0
- package/website/.next/cache/webpack/client-production/18.pack +0 -0
- package/website/.next/cache/webpack/client-production/2.pack +0 -0
- package/website/.next/cache/webpack/client-production/3.pack +0 -0
- package/website/.next/cache/webpack/client-production/4.pack +0 -0
- package/website/.next/cache/webpack/client-production/5.pack +0 -0
- package/website/.next/cache/webpack/client-production/6.pack +0 -0
- package/website/.next/cache/webpack/client-production/7.pack +0 -0
- package/website/.next/cache/webpack/client-production/8.pack +0 -0
- package/website/.next/cache/webpack/client-production/9.pack +0 -0
- package/website/.next/cache/webpack/client-production/index.pack +0 -0
- package/website/.next/cache/webpack/client-production/index.pack.old +0 -0
- package/website/.next/cache/webpack/edge-server-production/0.pack +0 -0
- package/website/.next/cache/webpack/edge-server-production/index.pack +0 -0
- package/website/.next/cache/webpack/server-production/0.pack +0 -0
- package/website/.next/cache/webpack/server-production/1.pack +0 -0
- package/website/.next/cache/webpack/server-production/10.pack +0 -0
- package/website/.next/cache/webpack/server-production/11.pack +0 -0
- package/website/.next/cache/webpack/server-production/12.pack +0 -0
- package/website/.next/cache/webpack/server-production/2.pack +0 -0
- package/website/.next/cache/webpack/server-production/3.pack +0 -0
- package/website/.next/cache/webpack/server-production/4.pack +0 -0
- package/website/.next/cache/webpack/server-production/5.pack +0 -0
- package/website/.next/cache/webpack/server-production/6.pack +0 -0
- package/website/.next/cache/webpack/server-production/7.pack +0 -0
- package/website/.next/cache/webpack/server-production/8.pack +0 -0
- package/website/.next/cache/webpack/server-production/9.pack +0 -0
- package/website/.next/cache/webpack/server-production/index.pack +0 -0
- package/website/.next/cache/webpack/server-production/index.pack.old +0 -0
- package/website/.next/diagnostics/build-diagnostics.json +6 -0
- package/website/.next/diagnostics/framework.json +1 -0
- package/website/.next/export-detail.json +5 -0
- package/website/.next/export-marker.json +6 -0
- package/website/.next/images-manifest.json +57 -0
- package/website/.next/next-minimal-server.js.nft.json +1 -0
- package/website/.next/next-server.js.nft.json +1 -0
- package/website/.next/package.json +1 -0
- package/website/.next/prerender-manifest.json +2143 -0
- package/website/.next/react-loadable-manifest.json +1898 -0
- package/website/.next/required-server-files.json +320 -0
- package/website/.next/routes-manifest.json +161 -0
- package/website/.next/server/app/_not-found/page.js +2 -0
- package/website/.next/server/app/_not-found/page.js.nft.json +1 -0
- package/website/.next/server/app/_not-found/page_client-reference-manifest.js +1 -0
- package/website/.next/server/app/_not-found.html +1 -0
- package/website/.next/server/app/_not-found.meta +8 -0
- package/website/.next/server/app/_not-found.rsc +23 -0
- package/website/.next/server/app/about/page.js +2 -0
- package/website/.next/server/app/about/page.js.nft.json +1 -0
- package/website/.next/server/app/about/page_client-reference-manifest.js +1 -0
- package/website/.next/server/app/about.html +1 -0
- package/website/.next/server/app/about.meta +7 -0
- package/website/.next/server/app/about.rsc +40 -0
- package/website/.next/server/app/blog/OpenAPI-AI-Agents-Standard.html +217 -0
- package/website/.next/server/app/blog/OpenAPI-AI-Agents-Standard.meta +7 -0
- package/website/.next/server/app/blog/OpenAPI-AI-Agents-Standard.rsc +308 -0
- package/website/.next/server/app/blog/Why-Formal-Standards-Matter-Now.html +180 -0
- package/website/.next/server/app/blog/Why-Formal-Standards-Matter-Now.meta +7 -0
- package/website/.next/server/app/blog/Why-Formal-Standards-Matter-Now.rsc +232 -0
- package/website/.next/server/app/blog/[slug]/page.js +2 -0
- package/website/.next/server/app/blog/[slug]/page.js.nft.json +1 -0
- package/website/.next/server/app/blog/[slug]/page_client-reference-manifest.js +1 -0
- package/website/.next/server/app/blog/introducing-ossa-framework.html +263 -0
- package/website/.next/server/app/blog/introducing-ossa-framework.meta +7 -0
- package/website/.next/server/app/blog/introducing-ossa-framework.rsc +351 -0
- package/website/.next/server/app/blog/ossa-production-results.html +198 -0
- package/website/.next/server/app/blog/ossa-production-results.meta +7 -0
- package/website/.next/server/app/blog/ossa-production-results.rsc +302 -0
- package/website/.next/server/app/blog/page.js +2 -0
- package/website/.next/server/app/blog/page.js.nft.json +1 -0
- package/website/.next/server/app/blog/page_client-reference-manifest.js +1 -0
- package/website/.next/server/app/blog/welcome-to-ossa.html +22 -0
- package/website/.next/server/app/blog/welcome-to-ossa.meta +7 -0
- package/website/.next/server/app/blog/welcome-to-ossa.rsc +31 -0
- package/website/.next/server/app/blog/why-ai-agents-need-open-standard.html +63 -0
- package/website/.next/server/app/blog/why-ai-agents-need-open-standard.meta +7 -0
- package/website/.next/server/app/blog/why-ai-agents-need-open-standard.rsc +121 -0
- package/website/.next/server/app/blog.html +1 -0
- package/website/.next/server/app/blog.meta +7 -0
- package/website/.next/server/app/blog.rsc +35 -0
- package/website/.next/server/app/design-guide/page.js +12 -0
- package/website/.next/server/app/design-guide/page.js.nft.json +1 -0
- package/website/.next/server/app/design-guide/page_client-reference-manifest.js +1 -0
- package/website/.next/server/app/design-guide.html +11 -0
- package/website/.next/server/app/design-guide.meta +7 -0
- package/website/.next/server/app/design-guide.rsc +41 -0
- package/website/.next/server/app/docs.html +1 -0
- package/website/.next/server/app/docs.meta +7 -0
- package/website/.next/server/app/docs.rsc +42 -0
- package/website/.next/server/app/ecosystem/page.js +2 -0
- package/website/.next/server/app/ecosystem/page.js.nft.json +1 -0
- package/website/.next/server/app/ecosystem/page_client-reference-manifest.js +1 -0
- package/website/.next/server/app/ecosystem.html +1 -0
- package/website/.next/server/app/ecosystem.meta +7 -0
- package/website/.next/server/app/ecosystem.rsc +40 -0
- package/website/.next/server/app/examples.html +1 -0
- package/website/.next/server/app/examples.meta +7 -0
- package/website/.next/server/app/examples.rsc +14559 -0
- package/website/.next/server/app/index.html +3 -0
- package/website/.next/server/app/index.meta +7 -0
- package/website/.next/server/app/index.rsc +40 -0
- package/website/.next/server/app/license/page.js +2 -0
- package/website/.next/server/app/license/page.js.nft.json +1 -0
- package/website/.next/server/app/license/page_client-reference-manifest.js +1 -0
- package/website/.next/server/app/license.html +191 -0
- package/website/.next/server/app/license.meta +7 -0
- package/website/.next/server/app/license.rsc +222 -0
- package/website/.next/server/app/page.js +4 -0
- package/website/.next/server/app/page.js.nft.json +1 -0
- package/website/.next/server/app/page_client-reference-manifest.js +1 -0
- package/website/.next/server/app/playground/page.js +111 -0
- package/website/.next/server/app/playground/page.js.nft.json +1 -0
- package/website/.next/server/app/playground/page_client-reference-manifest.js +1 -0
- package/website/.next/server/app/playground.html +1 -0
- package/website/.next/server/app/playground.meta +7 -0
- package/website/.next/server/app/playground.rsc +30 -0
- package/website/.next/server/app/robots.txt/route.js +1 -0
- package/website/.next/server/app/robots.txt/route.js.nft.json +1 -0
- package/website/.next/server/app/robots.txt/route_client-reference-manifest.js +1 -0
- package/website/.next/server/app/robots.txt.body +6 -0
- package/website/.next/server/app/robots.txt.meta +1 -0
- package/website/.next/server/app/rss.xml/route.js +18 -0
- package/website/.next/server/app/rss.xml/route.js.nft.json +1 -0
- package/website/.next/server/app/rss.xml/route_client-reference-manifest.js +1 -0
- package/website/.next/server/app/rss.xml.body +11 -0
- package/website/.next/server/app/rss.xml.meta +1 -0
- package/website/.next/server/app/schema/page.js +76 -0
- package/website/.next/server/app/schema/page.js.nft.json +1 -0
- package/website/.next/server/app/schema/page_client-reference-manifest.js +1 -0
- package/website/.next/server/app/schema.html +1 -0
- package/website/.next/server/app/schema.meta +7 -0
- package/website/.next/server/app/schema.rsc +26 -0
- package/website/.next/server/app/sitemap.xml/route.js +1 -0
- package/website/.next/server/app/sitemap.xml/route.js.nft.json +1 -0
- package/website/.next/server/app/sitemap.xml/route_client-reference-manifest.js +1 -0
- package/website/.next/server/app/sitemap.xml.body +39 -0
- package/website/.next/server/app/sitemap.xml.meta +1 -0
- package/website/.next/server/app/specification/page.js +10 -0
- package/website/.next/server/app/specification/page.js.nft.json +1 -0
- package/website/.next/server/app/specification/page_client-reference-manifest.js +1 -0
- package/website/.next/server/app/specification.html +9 -0
- package/website/.next/server/app/specification.meta +7 -0
- package/website/.next/server/app/specification.rsc +32 -0
- package/website/.next/server/app-paths-manifest.json +19 -0
- package/website/.next/server/chunks/18.js +1 -0
- package/website/.next/server/chunks/227.js +9 -0
- package/website/.next/server/chunks/339.js +25 -0
- package/website/.next/server/chunks/49.js +1 -0
- package/website/.next/server/chunks/51.js +1 -0
- package/website/.next/server/chunks/57.js +1 -0
- package/website/.next/server/chunks/579.js +16 -0
- package/website/.next/server/chunks/611.js +6 -0
- package/website/.next/server/chunks/873.js +22 -0
- package/website/.next/server/chunks/900.js +1 -0
- package/website/.next/server/chunks/97.js +1 -0
- package/website/.next/server/functions-config-manifest.json +4 -0
- package/website/.next/server/interception-route-rewrite-manifest.js +1 -0
- package/website/.next/server/middleware-build-manifest.js +1 -0
- package/website/.next/server/middleware-manifest.json +6 -0
- package/website/.next/server/middleware-react-loadable-manifest.js +1 -0
- package/website/.next/server/next-font-manifest.js +1 -0
- package/website/.next/server/next-font-manifest.json +1 -0
- package/website/.next/server/pages/404.html +1 -0
- package/website/.next/server/pages/500.html +1 -0
- package/website/.next/server/pages/_app.js +1 -0
- package/website/.next/server/pages/_app.js.nft.json +1 -0
- package/website/.next/server/pages/_document.js +1 -0
- package/website/.next/server/pages/_document.js.nft.json +1 -0
- package/website/.next/server/pages/_error.js +19 -0
- package/website/.next/server/pages/_error.js.nft.json +1 -0
- package/website/.next/server/pages-manifest.json +6 -0
- package/website/.next/server/server-reference-manifest.js +1 -0
- package/website/.next/server/server-reference-manifest.json +1 -0
- package/website/.next/server/webpack-runtime.js +1 -0
- package/website/.next/static/IDhDQiozPwOaA3PpMqvTE/_buildManifest.js +1 -0
- package/website/.next/static/IDhDQiozPwOaA3PpMqvTE/_ssgManifest.js +1 -0
- package/website/.next/static/chunks/119.05f66060d7798fc9.js +25 -0
- package/website/.next/static/chunks/255-bf407b21685f2318.js +1 -0
- package/website/.next/static/chunks/451-235273497e501ae9.js +1 -0
- package/website/.next/static/chunks/4bd1b696-409494caf8c83275.js +1 -0
- package/website/.next/static/chunks/619-f072ac750404f9da.js +1 -0
- package/website/.next/static/chunks/651-5cd3c87d43b7eb46.js +1 -0
- package/website/.next/static/chunks/778.278ac2aadb2a1105.js +1 -0
- package/website/.next/static/chunks/890-ab915e0570e1961b.js +1 -0
- package/website/.next/static/chunks/app/_not-found/page-ccdaf9d90b537c5d.js +1 -0
- package/website/.next/static/chunks/app/about/page-bd4cb2219b41f933.js +1 -0
- package/website/.next/static/chunks/app/blog/[slug]/page-8fd43000c4969233.js +1 -0
- package/website/.next/static/chunks/app/blog/page-bd4cb2219b41f933.js +1 -0
- package/website/.next/static/chunks/app/design-guide/page-bd4cb2219b41f933.js +1 -0
- package/website/.next/static/chunks/app/ecosystem/page-bd4cb2219b41f933.js +1 -0
- package/website/.next/static/chunks/app/layout-ccacbd90656baa78.js +1 -0
- package/website/.next/static/chunks/app/license/page-bd4cb2219b41f933.js +1 -0
- package/website/.next/static/chunks/app/page-31241dc7465f9590.js +1 -0
- package/website/.next/static/chunks/app/playground/page-c2af00885374900f.js +1 -0
- package/website/.next/static/chunks/app/robots.txt/route-032c05054032342f.js +1 -0
- package/website/.next/static/chunks/app/rss.xml/route-032c05054032342f.js +1 -0
- package/website/.next/static/chunks/app/schema/page-f7c224b281771083.js +1 -0
- package/website/.next/static/chunks/app/sitemap.xml/route-032c05054032342f.js +1 -0
- package/website/.next/static/chunks/app/specification/page-bd4cb2219b41f933.js +1 -0
- package/website/.next/static/chunks/framework-1ce91eb6f9ecda85.js +1 -0
- package/website/.next/static/chunks/main-3099e141650ec47a.js +1 -0
- package/website/.next/static/chunks/main-app-a2fc6ac9305e3090.js +1 -0
- package/website/.next/static/chunks/pages/_app-5addca2b3b969fde.js +1 -0
- package/website/.next/static/chunks/pages/_error-022e4ac7bbb9914f.js +1 -0
- package/website/.next/static/chunks/polyfills-42372ed130431b0a.js +1 -0
- package/website/.next/static/chunks/webpack-6ecb09e5c6e34cb4.js +1 -0
- package/website/.next/static/css/23135390005d4468.css +3 -0
- package/website/.next/static/media/19cfc7226ec3afaa-s.woff2 +0 -0
- package/website/.next/static/media/21350d82a1f187e9-s.woff2 +0 -0
- package/website/.next/static/media/8e9860b6e62d6359-s.woff2 +0 -0
- package/website/.next/static/media/ba9851c3c22cd980-s.woff2 +0 -0
- package/website/.next/static/media/c5fe6dc8356a8c31-s.woff2 +0 -0
- package/website/.next/static/media/df0a9ae256c0569c-s.woff2 +0 -0
- package/website/.next/static/media/e4af272ccee01ff0-s.p.woff2 +0 -0
- package/website/.next/trace +3 -0
- package/website/.next/types/app/about/page.ts +84 -0
- package/website/.next/types/app/blog/[slug]/page.ts +84 -0
- package/website/.next/types/app/blog/page.ts +84 -0
- package/website/.next/types/app/design-guide/page.ts +84 -0
- package/website/.next/types/app/ecosystem/page.ts +84 -0
- package/website/.next/types/app/license/page.ts +84 -0
- package/website/.next/types/app/page.ts +84 -0
- package/website/.next/types/app/playground/page.ts +84 -0
- package/website/.next/types/app/rss.xml/route.ts +347 -0
- package/website/.next/types/app/schema/page.ts +84 -0
- package/website/.next/types/app/specification/page.ts +84 -0
- package/website/.next/types/cache-life.d.ts +141 -0
- package/website/.next/types/package.json +1 -0
- package/website/.next/types/routes.d.ts +85 -0
- package/website/.next/types/validator.ts +187 -0
- package/website/.wiki-export/Agent-Folder-Structure.md +215 -0
- package/website/.wiki-export/CI-STATUS.md +66 -0
- package/website/.wiki-export/COMPLETE-IMPLEMENTATION-CHECKLIST.md +74 -0
- package/website/.wiki-export/DRUPAL-MODULE-INTEGRATION.md +103 -0
- package/website/.wiki-export/FINAL-STATUS.md +63 -0
- package/website/.wiki-export/Getting-Started.md +87 -0
- package/website/.wiki-export/INSTRUCTIONS.md +46 -0
- package/website/.wiki-export/INTEGRATION-ANALYSIS.md +216 -0
- package/website/.wiki-export/MANIFEST.json +62 -0
- package/website/.wiki-export/OSSA-COMPLIANT-BADGE.md +247 -0
- package/website/.wiki-export/Openapi-Extensions.md +930 -0
- package/website/.wiki-export/README.md +31 -0
- package/website/.wiki-export/RELEASE-READINESS.md +95 -0
- package/website/.wiki-export/VERSIONING.md +284 -0
- package/website/lib/versions.json +77 -0
- package/website/next-env.d.ts +6 -0
- package/website/out/app-build-manifest.json +3 -0
- package/website/out/build-manifest.json +17 -0
- package/website/out/cache/.rscinfo +1 -0
- package/website/out/cache/next-devtools-config.json +1 -0
- package/website/out/cache/webpack/client-development/0.pack.gz +0 -0
- package/website/out/cache/webpack/client-development/1.pack.gz +0 -0
- package/website/out/cache/webpack/client-development/2.pack.gz +0 -0
- package/website/out/cache/webpack/client-development/3.pack.gz +0 -0
- package/website/out/cache/webpack/client-development/index.pack.gz +0 -0
- package/website/out/cache/webpack/client-development/index.pack.gz.old +0 -0
- package/website/out/cache/webpack/client-development-fallback/0.pack.gz +0 -0
- package/website/out/cache/webpack/client-development-fallback/index.pack.gz +0 -0
- package/website/out/cache/webpack/server-development/0.pack.gz +0 -0
- package/website/out/cache/webpack/server-development/1.pack.gz +0 -0
- package/website/out/cache/webpack/server-development/2.pack.gz +0 -0
- package/website/out/cache/webpack/server-development/3.pack.gz +0 -0
- package/website/out/cache/webpack/server-development/index.pack.gz +0 -0
- package/website/out/cache/webpack/server-development/index.pack.gz.old +0 -0
- package/website/out/package.json +1 -0
- package/website/out/prerender-manifest.json +11 -0
- package/website/out/react-loadable-manifest.json +1 -0
- package/website/out/routes-manifest.json +1 -0
- package/website/out/server/app-paths-manifest.json +1 -0
- package/website/out/server/interception-route-rewrite-manifest.js +1 -0
- package/website/out/server/middleware-build-manifest.js +19 -0
- package/website/out/server/middleware-manifest.json +6 -0
- package/website/out/server/middleware-react-loadable-manifest.js +1 -0
- package/website/out/server/next-font-manifest.js +1 -0
- package/website/out/server/next-font-manifest.json +1 -0
- package/website/out/server/pages-manifest.json +1 -0
- package/website/out/server/server-reference-manifest.js +1 -0
- package/website/out/server/server-reference-manifest.json +5 -0
- package/website/out/static/chunks/polyfills.js +1 -0
- package/website/out/static/development/_buildManifest.js +1 -0
- package/website/out/static/development/_ssgManifest.js +1 -0
- package/website/out/trace +2 -0
- package/website/out/types/cache-life.d.ts +141 -0
- package/website/out/types/package.json +1 -0
- package/website/out/types/routes.d.ts +85 -0
- package/website/out/types/validator.ts +187 -0
- package/website/public/examples.json +476 -0
- package/website/public/schemas/openapi-extensions.schema.json +486 -0
- package/website/tsconfig.tsbuildinfo +1 -0
|
@@ -0,0 +1,216 @@
|
|
|
1
|
+
# OSSA Agent Folder Structure - Integration Analysis
|
|
2
|
+
|
|
3
|
+
## Executive Summary
|
|
4
|
+
|
|
5
|
+
**YES, this will work and integrate with all platforms**, but requires implementation of discovery services by each platform/tool. The folder structure is a **standard convention**, not a runtime requirement.
|
|
6
|
+
|
|
7
|
+
## Current State Analysis
|
|
8
|
+
|
|
9
|
+
### ✅ What Already Works
|
|
10
|
+
|
|
11
|
+
1. **OSSA CLI Validation**
|
|
12
|
+
- ✅ Can validate any manifest file path: `ossa validate path/to/agent.ossa.yaml`
|
|
13
|
+
- ✅ Supports both YAML and JSON formats
|
|
14
|
+
- ✅ Works with v0.2.4 schema
|
|
15
|
+
- ✅ No changes needed to existing validation
|
|
16
|
+
|
|
17
|
+
2. **Manifest Loading**
|
|
18
|
+
- ✅ `ManifestRepository.load()` accepts any file path
|
|
19
|
+
- ✅ Works with `.agents/agent-name/agent.ossa.yaml` structure
|
|
20
|
+
- ✅ No changes needed to existing loading
|
|
21
|
+
|
|
22
|
+
3. **Schema Compliance**
|
|
23
|
+
- ✅ All examples use valid OSSA v0.2.4 manifests
|
|
24
|
+
- ✅ Follow standard `apiVersion`, `kind`, `metadata`, `spec` structure
|
|
25
|
+
- ✅ Compatible with existing validation service
|
|
26
|
+
|
|
27
|
+
### ⚠️ What Needs Implementation
|
|
28
|
+
|
|
29
|
+
1. **Discovery Service** (NEW)
|
|
30
|
+
- Scan for `.agents/` folders
|
|
31
|
+
- Find `agent.ossa.yaml` or `agent.yml` files
|
|
32
|
+
- Build registry/index
|
|
33
|
+
- **Status**: Not yet implemented in OSSA CLI
|
|
34
|
+
|
|
35
|
+
2. **Platform Integration** (NEW)
|
|
36
|
+
- Drupal: Service provider to discover module agents
|
|
37
|
+
- WordPress: Plugin/theme agent discovery
|
|
38
|
+
- Laravel: Service provider integration
|
|
39
|
+
- React/Next.js: Component agent discovery
|
|
40
|
+
- Python: Package agent discovery
|
|
41
|
+
- Node.js: npm package agent discovery
|
|
42
|
+
- **Status**: Examples provided, implementation needed by each platform
|
|
43
|
+
|
|
44
|
+
## Integration Points
|
|
45
|
+
|
|
46
|
+
### 1. OSSA CLI Integration
|
|
47
|
+
|
|
48
|
+
**Current**: CLI requires explicit file paths
|
|
49
|
+
```bash
|
|
50
|
+
ossa validate .agents/my-agent/agent.ossa.yaml
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
**Future** (needs implementation):
|
|
54
|
+
```bash
|
|
55
|
+
ossa discover # Discover all agents in workspace
|
|
56
|
+
ossa validate --discover # Validate all discovered agents
|
|
57
|
+
ossa list # List all discovered agents
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
**Implementation Required**:
|
|
61
|
+
- Create `DiscoveryService` class
|
|
62
|
+
- Add `discover` command to CLI
|
|
63
|
+
- Update `validate` command to support `--discover` flag
|
|
64
|
+
|
|
65
|
+
### 2. Platform Integration Patterns
|
|
66
|
+
|
|
67
|
+
#### Drupal
|
|
68
|
+
**Status**: ✅ Structure defined, ⚠️ Service provider needed
|
|
69
|
+
|
|
70
|
+
```php
|
|
71
|
+
// Required: Drupal service provider
|
|
72
|
+
class OssaAgentDiscoveryService {
|
|
73
|
+
public function discoverModuleAgents($moduleName) {
|
|
74
|
+
$modulePath = drupal_get_path('module', $moduleName);
|
|
75
|
+
$agentsPath = $modulePath . '/.agents';
|
|
76
|
+
// Scan for agent.ossa.yaml files
|
|
77
|
+
// Return array of discovered agents
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
#### WordPress
|
|
83
|
+
**Status**: ✅ Structure defined, ⚠️ Plugin hooks needed
|
|
84
|
+
|
|
85
|
+
```php
|
|
86
|
+
// Required: WordPress integration
|
|
87
|
+
function ossa_discover_plugin_agents($pluginPath) {
|
|
88
|
+
$agentsPath = $pluginPath . '/.agents';
|
|
89
|
+
// Scan for agent.ossa.yaml files
|
|
90
|
+
// Register agents with WordPress
|
|
91
|
+
}
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
#### Laravel
|
|
95
|
+
**Status**: ✅ Structure defined, ⚠️ Service provider needed
|
|
96
|
+
|
|
97
|
+
```php
|
|
98
|
+
// Required: Laravel service provider
|
|
99
|
+
class OssaServiceProvider extends ServiceProvider {
|
|
100
|
+
public function register() {
|
|
101
|
+
$this->app->singleton('ossa.discovery', function($app) {
|
|
102
|
+
return new AgentDiscoveryService();
|
|
103
|
+
});
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
#### React/Next.js
|
|
109
|
+
**Status**: ✅ Structure defined, ⚠️ Build-time discovery needed
|
|
110
|
+
|
|
111
|
+
```typescript
|
|
112
|
+
// Required: Next.js plugin
|
|
113
|
+
export function discoverAgents(directory: string) {
|
|
114
|
+
// Scan for .agents/ folders at build time
|
|
115
|
+
// Generate agent registry
|
|
116
|
+
// Make available via React context
|
|
117
|
+
}
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
#### Python
|
|
121
|
+
**Status**: ✅ Structure defined, ⚠️ Package discovery needed
|
|
122
|
+
|
|
123
|
+
```python
|
|
124
|
+
# Required: Python package discovery
|
|
125
|
+
def discover_package_agents(package_name):
|
|
126
|
+
package = importlib.import_module(package_name)
|
|
127
|
+
agents_path = Path(package.__file__).parent / '.agents'
|
|
128
|
+
# Scan for agent.ossa.yaml files
|
|
129
|
+
return discovered_agents
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
#### Node.js/npm
|
|
133
|
+
**Status**: ✅ Structure defined, ⚠️ Module discovery needed
|
|
134
|
+
|
|
135
|
+
```javascript
|
|
136
|
+
// Required: Node.js discovery
|
|
137
|
+
function discoverPackageAgents(packageName) {
|
|
138
|
+
const packagePath = require.resolve(packageName);
|
|
139
|
+
const agentsPath = path.join(path.dirname(packagePath), '.agents');
|
|
140
|
+
// Scan for agent.ossa.yaml files
|
|
141
|
+
return discoveredAgents;
|
|
142
|
+
}
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
## Compatibility Matrix
|
|
146
|
+
|
|
147
|
+
| Platform | Structure Support | Discovery Needed | Runtime Compatible |
|
|
148
|
+
|----------|------------------|------------------|-------------------|
|
|
149
|
+
| OSSA CLI | ✅ Yes | ⚠️ Needs implementation | ✅ Yes |
|
|
150
|
+
| Drupal | ✅ Yes | ⚠️ Needs service provider | ✅ Yes |
|
|
151
|
+
| WordPress | ✅ Yes | ⚠️ Needs plugin hooks | ✅ Yes |
|
|
152
|
+
| Laravel | ✅ Yes | ⚠️ Needs service provider | ✅ Yes |
|
|
153
|
+
| React/Next.js | ✅ Yes | ⚠️ Needs build plugin | ✅ Yes |
|
|
154
|
+
| Python | ✅ Yes | ⚠️ Needs discovery module | ✅ Yes |
|
|
155
|
+
| Node.js/npm | ✅ Yes | ⚠️ Needs discovery module | ✅ Yes |
|
|
156
|
+
| LangChain | ✅ Yes | ⚠️ Needs adapter | ✅ Yes |
|
|
157
|
+
| CrewAI | ✅ Yes | ⚠️ Needs adapter | ✅ Yes |
|
|
158
|
+
| OpenAI | ✅ Yes | ⚠️ Needs adapter | ✅ Yes |
|
|
159
|
+
|
|
160
|
+
## Validation
|
|
161
|
+
|
|
162
|
+
### ✅ All Examples Are Valid
|
|
163
|
+
|
|
164
|
+
```bash
|
|
165
|
+
# Test validation
|
|
166
|
+
ossa validate examples/drupal/module-with-agents/.agents/order-processor/agent.ossa.yaml
|
|
167
|
+
# ✅ Valid
|
|
168
|
+
|
|
169
|
+
ossa validate examples/wordpress/plugin-with-agents/.agents/content-generator/agent.ossa.yaml
|
|
170
|
+
# ✅ Valid
|
|
171
|
+
|
|
172
|
+
ossa validate examples/laravel/package-with-agents/.agents/api-client/agent.ossa.yaml
|
|
173
|
+
# ✅ Valid
|
|
174
|
+
```
|
|
175
|
+
|
|
176
|
+
### ✅ Structure Follows Standard
|
|
177
|
+
|
|
178
|
+
- All agents in `.agents/agent-name/` folders
|
|
179
|
+
- All use `agent.ossa.yaml` naming
|
|
180
|
+
- All include `README.md`
|
|
181
|
+
- All follow OSSA v0.2.4 schema
|
|
182
|
+
|
|
183
|
+
## Implementation Roadmap
|
|
184
|
+
|
|
185
|
+
### Phase 1: OSSA CLI Discovery (Priority: High)
|
|
186
|
+
1. Create `DiscoveryService` class
|
|
187
|
+
2. Add `discover` command
|
|
188
|
+
3. Add `--discover` flag to `validate` command
|
|
189
|
+
4. Generate registry.json
|
|
190
|
+
|
|
191
|
+
### Phase 2: Platform Integrations (Priority: Medium)
|
|
192
|
+
1. Drupal service provider
|
|
193
|
+
2. WordPress plugin hooks
|
|
194
|
+
3. Laravel service provider
|
|
195
|
+
4. React/Next.js build plugin
|
|
196
|
+
5. Python discovery module
|
|
197
|
+
6. Node.js discovery module
|
|
198
|
+
|
|
199
|
+
### Phase 3: Tool Adapters (Priority: Low)
|
|
200
|
+
1. LangChain adapter
|
|
201
|
+
2. CrewAI adapter
|
|
202
|
+
3. OpenAI adapter
|
|
203
|
+
4. Other framework adapters
|
|
204
|
+
|
|
205
|
+
## Conclusion
|
|
206
|
+
|
|
207
|
+
**The folder structure standard is:**
|
|
208
|
+
- ✅ **Compatible** with all existing OSSA tools
|
|
209
|
+
- ✅ **Valid** OSSA v0.2.4 manifests
|
|
210
|
+
- ✅ **Ready** for platform integration
|
|
211
|
+
- ⚠️ **Requires** discovery service implementation by each platform
|
|
212
|
+
|
|
213
|
+
**This is a standard, not a runtime requirement.** Any tool can implement discovery by scanning for `.agents/` folders, just like package managers scan for `package.json` or `composer.json`.
|
|
214
|
+
|
|
215
|
+
The examples we created are **production-ready** and will work once each platform implements its discovery service.
|
|
216
|
+
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
[
|
|
2
|
+
{
|
|
3
|
+
"slug": "CI-STATUS",
|
|
4
|
+
"file": "CI-STATUS.md",
|
|
5
|
+
"size": 2073
|
|
6
|
+
},
|
|
7
|
+
{
|
|
8
|
+
"slug": "COMPLETE-IMPLEMENTATION-CHECKLIST",
|
|
9
|
+
"file": "COMPLETE-IMPLEMENTATION-CHECKLIST.md",
|
|
10
|
+
"size": 3037
|
|
11
|
+
},
|
|
12
|
+
{
|
|
13
|
+
"slug": "DRUPAL-MODULE-INTEGRATION",
|
|
14
|
+
"file": "DRUPAL-MODULE-INTEGRATION.md",
|
|
15
|
+
"size": 2941
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
"slug": "FINAL-STATUS",
|
|
19
|
+
"file": "FINAL-STATUS.md",
|
|
20
|
+
"size": 1923
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"slug": "INTEGRATION-ANALYSIS",
|
|
24
|
+
"file": "INTEGRATION-ANALYSIS.md",
|
|
25
|
+
"size": 6547
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
"slug": "OSSA-COMPLIANT-BADGE",
|
|
29
|
+
"file": "OSSA-COMPLIANT-BADGE.md",
|
|
30
|
+
"size": 5732
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
"slug": "README",
|
|
34
|
+
"file": "README.md",
|
|
35
|
+
"size": 1134
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
"slug": "RELEASE-READINESS",
|
|
39
|
+
"file": "RELEASE-READINESS.md",
|
|
40
|
+
"size": 4142
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
"slug": "VERSIONING",
|
|
44
|
+
"file": "VERSIONING.md",
|
|
45
|
+
"size": 7047
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
"slug": "Agent-Folder-Structure",
|
|
49
|
+
"file": "agent-folder-structure.md",
|
|
50
|
+
"size": 5741
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
"slug": "Getting-Started",
|
|
54
|
+
"file": "getting-started.md",
|
|
55
|
+
"size": 1782
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
"slug": "Openapi-Extensions",
|
|
59
|
+
"file": "openapi-extensions.md",
|
|
60
|
+
"size": 23745
|
|
61
|
+
}
|
|
62
|
+
]
|
|
@@ -0,0 +1,247 @@
|
|
|
1
|
+
# OSSA Compliant Badge
|
|
2
|
+
|
|
3
|
+
Display the **OSSA Compliant** badge in your project to show that your AI agent follows the Open Standard for AI Agents (OSSA) specification.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Badge Options
|
|
8
|
+
|
|
9
|
+
### Markdown
|
|
10
|
+
|
|
11
|
+
```markdown
|
|
12
|
+
[](https://github.com/blueflyio/openstandardagents)
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
**Result**:
|
|
16
|
+
[](https://github.com/blueflyio/openstandardagents)
|
|
17
|
+
|
|
18
|
+
### HTML
|
|
19
|
+
|
|
20
|
+
```html
|
|
21
|
+
<a href="https://github.com/blueflyio/openstandardagents">
|
|
22
|
+
<img src="https://img.shields.io/badge/OSSA-Compliant-00B8D4.svg" alt="OSSA Compliant">
|
|
23
|
+
</a>
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
### reStructuredText
|
|
27
|
+
|
|
28
|
+
```rst
|
|
29
|
+
.. image:: https://img.shields.io/badge/OSSA-Compliant-00B8D4.svg
|
|
30
|
+
:target: https://github.com/blueflyio/openstandardagents
|
|
31
|
+
:alt: OSSA Compliant
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
---
|
|
35
|
+
|
|
36
|
+
## Compliance Requirements
|
|
37
|
+
|
|
38
|
+
To display the OSSA Compliant badge, your project must:
|
|
39
|
+
|
|
40
|
+
### Required
|
|
41
|
+
|
|
42
|
+
1. **Valid OSSA Manifest** - Your agent must have a valid `.ossa.yaml` manifest
|
|
43
|
+
2. **Schema Validation** - Manifest must pass `ossa validate` without errors
|
|
44
|
+
3. **Semantic Versioning** - Agent version follows semver (e.g., `1.0.0`)
|
|
45
|
+
4. **Required Fields** - All required OSSA fields must be present
|
|
46
|
+
|
|
47
|
+
### Recommended
|
|
48
|
+
|
|
49
|
+
1. **Examples** - Provide example manifests showing usage
|
|
50
|
+
2. **Documentation** - Document your agent's capabilities and usage
|
|
51
|
+
3. **Testing** - Include tests that validate your OSSA manifest
|
|
52
|
+
4. **CI/CD** - Automate OSSA validation in your pipeline
|
|
53
|
+
|
|
54
|
+
---
|
|
55
|
+
|
|
56
|
+
## Verification
|
|
57
|
+
|
|
58
|
+
### Manual Verification
|
|
59
|
+
|
|
60
|
+
```bash
|
|
61
|
+
# Install OSSA CLI
|
|
62
|
+
npm install -g @bluefly/openstandardagents
|
|
63
|
+
|
|
64
|
+
# Validate your manifest
|
|
65
|
+
ossa validate path/to/your-agent.ossa.yaml
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
### Automated Verification (CI/CD)
|
|
69
|
+
|
|
70
|
+
#### GitLab CI
|
|
71
|
+
|
|
72
|
+
```yaml
|
|
73
|
+
ossa-validation:
|
|
74
|
+
stage: test
|
|
75
|
+
image: node:20-alpine
|
|
76
|
+
script:
|
|
77
|
+
- npm install -g @bluefly/openstandardagents
|
|
78
|
+
- ossa validate agents/*.ossa.yaml
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
#### GitHub Actions
|
|
82
|
+
|
|
83
|
+
```yaml
|
|
84
|
+
name: OSSA Validation
|
|
85
|
+
on: [push, pull_request]
|
|
86
|
+
jobs:
|
|
87
|
+
validate:
|
|
88
|
+
runs-on: ubuntu-latest
|
|
89
|
+
steps:
|
|
90
|
+
- uses: actions/checkout@v3
|
|
91
|
+
- uses: actions/setup-node@v3
|
|
92
|
+
with:
|
|
93
|
+
node-version: '20'
|
|
94
|
+
- run: npm install -g @bluefly/openstandardagents
|
|
95
|
+
- run: ossa validate agents/*.ossa.yaml
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
---
|
|
99
|
+
|
|
100
|
+
## Compliance Levels
|
|
101
|
+
|
|
102
|
+
### Level 1: Basic Compliance
|
|
103
|
+
|
|
104
|
+
- Valid OSSA manifest
|
|
105
|
+
- Required fields present
|
|
106
|
+
- Passes schema validation
|
|
107
|
+
|
|
108
|
+
### Level 2: Standard Compliance
|
|
109
|
+
|
|
110
|
+
- Level 1 requirements
|
|
111
|
+
- Best practices followed (descriptions, examples)
|
|
112
|
+
- Semantic versioning
|
|
113
|
+
- At least one capability defined
|
|
114
|
+
|
|
115
|
+
### Level 3: Advanced Compliance
|
|
116
|
+
|
|
117
|
+
- Level 2 requirements
|
|
118
|
+
- Platform extensions configured
|
|
119
|
+
- Observability enabled
|
|
120
|
+
- Resource constraints defined
|
|
121
|
+
- Security considerations documented
|
|
122
|
+
|
|
123
|
+
---
|
|
124
|
+
|
|
125
|
+
## OSSA Certified Projects
|
|
126
|
+
|
|
127
|
+
Projects that have achieved OSSA compliance:
|
|
128
|
+
|
|
129
|
+
| Project | Level | Version | Link |
|
|
130
|
+
|---------|-------|---------|------|
|
|
131
|
+
| Agent Buildkit | Advanced | v0.2.3 | [GitHub](https://github.com/blueflyio/openstandardagents) |
|
|
132
|
+
| Agent Studio | Advanced | v0.2.3 | [GitHub](https://github.com/blueflyio/openstandardagents) |
|
|
133
|
+
| KAgent | Advanced | v0.2.3 | [GitHub](https://github.com/blueflyio/openstandardagents) |
|
|
134
|
+
|
|
135
|
+
**Add your project**: Submit a merge request to update this table!
|
|
136
|
+
|
|
137
|
+
---
|
|
138
|
+
|
|
139
|
+
## Example Implementation
|
|
140
|
+
|
|
141
|
+
### Minimal OSSA Manifest
|
|
142
|
+
|
|
143
|
+
```yaml
|
|
144
|
+
apiVersion: ossa/v0.2.3
|
|
145
|
+
kind: Agent
|
|
146
|
+
|
|
147
|
+
metadata:
|
|
148
|
+
name: my-agent
|
|
149
|
+
version: 1.0.0
|
|
150
|
+
description: A simple OSSA-compliant agent
|
|
151
|
+
|
|
152
|
+
spec:
|
|
153
|
+
role: |
|
|
154
|
+
You are a helpful assistant that processes data.
|
|
155
|
+
|
|
156
|
+
llm:
|
|
157
|
+
provider: openai
|
|
158
|
+
model: gpt-4
|
|
159
|
+
|
|
160
|
+
tools:
|
|
161
|
+
- type: function
|
|
162
|
+
name: process_data
|
|
163
|
+
description: Process incoming data
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
### With Platform Extensions
|
|
167
|
+
|
|
168
|
+
```yaml
|
|
169
|
+
apiVersion: ossa/v0.2.3
|
|
170
|
+
kind: Agent
|
|
171
|
+
|
|
172
|
+
metadata:
|
|
173
|
+
name: my-agent
|
|
174
|
+
version: 1.0.0
|
|
175
|
+
description: An advanced OSSA-compliant agent
|
|
176
|
+
labels:
|
|
177
|
+
environment: production
|
|
178
|
+
team: ai-engineering
|
|
179
|
+
|
|
180
|
+
spec:
|
|
181
|
+
role: |
|
|
182
|
+
You are a production-ready agent with observability.
|
|
183
|
+
|
|
184
|
+
llm:
|
|
185
|
+
provider: openai
|
|
186
|
+
model: gpt-4
|
|
187
|
+
temperature: 0.7
|
|
188
|
+
|
|
189
|
+
tools:
|
|
190
|
+
- type: function
|
|
191
|
+
name: analyze_data
|
|
192
|
+
description: Analyze data and generate insights
|
|
193
|
+
|
|
194
|
+
observability:
|
|
195
|
+
tracing:
|
|
196
|
+
enabled: true
|
|
197
|
+
exporter: otlp
|
|
198
|
+
metrics:
|
|
199
|
+
enabled: true
|
|
200
|
+
exporter: prometheus
|
|
201
|
+
|
|
202
|
+
extensions:
|
|
203
|
+
buildkit:
|
|
204
|
+
deployment:
|
|
205
|
+
replicas: 3
|
|
206
|
+
autoscaling: true
|
|
207
|
+
```
|
|
208
|
+
|
|
209
|
+
---
|
|
210
|
+
|
|
211
|
+
## FAQ
|
|
212
|
+
|
|
213
|
+
### Q: Can I use the badge if my agent partially implements OSSA?
|
|
214
|
+
|
|
215
|
+
**A**: The badge should only be used if your agent has a **valid, complete OSSA manifest** that passes validation. Partial implementations should work toward full compliance before displaying the badge.
|
|
216
|
+
|
|
217
|
+
### Q: Do I need to register my project?
|
|
218
|
+
|
|
219
|
+
**A**: No registration required! OSSA is an open standard. Simply ensure your manifest validates and add the badge.
|
|
220
|
+
|
|
221
|
+
### Q: What if my agent uses a custom runtime?
|
|
222
|
+
|
|
223
|
+
**A**: OSSA supports custom runtimes! Use platform extensions to define your custom runtime while maintaining OSSA compliance.
|
|
224
|
+
|
|
225
|
+
### Q: Can I modify the badge design?
|
|
226
|
+
|
|
227
|
+
**A**: The official badge design helps maintain consistency across the ecosystem. However, you can customize colors for your specific needs while keeping the "OSSA Compliant" text visible.
|
|
228
|
+
|
|
229
|
+
---
|
|
230
|
+
|
|
231
|
+
## Resources
|
|
232
|
+
|
|
233
|
+
- **OSSA Specification**: [spec/v0.2.3/](Specification/v0.2.3/)
|
|
234
|
+
- **Examples**: [examples/](Examples/)
|
|
235
|
+
- **CLI Documentation**: [docs/cli/](./cli/)
|
|
236
|
+
- **Contributing**: [CONTRIBUTING.md](../CONTRIBUTING.md)
|
|
237
|
+
- **GitHub Repository**: https://github.com/blueflyio/openstandardagents
|
|
238
|
+
|
|
239
|
+
---
|
|
240
|
+
|
|
241
|
+
**Questions?** Open an issue on [GitHub](https://github.com/blueflyio/openstandardagents/issues)
|
|
242
|
+
|
|
243
|
+
**Want to contribute?** See [CONTRIBUTING.md](../CONTRIBUTING.md)
|
|
244
|
+
|
|
245
|
+
---
|
|
246
|
+
|
|
247
|
+
*OSSA: The OpenAPI for AI Agents*
|