Framework ecosystem

Existing agent frameworks can keep their orchestration layer and gain a stronger communication layer.

`bca2p` is designed to sit above tools, agents, graph runtimes, and transport protocols as a semantic coordination layer: typed receptors, scoped signaling, complexes, quorum, homeostasis, and causal feedback.

Integration matrix
LayerWhat bca2p addsBest fit
Semantic layerSignals, receptors, scopes, complexes, quorum, and homeostasis.All frameworks
Runtime layerNative execution, graph adapters, checkpointing, and replay.LangGraph, native bca2p
Tool and agent layerSubagent wrappers, tool metadata, typed handoffs, and middleware.LangChain, CrewAI, Google ADK
Transport bridgeA2A-compatible message exchange with signal metadata and artifacts.A2A Protocol, remote agents
Learning layerCausal feedback, counterfactual replay, and communication policy updates.Any traceable runtime
Adapter flow
01
existing agent
02
bca2p receptor
03
typed delivery
04
causal feedback
05
policy update
01
tool call
02
signal envelope
03
scope match
04
checkpoint
05
replay
01
remote agent
02
A2A bridge
03
artifact refs
04
response signal
05
trace lineage
LangChain

Agent API and tool-first composition

Use `bca2p` to replace implicit subagent messaging with typed signals, receptor-aware tool invocation, quorum-driven escalation, and causal metadata on each handoff.

structured subagent tool contracts

signal-aware middleware

causal feedback on tool and agent routing

LangGraph

Stateful graph orchestration and replay

Use `bca2p` to bring biological communication semantics into graph nodes, channels, checkpointing, and replay rather than treating communication as ordinary state mutation.

receptor-bound routing in graph nodes

complex formation over graph branches

signal lineage layered onto existing replay

CrewAI

Role-oriented multi-agent teams

Use `bca2p` to give role-based crews explicit signaling modes, scoped dissemination, and homeostatic damping instead of relying on role prompts alone.

clear local vs global crew signaling

quorum-based coordination semantics

causal diagnosis of crew behavior

A2A Protocol

Interoperable agent-to-agent transport

Use `bca2p` as the semantic layer above transport so independent agents exchange typed biological signals, artifacts, and causal context rather than opaque payloads.

transport plus signaling semantics

artifact-aware vesicle-style exchange

cross-system signal normalization

Google ADK

Modular agent development and orchestration

Use `bca2p` to define receptor contracts, topology policy, quorum, and causal feedback around ADK agents, tools, sessions, and workflow agents.

typed communication around ADK agents

state-aware signaling policies

research-grade route analysis

Cell signaling deliverables

The biological layer is not decorative. It gives framework users concrete coordination primitives.

Cell signaling as a software design primitive

Autocrine, paracrine, endocrine, juxtacrine, and synaptic patterns map cleanly to self-regulation, local coordination, global broadcast, direct contact, and persistent weighted links between agents.

Causal inference as a coordination primitive

Signals are not just logged; they can be attributed, replayed, damped, amplified, and compared counterfactually so the communication policy evolves with evidence.

System homeostasis as an engineering primitive

The SDK treats overload, route instability, retry storms, and noisy senders as first-class phenomena that the system should regulate automatically.

Adapter-style demos
LangChain
Layer typed signaling over subagents and tools
middleware = BioAgentMiddleware(agent_id="planner")

signal = middleware.build_signal_for_tool(
    agent_id="billing_agent",
    recipient_scope="billing",
    payload={"ticket_id": "T-44", "priority": "high"},
)

# receptor-aware routing
# quorum-based escalation
# causal metadata on each handoff
LangGraph
Bind signaling semantics to graph execution
graph = BioGraph()
graph.add_agent("planner", planner_handler)
graph.add_quorum_rule(...)

adapter = LangGraphAdapter(graph)
compiled = adapter.to_state_graph()

# replay remains useful
# communication gains biological semantics
A2A / ADK
Transport interoperability plus signaling semantics
request = A2ABridge.signal_to_send_request(signal)

# A2A moves the payload
# bca2p defines the signal meaning
# artifact and causal metadata survive the hop