Skip to main content

Agent Playbook 🔬

The Storybook for AI Agents - Build, test, and showcase your pydantic-ai agents in an interactive playground.

Python 3.10+ License: AGPL v3


🎯 Motivation

Building AI agents is hard. Testing them is even harder.

When developing UI components, tools like Storybook revolutionized the workflow by providing an isolated environment to build, test, and showcase components. Agent Playbook brings this same philosophy to AI agent development.

The Problem

  • Slow iteration cycles - Running agents in full applications slows down development
  • Hard to debug - Understanding agent behavior, tool calls, and decision-making is opaque
  • Difficult to demonstrate - Showing agent capabilities to stakeholders requires complex setups
  • No organized testing - Agents scattered across codebases without a unified testing environment

The Solution

Agent Playbook automatically discovers your pydantic-ai agents, loads them into an interactive web playground, and lets you test, debug, and showcase them in real-time with full visibility into their thinking process and tool executions.

Demo

✨ Key Features

  • 🔍 Auto-Discovery - Automatically finds and loads agents from your codebase
  • 🎮 Interactive Playground - Beautiful web UI for testing agents in real-time
  • 🔄 Streaming Support - Watch agent responses, thinking, and tool calls as they happen
  • 🧩 Scenario Configuration - Test agents with different configurations
  • 🛠️ Tool Visualization - See exactly what tools agents call with arguments and results

🚀 Quick Start

Installation

pip install agent-playbook

(The CLI command is playbook, not agent-playbook)

Basic Example

Step 1: Define your agent (support_agent.py)

from pydantic_ai import Agent, RunContext
from pydantic import BaseModel


class SupportDeps(BaseModel):
    company_name: str
    support_email: str


support_agent = Agent(model="openai:gpt-4", deps_type=SupportDeps)


@support_agent.system_prompt
async def support_system_prompt(ctx: RunContext[SupportDeps]) -> str:
    return f"You are a helpful customer support agent for {ctx.deps.company_name}."


@support_agent.tool
async def check_order_status(ctx: RunContext[SupportDeps], order_id: str) -> str:
    """Check the status of a customer order."""
    return f"Order {order_id} is being processed and will ship in 2-3 business days."


@support_agent.tool
async def create_ticket(ctx: RunContext[SupportDeps], issue: str, priority: str) -> str:
    """Create a support ticket."""
    return f"Ticket created with {priority} priority. Contact: {ctx.deps.support_email}"

Step 2: Export scenarios (support_agent__scenarios.py)

Agent Playbook auto-discovers modules ending with __scenarios and registers the agents. Use the export() function to define different configurations:

from agent_playbook import export
from .support_agent import SupportDeps, support_agent

export(
    agent=support_agent,
    scenarios=[
        {
            "name": "ACME Corp",
            "settings": SupportDeps(
                company_name="ACME Corporation", support_email="support@acme.com"
            ),
        },
        {
            "name": "TechStart",
            "settings": SupportDeps(
                company_name="TechStart Inc", support_email="help@techstart.io"
            ),
        },
    ],
)

Start the server and open http://localhost:8765:

playbook myapp.agents --reload

🛠️ CLI Reference

playbook <package> [options]

Options:
  --host TEXT      Server host (default: 127.0.0.1)
  --port INTEGER   Server port (default: 8765)
  --reload         Auto-reload on code changes

🤝 Contributing

Contributions are welcome! Fork the repository, create a feature branch, and submit a Pull Request.

📄 License

Licensed under AGPL-3.0. See LICENSE for details.

Metadata

Release files for agent-playbook 0.1.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for agent-playbook 0.1.3
File Size Uploaded Provenance Actions
agent_playbook-0.1.3.tar.gz 167.2 kB Without provenance Details for agent_playbook-0.1.3.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for agent-playbook 0.1.3
File Interpreter ABI Platform Actions
agent_playbook-0.1.3-py3-none-any.whl Python 3 none any Details for agent_playbook-0.1.3-py3-none-any.whl

Total release size: 336.3 kB

Release files / agent_playbook-0.1.3.tar.gz

Download URL agent_playbook-0.1.3.tar.gz
Size 167.2 kB
Tags Source
SHA-256 checksum
How to use checksums
f688753c6669692a17683a887975e687db6165805c88213ed820269ff8484c66
BLAKE2b-256 checksum
How to use checksums
f8ebb6375cd9b899768b6b94dfd0440c875921b0ea55fef85215e31542cff7b3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.2.1 CPython/3.12.12 Linux/6.11.0-1018-azure

Release files / agent_playbook-0.1.3-py3-none-any.whl

Download URL agent_playbook-0.1.3-py3-none-any.whl
Size 169.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
18565a8a8d6dd61b768242ad93d6196ab8bc59ba843c82e4e0f355ceac700b7e
BLAKE2b-256 checksum
How to use checksums
a9ad77a3f95101edffe1679368c0df0dd2a5193c79d5b9bb7beb4ea755c4e4af
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.2.1 CPython/3.12.12 Linux/6.11.0-1018-azure

Security for agent-playbook 0.1.3

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page