Skip to content
Pyrula

Integrations

Pyrula doesn’t ask you to throw out what you already have. The integrations wrap tools and agents from other frameworks so they run inside a Pyrula turn, which means they get durability, replay, event transport, and worker orchestration without rewriting them.

Everything imports from one place:

from pyrula.agents.integrations import (
from_langchain_tool,
from_pydantic_ai_tool,
langgraph_agent,
as_langgraph_node,
pydantic_ai_agent,
openai_agents_agent,
crewai_agent,
)

Tool adapters wrap a single tool from another framework as a Pyrula @tool. You pass the result to an @agent like any native tool. from_langchain_tool and from_pydantic_ai_tool work this way, and the wrapped call is journaled as a durable step inside a run.

Framework wrappers wrap a whole agent or graph as a Pyrula @agent. The framework runs inside the turn while Pyrula owns the lifecycle. The framework’s own events are forwarded into the run stream as framework:event, each tagged with the turn id and an event index so you can correlate them. The framework’s final output becomes the turn result. langgraph_agent, pydantic_ai_agent, openai_agents_agent, and crewai_agent work this way.

Durable nodes go the other direction: as_langgraph_node drops a durable Pyrula workflow into a graph you already run, so one graph step is journaled, crash-safe, and resumable, with human-in-the-loop bridged to the host’s own interrupt.

The inner framework still does its own model calls and tool execution. Pyrula records its events, not its internal steps, so replay resumes the turn but won’t reach inside a half-finished framework run. Treat the wrapped run as one durable unit.

Which of these gives you durability, and how to move work across that line, is worth understanding before you build on it. See What’s durable, and what isn’t.

Each integration needs its framework installed. Some have a Pyrula extra:

IntegrationInstall
LangChain toolspip install pyrula-agents[langchain]
LangGraphpip install langgraph
PydanticAIpip install pyrula-agents[pydantic-ai]
OpenAI Agents SDKpip install openai-agents
CrewAIpip install crewai