Skip to main content
SuperOptiX Logo

SuperOptiX AI

Agent-to-Agent (A2A) Interoperability and Optimization Layer

Agent-to-agent communication, without framework lock-in.

Make the agents you already run callable by any other agent, and get them discovered.


What it does

Agents built on different frameworks cannot call each other. A2A is the protocol that lets them, and SuperOptiX gives an agent an A2A interface without asking you to rewrite it.

Point it at an agent you already run. SuperOptiX reads its structure, works out the skills a calling agent would route on, and writes an Agent Card and a conformant server. Your code is not modified.

Being reachable is only half the problem. Whether another agent chooses to call yours depends on how its card describes it, so SuperOptiX also measures that and improves it.

Install

One line, on macOS, Linux and WSL. It installs uv if it is missing, then installs SuperOptiX into an isolated tool environment. It never uses sudo.

curl -fsSL https://superoptix.ai/install.sh | sh

Extras and an exact version can be selected with environment variables:

curl -fsSL https://superoptix.ai/install.sh | SUPEROPTIX_EXTRAS=a2a sh
curl -fsSL https://superoptix.ai/install.sh | SUPEROPTIX_VERSION=0.3.5 sh

If you already have uv and would rather run it yourself:

uv tool install superoptix

To adapt or serve agents over A2A:

uv tool install superoptix --with "superoptix[a2a]"

To add SuperOptiX to an existing project:

uv add superoptix

Adapt an existing agent

super a2a adapt --entrypoint mycrew:crew --framework crewai

This writes three files to ./a2a:

File Contents
agent-card.json A2A 1.0 Agent Card, advertising both the 1.0 and 0.3 spec lines
a2a_server.py ASGI application that imports your agent and serves it
agentspec.json The generated intermediate representation

Serve it with any ASGI host:

uvicorn a2a.a2a_server:app --port 8000
curl localhost:8000/.well-known/agent-card.json

The framework is detected when you omit --framework. Use --url to set the address the card advertises, and --out to choose the output directory.

Supported runtimes

Runtime --framework Skills derived from
DSPy dspy Signature instructions, inputs and outputs
CrewAI crewai Crew tasks, or agent roles when there are none
OpenAI Agents SDK openai Tool names and descriptions
Pydantic AI pydantic-ai Function toolset entries
Google ADK google-adk Agent description, plus sub-agents
Claude Agent SDK claude-sdk Agent definition or system prompt
DeepAgents deepagents Subagent names and descriptions
Microsoft Agent Framework microsoft Agent description and instructions

Install the matching extra to work with a runtime, for example uv tool install superoptix --with "superoptix[frameworks-openai]".

CrewAI installs separately, because it requires chromadb~=1.1.0 while the vector store extras require chromadb>=1.5.5:

uv tool install superoptix --with "crewai>=1.15"

Conformance

Measured against the official A2A Technology Compatibility Kit:

Level Passed / exercised Not exercised
MUST 73 / 73 21
SHOULD 7 / 7 4
MAY 4 / 4 0

Zero failures. Every requirement the TCK is able to exercise against the conformance harness passes.

The TCK also prints a headline percentage, currently 77.7% at MUST. That figure counts the 25 requirements it cannot exercise here as non-compliant. They break down as 13 for authentication and TLS, 4 for Agent Card JWS signatures, 4 for cross-binding equivalence, 3 for version negotiation probes and 1 for the gRPC binding. None of them are failures, and none can be exercised until those features exist. Authentication, card signing and a gRPC binding are not implemented today.

Run it yourself with super a2a adapt, the TCK SUT harness and .github/workflows/a2a-conformance.yml, which is a manual workflow that fails on any conformance failure rather than on a percentage.

An adapted agent scores lower on the headline figure than the SuperOptiX endpoint because the TCK drives protocol states through magic messageId prefixes that a production agent should not honour.

A live endpoint runs at a2a.superoptix.ai, with its Agent Card published at superoptix.ai/.well-known/agent-card.json.

Protocol surface

All eleven A2A 1.0 methods answer. Push notification configuration and the extended agent card return the errors the specification defines for an agent that does not offer them.

Both the JSON-RPC 2.0 and HTTP+JSON bindings are served. One endpoint handles A2A 1.0 and 0.3, selected with the A2A-Version request header, because five of the eight supported runtimes declare no A2A dependency and the three that do sit below 1.0.

gRPC and signed Agent Cards are not implemented.

Agents adapted by SuperOptiX keep using their MCP tools. SuperOptiX changes how an agent is reached rather than how it works, and exposing an agent as an MCP server is not supported.

Discoverability

A calling agent decides whether to invoke yours by reading skills[].description on your card. Those strings are the routing interface.

Four sibling skills, identical queries, differing only in how each describes itself:

Catalogue Invocation Discovery
Vague 12.5% 75%
Specific 100% 100%

superoptix.protocols.a2a.routing scores this, and GEPA improves it by rewriting the descriptions. On the vague catalogue above it raises invocation from 12.5% to 75%.

Compiling from a specification

SuperOptiX also compiles agents from SuperSpec, a declarative YAML format, into native code for any supported runtime.

super agent pull developer
super agent compile developer --framework dspy
super agent run developer --framework dspy --goal "Design a migration strategy"

GEPA optimization is available on the compiled agent:

super agent compile developer --framework dspy --optimize
super agent optimize developer --framework dspy --auto light

Release records

super agent evaluate can write an Agent Quality Record: what was measured, what held, and the way back.

super agent evaluate developer --gauge-out record.yaml

The format is SuperGauge. The record carries the playbook digest, the scenario manifest, the agent's declared capabilities, and interop.routing_invocation, which reports how often a calling agent selects yours from a catalogue. That becomes a quality dimension once agents route work to one another. See Agent Quality Records.

Documentation

Full documentation is at superagenticai.github.io/superoptix.

Telemetry

SuperOptiX collects anonymous usage data. Disable it with:

export SUPEROPTIX_TELEMETRY=false

Links

License

Apache License 2.0. See LICENCE.

Release files for superoptix 0.3.7

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for superoptix 0.3.7
File Size Uploaded
superoptix-0.3.7.tar.gz 5.6 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for superoptix 0.3.7
File Interpreter ABI Platform
superoptix-0.3.7-py3-none-any.whl Python 3 none any Details

Total release size: 6.9 MB

Release files / superoptix-0.3.7.tar.gz

Download URL superoptix-0.3.7.tar.gz
Size 5.6 MB
Tags Source
SHA-256 checksum
How to use checksums
61318a70e3b3363d9fe8c30ed9239266cb606ff507aca31e8a21c96400c38679
BLAKE2b-256 checksum
How to use checksums
7822115cbddc62893cb5c424e941da307fdc4091bd87d4bbc6fdd830faae1ec8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.10 {"installer":{"name":"uv","version":"0.12.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / superoptix-0.3.7-py3-none-any.whl

Download URL superoptix-0.3.7-py3-none-any.whl
Size 1.4 MB
Tags Python 3
SHA-256 checksum
How to use checksums
6a4690c863f52b1e646af03c1b67031bb47c239848f3962b9cda0f023914d9c3
BLAKE2b-256 checksum
How to use checksums
6f4d5570482781b4128a821003afb589dc2d4c503d340a3bde96bf90b2d578dd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.10 {"installer":{"name":"uv","version":"0.12.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release history Release notifications | RSS feed

0.3.11

2 release files

0.3.10

2 release files

0.3.9

2 release files

0.3.8

2 release files

This release

0.3.7 This release

2 release files

0.3.6

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.25

2 release files

0.2.23

2 release files

0.2.22

2 release files

0.2.21

2 release files

0.2.20

2 release files

0.2.19

2 release files

0.2.9

2 release files

0.2.8

2 release files

0.2.7

2 release files

0.2.6

2 release files

0.2.5

2 release files

0.2.4

2 release files

0.2.3

1 release file

0.2.2

1 release file

0.2.1

1 release file

0.2.0

1 release file

0.1.9

1 release file

0.1.8

1 release file

0.1.7

1 release file

0.1.6

1 release file

0.1.5

1 release file

0.1.4

1 release file

0.1.3

1 release file

0.1.2

1 release file

0.1.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page