Skip to main content

Terminal-based interactive workbench for designing, simulating, and debugging agent systems

Project description

pyagent-studio

Terminal-based interactive workbench for designing, simulating, debugging, and governing multi-agent LLM systems. Built with Textual for a rich TUI experience.

License: MIT Python 3.11+

Install

pip install pyagent-studio[tui]    # Full TUI (requires textual)
pip install pyagent-studio          # Services only (no TUI)

Depends on: pyagent-blueprint, pyagent-trace, click.

Quick Start

# Launch with a blueprint
pyagent-studio blueprint.yaml

# Or launch and browse discovered blueprints
pyagent-studio

Screens

Dashboard

List discovered YAML blueprints, view validation status, agent/workflow counts.

┌─────────────────────────────────────────────────────────────┐
│  PyAgent Studio — Dashboard                                 │
├─────────────────────────────────────────────────────────────┤
│ File                  │ Name             │ Agents │ Status   │
│ customer_support.yaml │ customer-support │ 3      │ ✓ Valid  │
│ research_agent.yaml   │ research-agent   │ 2      │ ✓ Valid  │
└─────────────────────────────────────────────────────────────┘

Editor

YAML editing with live validation panel showing Pydantic errors as you type.

Graph

ASCII-rendered workflow DAG showing agents as boxes and edges as pattern connections.

Simulation

Run blueprints with MockLLM (no API keys needed), stream results with timing and token counts.

Traces

Browse recorded trace spans from pyagent-trace Recorder JSONL files.

Cost

Cost breakdown tables by pattern, agent, and model with bar chart visualization.

Governance

Validation issues, compliance scoring (% of checks passing), and semantic diff between blueprint versions.

Key Bindings

Key Action
Tab / Shift+Tab Switch screens
q Quit
Ctrl+S Save blueprint
Ctrl+V Validate
Ctrl+R Render graph
Ctrl+T Run simulation
Ctrl+D Show diff

Services (Headless API)

Use the services layer without the TUI for scripting and CI:

from pyagent_studio import BlueprintService, SimulationService, GovernanceService

# Load and validate
svc = BlueprintService()
spec = svc.load("blueprint.yaml")
issues = svc.validate()
print(svc.summary())

# Run simulation
import asyncio
sim = SimulationService()
result = asyncio.run(sim.run(spec, "support", "I can't see my invoice"))
print(result.output)

# Governance
gov = GovernanceService()
report = gov.check_compliance(spec)
print(gov.format_report(report))

TraceService

from pyagent_studio import TraceService

traces = TraceService()
spans = traces.load("traces.jsonl")
llm_calls = traces.query(event_type="llm_call")
print(traces.summary())

Full Documentation

See pyagent.dev for full API reference and integration guides.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyagent_studio-0.1.0.tar.gz (12.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pyagent_studio-0.1.0-py3-none-any.whl (22.2 kB view details)

Uploaded Python 3

File details

Details for the file pyagent_studio-0.1.0.tar.gz.

File metadata

  • Download URL: pyagent_studio-0.1.0.tar.gz
  • Upload date:
  • Size: 12.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.7

File hashes

Hashes for pyagent_studio-0.1.0.tar.gz
Algorithm Hash digest
SHA256 23c9cc04a90a4684e8c2fc571637abce8009d676d0c8009ef996f038f9f24097
MD5 eca0e68923b501ffc92a4ce7a305a456
BLAKE2b-256 543bc3731b8126bc78bdbd6535f4e819faf30cb04fc817d90b329d7872860cab

See more details on using hashes here.

File details

Details for the file pyagent_studio-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: pyagent_studio-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 22.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.7

File hashes

Hashes for pyagent_studio-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 25200b42eca1b2fb3881475ea602e6c41b6225c2a166737600808d5c07fc9848
MD5 ee76eff4e5d0d35c1068dc6c3315da82
BLAKE2b-256 a97b5f1c1d71573a2eb82092ca1631d4331114cb7c2d8005342650fc4ff59c30

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page