Integration Guides

Integrate ACGP with popular agent frameworks and protocols.


Supported Integrations

  • LangChain Integration

    LangChain - Automatic governance for chains, tools, and agents

    Status: Stable

  • LangGraph Integration

    LangGraph - Stateful graph governance with node-level control

    Status: Stable

  • AGNO Integration

    AGNO - Multi-agent orchestration with routing governance

    Status: Stable

  • CrewAI Integration

    CrewAI - Task-based team workflows with role governance

    Status: Stable

  • Autogen Integration

    Autogen - Conversational agents with message governance

    Status: Stable

  • Microsoft Agent Framework

    MS Agent Framework - Production agents with Azure integration

    Status: Stable

  • MCP Integration

    Model Context Protocol - Connect ACGP with MCP-based agents and tools

    Status: Stable

  • A2A Integration

    Agent-to-Agent Protocol - Enable multi-agent governance

    Status: Beta

  • Custom Protocols

    Wrap any agent framework with ACGP governance

    Status: Stable


Integration Patterns

Wrapper Pattern

Wrap existing agents without modification:

from acgp import GovernanceWrapper

wrapped_agent = GovernanceWrapper(
    agent=my_existing_agent,
    acl_tier="ACL-2"
)

Middleware Pattern

Add ACGP as middleware in your agent pipeline:

agent_pipeline = [
    input_processor,
    acgp_governance_middleware,  # ACGP here
    action_executor
]

Native Integration

Build agents with ACGP from the start:

class MyGovernedAgent:
    def __init__(self):
        self.steward = GovernanceSteward(acl_tier="ACL-2")

    def act(self, request):
        trace = self.create_trace(request)
        result = self.steward.evaluate(trace)
        if result.intervention == "OK":
            return self.execute(trace.action)

Quick Start Examples

LangChain

from acgp_langchain import GovernedChain
from acgp import GovernanceSteward

steward = GovernanceSteward(blueprint_file="blueprint.yaml")
governed_agent = GovernedChain(langchain_agent, steward)
result = governed_agent.run("Process this request")

LangGraph

from acgp_langgraph import GovernedGraph
from acgp import GovernanceSteward

steward = GovernanceSteward(blueprint_file="blueprint.yaml")
governed_graph = GovernedGraph(langgraph_compiled, steward)
result = governed_graph.invoke({"input": "data"})

AGNO

from acgp_agno import GovernedAgent, GovernedTeam
from acgp import GovernanceSteward

steward = GovernanceSteward(blueprint_file="blueprint.yaml")
governed_agent = GovernedAgent(agno_agent, steward)
result = governed_agent.run("Execute task")

CrewAI

from acgp_crewai import GovernedCrew
from acgp import GovernanceSteward

steward = GovernanceSteward(blueprint_file="blueprint.yaml")
governed_crew = GovernedCrew(crew, steward)
result = governed_crew.kickoff()

Autogen

from acgp_autogen import GovernedConversableAgent
from acgp import GovernanceSteward

steward = GovernanceSteward(blueprint_file="blueprint.yaml")
governed_agent = GovernedConversableAgent(autogen_agent, steward)
governed_agent.send("Hello", recipient)

Microsoft Agent Framework

from acgp_ms_agents import ACGPAgent
from acgp import GovernanceSteward

steward = GovernanceSteward(blueprint_file="blueprint.yaml")
governed_agent = ACGPAgent(ms_agent, steward)
result = governed_agent.execute("Process request")

Custom Agents

See Custom Protocols for wrapping any agent.


MCP Integration Examples