Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 0 additions & 3 deletions .github/workflows/shell.yml
Original file line number Diff line number Diff line change
Expand Up @@ -254,14 +254,11 @@ jobs:
- detect-php-version
- detect-site-domain
- dmc-migration-inventory
- dmc-managed-release
- external-wordpress-runtime
- dm-workspace-discovery
- homeboy-codebox-canary
- homeboy-components
- homeboy-project-id
- homeboy-verification-guidance
- homeboy-worktree-adapter
- kimaki-credential-seeding
- kimaki-install-existing
- kimaki-launchd-start
Expand Down
26 changes: 14 additions & 12 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ The agent should know only what it can use.
- **Developer orchestration layers** add guidance only when installed and verified.
- **Unavailable tools** do not get stub instructions, fallback recipes, or negative constraints.

For example, a Kimaki install should know Kimaki is the Discord surface. It should not learn generic Kimaki worktree, tunnel, or session-fanout recipes when those responsibilities belong to other installed components. Likewise, Homeboy guidance appears only when Homeboy is available. Data Machine Code owns the WordPress-side repository, workspace, GitHub, and data-machine capabilities; Homeboy owns its native Rust worktree lifecycle and Cook.
For example, a Kimaki install should know Kimaki is the Discord surface. It should not learn generic Kimaki worktree, tunnel, or session-fanout recipes when those responsibilities belong to other installed components. Likewise, Homeboy guidance appears only when Homeboy is available. wp-coding-agents policy declares repository authority; the selected coding runtime uses its native file, Git, and GitHub tools; Homeboy owns its native Rust worktree lifecycle and Cook.

## What It Enables

Expand Down Expand Up @@ -92,10 +92,11 @@ SITE_DOMAIN=example.com ./setup.sh

### Repo-Aware Developer Workflows

Use Data Machine Code for WordPress-side repository, workspace, GitHub, and data-machine capabilities, with optional Homeboy orchestration for native Rust worktree lifecycle and Cook. When both are installed, wp-coding-agents' WordPress adapter maps five DMC worktree abilities to Homeboy without making either project depend on the other.
Declare each primary Git checkout with wp-coding-agents, then use the selected coding runtime's native file, Git, and GitHub tools there. Homeboy is optional orchestration for native Rust worktree lifecycle and Cook; it attaches declared checkouts and never infers repository authority.

```bash
EXISTING_WP=~/Studio/my-site ./setup.sh --local --with-homeboy
EXISTING_WP=~/Studio/my-site ./setup.sh --local --with-homeboy \
--workspace-repository ~/Developer/my-site
```

When an optional orchestrator is available, its own presence-gated AGENTS section explains the supported workflow. When it is absent, the prompt does not mention its commands.
Expand All @@ -109,7 +110,7 @@ When an optional orchestrator is available, its own presence-gated AGENTS sectio
| OpenCode | Coding runtime | Selected or auto-detected |
| Claude Code | Coding runtime | Selected or auto-detected |
| Codex | Coding runtime | Selected or auto-detected |
| Data Machine Code | WordPress-side repository, workspace, git, GitHub, and data-machine capabilities | Installed with the Data Machine stack |
| wp-coding-agents | Source policy, declared repository authority, runtime permissions, setup, and upgrade | Always installed |
| Kimaki | Discord bridge for OpenCode sessions | Optional chat bridge |
| cc-connect | Multi-platform bridge, commonly used with Claude Code | Optional chat bridge |
| opencode-telegram | Telegram bridge for OpenCode | Optional chat bridge |
Expand Down Expand Up @@ -267,6 +268,7 @@ operator-entrypoints/wp-coding-agents-setup/setup.md
| --- | --- |
| `--runtime <name>` | Coding runtime: `opencode`, `claude-code`, or `codex`. Auto-detected when omitted. |
| `--source-mode <name>` | `workspace` (default) or `owned`. See [Source Mode](#source-mode). `--posture` is a deprecated alias. |
| `--workspace-repository <absolute-git-checkout>` | Primary Git checkout authority for workspace mode. Repeatable; each path must already be a Git checkout. |
| `--owned-source <path>` | wp-content path the site owns and may edit under `--source-mode owned`. Repeatable. |
| `--owned-writable <path>` | Denied path to re-open for editing (e.g. `wp-config.php`). Not captured. Repeatable. |
| `--log-path <path>` | Absolute path outside the site root the agent may read. Repeatable. |
Expand Down Expand Up @@ -309,8 +311,8 @@ read-only reference there. What it buys is git and review, not latitude.
| `wp-content/mu-plugins/`, `wp-config.php` | read-only | read-only, opt-in |
| `wp-content/plugins/`, `wp-content/themes/` | read-only | read-only **except declared owned paths** |
| `wp-content/uploads/` | writable (agent memory) | writable (agent memory) |
| Data Machine Code | installed | not installed |
| Workspace, git, GitHub | the agent's workflow | not present |
| Repository authority | explicit primary Git checkout roots | none |
| Workspace, git, GitHub | wp-coding-agents policy plus the runtime's native tools | not present |
| How changes reach version control | the agent commits and opens pull requests | captured out-of-band by the operator |
| Runtimes | all | `opencode` only |
| Service user | root by default | **non-root by default** (`opencode`) |
Expand Down Expand Up @@ -408,10 +410,11 @@ about WordPress here without skills or fine-tuning. Reading is never
restricted. Everything below is about *writing*.

**Workspace** is the developer setup: the installed tree is reference
material, and every code change happens in the configured repository workspace
so it is tracked in git and reviewed through GitHub. Data Machine Code provides
the WordPress-side repository, workspace, GitHub, and data-machine capabilities;
when installed, Homeboy owns its native Rust worktree lifecycle and Cook.
material, and every code change happens in explicitly declared primary Git
checkouts so it is tracked in Git and reviewed through GitHub. wp-coding-agents
owns that declaration and runtime policy; the selected coding runtime uses its
native tools. When enabled, Homeboy owns its native Rust worktree lifecycle and
Cook without creating or inferring repository authority.

**Owned** is for managed agentic hosting, where a non-technical owner should
never have to deal with pull requests. The agent edits the site's own theme and
Expand Down Expand Up @@ -510,7 +513,7 @@ Codex reads `AGENTS.override.md` from the WordPress site root when present, befo

Keeping the Codex memory mirror in `AGENTS.override.md` avoids polluting the shared `AGENTS.md` that OpenCode also reads. On a site with both runtimes, OpenCode keeps using `AGENTS.md` plus `opencode.json` instructions, while Codex gets the same site guidance and memory through its generated override.

Setup installs the managed upgrade skill into `.agents/skills`, registers Codex thread attribution for Data Machine Code when available, and leaves global Codex config and auth state alone.
Setup installs the managed upgrade skill into `.agents/skills`, registers Codex thread attribution when available, and leaves global Codex config and auth state alone.

Codex does not currently have a managed chat bridge in this repo, so setup defaults to terminal/manual operation:

Expand Down Expand Up @@ -624,7 +627,6 @@ Run `./upgrade.sh --help` for upgrade flags.
## Related Projects

- [Data Machine](https://github.com/Extra-Chill/data-machine) — WordPress-native agent memory, abilities, flows, and jobs.
- [Data Machine Code](https://github.com/Extra-Chill/data-machine-code) — Repository, workspace, git, and GitHub integration for Data Machine.
- [Homeboy](https://github.com/Extra-Chill/homeboy) — Optional orchestration/lab layer for repo-aware coding workflows.
- [Kimaki](https://kimaki.xyz) — Discord bridge used by OpenCode installs.

Expand Down
27 changes: 17 additions & 10 deletions docs/data-machine-code-migration-inventory.json
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,13 @@
"DataMachineCode\\*",
"wp datamachine-code *"
],
"lexical_reference_exclusions": [
"docs/changelog.md",
"tests/agents-md-guidance.sh",
"tests/installation-profile.sh",
"tests/plugins-only-scope.sh",
"tests/workspace-installation.sh"
],
"rows": [
{
"id": "dmc-bootstrap",
Expand Down Expand Up @@ -365,7 +372,7 @@
"id": "wca-setup-entrypoint",
"subsystem": null,
"surface": "Workspace source-mode setup orchestration",
"source": { "repository": "wp-coding-agents", "path": "setup.sh", "symbol_or_command": "--source-mode workspace; install_data_machine; discover_dm_workspace_dir; configure_homeboy_worktree_ownership" },
"source": { "repository": "wp-coding-agents", "path": "setup.sh", "symbol_or_command": "--source-mode workspace; source_policy_resolve_workspace_dir; configure_homeboy_worktree_ownership" },
"evidence_kind": "entrypoint",
"contracts": ["data-machine-code"],
"current_owner": "wp-coding-agents",
Expand All @@ -380,7 +387,7 @@
"id": "wca-upgrade-entrypoint",
"subsystem": null,
"surface": "Plugin and integration upgrade orchestration",
"source": { "repository": "wp-coding-agents", "path": "upgrade.sh", "symbol_or_command": "update_data_machine_plugins; reconcile_provider_and_service_state; plugin get data-machine-code" },
"source": { "repository": "wp-coding-agents", "path": "upgrade.sh", "symbol_or_command": "update_data_machine_plugins; reconcile_provider_and_service_state; plugin get data-machine" },
"evidence_kind": "upgrade",
"contracts": ["data-machine-code"],
"current_owner": "wp-coding-agents",
Expand All @@ -394,13 +401,13 @@
{
"id": "wca-installer-library",
"subsystem": null,
"surface": "DMC install, update, Homeboy availability, workspace discovery, and component sync",
"source": { "repository": "wp-coding-agents", "path": "lib/data-machine.sh", "symbol_or_command": "install_data_machine; upgrade_data_machine_plugins; sync_homeboy_availability; discover_dm_workspace_dir; sync_homeboy_project_components" },
"surface": "Data Machine install and update without DMC workspace discovery",
"source": { "repository": "wp-coding-agents", "path": "lib/data-machine.sh", "symbol_or_command": "install_data_machine; upgrade_data_machine_plugins" },
"evidence_kind": "installer",
"contracts": ["data-machine-code", "datamachine_code_homeboy_available", "wp datamachine-code *"],
"current_owner": "wp-coding-agents",
"current_consumers": ["setup.sh and upgrade.sh"],
"persistence": "Plugin checkout, DATAMACHINE_WORKSPACE_PATH, availability option, Homeboy component records",
"persistence": "Data Machine plugin checkout and composition constant",
"target_owner": "wp-coding-agents",
"disposition": "replace",
"migration_issue": "#455, #526, #528",
Expand Down Expand Up @@ -455,7 +462,7 @@
"id": "wca-source-reconcile",
"subsystem": null,
"surface": "Installer-owned plugin source discovery and generated reconciliation list",
"source": { "repository": "wp-coding-agents", "path": "lib/owned-source-discovery.sh", "symbol_or_command": "owned_discovery_carried_plugins: data-machine-code" },
"source": { "repository": "wp-coding-agents", "path": "lib/owned-source-discovery.sh", "symbol_or_command": "owned_discovery_carried_plugins excludes DMC" },
"evidence_kind": "installer",
"contracts": ["data-machine-code"],
"current_owner": "wp-coding-agents",
Expand All @@ -470,7 +477,7 @@
"id": "wca-source-reconcile-template",
"subsystem": null,
"surface": "Generated carried plugin slug list",
"source": { "repository": "wp-coding-agents", "path": "templates/wp-coding-agents-source-reconcile.php", "symbol_or_command": "wp_coding_agents_carried_slugs(): data-machine-code" },
"source": { "repository": "wp-coding-agents", "path": "templates/wp-coding-agents-source-reconcile.php", "symbol_or_command": "wp_coding_agents_carried_slugs(): data-machine, wp-codebox" },
"evidence_kind": "runtime",
"contracts": ["data-machine-code"],
"current_owner": "wp-coding-agents",
Expand All @@ -485,7 +492,7 @@
"id": "wca-source-policy",
"subsystem": null,
"surface": "Workspace mode definition and DMC installation predicate",
"source": { "repository": "wp-coding-agents", "path": "lib/source-policy.sh", "symbol_or_command": "source_policy_workspace_enabled" },
"source": { "repository": "wp-coding-agents", "path": "lib/source-policy.sh", "symbol_or_command": "source_policy_workspace_repositories; source_policy_resolve_workspace_dir" },
"evidence_kind": "runtime",
"contracts": ["datamachine_code_homeboy_available", "data-machine-code"],
"current_owner": "wp-coding-agents",
Expand Down Expand Up @@ -1252,12 +1259,12 @@
"reference_file_classification": {
"runtime": [
"lib/integration-adapters.sh",
"templates/wp-coding-agents-homeboy-worktrees.php",
"lib/runtime-signature.sh",
"templates/wp-coding-agents-cli-transport.php"
],
"tests": [
"tests/homeboy-worktree-adapter.sh",
"tests/integration-adapters.sh",
"tests/runtime-signature.sh",
"tests/smoke-cli-transport.php",
"tests/worktree-context-projections.sh"
],
Expand Down
4 changes: 2 additions & 2 deletions lib/agents-md-guidance.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,10 @@
# lib/agents-md-guidance.sh — AGENTS.md SectionRegistry guidance MECHANISM.
#
# wp-coding-agents owns integration-specific runtime guidance for the tools it
# installs and wires together. Data Machine Code owns the generic AGENTS.md
# installs and wires together. Data Machine owns the generic AGENTS.md
# composition substrate; this helper publishes wp-coding-agents' integration
# guidance into that substrate through Data Machine's SectionRegistry without
# making DMC know about Homeboy, Kimaki, OpenCode, or WP Codebox conventions.
# coupling Data Machine to Homeboy, Kimaki, OpenCode, or WP Codebox conventions.
#
# This file is the mechanism ONLY: scaffold the mu-plugin, render a
# marker-delimited PHP block, rewrite it idempotently, remove it on request. It
Expand Down
Loading
Loading