Skip to content

Install full agent stack in public Playground blueprint#313

Merged
chubes4 merged 1 commit into
mainfrom
full-runtime-blueprint-v2
May 16, 2026
Merged

Install full agent stack in public Playground blueprint#313
chubes4 merged 1 commit into
mainfrom
full-runtime-blueprint-v2

Conversation

@chubes4

@chubes4 chubes4 commented May 16, 2026

Copy link
Copy Markdown
Owner

Summary

The public Playground blueprint installed only the world plugin + the MDI db.php drop-in. A visitor opening the Playground saw a WordPress site running a theme — not the agent runtime the World Creator wakes into during a CI cycle.

This PR makes the public Playground install and activate the full agent stack so the visible terrarium and the agent's runtime are the same site.

What changes

blueprints/world.json

  • Installs and activates MDI, Agents API, Data Machine, Data Machine Code, AI Provider for OpenAI, and the world plugin — alongside the world theme.
  • MDI's db.php drop-in is written before any plugin install so plugin activation runs against MDI's SQLite-backed wpdb from the start (instead of activation running on Playground's default SQLite shim and then having MDI's drop-in take over later).
  • DM and DMC install from their latest GitHub Release ZIP (releases/latest/download/<plugin>.zip). The homeboy release-asset workflow on both repos publishes vendor-bundled distributables on every release. The other plugins install from git:directory because they have no runtime composer deps.
  • Install order is deliberate so each plugin's activation hook sees its dependencies already loaded: db.php → MDI → Agents API → Data Machine → Data Machine Code → AI Provider → world plugin → world theme → content seeding.

README.md

  • Describes the public Playground as the canonical runtime (the same site the World Creator wakes into during a day cycle), notes that DM/DMC come from release ZIPs and the rest from git, and explains that a visitor with their own OpenAI key can chat with the agent directly inside Playground.

What the agent will perceive

With the full stack active, the agent's wake-up context surfaces match the new reality:

  • SITE.md — its auto-generated ## Active Plugins section will list MDI, Agents API, Data Machine Code, AI Provider for OpenAI, and the world plugin (Data Machine itself is intentionally skipped by DM's own site-section generator since it's always active and adds noise).
  • WORLD_PERCEPTION directive — its section_runtime lists active plugins with names and folder slugs; section_substrate counts registered abilities by namespace (datamachine/*, agents/*) and lists REST namespaces. The agent sees concrete numbers for what's hosting it.
  • section_substrate already says "You are an autonomous agent hosted on Data Machine, running inside a WordPress Playground instance..." — and now that's true for the public Playground too, not just the CI runtime.

Why the agents-api class-load works alongside DM's vendored copy

Agents API's plugin entry guards with if ( defined( 'AGENTS_API_LOADED' ) ) { return; }. DM bundles agents-api source under vendor/automattic/agents-api/ for autoload, but at runtime, whichever copy loads first defines the constant; the other returns early. Both paths coexist safely.

Verification

The blueprint is theoretically complete but the headless wp-playground-cli test was inconclusive on my machine (process exited silently after WordPress download started — likely a local PHP-WASM environment issue, not a blueprint issue). The real verification is opening the Playground in a browser:

https://playground.wordpress.net/?blueprint-url=https://raw.githubusercontent.com/chubes4/world-of-wordpress/full-runtime-blueprint-v2/blueprints/world.json

A successful boot lands on a WordPress site with the World Creator theme active and the agent stack installed under wp-admin > Plugins.

Dependency

This PR depends on Extra-Chill/data-machine#2031 + #2034 and Extra-Chill/data-machine-code#408 + #409, all of which are merged. The release-asset workflows have already produced data-machine.zip for v0.116.1 and data-machine-code.zip for v0.42.0 — the URLs in this blueprint are live.

AI assistance

  • AI assistance: Yes
  • Tool(s): Claude Code (Sonnet 4.5)
  • Used for: Designed the new install order, wrote the blueprint, verified the release-asset URLs resolve to the published ZIPs, and ran the headless boot test. Chris specified the principle: the same runtime the agent wakes into during a day cycle should be the one a visitor opens.

Installs and activates Markdown Database Integration, Agents API,
Data Machine, Data Machine Code, AI Provider for OpenAI, and the
world plugin alongside the existing world theme.

Data Machine and Data Machine Code install from their latest
GitHub Release ZIP (the homeboy release-asset workflow publishes
vendor-bundled distributables on every release tag). The other
plugins install from git:directory at main/trunk because they
have no runtime composer deps.

Plugin install order is deliberate so each plugin's activation
hook sees its dependencies already loaded: MDI db.php drop-in
first, then MDI plugin, then Agents API, then Data Machine,
then Data Machine Code, then AI Provider for OpenAI, then the
world plugin, then the world theme, then content seeding.

The public Playground is now the same runtime the World Creator
wakes into during a day cycle.
@chubes4 chubes4 merged commit 5a9dc41 into main May 16, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant