@bluefly/openstandardagents 0.2.8 → 0.3.0
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/CHANGELOG.md +1772 -185
- package/README.md +517 -161
- package/bin/ossa-generate +9 -16
- package/bin/quickstart +514 -0
- package/dist/adapters/anthropic/client.d.ts +144 -0
- package/dist/adapters/anthropic/client.d.ts.map +1 -0
- package/dist/adapters/anthropic/client.js +364 -0
- package/dist/adapters/anthropic/client.js.map +1 -0
- package/dist/adapters/anthropic/config.d.ts +149 -0
- package/dist/adapters/anthropic/config.d.ts.map +1 -0
- package/dist/adapters/anthropic/config.js +157 -0
- package/dist/adapters/anthropic/config.js.map +1 -0
- package/dist/adapters/anthropic/index.d.ts +40 -0
- package/dist/adapters/anthropic/index.d.ts.map +1 -0
- package/dist/adapters/anthropic/index.js +40 -0
- package/dist/adapters/anthropic/index.js.map +1 -0
- package/dist/adapters/anthropic/messages.d.ts +93 -0
- package/dist/adapters/anthropic/messages.d.ts.map +1 -0
- package/dist/adapters/anthropic/messages.js +318 -0
- package/dist/adapters/anthropic/messages.js.map +1 -0
- package/dist/adapters/anthropic/runtime.d.ts +136 -0
- package/dist/adapters/anthropic/runtime.d.ts.map +1 -0
- package/dist/adapters/anthropic/runtime.js +287 -0
- package/dist/adapters/anthropic/runtime.js.map +1 -0
- package/dist/adapters/anthropic/tools.d.ts +126 -0
- package/dist/adapters/anthropic/tools.d.ts.map +1 -0
- package/dist/adapters/anthropic/tools.js +329 -0
- package/dist/adapters/anthropic/tools.js.map +1 -0
- package/dist/adapters/crewai-adapter.d.ts +57 -0
- package/dist/adapters/crewai-adapter.d.ts.map +1 -0
- package/dist/adapters/crewai-adapter.js +164 -0
- package/dist/adapters/crewai-adapter.js.map +1 -0
- package/dist/adapters/drupal/index.d.ts +109 -0
- package/dist/adapters/drupal/index.d.ts.map +1 -0
- package/dist/adapters/drupal/index.js +292 -0
- package/dist/adapters/drupal/index.js.map +1 -0
- package/dist/adapters/langchain-adapter.d.ts +45 -0
- package/dist/adapters/langchain-adapter.d.ts.map +1 -0
- package/dist/adapters/langchain-adapter.js +133 -0
- package/dist/adapters/langchain-adapter.js.map +1 -0
- package/dist/adapters/langflow-adapter.d.ts +50 -0
- package/dist/adapters/langflow-adapter.d.ts.map +1 -0
- package/dist/adapters/langflow-adapter.js +232 -0
- package/dist/adapters/langflow-adapter.js.map +1 -0
- package/dist/adapters/openapi-adapter.d.ts +93 -0
- package/dist/adapters/openapi-adapter.d.ts.map +1 -0
- package/dist/adapters/openapi-adapter.js +311 -0
- package/dist/adapters/openapi-adapter.js.map +1 -0
- package/dist/adapters/symfony/index.d.ts +163 -0
- package/dist/adapters/symfony/index.d.ts.map +1 -0
- package/dist/adapters/symfony/index.js +271 -0
- package/dist/adapters/symfony/index.js.map +1 -0
- package/dist/cli/commands/agents-md.command.d.ts +7 -0
- package/dist/cli/commands/agents-md.command.d.ts.map +1 -0
- package/dist/cli/commands/agents-md.command.js +148 -0
- package/dist/cli/commands/agents-md.command.js.map +1 -0
- package/dist/cli/commands/contract.command.d.ts +10 -0
- package/dist/cli/commands/contract.command.d.ts.map +1 -0
- package/dist/cli/commands/contract.command.js +402 -0
- package/dist/cli/commands/contract.command.js.map +1 -0
- package/dist/cli/commands/dependencies.command.d.ts +10 -0
- package/dist/cli/commands/dependencies.command.d.ts.map +1 -0
- package/dist/cli/commands/dependencies.command.js +318 -0
- package/dist/cli/commands/dependencies.command.js.map +1 -0
- package/dist/cli/commands/deploy.command.d.ts +4 -0
- package/dist/cli/commands/deploy.command.d.ts.map +1 -0
- package/dist/cli/commands/deploy.command.js +172 -0
- package/dist/cli/commands/deploy.command.js.map +1 -0
- package/dist/cli/commands/deploy.d.ts +22 -0
- package/dist/cli/commands/deploy.d.ts.map +1 -0
- package/dist/cli/commands/deploy.js +319 -0
- package/dist/cli/commands/deploy.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/github-sync.command.d.ts +3 -0
- package/dist/cli/commands/github-sync.command.d.ts.map +1 -0
- package/dist/cli/commands/github-sync.command.js +51 -0
- package/dist/cli/commands/github-sync.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/info.command.d.ts +3 -0
- package/dist/cli/commands/info.command.d.ts.map +1 -0
- package/dist/cli/commands/info.command.js +45 -0
- package/dist/cli/commands/info.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 +139 -0
- package/dist/cli/commands/init.command.js.map +1 -0
- package/dist/cli/commands/install.command.d.ts +3 -0
- package/dist/cli/commands/install.command.d.ts.map +1 -0
- package/dist/cli/commands/install.command.js +44 -0
- package/dist/cli/commands/install.command.js.map +1 -0
- package/dist/cli/commands/migrate.command.d.ts +22 -0
- package/dist/cli/commands/migrate.command.d.ts.map +1 -0
- package/dist/cli/commands/migrate.command.js +157 -0
- package/dist/cli/commands/migrate.command.js.map +1 -0
- package/dist/cli/commands/publish.command.d.ts +3 -0
- package/dist/cli/commands/publish.command.d.ts.map +1 -0
- package/dist/cli/commands/publish.command.js +76 -0
- package/dist/cli/commands/publish.command.js.map +1 -0
- package/dist/cli/commands/quickstart.command.d.ts +10 -0
- package/dist/cli/commands/quickstart.command.d.ts.map +1 -0
- package/dist/cli/commands/quickstart.command.js +257 -0
- package/dist/cli/commands/quickstart.command.js.map +1 -0
- package/dist/cli/commands/release.command.d.ts +8 -0
- package/dist/cli/commands/release.command.d.ts.map +1 -0
- package/dist/cli/commands/release.command.js +641 -0
- package/dist/cli/commands/release.command.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 +125 -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 +76 -0
- package/dist/cli/commands/schema.command.js.map +1 -0
- package/dist/cli/commands/search.command.d.ts +3 -0
- package/dist/cli/commands/search.command.d.ts.map +1 -0
- package/dist/cli/commands/search.command.js +45 -0
- package/dist/cli/commands/search.command.js.map +1 -0
- package/dist/cli/commands/setup.command.d.ts +11 -0
- package/dist/cli/commands/setup.command.d.ts.map +1 -0
- package/dist/cli/commands/setup.command.js +350 -0
- package/dist/cli/commands/setup.command.js.map +1 -0
- package/dist/cli/commands/sync.command.d.ts +3 -0
- package/dist/cli/commands/sync.command.d.ts.map +1 -0
- package/dist/cli/commands/sync.command.js +51 -0
- package/dist/cli/commands/sync.command.js.map +1 -0
- package/dist/cli/commands/test.command.d.ts +3 -0
- package/dist/cli/commands/test.command.d.ts.map +1 -0
- package/dist/cli/commands/test.command.js +91 -0
- package/dist/cli/commands/test.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 +143 -0
- package/dist/cli/commands/validate.command.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 +148 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/utils/error-formatter.d.ts +19 -0
- package/dist/cli/utils/error-formatter.d.ts.map +1 -0
- package/dist/cli/utils/error-formatter.js +330 -0
- package/dist/cli/utils/error-formatter.js.map +1 -0
- package/dist/deploy/base-driver.d.ts +39 -0
- package/dist/deploy/base-driver.d.ts.map +1 -0
- package/dist/deploy/base-driver.js +63 -0
- package/dist/deploy/base-driver.js.map +1 -0
- package/dist/deploy/docker-driver.d.ts +32 -0
- package/dist/deploy/docker-driver.d.ts.map +1 -0
- package/dist/deploy/docker-driver.js +246 -0
- package/dist/deploy/docker-driver.js.map +1 -0
- package/dist/deploy/index.d.ts +15 -0
- package/dist/deploy/index.d.ts.map +1 -0
- package/dist/deploy/index.js +28 -0
- package/dist/deploy/index.js.map +1 -0
- package/dist/deploy/k8s-driver.d.ts +40 -0
- package/dist/deploy/k8s-driver.d.ts.map +1 -0
- package/dist/deploy/k8s-driver.js +372 -0
- package/dist/deploy/k8s-driver.js.map +1 -0
- package/dist/deploy/local-driver.d.ts +20 -0
- package/dist/deploy/local-driver.d.ts.map +1 -0
- package/dist/deploy/local-driver.js +150 -0
- package/dist/deploy/local-driver.js.map +1 -0
- package/dist/deploy/types.d.ts +103 -0
- package/dist/deploy/types.d.ts.map +1 -0
- package/dist/deploy/types.js +6 -0
- package/dist/deploy/types.js.map +1 -0
- package/dist/di-container.d.ts.map +1 -1
- package/dist/di-container.js +14 -0
- package/dist/di-container.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/mesh/client.d.ts +144 -0
- package/dist/mesh/client.d.ts.map +1 -0
- package/dist/mesh/client.js +424 -0
- package/dist/mesh/client.js.map +1 -0
- package/dist/mesh/discovery.d.ts +176 -0
- package/dist/mesh/discovery.d.ts.map +1 -0
- package/dist/mesh/discovery.js +288 -0
- package/dist/mesh/discovery.js.map +1 -0
- package/dist/mesh/index.d.ts +89 -0
- package/dist/mesh/index.d.ts.map +1 -0
- package/dist/mesh/index.js +92 -0
- package/dist/mesh/index.js.map +1 -0
- package/dist/mesh/routing.d.ts +158 -0
- package/dist/mesh/routing.d.ts.map +1 -0
- package/dist/mesh/routing.js +360 -0
- package/dist/mesh/routing.js.map +1 -0
- package/dist/mesh/types.d.ts +439 -0
- package/dist/mesh/types.d.ts.map +1 -0
- package/dist/mesh/types.js +6 -0
- package/dist/mesh/types.js.map +1 -0
- package/dist/messaging/broker.d.ts +76 -0
- package/dist/messaging/broker.d.ts.map +1 -0
- package/dist/messaging/broker.js +145 -0
- package/dist/messaging/broker.js.map +1 -0
- package/dist/messaging/channels.d.ts +70 -0
- package/dist/messaging/channels.d.ts.map +1 -0
- package/dist/messaging/channels.js +183 -0
- package/dist/messaging/channels.js.map +1 -0
- package/dist/messaging/index.d.ts +10 -0
- package/dist/messaging/index.d.ts.map +1 -0
- package/dist/messaging/index.js +10 -0
- package/dist/messaging/index.js.map +1 -0
- package/dist/messaging/protocols/memory.d.ts +83 -0
- package/dist/messaging/protocols/memory.d.ts.map +1 -0
- package/dist/messaging/protocols/memory.js +293 -0
- package/dist/messaging/protocols/memory.js.map +1 -0
- package/dist/messaging/protocols/redis.d.ts +83 -0
- package/dist/messaging/protocols/redis.d.ts.map +1 -0
- package/dist/messaging/protocols/redis.js +223 -0
- package/dist/messaging/protocols/redis.js.map +1 -0
- package/dist/messaging/types.d.ts +180 -0
- package/dist/messaging/types.d.ts.map +1 -0
- package/dist/messaging/types.js +6 -0
- package/dist/messaging/types.js.map +1 -0
- package/dist/repositories/manifest.repository.d.ts +1 -1
- package/dist/repositories/manifest.repository.d.ts.map +1 -1
- package/dist/repositories/manifest.repository.js +7 -6
- package/dist/repositories/manifest.repository.js.map +1 -1
- package/dist/repositories/schema.repository.d.ts +4 -0
- package/dist/repositories/schema.repository.d.ts.map +1 -1
- package/dist/repositories/schema.repository.js +10 -3
- package/dist/repositories/schema.repository.js.map +1 -1
- package/dist/sdk/events/cloudevents-emitter.d.ts +56 -0
- package/dist/sdk/events/cloudevents-emitter.d.ts.map +1 -0
- package/dist/sdk/events/cloudevents-emitter.js +101 -0
- package/dist/sdk/events/cloudevents-emitter.js.map +1 -0
- package/dist/sdk/events/index.d.ts +2 -0
- package/dist/sdk/events/index.d.ts.map +1 -0
- package/dist/sdk/events/index.js +2 -0
- package/dist/sdk/events/index.js.map +1 -0
- package/dist/sdk/tracing/index.d.ts +2 -0
- package/dist/sdk/tracing/index.d.ts.map +1 -0
- package/dist/sdk/tracing/index.js +2 -0
- package/dist/sdk/tracing/index.js.map +1 -0
- package/dist/sdk/tracing/w3c-baggage.d.ts +40 -0
- package/dist/sdk/tracing/w3c-baggage.d.ts.map +1 -0
- package/dist/sdk/tracing/w3c-baggage.js +148 -0
- package/dist/sdk/tracing/w3c-baggage.js.map +1 -0
- package/dist/services/agent-services/qdrant.service.d.ts +60 -0
- package/dist/services/agent-services/qdrant.service.d.ts.map +1 -0
- package/dist/services/agent-services/qdrant.service.js +168 -0
- package/dist/services/agent-services/qdrant.service.js.map +1 -0
- package/dist/services/agents-md/agents-md.service.d.ts +61 -0
- package/dist/services/agents-md/agents-md.service.d.ts.map +1 -0
- package/dist/services/agents-md/agents-md.service.js +348 -0
- package/dist/services/agents-md/agents-md.service.js.map +1 -0
- package/dist/services/deployment/deployment.service.d.ts +19 -0
- package/dist/services/deployment/deployment.service.d.ts.map +1 -0
- package/dist/services/deployment/deployment.service.js +87 -0
- package/dist/services/deployment/deployment.service.js.map +1 -0
- package/dist/services/generation.service.d.ts +3 -1
- package/dist/services/generation.service.d.ts.map +1 -1
- package/dist/services/generation.service.js +34 -68
- package/dist/services/generation.service.js.map +1 -1
- package/dist/services/github-sync/github-client.js +2 -2
- package/dist/services/github-sync/github-client.js.map +1 -1
- package/dist/services/github-sync/schemas.d.ts +1 -1
- package/dist/services/github-sync/schemas.d.ts.map +1 -1
- package/dist/services/github-sync/schemas.js.map +1 -1
- package/dist/services/github-sync/sync.service.d.ts.map +1 -1
- package/dist/services/github-sync/sync.service.js +4 -2
- package/dist/services/github-sync/sync.service.js.map +1 -1
- package/dist/services/gitlab-agent.service.d.ts.map +1 -1
- package/dist/services/gitlab-agent.service.js +3 -1
- package/dist/services/gitlab-agent.service.js.map +1 -1
- package/dist/services/messaging/example.d.ts +6 -0
- package/dist/services/messaging/example.d.ts.map +1 -0
- package/dist/services/messaging/example.js +260 -0
- package/dist/services/messaging/example.js.map +1 -0
- package/dist/services/messaging/index.d.ts +81 -0
- package/dist/services/messaging/index.d.ts.map +1 -0
- package/dist/services/messaging/index.js +85 -0
- package/dist/services/messaging/index.js.map +1 -0
- package/dist/services/messaging/memory-broker.d.ts +103 -0
- package/dist/services/messaging/memory-broker.d.ts.map +1 -0
- package/dist/services/messaging/memory-broker.js +435 -0
- package/dist/services/messaging/memory-broker.js.map +1 -0
- package/dist/services/messaging/messaging.service.d.ts +150 -0
- package/dist/services/messaging/messaging.service.d.ts.map +1 -0
- package/dist/services/messaging/messaging.service.js +456 -0
- package/dist/services/messaging/messaging.service.js.map +1 -0
- package/dist/services/messaging/messaging.types.d.ts +319 -0
- package/dist/services/messaging/messaging.types.d.ts.map +1 -0
- package/dist/services/messaging/messaging.types.js +68 -0
- package/dist/services/messaging/messaging.types.js.map +1 -0
- package/dist/services/migration.service.d.ts +45 -4
- package/dist/services/migration.service.d.ts.map +1 -1
- package/dist/services/migration.service.js +248 -31
- package/dist/services/migration.service.js.map +1 -1
- package/dist/services/registry/registry.service.d.ts +39 -0
- package/dist/services/registry/registry.service.d.ts.map +1 -0
- package/dist/services/registry/registry.service.js +169 -0
- package/dist/services/registry/registry.service.js.map +1 -0
- package/dist/services/release-automation/base-crud.service.d.ts.map +1 -1
- package/dist/services/release-automation/base-crud.service.js.map +1 -1
- package/dist/services/release-automation/merge-request.service.d.ts.map +1 -1
- package/dist/services/release-automation/merge-request.service.js +4 -4
- package/dist/services/release-automation/merge-request.service.js.map +1 -1
- package/dist/services/release-automation/milestone.service.d.ts.map +1 -1
- package/dist/services/release-automation/milestone.service.js.map +1 -1
- package/dist/services/release-automation/release.service.d.ts +4 -4
- package/dist/services/release-automation/release.service.d.ts.map +1 -1
- package/dist/services/release-automation/release.service.js +1 -3
- package/dist/services/release-automation/release.service.js.map +1 -1
- package/dist/services/release-automation/schemas/release.schema.d.ts +3 -3
- package/dist/services/release-automation/schemas/release.schema.d.ts.map +1 -1
- package/dist/services/release-automation/schemas/release.schema.js +11 -23
- package/dist/services/release-automation/schemas/release.schema.js.map +1 -1
- package/dist/services/release-automation/tag.service.d.ts.map +1 -1
- package/dist/services/release-automation/tag.service.js +4 -1
- package/dist/services/release-automation/tag.service.js.map +1 -1
- package/dist/services/release-automation/webhook.service.d.ts +2 -2
- package/dist/services/release-automation/webhook.service.d.ts.map +1 -1
- package/dist/services/release-automation/webhook.service.js +30 -17
- package/dist/services/release-automation/webhook.service.js.map +1 -1
- package/dist/services/runtime/anthropic.adapter.d.ts +145 -0
- package/dist/services/runtime/anthropic.adapter.d.ts.map +1 -0
- package/dist/services/runtime/anthropic.adapter.js +525 -0
- package/dist/services/runtime/anthropic.adapter.js.map +1 -0
- package/dist/services/runtime/azure.adapter.d.ts +389 -0
- package/dist/services/runtime/azure.adapter.d.ts.map +1 -0
- package/dist/services/runtime/azure.adapter.js +515 -0
- package/dist/services/runtime/azure.adapter.js.map +1 -0
- package/dist/services/runtime/bedrock.adapter.d.ts +170 -0
- package/dist/services/runtime/bedrock.adapter.d.ts.map +1 -0
- package/dist/services/runtime/bedrock.adapter.js +667 -0
- package/dist/services/runtime/bedrock.adapter.js.map +1 -0
- package/dist/services/runtime/claude/capability-mapper.d.ts.map +1 -1
- package/dist/services/runtime/claude/capability-mapper.js.map +1 -1
- package/dist/services/runtime/claude/claude-adapter.d.ts +1 -1
- package/dist/services/runtime/claude/claude-adapter.d.ts.map +1 -1
- package/dist/services/runtime/claude/claude-adapter.js +4 -8
- package/dist/services/runtime/claude/claude-adapter.js.map +1 -1
- package/dist/services/runtime/claude/manifest-parser.d.ts.map +1 -1
- package/dist/services/runtime/claude/manifest-parser.js +2 -2
- package/dist/services/runtime/claude/manifest-parser.js.map +1 -1
- package/dist/services/runtime/gemini.adapter.d.ts +190 -0
- package/dist/services/runtime/gemini.adapter.d.ts.map +1 -0
- package/dist/services/runtime/gemini.adapter.js +603 -0
- package/dist/services/runtime/gemini.adapter.js.map +1 -0
- package/dist/services/runtime/mistral.adapter.d.ts +201 -0
- package/dist/services/runtime/mistral.adapter.d.ts.map +1 -0
- package/dist/services/runtime/mistral.adapter.js +654 -0
- package/dist/services/runtime/mistral.adapter.js.map +1 -0
- package/dist/services/runtime/ollama.adapter.d.ts +187 -0
- package/dist/services/runtime/ollama.adapter.d.ts.map +1 -0
- package/dist/services/runtime/ollama.adapter.js +525 -0
- package/dist/services/runtime/ollama.adapter.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/test-runner/test-runner.service.d.ts +21 -0
- package/dist/services/test-runner/test-runner.service.d.ts.map +1 -0
- package/dist/services/test-runner/test-runner.service.js +91 -0
- package/dist/services/test-runner/test-runner.service.js.map +1 -0
- package/dist/services/validation.service.d.ts.map +1 -1
- package/dist/services/validation.service.js +38 -13
- package/dist/services/validation.service.js.map +1 -1
- package/dist/services/validators/anthropic.validator.d.ts.map +1 -1
- package/dist/services/validators/anthropic.validator.js +2 -5
- package/dist/services/validators/anthropic.validator.js.map +1 -1
- package/dist/services/validators/autogen.validator.d.ts.map +1 -1
- package/dist/services/validators/autogen.validator.js +1 -2
- package/dist/services/validators/autogen.validator.js.map +1 -1
- package/dist/services/validators/contract.validator.d.ts +90 -0
- package/dist/services/validators/contract.validator.d.ts.map +1 -0
- package/dist/services/validators/contract.validator.js +508 -0
- package/dist/services/validators/contract.validator.js.map +1 -0
- package/dist/services/validators/crewai.validator.d.ts.map +1 -1
- package/dist/services/validators/crewai.validator.js.map +1 -1
- package/dist/services/validators/cursor.validator.d.ts.map +1 -1
- package/dist/services/validators/cursor.validator.js.map +1 -1
- package/dist/services/validators/dependencies.validator.d.ts +104 -0
- package/dist/services/validators/dependencies.validator.d.ts.map +1 -0
- package/dist/services/validators/dependencies.validator.js +386 -0
- package/dist/services/validators/dependencies.validator.js.map +1 -0
- package/dist/services/validators/index.d.ts +1 -0
- package/dist/services/validators/index.d.ts.map +1 -1
- package/dist/services/validators/index.js +1 -0
- package/dist/services/validators/index.js.map +1 -1
- package/dist/services/validators/langchain.validator.d.ts.map +1 -1
- package/dist/services/validators/langchain.validator.js +4 -13
- package/dist/services/validators/langchain.validator.js.map +1 -1
- package/dist/services/validators/langflow.validator.d.ts.map +1 -1
- package/dist/services/validators/langflow.validator.js +1 -2
- package/dist/services/validators/langflow.validator.js.map +1 -1
- package/dist/services/validators/langgraph.validator.d.ts.map +1 -1
- package/dist/services/validators/langgraph.validator.js +1 -2
- package/dist/services/validators/langgraph.validator.js.map +1 -1
- package/dist/services/validators/llamaindex.validator.d.ts.map +1 -1
- package/dist/services/validators/llamaindex.validator.js +4 -13
- package/dist/services/validators/llamaindex.validator.js.map +1 -1
- package/dist/services/validators/messaging.validator.d.ts +77 -0
- package/dist/services/validators/messaging.validator.d.ts.map +1 -0
- package/dist/services/validators/messaging.validator.js +296 -0
- package/dist/services/validators/messaging.validator.js.map +1 -0
- package/dist/services/validators/openai.validator.d.ts.map +1 -1
- package/dist/services/validators/openai.validator.js +1 -6
- package/dist/services/validators/openai.validator.js.map +1 -1
- package/dist/services/validators/vercel-ai.validator.d.ts.map +1 -1
- package/dist/services/validators/vercel-ai.validator.js +1 -3
- package/dist/services/validators/vercel-ai.validator.js.map +1 -1
- package/dist/spec/extensions/a2a-messaging.md +471 -0
- package/dist/spec/extensions/manifest-extensions.md +550 -0
- package/dist/spec/registry/README.md +472 -0
- package/dist/spec/registry/openapi.yaml +1124 -0
- package/dist/spec/registry/registry-api.schema.json +731 -0
- package/dist/spec/registry/registry-spec.md +2239 -0
- package/dist/spec/schema/agent-test.schema.json +117 -0
- package/dist/spec/schema/components/activity-stream.schema.json +94 -0
- package/dist/spec/schema/components/constraints.schema.json +84 -0
- package/dist/spec/schema/components/dependencies.schema.json +147 -0
- package/dist/spec/schema/components/encryption.schema.json +115 -0
- package/dist/spec/schema/components/identity.schema.json +48 -0
- package/dist/spec/schema/components/index.json +37 -0
- package/dist/spec/schema/components/llm-config.schema.json +67 -0
- package/dist/spec/schema/components/metadata.schema.json +37 -0
- package/dist/spec/schema/components/tool.schema.json +64 -0
- package/dist/spec/schema/extensions/a2a.extension.schema.json +127 -0
- package/dist/spec/v0.2.8/ossa-0.2.8.schema.json +95 -1
- package/dist/spec/v0.2.9/a2a-protocol.md +1337 -0
- package/dist/spec/v0.2.9/agent.md +1946 -0
- package/dist/spec/v0.2.9/capabilities/index.yaml +25 -0
- package/dist/spec/v0.2.9/capabilities/memory.yaml +251 -0
- package/dist/spec/v0.2.9/capability-schema.md +576 -0
- package/dist/spec/v0.2.9/compliance-profiles.md +533 -0
- package/dist/spec/v0.2.9/conformance-testing.md +1527 -0
- package/dist/spec/v0.2.9/gitlab-duo-integration.md +621 -0
- package/dist/spec/v0.2.9/ossa-0.2.9.schema.json +3699 -0
- package/dist/spec/v0.2.9/runtime-semantics.md +464 -0
- package/dist/spec/v0.2.9/security-model.md +1245 -0
- package/dist/spec/v0.2.9/semantic-conventions.md +347 -0
- package/dist/spec/v0.2.9/types.ts +522 -0
- package/dist/spec/v0.3.0/UNIFIED-SCHEMA.md +120 -0
- package/dist/spec/v0.3.0/adapters/drupal.md +541 -0
- package/dist/spec/v0.3.0/adapters/symfony.md +659 -0
- package/dist/spec/v0.3.0/agent-test.schema.json +75 -0
- package/dist/spec/v0.3.0/examples/drupal-content-writer.ossa.yaml +110 -0
- package/dist/spec/v0.3.0/examples/drupal-moderation-assistant.ossa.yaml +96 -0
- package/dist/spec/v0.3.0/examples/quick-wins/complete-agent-with-quick-wins.ossa.yaml +144 -0
- package/dist/spec/v0.3.0/extensions/drupal.md +417 -0
- package/dist/spec/v0.3.0/ossa-0.3.0.schema.json +2787 -0
- package/dist/spec/v0.3.0/protocols/sse.md +494 -0
- package/dist/spec/v0.3.0/protocols/webrtc.md +600 -0
- package/dist/spec/v0.3.0/protocols/websocket.md +362 -0
- package/dist/spec/v0.3.0/schemas/agent-unified.yaml +165 -0
- package/dist/spec/v0.3.0/schemas/capabilities.yaml +102 -0
- package/dist/spec/v0.3.0/schemas/functions.yaml +75 -0
- package/dist/spec/v0.3.0/schemas/messaging/channel.schema.json +245 -0
- package/dist/spec/v0.3.0/schemas/messaging/delivery-receipt.schema.json +192 -0
- package/dist/spec/v0.3.0/schemas/messaging/message.schema.json +205 -0
- package/dist/spec/v0.3.0/schemas/messaging/subscription.schema.json +214 -0
- package/dist/spec/v0.3.0/schemas/runtime.yaml +102 -0
- package/dist/spec/v0.3.0/schemas/taxonomy.yaml +533 -0
- package/dist/spec/v0.3.0/schemas/unified-llm.yaml +91 -0
- package/dist/spec/v0.3.0/taxonomy.yaml +256 -0
- package/dist/testing/fixtures.d.ts +61 -0
- package/dist/testing/fixtures.d.ts.map +1 -0
- package/dist/testing/fixtures.js +291 -0
- package/dist/testing/fixtures.js.map +1 -0
- package/dist/testing/index.d.ts +10 -0
- package/dist/testing/index.d.ts.map +1 -0
- package/dist/testing/index.js +10 -0
- package/dist/testing/index.js.map +1 -0
- package/dist/testing/reporters/base.d.ts +24 -0
- package/dist/testing/reporters/base.d.ts.map +1 -0
- package/dist/testing/reporters/base.js +5 -0
- package/dist/testing/reporters/base.js.map +1 -0
- package/dist/testing/reporters/console.d.ts +18 -0
- package/dist/testing/reporters/console.d.ts.map +1 -0
- package/dist/testing/reporters/console.js +76 -0
- package/dist/testing/reporters/console.js.map +1 -0
- package/dist/testing/reporters/json.d.ts +29 -0
- package/dist/testing/reporters/json.d.ts.map +1 -0
- package/dist/testing/reporters/json.js +40 -0
- package/dist/testing/reporters/json.js.map +1 -0
- package/dist/testing/runner.d.ts +96 -0
- package/dist/testing/runner.d.ts.map +1 -0
- package/dist/testing/runner.js +401 -0
- package/dist/testing/runner.js.map +1 -0
- package/dist/transports/index.d.ts +8 -0
- package/dist/transports/index.d.ts.map +1 -0
- package/dist/transports/index.js +11 -0
- package/dist/transports/index.js.map +1 -0
- package/dist/transports/sse.d.ts +166 -0
- package/dist/transports/sse.d.ts.map +1 -0
- package/dist/transports/sse.js +309 -0
- package/dist/transports/sse.js.map +1 -0
- package/dist/transports/webrtc.d.ts +183 -0
- package/dist/transports/webrtc.d.ts.map +1 -0
- package/dist/transports/webrtc.js +478 -0
- package/dist/transports/webrtc.js.map +1 -0
- package/dist/transports/websocket.d.ts +204 -0
- package/dist/transports/websocket.d.ts.map +1 -0
- package/dist/transports/websocket.js +397 -0
- package/dist/transports/websocket.js.map +1 -0
- package/dist/types/generated/ossa-0.3.0.types.d.ts +316 -0
- package/dist/types/generated/ossa-0.3.0.types.d.ts.map +1 -0
- package/dist/types/generated/ossa-0.3.0.types.js +8 -0
- package/dist/types/generated/ossa-0.3.0.types.js.map +1 -0
- package/dist/types/generated/ossa-0.3.0.zod.d.ts +17 -0
- package/dist/types/generated/ossa-0.3.0.zod.d.ts.map +1 -0
- package/dist/types/generated/ossa-0.3.0.zod.js +3 -0
- package/dist/types/generated/ossa-0.3.0.zod.js.map +1 -0
- package/dist/types/index.d.ts +124 -2
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +8 -1
- package/dist/types/index.js.map +1 -1
- package/dist/types/messaging.d.ts +116 -0
- package/dist/types/messaging.d.ts.map +1 -0
- package/dist/types/messaging.js +6 -0
- package/dist/types/messaging.js.map +1 -0
- package/dist/types/policy.d.ts +377 -0
- package/dist/types/policy.d.ts.map +1 -0
- package/dist/types/policy.js +84 -0
- package/dist/types/policy.js.map +1 -0
- package/dist/types/task.d.ts +222 -0
- package/dist/types/task.d.ts.map +1 -0
- package/dist/types/task.js +40 -0
- package/dist/types/task.js.map +1 -0
- package/dist/types/workflow.d.ts +283 -0
- package/dist/types/workflow.d.ts.map +1 -0
- package/dist/types/workflow.js +51 -0
- package/dist/types/workflow.js.map +1 -0
- package/dist/utils/path-validator.d.ts +24 -0
- package/dist/utils/path-validator.d.ts.map +1 -0
- package/dist/utils/path-validator.js +70 -0
- package/dist/utils/path-validator.js.map +1 -0
- package/dist/utils/version.d.ts +17 -8
- package/dist/utils/version.d.ts.map +1 -1
- package/dist/utils/version.js +84 -30
- package/dist/utils/version.js.map +1 -1
- package/dist/utils/yaml-parser.d.ts +23 -0
- package/dist/utils/yaml-parser.d.ts.map +1 -0
- package/dist/utils/yaml-parser.js +34 -0
- package/dist/utils/yaml-parser.js.map +1 -0
- package/examples/adapters/drupal-eca-mapping.yaml +153 -0
- package/examples/adapters/drupal-eca-task.yaml +48 -0
- package/examples/adapters/drupal-flowdrop-mapping.yaml +463 -0
- package/examples/adapters/drupal-maestro-mapping.yaml +369 -0
- package/examples/adapters/mistral-README.md +367 -0
- package/examples/adapters/mistral-agent.yaml +147 -0
- package/examples/adapters/symfony-messenger-task.yaml +135 -0
- package/examples/adapters/symfony-messenger-workflow.yaml +352 -0
- package/examples/adk-integration/code-review-workflow.yml +1 -1
- package/examples/adk-integration/customer-support.yml +1 -1
- package/examples/adk-integration/data-pipeline.yml +1 -1
- package/examples/advanced/reasoning-agent.yaml +136 -0
- package/examples/advanced/workflows/hybrid-model-strategy.yaml +1 -18
- package/examples/agent-manifests/critics/critic-agent.yaml +1 -1
- package/examples/agent-manifests/governors/governor-agent.yaml +1 -1
- package/examples/agent-manifests/integrators/integrator-agent.yaml +1 -1
- package/examples/agent-manifests/judges/judge-agent.yaml +1 -1
- package/examples/agent-manifests/monitors/monitor-agent.yaml +1 -1
- package/examples/agent-manifests/orchestrators/orchestrator-agent.yaml +1 -1
- package/examples/agent-manifests/sample-compliant-agent.yaml +1 -1
- package/examples/agent-manifests/workers/worker-agent.yaml +1 -1
- package/examples/agent-mesh/README.ts +311 -0
- package/examples/agent-mesh/basic-usage.ts +461 -0
- package/examples/agents/architecture-healer-enterprise.yaml +143 -0
- package/examples/agents/dependency-healer-npm.yaml +81 -0
- package/examples/agents/spec-healer-openapi.yaml +59 -0
- package/examples/agents/wiki-healer-production.yaml +131 -0
- package/examples/agents-md/code-agent.ossa.json +100 -0
- package/examples/agents-md/monorepo-agent.ossa.yaml +180 -0
- package/examples/anthropic/claude-assistant.ossa.json +1 -1
- package/examples/anthropic-adapter-example.ts +374 -0
- package/examples/anthropic-simple.ts +70 -0
- package/examples/autogen/multi-agent.ossa.json +1 -1
- package/examples/autonomous-evolution/self-evolving-agent.ossa.yaml +37 -0
- package/examples/bridges/.gitlab-ci.yml +293 -0
- package/examples/bridges/k8s/deployment.yaml +14 -14
- package/examples/ci/multi-project-release-example.yml +401 -0
- package/examples/claude-code/code-reviewer.ossa.yaml +1 -1
- package/examples/claude-code/ossa-validator.ossa.yaml +2 -2
- package/examples/common_npm/agent-router.ossa.yaml +1 -1
- package/examples/common_npm/agent-router.v0.2.2.ossa.yaml +1 -1
- package/examples/contracts/data-consumer.ossa.yaml +171 -0
- package/examples/contracts/data-producer-v2.ossa.yaml +227 -0
- package/examples/contracts/data-producer.ossa.yaml +217 -0
- package/examples/coordinator-agent/README.md +180 -0
- package/examples/coordinator-agent/index.ts +440 -0
- package/examples/coordinator-agent/manifest.yaml +41 -0
- package/examples/crewai/research-team.ossa.json +1 -1
- package/examples/cursor/code-review-agent.ossa.json +1 -1
- package/examples/drupal/ai_agents_ossa-module/.agents/example-agent/agent.ossa.yaml +37 -0
- package/examples/drupal/gitlab-ml-recommender.ossa.yaml +1 -1
- package/examples/drupal/gitlab-ml-recommender.v0.2.2.ossa.yaml +1 -1
- package/examples/extensions/agents-md-advanced.yml +177 -0
- package/examples/extensions/agents-md-basic.yml +74 -0
- package/examples/extensions/agents-md-sync.yml +96 -0
- package/examples/extensions/agents-md-v1.yml +175 -0
- package/examples/extensions/drupal-v1.yml +1 -1
- package/examples/extensions/encryption-multi-provider.yaml +120 -0
- package/examples/extensions/kagent-v1.yml +2 -2
- package/examples/extensions/knowledge-sources.yaml +59 -0
- package/examples/extensions/mcp-full-featured.yaml +150 -0
- package/examples/getting-started/01-minimal-agent.ossa.yaml +376 -0
- package/examples/getting-started/02-agent-with-tools.ossa.yaml +866 -0
- package/examples/getting-started/03-agent-with-safety.ossa.yaml +868 -0
- package/examples/getting-started/04-agent-with-messaging.ossa.yaml +829 -0
- package/examples/getting-started/05-workflow-composition.ossa.yaml +209 -0
- package/examples/getting-started/README.md +69 -0
- package/examples/getting-started/hello-world-complete.ossa.yaml +1 -1
- package/examples/integration-patterns/agent-to-agent-orchestration.ossa.yaml +4 -4
- package/examples/kagent/compliance-validator.ossa.yaml +1 -1
- package/examples/kagent/cost-optimizer.ossa.yaml +1 -1
- package/examples/kagent/documentation-agent.ossa.yaml +1 -1
- package/examples/kagent/k8s-troubleshooter-v1.ossa.yaml +1 -1
- package/examples/kagent/k8s-troubleshooter-v1.v0.2.2.ossa.yaml +1 -1
- package/examples/kagent/k8s-troubleshooter.ossa.yaml +1 -1
- package/examples/kagent/security-scanner.ossa.yaml +1 -1
- package/examples/langchain/chain-agent.ossa.json +1 -1
- package/examples/langflow/workflow-agent.ossa.json +1 -1
- package/examples/langgraph/state-machine-agent.ossa.json +1 -1
- package/examples/llamaindex/rag-agent.ossa.json +1 -1
- package/examples/messaging/dependency-healer.ossa.yaml +354 -0
- package/examples/messaging/incident-responder.ossa.yaml +477 -0
- package/examples/messaging/routing-rules.ossa.yaml +307 -0
- package/examples/messaging/security-scanner.ossa.yaml +328 -0
- package/examples/migration-guides/from-langchain-to-ossa.yaml +4 -4
- package/examples/mistral-adapter-example.ts +435 -0
- package/examples/mistral-simple.ts +56 -0
- package/examples/multi-agent/conditional-router.ossa.yaml +1 -1
- package/examples/multi-agent/parallel-execution.ossa.yaml +1 -1
- package/examples/multi-agent/sequential-pipeline.ossa.yaml +1 -1
- package/examples/observability/activity-stream-full.yaml +133 -0
- package/examples/observability/gitlab-ci-template.yml +304 -0
- package/examples/openai/basic-agent.ossa.yaml +1 -1
- package/examples/openai/multi-tool-agent.ossa.json +1 -1
- package/examples/openai/swarm-agent.ossa.json +1 -1
- package/examples/production/document-analyzer-openai.yml +1 -1
- package/examples/quickstart/support-agent.ossa.yaml +1 -1
- package/examples/rag-agent/README.md +136 -0
- package/examples/rag-agent/index.ts +272 -0
- package/examples/rag-agent/manifest.yaml +45 -0
- package/examples/real-world/gitlab-cicd-optimizer.ossa.yaml +163 -0
- package/examples/real-world/rag-documentation-assistant.ossa.yaml +235 -0
- package/examples/reference-implementations/README.md +321 -0
- package/examples/reference-implementations/curl-scripts/01-search-agents.sh +72 -0
- package/examples/reference-implementations/curl-scripts/02-get-agent-details.sh +74 -0
- package/examples/reference-implementations/curl-scripts/03-publish-agent.sh +136 -0
- package/examples/reference-implementations/curl-scripts/04-a2a-messaging.sh +178 -0
- package/examples/reference-implementations/curl-scripts/05-discovery.sh +98 -0
- package/examples/reference-implementations/curl-scripts/README.md +277 -0
- package/examples/reference-implementations/python-client/README.md +282 -0
- package/examples/reference-implementations/python-client/examples/basic_usage.py +84 -0
- package/examples/reference-implementations/python-client/examples/publish_agent.py +137 -0
- package/examples/reference-implementations/python-client/ossa_client/__init__.py +80 -0
- package/examples/reference-implementations/python-client/ossa_client/agents.py +240 -0
- package/examples/reference-implementations/python-client/ossa_client/client.py +164 -0
- package/examples/reference-implementations/python-client/ossa_client/discovery.py +153 -0
- package/examples/reference-implementations/python-client/ossa_client/messaging.py +227 -0
- package/examples/reference-implementations/python-client/requirements.txt +2 -0
- package/examples/reference-implementations/python-client/setup.py +40 -0
- package/examples/reference-implementations/typescript-client/README.md +227 -0
- package/examples/reference-implementations/typescript-client/examples/basic-usage.ts +86 -0
- package/examples/reference-implementations/typescript-client/examples/messaging.ts +185 -0
- package/examples/reference-implementations/typescript-client/examples/publish-agent.ts +138 -0
- package/examples/reference-implementations/typescript-client/package.json +40 -0
- package/examples/reference-implementations/typescript-client/src/agents.ts +285 -0
- package/examples/reference-implementations/typescript-client/src/client.ts +161 -0
- package/examples/reference-implementations/typescript-client/src/discovery.ts +244 -0
- package/examples/reference-implementations/typescript-client/src/index.ts +67 -0
- package/examples/reference-implementations/typescript-client/src/messaging.ts +385 -0
- package/examples/reference-implementations/typescript-client/tsconfig.json +25 -0
- package/examples/runtime-adapters/bedrock-claude-example.ossa.yaml +465 -0
- package/examples/schema/reusable-components.yaml +95 -0
- package/examples/tasks/batch-email-sender.yaml +105 -0
- package/examples/tasks/data-transform.yaml +82 -0
- package/examples/tasks/publish-content.yaml +86 -0
- package/examples/templates/ossa-compliance.yaml +1 -1
- package/examples/unified/security-scanner.ossa.yaml +311 -0
- package/examples/vercel/edge-agent.ossa.json +1 -1
- package/examples/workflow-agent/README.md +175 -0
- package/examples/workflow-agent/index.ts +408 -0
- package/examples/workflow-agent/manifest.yaml +41 -0
- package/examples/workflows/batch-email-campaign.yaml +140 -0
- package/examples/workflows/content-review-publish.yaml +156 -0
- package/examples/workflows/simple-etl.yaml +151 -0
- package/openapi/agent-communication.yaml +1113 -0
- package/openapi/agent-crud.yaml +1124 -0
- package/openapi/agent-discovery.yaml +677 -0
- package/openapi/agent-identity.yaml +620 -0
- package/openapi/protocols/sse-streams.yaml +479 -0
- package/openapi/protocols/websocket-events.yaml +427 -0
- package/openapi/schemas/discovery.json +488 -0
- package/package.json +93 -33
- package/schemas/agent.json +523 -0
- package/schemas/communication.json +897 -0
- package/schemas/identity.json +482 -0
- package/spec/extensions/a2a-messaging.md +471 -0
- package/spec/extensions/manifest-extensions.md +550 -0
- package/spec/registry/README.md +472 -0
- package/spec/registry/openapi.yaml +1124 -0
- package/spec/registry/registry-api.schema.json +731 -0
- package/spec/registry/registry-spec.md +2239 -0
- package/spec/schema/agent-test.schema.json +117 -0
- package/spec/schema/components/activity-stream.schema.json +94 -0
- package/spec/schema/components/constraints.schema.json +84 -0
- package/spec/schema/components/dependencies.schema.json +147 -0
- package/spec/schema/components/encryption.schema.json +115 -0
- package/spec/schema/components/identity.schema.json +48 -0
- package/spec/schema/components/index.json +37 -0
- package/spec/schema/components/llm-config.schema.json +67 -0
- package/spec/schema/components/metadata.schema.json +37 -0
- package/spec/schema/components/tool.schema.json +64 -0
- package/spec/schema/extensions/a2a.extension.schema.json +127 -0
- package/spec/v0.2.8/ossa-0.2.8.schema.json +95 -1
- package/spec/v0.2.9/a2a-protocol.md +1337 -0
- package/spec/v0.2.9/agent.md +1946 -0
- package/spec/v0.2.9/capabilities/index.yaml +25 -0
- package/spec/v0.2.9/capabilities/memory.yaml +251 -0
- package/spec/v0.2.9/capability-schema.md +576 -0
- package/spec/v0.2.9/compliance-profiles.md +533 -0
- package/spec/v0.2.9/conformance-testing.md +1527 -0
- package/spec/v0.2.9/gitlab-duo-integration.md +621 -0
- package/spec/v0.2.9/ossa-0.2.9.schema.json +3699 -0
- package/spec/v0.2.9/runtime-semantics.md +464 -0
- package/spec/v0.2.9/security-model.md +1245 -0
- package/spec/v0.2.9/semantic-conventions.md +347 -0
- package/spec/v0.2.9/types.ts +522 -0
- package/spec/v0.3.0/UNIFIED-SCHEMA.md +120 -0
- package/spec/v0.3.0/adapters/drupal.md +541 -0
- package/spec/v0.3.0/adapters/symfony.md +659 -0
- package/spec/v0.3.0/agent-test.schema.json +75 -0
- package/spec/v0.3.0/examples/drupal-content-writer.ossa.yaml +110 -0
- package/spec/v0.3.0/examples/drupal-moderation-assistant.ossa.yaml +96 -0
- package/spec/v0.3.0/examples/quick-wins/complete-agent-with-quick-wins.ossa.yaml +144 -0
- package/spec/v0.3.0/extensions/drupal.md +417 -0
- package/spec/v0.3.0/ossa-0.3.0.schema.json +2787 -0
- package/spec/v0.3.0/protocols/sse.md +494 -0
- package/spec/v0.3.0/protocols/webrtc.md +600 -0
- package/spec/v0.3.0/protocols/websocket.md +362 -0
- package/spec/v0.3.0/schemas/agent-unified.yaml +165 -0
- package/spec/v0.3.0/schemas/capabilities.yaml +102 -0
- package/spec/v0.3.0/schemas/functions.yaml +75 -0
- package/spec/v0.3.0/schemas/messaging/channel.schema.json +245 -0
- package/spec/v0.3.0/schemas/messaging/delivery-receipt.schema.json +192 -0
- package/spec/v0.3.0/schemas/messaging/message.schema.json +205 -0
- package/spec/v0.3.0/schemas/messaging/subscription.schema.json +214 -0
- package/spec/v0.3.0/schemas/runtime.yaml +102 -0
- package/spec/v0.3.0/schemas/taxonomy.yaml +533 -0
- package/spec/v0.3.0/schemas/unified-llm.yaml +91 -0
- package/spec/v0.3.0/taxonomy.yaml +256 -0
- package/.cursorrules +0 -84
- package/.devfile.yaml +0 -87
- package/.env.example +0 -63
- package/.eslintrc.cjs +0 -43
- package/.github/ISSUE_TEMPLATE/bug_report.yml +0 -63
- package/.github/ISSUE_TEMPLATE/feature_request.yml +0 -40
- package/.github/PULL_REQUEST_TEMPLATE.md +0 -39
- package/.github/dependabot.yml +0 -58
- package/.github/workflows/ci.yml +0 -154
- package/.github/workflows/codeql.yml +0 -41
- package/.github/workflows/dependabot-auto-merge.yml +0 -28
- package/.github/workflows/dependabot-comment.yml +0 -34
- package/.github/workflows/pr-comment.yml +0 -33
- package/.github/workflows/release.yml +0 -103
- package/.husky/pre-commit +0 -5
- package/.kiro/config.json +0 -21
- package/.kiro/settings/mcp.json +0 -61
- package/.kiro/specs/scripts-migration-api-first/design.md +0 -883
- package/.kiro/specs/scripts-migration-api-first/requirements.md +0 -165
- package/.kiro/specs/scripts-migration-api-first/tasks.md +0 -539
- package/.kiro/specs/website-brand-identity/design.md +0 -1060
- package/.kiro/specs/website-brand-identity/requirements.md +0 -287
- package/.kiro/specs/website-brand-identity/tasks.md +0 -981
- package/.prettierignore +0 -7
- package/.prettierrc.json +0 -10
- package/.redocly.yaml +0 -9
- package/.releaserc.json +0 -85
- package/.version.json +0 -6
- package/.wiki-config.json +0 -24
- package/CODEOWNERS +0 -75
- package/CONTRIBUTING.md +0 -267
- package/bin/validate-ossa-0.2.2.ts +0 -244
- package/bin/validate-ossa-0.2.4.ts +0 -244
- package/docs/brand-guide/01-brand-overview.md +0 -37
- package/docs/brand-guide/02-logo-usage.md +0 -43
- package/docs/brand-guide/03-color-palette.md +0 -70
- package/docs/brand-guide/04-typography.md +0 -82
- package/docs/brand-guide/05-voice-and-tone.md +0 -108
- package/docs/brand-guide/06-visual-elements.md +0 -137
- package/docs/brand-guide/07-application-examples.md +0 -153
- package/docs/brand-guide/OssaLogo/OssA_Logo.svg +0 -21
- package/docs/brand-guide/OssaLogo/brand.af +0 -0
- package/docs/brand-guide/README.md +0 -107
- package/docs/comparison.md +0 -315
- package/docs/operations/automation-roadmap.md +0 -245
- package/docs/operations/github-sync-strategy.md +0 -357
- package/eslint-report.json +0 -1
- package/gl-code-quality-report.json +0 -62
- package/infrastructure/docker-compose.yml +0 -33
- package/infrastructure/gitlab-agent/rbac.yaml +0 -126
- package/infrastructure/gitlab-agent/values.yaml +0 -150
- package/infrastructure/k8s/monitoring/00-namespace.yaml +0 -7
- package/infrastructure/k8s/monitoring/01-prometheus.yaml +0 -142
- package/infrastructure/k8s/monitoring/02-grafana.yaml +0 -63
- package/infrastructure/k8s/monitoring/03-lightweight.yaml +0 -121
- package/infrastructure/k8s/monitoring/README.md +0 -73
- package/infrastructure/k8s/monitoring/deploy.sh +0 -38
- package/junit.xml +0 -1
- package/llms-ctx-full.txt +0 -39
- package/llms-ctx.txt +0 -39
- package/llms.txt +0 -47
- package/release.config.js +0 -79
- package/scripts/README.md +0 -103
- package/scripts/auto-rebase-mrs.ts +0 -106
- package/scripts/batch-dependabot.sh +0 -57
- package/scripts/bump-version.ts +0 -57
- package/scripts/configure-gitlab-branch-protection.ts +0 -95
- package/scripts/create-issue-helper.ts +0 -238
- package/scripts/create-milestone-issue.ts +0 -73
- package/scripts/enhanced-version-manager.ts +0 -257
- package/scripts/eslint-to-codequality.cjs +0 -34
- package/scripts/fix-schema-formats.js +0 -82
- package/scripts/gen-types.ts +0 -51
- package/scripts/gen-zod.ts +0 -51
- package/scripts/generate-agents-catalog.ts +0 -77
- package/scripts/generate-api-docs.ts +0 -218
- package/scripts/generate-cli-docs.ts +0 -410
- package/scripts/generate-config-docs.ts +0 -109
- package/scripts/generate-errors-docs.ts +0 -76
- package/scripts/generate-examples-docs.ts +0 -99
- package/scripts/generate-llms-ctx.sh +0 -17
- package/scripts/generate-schema-docs.ts +0 -317
- package/scripts/generate-types-docs.ts +0 -48
- package/scripts/lowercase-docs.ts +0 -43
- package/scripts/manage-milestone-mrs.ts +0 -279
- package/scripts/process-doc-templates.ts +0 -37
- package/scripts/rebase-all-mrs.sh +0 -75
- package/scripts/schemas/package.schema.ts +0 -75
- package/scripts/setup-branch-protection.sh +0 -33
- package/scripts/sync-github-pr.sh +0 -48
- package/scripts/sync-version.js +0 -32
- package/scripts/sync-version.ts +0 -39
- package/scripts/sync-versions.ts +0 -488
- package/scripts/sync-wiki.sh +0 -50
- package/scripts/validate-all.js +0 -127
- package/scripts/validate-schema.ts +0 -50
- package/test-results/junit.xml +0 -299
- package/test-results.xml +0 -1
|
@@ -0,0 +1,515 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Azure OpenAI Runtime Adapter
|
|
3
|
+
* Runs OSSA agents using Azure OpenAI's function calling API with streaming and tool support
|
|
4
|
+
*
|
|
5
|
+
* This adapter extends the OpenAI SDK with Azure-specific configuration:
|
|
6
|
+
* - Custom endpoint URLs (Azure OpenAI resource endpoints)
|
|
7
|
+
* - API version headers (Azure requires explicit API versioning)
|
|
8
|
+
* - Deployment names (Azure uses deployment names instead of model names)
|
|
9
|
+
*
|
|
10
|
+
* @example Basic Usage
|
|
11
|
+
* ```typescript
|
|
12
|
+
* const manifest: OssaManifest = {
|
|
13
|
+
* apiVersion: 'v0.3.0',
|
|
14
|
+
* kind: 'Agent',
|
|
15
|
+
* metadata: { name: 'my-agent' },
|
|
16
|
+
* spec: { role: 'Assistant' },
|
|
17
|
+
* extensions: {
|
|
18
|
+
* azure: {
|
|
19
|
+
* endpoint: 'https://my-resource.openai.azure.com',
|
|
20
|
+
* deployment: 'gpt-4o-mini',
|
|
21
|
+
* api_version: '2024-02-15-preview'
|
|
22
|
+
* }
|
|
23
|
+
* }
|
|
24
|
+
* };
|
|
25
|
+
*
|
|
26
|
+
* const adapter = new AzureAdapter(manifest);
|
|
27
|
+
* adapter.initialize();
|
|
28
|
+
* const response = await adapter.chat('Hello!');
|
|
29
|
+
* ```
|
|
30
|
+
*/
|
|
31
|
+
import OpenAI from 'openai';
|
|
32
|
+
/**
|
|
33
|
+
* Azure OpenAI Runtime Adapter
|
|
34
|
+
*
|
|
35
|
+
* This adapter bridges OSSA agent manifests to Azure OpenAI's API, handling:
|
|
36
|
+
* - Azure-specific authentication and endpoint configuration
|
|
37
|
+
* - Deployment name mapping (Azure uses deployments instead of model names)
|
|
38
|
+
* - API version headers required by Azure
|
|
39
|
+
* - Function calling and tool execution
|
|
40
|
+
* - Multi-turn conversations with tool support
|
|
41
|
+
*
|
|
42
|
+
* Configuration Priority (highest to lowest):
|
|
43
|
+
* 1. extensions.azure.* (Azure-specific settings)
|
|
44
|
+
* 2. spec.llm.* (Generic LLM settings)
|
|
45
|
+
* 3. Hard-coded defaults
|
|
46
|
+
*/
|
|
47
|
+
export class AzureAdapter {
|
|
48
|
+
client;
|
|
49
|
+
manifest;
|
|
50
|
+
tools = new Map();
|
|
51
|
+
messages = [];
|
|
52
|
+
deployment;
|
|
53
|
+
/**
|
|
54
|
+
* Creates a new Azure OpenAI adapter instance
|
|
55
|
+
*
|
|
56
|
+
* @param manifest - OSSA agent manifest with Azure configuration in extensions.azure
|
|
57
|
+
* @param apiKey - Azure OpenAI API key (optional, falls back to AZURE_OPENAI_API_KEY env var)
|
|
58
|
+
*
|
|
59
|
+
* @throws {Error} If Azure endpoint or deployment name is not configured
|
|
60
|
+
*
|
|
61
|
+
* @example
|
|
62
|
+
* ```typescript
|
|
63
|
+
* const adapter = new AzureAdapter(manifest, process.env.AZURE_OPENAI_API_KEY);
|
|
64
|
+
* ```
|
|
65
|
+
*/
|
|
66
|
+
constructor(manifest, apiKey) {
|
|
67
|
+
this.manifest = manifest;
|
|
68
|
+
// Extract Azure configuration
|
|
69
|
+
const azureConfig = this.manifest.extensions?.azure;
|
|
70
|
+
const endpoint = azureConfig?.endpoint;
|
|
71
|
+
const apiVersion = azureConfig?.api_version || '2024-02-15-preview';
|
|
72
|
+
if (!endpoint) {
|
|
73
|
+
throw new Error('Azure endpoint is required. Set extensions.azure.endpoint in manifest.');
|
|
74
|
+
}
|
|
75
|
+
// Get deployment name (required for Azure)
|
|
76
|
+
this.deployment = this.getDeployment();
|
|
77
|
+
// Initialize OpenAI client with Azure configuration
|
|
78
|
+
this.client = new OpenAI({
|
|
79
|
+
apiKey: apiKey || process.env.AZURE_OPENAI_API_KEY,
|
|
80
|
+
baseURL: `${endpoint}/openai/deployments/${this.deployment}`,
|
|
81
|
+
defaultQuery: { 'api-version': apiVersion },
|
|
82
|
+
defaultHeaders: { 'api-key': apiKey || process.env.AZURE_OPENAI_API_KEY || '' },
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Get the Azure deployment name from manifest
|
|
87
|
+
*
|
|
88
|
+
* Deployment names in Azure OpenAI are distinct from model names and must be
|
|
89
|
+
* configured in the Azure portal. They map to specific model versions.
|
|
90
|
+
*
|
|
91
|
+
* Priority:
|
|
92
|
+
* 1. extensions.azure.deployment (Azure-specific)
|
|
93
|
+
* 2. spec.llm.model (Generic LLM config, treated as deployment name)
|
|
94
|
+
* 3. Default: 'gpt-4o-mini' (must exist as deployment in Azure)
|
|
95
|
+
*
|
|
96
|
+
* @returns Azure deployment name
|
|
97
|
+
*
|
|
98
|
+
* @private
|
|
99
|
+
*/
|
|
100
|
+
getDeployment() {
|
|
101
|
+
// Check Azure extension first
|
|
102
|
+
if (this.manifest.extensions?.azure?.deployment) {
|
|
103
|
+
return this.manifest.extensions.azure.deployment;
|
|
104
|
+
}
|
|
105
|
+
// Fall back to LLM model config (Azure treats this as deployment name)
|
|
106
|
+
if (this.manifest.spec.llm?.model) {
|
|
107
|
+
return this.manifest.spec.llm.model;
|
|
108
|
+
}
|
|
109
|
+
// Default deployment name
|
|
110
|
+
return 'gpt-4o-mini';
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* Get system prompt from manifest
|
|
114
|
+
*
|
|
115
|
+
* The system prompt defines the agent's role and behavior. Azure OpenAI uses
|
|
116
|
+
* the same system message format as standard OpenAI.
|
|
117
|
+
*
|
|
118
|
+
* Priority:
|
|
119
|
+
* 1. extensions.azure.instructions (Azure-specific instructions)
|
|
120
|
+
* 2. spec.role (Generic role definition)
|
|
121
|
+
*
|
|
122
|
+
* @returns System prompt text
|
|
123
|
+
*
|
|
124
|
+
* @private
|
|
125
|
+
*/
|
|
126
|
+
getSystemPrompt() {
|
|
127
|
+
// Check Azure extension first
|
|
128
|
+
if (this.manifest.extensions?.azure?.instructions) {
|
|
129
|
+
return this.manifest.extensions.azure.instructions;
|
|
130
|
+
}
|
|
131
|
+
// Fall back to role
|
|
132
|
+
return this.manifest.spec.role;
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Get temperature setting for response generation
|
|
136
|
+
*
|
|
137
|
+
* Temperature controls randomness in responses (0.0 = deterministic, 2.0 = very random).
|
|
138
|
+
* Azure OpenAI supports the same temperature range as OpenAI.
|
|
139
|
+
*
|
|
140
|
+
* Priority:
|
|
141
|
+
* 1. extensions.azure.temperature
|
|
142
|
+
* 2. spec.llm.temperature
|
|
143
|
+
* 3. Default: 0.7
|
|
144
|
+
*
|
|
145
|
+
* @returns Temperature value (0.0 to 2.0)
|
|
146
|
+
*
|
|
147
|
+
* @private
|
|
148
|
+
*/
|
|
149
|
+
getTemperature() {
|
|
150
|
+
if (this.manifest.extensions?.azure?.temperature !== undefined) {
|
|
151
|
+
return this.manifest.extensions.azure.temperature;
|
|
152
|
+
}
|
|
153
|
+
if (this.manifest.spec.llm?.temperature !== undefined) {
|
|
154
|
+
return this.manifest.spec.llm.temperature;
|
|
155
|
+
}
|
|
156
|
+
return 0.7;
|
|
157
|
+
}
|
|
158
|
+
/**
|
|
159
|
+
* Get max tokens setting for response generation
|
|
160
|
+
*
|
|
161
|
+
* Max tokens limits the length of generated responses. Azure OpenAI has the
|
|
162
|
+
* same token limits as OpenAI (varies by model).
|
|
163
|
+
*
|
|
164
|
+
* Priority:
|
|
165
|
+
* 1. extensions.azure.max_tokens
|
|
166
|
+
* 2. spec.llm.maxTokens
|
|
167
|
+
* 3. Default: undefined (uses model's default)
|
|
168
|
+
*
|
|
169
|
+
* @returns Max tokens value or undefined
|
|
170
|
+
*
|
|
171
|
+
* @private
|
|
172
|
+
*/
|
|
173
|
+
getMaxTokens() {
|
|
174
|
+
if (this.manifest.extensions?.azure?.max_tokens) {
|
|
175
|
+
return this.manifest.extensions.azure.max_tokens;
|
|
176
|
+
}
|
|
177
|
+
if (this.manifest.spec.llm?.maxTokens) {
|
|
178
|
+
return this.manifest.spec.llm.maxTokens;
|
|
179
|
+
}
|
|
180
|
+
return undefined;
|
|
181
|
+
}
|
|
182
|
+
/**
|
|
183
|
+
* Convert OSSA tools to OpenAI function calling format
|
|
184
|
+
*
|
|
185
|
+
* This method transforms OSSA tool definitions into Azure OpenAI's function calling
|
|
186
|
+
* schema. Azure uses the same function calling format as OpenAI.
|
|
187
|
+
*
|
|
188
|
+
* Tool sources (in priority order):
|
|
189
|
+
* 1. extensions.azure.tools_mapping - Azure-specific tool definitions
|
|
190
|
+
* 2. spec.tools - Generic OSSA tool definitions
|
|
191
|
+
*
|
|
192
|
+
* @returns Array of OpenAI ChatCompletionTool objects
|
|
193
|
+
*
|
|
194
|
+
* @private
|
|
195
|
+
*/
|
|
196
|
+
getAzureTools() {
|
|
197
|
+
const azureTools = [];
|
|
198
|
+
// Check for tools_mapping in Azure extension
|
|
199
|
+
const toolsMapping = this.manifest.extensions?.azure?.tools_mapping;
|
|
200
|
+
if (toolsMapping) {
|
|
201
|
+
for (const mapping of toolsMapping) {
|
|
202
|
+
const toolDef = {
|
|
203
|
+
name: mapping.azure_tool_name || mapping.ossa_capability,
|
|
204
|
+
description: mapping.description || `Execute ${mapping.ossa_capability}`,
|
|
205
|
+
parameters: mapping.parameters || {
|
|
206
|
+
type: 'object',
|
|
207
|
+
properties: {},
|
|
208
|
+
required: [],
|
|
209
|
+
},
|
|
210
|
+
};
|
|
211
|
+
this.tools.set(toolDef.name, toolDef);
|
|
212
|
+
azureTools.push({
|
|
213
|
+
type: 'function',
|
|
214
|
+
function: {
|
|
215
|
+
name: toolDef.name,
|
|
216
|
+
description: toolDef.description,
|
|
217
|
+
parameters: toolDef.parameters,
|
|
218
|
+
},
|
|
219
|
+
});
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
// Also check spec.tools for basic tool definitions
|
|
223
|
+
if (this.manifest.spec.tools) {
|
|
224
|
+
for (const tool of this.manifest.spec.tools) {
|
|
225
|
+
if (tool.name && !this.tools.has(tool.name)) {
|
|
226
|
+
const toolDef = {
|
|
227
|
+
name: tool.name,
|
|
228
|
+
description: `Execute ${tool.name} (${tool.type})`,
|
|
229
|
+
parameters: {
|
|
230
|
+
type: 'object',
|
|
231
|
+
properties: {},
|
|
232
|
+
required: [],
|
|
233
|
+
},
|
|
234
|
+
};
|
|
235
|
+
this.tools.set(tool.name, toolDef);
|
|
236
|
+
azureTools.push({
|
|
237
|
+
type: 'function',
|
|
238
|
+
function: {
|
|
239
|
+
name: tool.name,
|
|
240
|
+
description: toolDef.description,
|
|
241
|
+
parameters: toolDef.parameters,
|
|
242
|
+
},
|
|
243
|
+
});
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
return azureTools;
|
|
248
|
+
}
|
|
249
|
+
/**
|
|
250
|
+
* Register a tool handler for runtime execution
|
|
251
|
+
*
|
|
252
|
+
* Tool handlers are async functions that execute when the LLM calls a tool.
|
|
253
|
+
* They receive parsed arguments and return string results.
|
|
254
|
+
*
|
|
255
|
+
* @param name - Tool name (must match a tool defined in manifest)
|
|
256
|
+
* @param handler - Async function that executes the tool
|
|
257
|
+
*
|
|
258
|
+
* @example
|
|
259
|
+
* ```typescript
|
|
260
|
+
* adapter.registerToolHandler('get_weather', async (args) => {
|
|
261
|
+
* const { location } = args;
|
|
262
|
+
* const weather = await fetchWeather(location);
|
|
263
|
+
* return JSON.stringify(weather);
|
|
264
|
+
* });
|
|
265
|
+
* ```
|
|
266
|
+
*/
|
|
267
|
+
registerToolHandler(name, handler) {
|
|
268
|
+
const tool = this.tools.get(name);
|
|
269
|
+
if (tool) {
|
|
270
|
+
tool.handler = handler;
|
|
271
|
+
}
|
|
272
|
+
}
|
|
273
|
+
/**
|
|
274
|
+
* Execute a tool call from the LLM
|
|
275
|
+
*
|
|
276
|
+
* This internal method handles tool execution during conversation turns.
|
|
277
|
+
* It looks up the registered handler and invokes it with the provided arguments.
|
|
278
|
+
*
|
|
279
|
+
* @param name - Tool name
|
|
280
|
+
* @param args - Parsed tool arguments from LLM
|
|
281
|
+
* @returns Tool execution result as string
|
|
282
|
+
*
|
|
283
|
+
* @private
|
|
284
|
+
*/
|
|
285
|
+
async executeTool(name, args) {
|
|
286
|
+
const tool = this.tools.get(name);
|
|
287
|
+
if (!tool) {
|
|
288
|
+
return `Error: Tool '${name}' not found`;
|
|
289
|
+
}
|
|
290
|
+
if (tool.handler) {
|
|
291
|
+
try {
|
|
292
|
+
return await tool.handler(args);
|
|
293
|
+
}
|
|
294
|
+
catch (error) {
|
|
295
|
+
return `Error executing ${name}: ${error instanceof Error ? error.message : String(error)}`;
|
|
296
|
+
}
|
|
297
|
+
}
|
|
298
|
+
// Default: return a placeholder response if no handler registered
|
|
299
|
+
return `Tool '${name}' executed with args: ${JSON.stringify(args)}`;
|
|
300
|
+
}
|
|
301
|
+
/**
|
|
302
|
+
* Initialize the conversation
|
|
303
|
+
*
|
|
304
|
+
* Sets up the conversation history with the system prompt. Must be called
|
|
305
|
+
* before the first chat() call.
|
|
306
|
+
*
|
|
307
|
+
* @example
|
|
308
|
+
* ```typescript
|
|
309
|
+
* adapter.initialize();
|
|
310
|
+
* const response = await adapter.chat('Hello!');
|
|
311
|
+
* ```
|
|
312
|
+
*/
|
|
313
|
+
initialize() {
|
|
314
|
+
this.messages = [
|
|
315
|
+
{
|
|
316
|
+
role: 'system',
|
|
317
|
+
content: this.getSystemPrompt(),
|
|
318
|
+
},
|
|
319
|
+
];
|
|
320
|
+
}
|
|
321
|
+
/**
|
|
322
|
+
* Send a message and get a response
|
|
323
|
+
*
|
|
324
|
+
* This is the main method for interacting with the Azure OpenAI agent. It handles:
|
|
325
|
+
* - Adding user messages to conversation history
|
|
326
|
+
* - Calling Azure OpenAI API with proper authentication and headers
|
|
327
|
+
* - Executing tool calls requested by the LLM
|
|
328
|
+
* - Multi-turn conversations with tool results
|
|
329
|
+
* - Automatic retry until final text response or max turns reached
|
|
330
|
+
*
|
|
331
|
+
* The method automatically handles the tool execution loop:
|
|
332
|
+
* 1. Send messages to Azure OpenAI
|
|
333
|
+
* 2. If LLM requests tool calls, execute them
|
|
334
|
+
* 3. Send tool results back to LLM
|
|
335
|
+
* 4. Repeat until LLM provides final text response
|
|
336
|
+
*
|
|
337
|
+
* @param userMessage - The user's message text
|
|
338
|
+
* @param options - Optional runtime configuration
|
|
339
|
+
* @returns Final text response from the LLM
|
|
340
|
+
*
|
|
341
|
+
* @throws {Error} If Azure API call fails
|
|
342
|
+
*
|
|
343
|
+
* @example Basic usage
|
|
344
|
+
* ```typescript
|
|
345
|
+
* const response = await adapter.chat('What is the weather in Paris?');
|
|
346
|
+
* console.log(response);
|
|
347
|
+
* ```
|
|
348
|
+
*
|
|
349
|
+
* @example With verbose logging
|
|
350
|
+
* ```typescript
|
|
351
|
+
* const response = await adapter.chat('Calculate 2+2', { verbose: true });
|
|
352
|
+
* // Logs: [Calling 1 tool(s)...]
|
|
353
|
+
* // Logs: → calculate({"expression":"2+2"})
|
|
354
|
+
* // Logs: ← 4
|
|
355
|
+
* ```
|
|
356
|
+
*/
|
|
357
|
+
async chat(userMessage, options) {
|
|
358
|
+
// Add user message
|
|
359
|
+
this.messages.push({
|
|
360
|
+
role: 'user',
|
|
361
|
+
content: userMessage,
|
|
362
|
+
});
|
|
363
|
+
const tools = this.getAzureTools();
|
|
364
|
+
let turnCount = 0;
|
|
365
|
+
const maxTurns = options?.maxTurns || 10;
|
|
366
|
+
while (turnCount < maxTurns) {
|
|
367
|
+
turnCount++;
|
|
368
|
+
// Call Azure OpenAI
|
|
369
|
+
const response = await this.client.chat.completions.create({
|
|
370
|
+
model: this.deployment, // Azure requires deployment name here
|
|
371
|
+
messages: this.messages,
|
|
372
|
+
tools: tools.length > 0 ? tools : undefined,
|
|
373
|
+
temperature: this.getTemperature(),
|
|
374
|
+
max_tokens: this.getMaxTokens(),
|
|
375
|
+
});
|
|
376
|
+
const choice = response.choices[0];
|
|
377
|
+
const message = choice.message;
|
|
378
|
+
// Add assistant message to history
|
|
379
|
+
this.messages.push(message);
|
|
380
|
+
// Check if we need to call tools
|
|
381
|
+
if (message.tool_calls && message.tool_calls.length > 0) {
|
|
382
|
+
if (options?.verbose) {
|
|
383
|
+
console.log(`\n[Calling ${message.tool_calls.length} tool(s)...]`);
|
|
384
|
+
}
|
|
385
|
+
// Execute each tool call
|
|
386
|
+
for (const toolCall of message.tool_calls) {
|
|
387
|
+
// Type guard for function tool calls
|
|
388
|
+
if (toolCall.type !== 'function')
|
|
389
|
+
continue;
|
|
390
|
+
const funcCall = toolCall;
|
|
391
|
+
const args = JSON.parse(funcCall.function.arguments);
|
|
392
|
+
if (options?.verbose) {
|
|
393
|
+
console.log(` → ${funcCall.function.name}(${JSON.stringify(args)})`);
|
|
394
|
+
}
|
|
395
|
+
const result = await this.executeTool(funcCall.function.name, args);
|
|
396
|
+
if (options?.verbose) {
|
|
397
|
+
console.log(` ← ${result.substring(0, 100)}${result.length > 100 ? '...' : ''}`);
|
|
398
|
+
}
|
|
399
|
+
// Add tool result to messages
|
|
400
|
+
this.messages.push({
|
|
401
|
+
role: 'tool',
|
|
402
|
+
tool_call_id: toolCall.id,
|
|
403
|
+
content: result,
|
|
404
|
+
});
|
|
405
|
+
}
|
|
406
|
+
// Continue the loop to get the final response
|
|
407
|
+
continue;
|
|
408
|
+
}
|
|
409
|
+
// No tool calls, return the response
|
|
410
|
+
return message.content || '';
|
|
411
|
+
}
|
|
412
|
+
return 'Max turns reached without completion';
|
|
413
|
+
}
|
|
414
|
+
/**
|
|
415
|
+
* Get agent information
|
|
416
|
+
*
|
|
417
|
+
* Returns metadata about the configured agent including deployment name,
|
|
418
|
+
* available tools, and provider identifier.
|
|
419
|
+
*
|
|
420
|
+
* @returns Object containing agent name, deployment, tools array, and provider
|
|
421
|
+
*
|
|
422
|
+
* @example
|
|
423
|
+
* ```typescript
|
|
424
|
+
* const info = adapter.getAgentInfo();
|
|
425
|
+
* console.log(`Agent: ${info.name}`);
|
|
426
|
+
* console.log(`Deployment: ${info.deployment}`);
|
|
427
|
+
* console.log(`Tools: ${info.tools.join(', ')}`);
|
|
428
|
+
* console.log(`Provider: ${info.provider}`); // 'azure'
|
|
429
|
+
* ```
|
|
430
|
+
*/
|
|
431
|
+
getAgentInfo() {
|
|
432
|
+
return {
|
|
433
|
+
name: this.manifest.metadata.name,
|
|
434
|
+
deployment: this.deployment,
|
|
435
|
+
tools: Array.from(this.tools.keys()),
|
|
436
|
+
provider: 'azure',
|
|
437
|
+
};
|
|
438
|
+
}
|
|
439
|
+
/**
|
|
440
|
+
* Get conversation history
|
|
441
|
+
*
|
|
442
|
+
* Returns the full conversation history including system messages, user messages,
|
|
443
|
+
* assistant responses, and tool calls/results. Useful for debugging or saving
|
|
444
|
+
* conversation state.
|
|
445
|
+
*
|
|
446
|
+
* @returns Array of conversation messages
|
|
447
|
+
*
|
|
448
|
+
* @example
|
|
449
|
+
* ```typescript
|
|
450
|
+
* const history = adapter.getConversationHistory();
|
|
451
|
+
* console.log(`Messages: ${history.length}`);
|
|
452
|
+
* ```
|
|
453
|
+
*/
|
|
454
|
+
getConversationHistory() {
|
|
455
|
+
return this.messages;
|
|
456
|
+
}
|
|
457
|
+
/**
|
|
458
|
+
* Clear conversation history
|
|
459
|
+
*
|
|
460
|
+
* Resets the conversation to initial state (only system message remains).
|
|
461
|
+
* Call this to start a fresh conversation without recreating the adapter.
|
|
462
|
+
*
|
|
463
|
+
* @example
|
|
464
|
+
* ```typescript
|
|
465
|
+
* adapter.clearHistory();
|
|
466
|
+
* adapter.initialize(); // Re-add system prompt
|
|
467
|
+
* ```
|
|
468
|
+
*/
|
|
469
|
+
clearHistory() {
|
|
470
|
+
this.messages = [];
|
|
471
|
+
}
|
|
472
|
+
/**
|
|
473
|
+
* Get available tools
|
|
474
|
+
*
|
|
475
|
+
* Returns all registered tool definitions including their schemas and handlers.
|
|
476
|
+
*
|
|
477
|
+
* @returns Array of tool definitions
|
|
478
|
+
*
|
|
479
|
+
* @example
|
|
480
|
+
* ```typescript
|
|
481
|
+
* const tools = adapter.getTools();
|
|
482
|
+
* for (const tool of tools) {
|
|
483
|
+
* console.log(`${tool.name}: ${tool.description}`);
|
|
484
|
+
* }
|
|
485
|
+
* ```
|
|
486
|
+
*/
|
|
487
|
+
getTools() {
|
|
488
|
+
return Array.from(this.tools.values());
|
|
489
|
+
}
|
|
490
|
+
/**
|
|
491
|
+
* Get the OpenAI client instance
|
|
492
|
+
*
|
|
493
|
+
* Provides direct access to the underlying OpenAI SDK client configured for Azure.
|
|
494
|
+
* Use this for advanced scenarios not covered by the adapter API.
|
|
495
|
+
*
|
|
496
|
+
* @returns Configured OpenAI client instance
|
|
497
|
+
*
|
|
498
|
+
* @example Advanced usage with streaming
|
|
499
|
+
* ```typescript
|
|
500
|
+
* const client = adapter.getClient();
|
|
501
|
+
* const stream = await client.chat.completions.create({
|
|
502
|
+
* model: adapter.getAgentInfo().deployment,
|
|
503
|
+
* messages: adapter.getConversationHistory(),
|
|
504
|
+
* stream: true,
|
|
505
|
+
* });
|
|
506
|
+
* for await (const chunk of stream) {
|
|
507
|
+
* process.stdout.write(chunk.choices[0]?.delta?.content || '');
|
|
508
|
+
* }
|
|
509
|
+
* ```
|
|
510
|
+
*/
|
|
511
|
+
getClient() {
|
|
512
|
+
return this.client;
|
|
513
|
+
}
|
|
514
|
+
}
|
|
515
|
+
//# sourceMappingURL=azure.adapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"azure.adapter.js","sourceRoot":"","sources":["../../../src/services/runtime/azure.adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AWS Bedrock Runtime Adapter
|
|
3
|
+
* Runs OSSA agents using AWS Bedrock with support for Claude and Titan models
|
|
4
|
+
* Supports streaming via InvokeModelWithResponseStream and tool calling via Converse API
|
|
5
|
+
*/
|
|
6
|
+
import { BedrockRuntimeClient, type Message, type ToolSpecification, type ToolInputSchema } from '@aws-sdk/client-bedrock-runtime';
|
|
7
|
+
import type { OssaAgent } from '../../types/index.js';
|
|
8
|
+
/**
|
|
9
|
+
* Bedrock extension from OSSA manifest
|
|
10
|
+
*/
|
|
11
|
+
export interface BedrockExtension {
|
|
12
|
+
enabled?: boolean;
|
|
13
|
+
region: string;
|
|
14
|
+
profile?: string;
|
|
15
|
+
model_id: string;
|
|
16
|
+
system?: string;
|
|
17
|
+
temperature?: number;
|
|
18
|
+
max_tokens?: number;
|
|
19
|
+
top_p?: number;
|
|
20
|
+
stop_sequences?: string[];
|
|
21
|
+
tools?: ToolSpecification[];
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Extended OSSA manifest with Bedrock extension
|
|
25
|
+
*/
|
|
26
|
+
export interface OssaManifestWithBedrock extends OssaAgent {
|
|
27
|
+
extensions?: {
|
|
28
|
+
bedrock?: BedrockExtension;
|
|
29
|
+
[key: string]: unknown;
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Runtime options for Bedrock adapter
|
|
34
|
+
*/
|
|
35
|
+
export interface BedrockRunOptions {
|
|
36
|
+
verbose?: boolean;
|
|
37
|
+
maxTurns?: number;
|
|
38
|
+
stream?: boolean;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Tool definition with handler
|
|
42
|
+
*/
|
|
43
|
+
export interface ToolDefinition {
|
|
44
|
+
name: string;
|
|
45
|
+
description: string;
|
|
46
|
+
input_schema: ToolInputSchema;
|
|
47
|
+
handler?: (args: Record<string, unknown>) => Promise<string>;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Agent information
|
|
51
|
+
*/
|
|
52
|
+
export interface AgentInfo {
|
|
53
|
+
name: string;
|
|
54
|
+
model: string;
|
|
55
|
+
tools: string[];
|
|
56
|
+
provider: 'bedrock';
|
|
57
|
+
region: string;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* AWS Bedrock adapter for executing OSSA agents with Claude and Titan models
|
|
61
|
+
*
|
|
62
|
+
* Supported models:
|
|
63
|
+
* - Claude 3.5 Sonnet: anthropic.claude-3-5-sonnet-20241022-v2:0
|
|
64
|
+
* - Claude 3 Sonnet: anthropic.claude-3-sonnet-20240229-v1:0
|
|
65
|
+
* - Claude 3 Haiku: anthropic.claude-3-haiku-20240307-v1:0
|
|
66
|
+
* - Claude 3 Opus: anthropic.claude-3-opus-20240229-v1:0
|
|
67
|
+
* - Titan Text G1: amazon.titan-text-express-v1
|
|
68
|
+
* - Titan Text Premier: amazon.titan-text-premier-v1:0
|
|
69
|
+
*/
|
|
70
|
+
export declare class BedrockAdapter {
|
|
71
|
+
private client;
|
|
72
|
+
private manifest;
|
|
73
|
+
private tools;
|
|
74
|
+
private conversationHistory;
|
|
75
|
+
private region;
|
|
76
|
+
private modelId;
|
|
77
|
+
constructor(manifest: OssaManifestWithBedrock, config?: {
|
|
78
|
+
profile?: string;
|
|
79
|
+
});
|
|
80
|
+
/**
|
|
81
|
+
* Get the model ID to use from manifest
|
|
82
|
+
*/
|
|
83
|
+
private getModelId;
|
|
84
|
+
/**
|
|
85
|
+
* Check if model supports Converse API (required for tool calling)
|
|
86
|
+
* Claude 3+ and Titan models support Converse API
|
|
87
|
+
*/
|
|
88
|
+
private supportsConverseAPI;
|
|
89
|
+
/**
|
|
90
|
+
* Get system prompt from manifest
|
|
91
|
+
*/
|
|
92
|
+
private getSystemPrompt;
|
|
93
|
+
/**
|
|
94
|
+
* Get max tokens configuration
|
|
95
|
+
*/
|
|
96
|
+
private getMaxTokens;
|
|
97
|
+
/**
|
|
98
|
+
* Get temperature configuration
|
|
99
|
+
*/
|
|
100
|
+
private getTemperature;
|
|
101
|
+
/**
|
|
102
|
+
* Get top_p configuration
|
|
103
|
+
*/
|
|
104
|
+
private getTopP;
|
|
105
|
+
/**
|
|
106
|
+
* Get stop sequences
|
|
107
|
+
*/
|
|
108
|
+
private getStopSequences;
|
|
109
|
+
/**
|
|
110
|
+
* Convert OSSA tools to Bedrock tool format
|
|
111
|
+
*/
|
|
112
|
+
private getBedrockTools;
|
|
113
|
+
/**
|
|
114
|
+
* Generate input schema from OSSA tool spec
|
|
115
|
+
*/
|
|
116
|
+
private generateInputSchema;
|
|
117
|
+
/**
|
|
118
|
+
* Register a tool handler
|
|
119
|
+
*/
|
|
120
|
+
registerToolHandler(name: string, handler: (args: Record<string, unknown>) => Promise<string>): void;
|
|
121
|
+
/**
|
|
122
|
+
* Execute a tool call
|
|
123
|
+
*/
|
|
124
|
+
private executeTool;
|
|
125
|
+
/**
|
|
126
|
+
* Initialize the conversation
|
|
127
|
+
*/
|
|
128
|
+
initialize(): void;
|
|
129
|
+
/**
|
|
130
|
+
* Send a message and get a response using Converse API (with tool support)
|
|
131
|
+
*/
|
|
132
|
+
chat(userMessage: string, options?: BedrockRunOptions): Promise<string>;
|
|
133
|
+
/**
|
|
134
|
+
* Basic chat without tool support (for models that don't support Converse API)
|
|
135
|
+
*/
|
|
136
|
+
private chatBasic;
|
|
137
|
+
/**
|
|
138
|
+
* Build prompt for basic models
|
|
139
|
+
*/
|
|
140
|
+
private buildPrompt;
|
|
141
|
+
/**
|
|
142
|
+
* Stream a response with tool support using ConverseStream API
|
|
143
|
+
*/
|
|
144
|
+
chatStream(userMessage: string, options?: BedrockRunOptions): AsyncGenerator<string, void, unknown>;
|
|
145
|
+
/**
|
|
146
|
+
* Basic streaming without tool support
|
|
147
|
+
*/
|
|
148
|
+
private chatStreamBasic;
|
|
149
|
+
/**
|
|
150
|
+
* Get agent info
|
|
151
|
+
*/
|
|
152
|
+
getAgentInfo(): AgentInfo;
|
|
153
|
+
/**
|
|
154
|
+
* Get conversation history
|
|
155
|
+
*/
|
|
156
|
+
getConversationHistory(): Message[];
|
|
157
|
+
/**
|
|
158
|
+
* Clear conversation history
|
|
159
|
+
*/
|
|
160
|
+
clearHistory(): void;
|
|
161
|
+
/**
|
|
162
|
+
* Get available tools
|
|
163
|
+
*/
|
|
164
|
+
getTools(): ToolDefinition[];
|
|
165
|
+
/**
|
|
166
|
+
* Get the Bedrock client (for advanced usage)
|
|
167
|
+
*/
|
|
168
|
+
getClient(): BedrockRuntimeClient;
|
|
169
|
+
}
|
|
170
|
+
//# sourceMappingURL=bedrock.adapter.d.ts.map
|