Internal demo

Muster + OCSites

Every local WordPress site, in one terminal: find it, open it, run agents in it, and deploy it. OCSites runs the WordPress operations; Muster is the terminal interface you run them from.

What each one does

Two programs, one workflow

ocsites, sites

OCSites

Find, open, clone, and deploy local WordPress sites - all from the terminal.

muster

Muster

Your OCSites sites as a sidebar. Open each as terminal panes, run AI agents, and deploy from there.

How they connect

Muster drives OCSites

Muster
sidebar, panes, agents
>
OCSites
sites, deploy, import
>
Your sites
MAMP and LocalWP
Before you start

Prerequisites

macOS / Linuxsupported platforms
gitclone and version checks (git --version)
SSH to Bitbucketcloning the repos and your sites (ssh -T git@bitbucket.org)
Atlassian API tokenOCSites authenticates to Bitbucket (set up during onboarding)
Python 3.10+OCSites runtime (auto-installed if missing)
One install

Install Muster (it installs OCSites too)

$ git clone --depth 1 git@bitbucket.org:efront_au/muster.git /tmp/muster-installer \ && /tmp/muster-installer/install.sh \ && rm -rf /tmp/muster-installer
First run

The onboarding walkthrough

First launch of the picker runs a one-minute setup. Re-run any time with ocsites --onboarding.

  1. Welcome - Enter to begin
  2. Projects folder - where your sites live (default ~/Documents/Sites)
  3. Bitbucket login - Atlassian email + API token (set up next), tested live
  4. Theme - arrow keys preview live
  5. Local web tool - MAMP or LocalWP
  6. Done - recap of all four settings
Bitbucket access

A scoped Atlassian API token

OCSites signs in to Bitbucket with a scoped Atlassian API token. Not your account password, and separate from the SSH key used to clone.

read:account
read:repository:bitbucket
read:project:bitbucket
read:workspace:bitbucket
Confirm it works

Launch and verify

$ ocsites --version # 1.6.x $ sites # picker opens, lists your sites $ muster # sidebar fills with your OCSites sites $ muster --session demo # isolated session for the demo
Live demo, part 1

Open a site, run an agent

  1. Open Muster. The whole sidebar is your OCSites sites: status dot, name, branch. None of it was configured in Muster.
  2. Search and open a site. Click the search box, type a few letters, then click the site (or Enter) - it opens as a workspace of real panes. LocalWP sites open at app/public.
  3. Run an AI agent in a pane (Claude, Codex, pi, Whale, Reasonix) and watch the state badge.
✓ idle, at the prompt working, in progress blocked, needs your input
Live demo, part 2

Deploy, git, detach

  1. Right-click a site, then Deploy (or Import). The OCSites TUI opens in a side pane with a confirm screen and live logs. c cancels; e jumps to the first error.
  2. Git panel. Open the menu, choose "git timeline": commit graph, branches, fetch/pull. If lazygit is installed, the panel uses lazygit.
  3. Detach and reattach. Close the terminal, reopen, run muster, and panes and agents are where you left them. A background server keeps them running.
  4. Standalone OCSites. Run sites, choose + Add New Site, clone a new site from Bitbucket with a live progress bar.
OCSites

OCSites features and tips

Muster

Muster features and tips

Agent state detection

See which agents need your input

Muster reads each pane's live screen and classifies the agent's state. Run several agents across several sites, and the sidebar shows which ones are waiting on a prompt.

✓ idle, at the prompt working, in progress blocked, needs your input
From Central

Open in OCSites

Every site in Central has an "Open in OCSites" button. It copies the site's deploy config straight into your local OCSites app - no manual setup.

  1. Pick the environment - production or staging, matched to your git branch.
  2. Optionally override Build command and Deploy path - <theme> is a shortcode for the active theme.
  3. Open in OCSites - the ocsites:// link copies it into your local app, binds the folder, and derives the .local domain.
  4. You land on the actions menu - ready to import or deploy. First time? The Install tab sets OCSites up.
Claude Code

Add the OCSites MCP (optional)

Give Claude Code the OCSites tools in every project: list sites, run imports and deploys, WP-CLI, and server checks.

# user scope = available in every Claude Code project $ claude mcp add --transport stdio --scope user ocsites \ -- ocsites-mcp --stdio $ claude mcp list # ocsites: connected
Claude Code

Add the ActiveCollab MCP (optional)

Give Claude Code the ActiveCollab tools in every project: tasks, projects, comments, time tracking, and attachments.

# install (if not already) $ TMP=$(mktemp -d) && \ git clone --depth 1 git@bitbucket.org:efront_au/active-collab-mcp.git "$TMP/repo" && \ "$TMP/repo/install.sh" --yes; rm -rf "$TMP" # authenticate once $ activecollab-mcp auth login # add to Claude Code (user scope = every project) $ claude mcp add --transport stdio --scope user activecollab \ -- activecollab-mcp --stdio $ claude mcp list # activecollab: connected
Reference

Cheat-sheet

# OCSites $ sites # open the picker $ ocsites --onboarding # run the setup walkthrough $ ocsites add apikey <email> <token> # Atlassian email + scoped API token $ ocsites set [path] # sites folder $ ocsites update # upgrade # Muster $ muster # launch / attach default session $ muster --session <name> # isolated session # click the Sites sidebar to search and open a site # right-click a site for Deploy, Import, Open local, Open live

install-guide.md — full presenter companion

muster + ocsites 1 / 17
Arrow keys or Space to move. F for fullscreen.