Compatibility¶
This page describes practical compatibility boundaries for Bernstein integrations.
Last updated: 2026-07-16
Runtime compatibility¶
- Python: project targets Python 3.12+.
- Task server/API: FastAPI-based local or remote server operation.
- CLI adapters: the full roster registered in
registry.py(plus thegenericcatch-all) insrc/bernstein/adapters/, including the OpenAI Agents SDK v2 adapter (openai_agents), CLM gateway adapter (clm), Devin Terminal adapter (devin_terminal), JetBrains Junie (junie), AWS Q Developer (q_dev), and the DeepSeek V4 family routed through theollamaadapter. Runbernstein integrations listfor the current set.
Supported CLI agent adapters¶
| Adapter | Provider | Structured Output | MCP |
|---|---|---|---|
claude | Anthropic | JSON schema enforced | Yes |
codex | OpenAI | JSON (--json) | No |
gemini | JSON (--output-format json) | No | |
antigravity | Google (alias of gemini, enterprise / API-key lane) | JSON (--output-format json) | No |
agy | Google (Antigravity successor CLI, consumer lane) | JSON (--output-format json) | No |
openai_agents | OpenAI (Agents SDK v2) | JSONL event stream | Yes (Bernstein-bridged) |
clm | Customer-side NIM / vLLM gateway | No | No |
devin_terminal | Cognition | No | No |
junie | JetBrains (BYOK multi-provider) | No | No |
q_dev | AWS Q Developer (legacy q CLI) | No | No |
aider | Multi | No | No |
amp | Sourcegraph | No | No |
qwen | Multi | No | No |
ollama | Local (incl. DeepSeek V4-Flash + V4-Pro) | No | No |
cody | Sourcegraph | No | No |
cursor | Cursor | No | Yes |
goose | Block | No | No |
continue | Multi | No | No |
opencode | Multi | JSON (--format json) | No |
kiro | AWS | No | No |
kilo | Stackblitz | No | Yes (ACP/MCP) |
cloudflare | Cloudflare | No | No |
iac | N/A (Terraform/Pulumi) | No | No |
generic | Any | Depends on CLI | No |
The detailed comparison matrix with cost tier, reasoning grade, and recommended use cases lives in ADAPTER_GUIDE.md.
Support modules¶
The adapter package also ships cross-cutting support modules (caching, conformance testing, environment isolation, plugin SDK, registry, skill injection, and more). The canonical table lives in ADAPTER_GUIDE.md.
Compatibility details can vary by adapter version and local toolchain.
Protocol and integration layers¶
MCP¶
- Bernstein includes an MCP server (
src/bernstein/core/protocols/mcp_server.py) exposed viabernstein mcp. - MCP tool registry with auto-discovery and per-task configuration.
- MCP gateway proxy (
bernstein gateway) for routing MCP traffic. - MCP health monitoring, lazy discovery, sandbox, marketplace, and metrics modules in
src/bernstein/core/protocols/. - MCP auth lifecycle management and version compatibility checking.
- MCP composition and skill bridge for combining tools across servers.
- Practical compatibility depends on client/runtime transport expectations.
A2A¶
- A2A task/artifact routes implemented in task routes.
- A2A federation support (
a2a_federation.py) for cross-instance agent coordination. - A2A available as part of the server API surface.
ACP¶
- ACP IDE bridge (
acp_ide_bridge.py) for editor integration. - ACP-related compatibility workflows and spec docs exist.
- Treat ACP support as integration-dependent rather than one fixed matrix.
Protocol negotiation¶
- Runtime protocol version handshake (
protocol_negotiation.py) for MCP/A2A/ACP. - Schema registry (
schema_registry.py) for versioned message schemas. - Ensures protocol compatibility is detected at connection time, not at failure time.
Quality gates¶
Bernstein ships an expanded quality gate pipeline in src/bernstein/core/quality/:
- Standard gates: lint, type-check, tests, coverage
- Architecture conformance (
arch_conformance.py,arch_rules.py) - Benchmark gate (
benchmark_gate.py,perf_benchmark_gate.py) - Mutation testing (
mutation_testing.py,test_mutation_verify.py) - Dead code detection (
dead_code_detector.py) - Dependency scanning (
dependency_scan.py,dep_validator.py) - Flaky test detection (
flaky_detector.py) - Integration test generation (
integration_test_gen.py) - Cross-model verification (
cross_model_verifier.py) - Consensus verification (
consensus_verifier.py) - LLM judge (
llm_judge.py) - Gate caching (
gate_cache.py) and plugin system (gate_plugins.py)
Cost and quota management¶
- Peak-hour scheduling (
cost/peak_hour_router.py) for time-of-day cost optimization - Cost anomaly detection, forecasting, and root cause analysis
- Budget actions and completion budgets
- Cost arbitrage across providers
- Cloud cost export integration
How to verify in your environment¶
Use environment-specific validation instead of relying on static matrices:
- Run
bernstein doctor. - Run your target CLI adapter smoke checks (
bernstein test-adapter <name>). - Validate required API endpoints (
/status,/tasks,/metrics, protocol-specific routes). - If using remote workers, validate cluster endpoints and auth paths.
- Generate a debug bundle (
bernstein debug) for comprehensive triage information.
Notes on historical matrices¶
Older protocol matrices in docs/workflows are useful as references for prior CI checks, but they should not be treated as evergreen compatibility guarantees for all environments.