Skip to content
Pyrula

CrewAI

crewai_agent wraps a CrewAI Crew as a Pyrula @agent. The crew runs inside the turn and its output becomes the turn result. Needs pip install crewai.

from pyrula.agents.integrations import crewai_agent
crew_agent = crewai_agent(my_crew, name="content-crew")

The wrapped agent takes an optional inputs dict and runs the crew’s kickoff_async. It collects step output through the crew’s step_callback, then emits each completed step as framework:event once the kickoff finishes, and returns the serialized crew output.

Unlike the streaming wrappers, CrewAI steps are emitted after the run completes rather than live, because that’s when the crew hands them back. The turn result is still the crew’s final output.