Skip to content

Travis-ML/agent-playground

Repository files navigation

TravisML Agent Playground

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.

Setup

# 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_URL

Run

streamlit run app.py

Opens a browser on http://localhost:8501. Click Basic Chat in the sidebar.

Smoke-test without the GUI

python -m playground.smoke --provider anthropic --prompt "Say hi"

Run the test suite

pytest

Add a local tool

Create 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.

Add an MCP server

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.

Layout

  • app.py — Home page
  • pages/1_Basic_Chat.py — the MVP chat page
  • playground/ — shared package: providers, tools, prompts, MCP, persistence
  • mcp_servers/notes/ — bundled MCP server (agent scratch notes)
  • conversations/ — auto-saved JSON transcripts (gitignored)
  • tests/ — pytest suite
  • docs/superpowers/ — design specs and implementation plans

Spec

Full v1 design: docs/superpowers/specs/2026-05-09-travisml-agent-playground-design.md.

About

LLM Harness for developing, debugging, and evaluating custom agents, tools, MCP servers, prompts, and memory constructs using Anthropic, OpenAI, or a local model.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages