Skip to main content

chain

Run agents in sequence.

Function​

async def chain(agents: list[Agent], prompt: str) -> str
ParameterTypeDescription
agentslist[Agent]Agents to run in order
promptstrInitial prompt

Returns: Final output from last agent.

chain_sync​

def chain_sync(agents: list[Agent], prompt: str) -> str

Synchronous version.

How it works​

prompt → agent1.run() → output → agent2.run() → output → agent3.run() → result

Each agent receives the previous agent's output as its prompt.

Example​

from pure_agents import Agent, chain

researcher = Agent(template="researcher")
writer = Agent(template="creative")

result = await chain([researcher, writer], "The history of Python")

Sync example​

from pure_agents import chain_sync

result = chain_sync([agent1, agent2], "My prompt")