Branded multi-provider agent harness — chat, tools, MCP servers, and auto-saved transcripts — for experimenting with agentic systems against Anthropic, OpenAI, and locally-hosted (LM Studio) models.
# 1. Activate the project venv (Python 3.14)
source .agent-playground/bin/activate
# 2. Install
pip install -e ".[dev]"
# 3. Configure
cp .env.example .env
$EDITOR .env # set ANTHROPIC_API_KEY / OPENAI_API_KEY / LMSTUDIO_BASE_URLstreamlit run app.pyOpens a browser on http://localhost:8501. Click Basic Chat in the sidebar.
python -m playground.smoke --provider anthropic --prompt "Say hi"pytestCreate a Python file under playground/tools/examples/ (or anywhere; just
make sure it gets imported):
from playground.tools import register_tool
@register_tool
def reverse_string(s: str) -> str:
"""Reverse a string."""
return s[::-1]Add the import to playground/tools/examples/__init__.py. Refresh the
chat page — the tool appears in "Local tools" and the LLM can call it.
Edit mcp.json:
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/tmp/fs"],
"description": "Read/write files under /tmp/fs",
"enabled": true
}
}
}Click Reload mcp.json in Basic Chat's sidebar.
app.py— Home pagepages/1_Basic_Chat.py— the MVP chat pageplayground/— shared package: providers, tools, prompts, MCP, persistencemcp_servers/notes/— bundled MCP server (agent scratch notes)conversations/— auto-saved JSON transcripts (gitignored)tests/— pytest suitedocs/superpowers/— design specs and implementation plans
Full v1 design: docs/superpowers/specs/2026-05-09-travisml-agent-playground-design.md.