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,)Three patterns
Section titled “Three patterns”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.
What you give up, and how to get it back
Section titled “What you give up, and how to get it back”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.
Install
Section titled “Install”Each integration needs its framework installed. Some have a Pyrula extra:
| Integration | Install |
|---|---|
| LangChain tools | pip install pyrula-agents[langchain] |
| LangGraph | pip install langgraph |
| PydanticAI | pip install pyrula-agents[pydantic-ai] |
| OpenAI Agents SDK | pip install openai-agents |
| CrewAI | pip install crewai |