# OpenAI Codex - Praxis short-circuit onboarding

**Audience:** future Codex tasks entering a new project after a one-time machine install.
**Live site:** https://praxis-stack.pages.dev
**Purpose:** make project orientation cost one verified Megapraxis pass, not repeated package
setup, MCP archaeology, or an automatic self-audit swarm.

This is an onboarding short-circuit. It does not short-circuit explicit audits or genuinely
novel work.

## Native install, once per machine

```text
codex plugin marketplace add https://praxis-stack.pages.dev/git/praxis-stack.git
codex plugin add praxis@praxis-stack
```

Close and reopen the Codex app once. Start a new task in any project and invoke
`$praxis:megapraxis`. Confirm that exact skill appears in the task's skill registry before
trusting the install. Disk presence alone is a hypothesis.

Capability surface: the `1.4.0` plugin contains two instruction skills. It declares no MCP
server, hook, app connector, authentication flow, or project-file writer. The optional graph
backend is separate. `MANIFEST.json` publishes a SHA-256 for every package file.

Rollback is explicit:

```text
codex plugin remove praxis@praxis-stack
codex plugin marketplace remove praxis-stack
```

### Direct-skill fallback

After unpacking the zip or cloning the served repository:

```text
py install.py --harness codex        # Windows
python3 install.py --harness codex   # macOS / Linux
```

This installs `megapraxis` and `metamegapraxis` into `~/.codex/skills`. Start a new task and
invoke `$megapraxis`. If it is absent from the registry, close and relaunch Codex.

## MetaMethodology / SwarmInvocation certificate

```text
SwarmInvocation::inv-psco-20260718-01-codex-onboarding-short-circuit
  ::source=megapraxis+metamethodology
  ::class=onboarding-short-circuit
  ::harness=openai-codex
  ::verdict=converged-modulo-restart
  ::rule=voting
  ::predicate=registry-resolves-skill+orientation-only=>one-brief-and-stop
  ::members=code-explorer,strategic-advisor,metamethodology-convergence
  ::bridge=runtime-semantics-gap
  ::plugin_marketplace=praxis-stack
  ::plugin=praxis
  ::direct_skill_target=~/.codex/skills
  ::backend=optional
  ::swarm=deferred-until-explicit-audit
  ::started=2026-07-18
```

The public certificate records unanimous quorum after deployed marketplace, typed-route,
security-header, and package-hash checks passed. The restart residual remains explicit:
confirm `$megapraxis` resolves from the running registry in a fresh Codex task.
Machine-readable form:
https://praxis-stack.pages.dev/demo/codex-onboard.json

## Future-project path

| Step | Action | Stop condition |
|---|---|---|
| 0 | Check whether `$praxis:megapraxis` or `$megapraxis` resolves | skill is harness-visible |
| 1 | Install once if missing | native plugin or direct skills installed |
| 2 | Start a new Codex task after registry-changing install | skill resolves in the new task |
| 3 | Run Megapraxis against the current project | verified briefing emitted |
| 4 | Do not auto-run Metamegapraxis or a swarm | unless the user asks or a blocking trap fires |

The site, package, and repository are shared across projects. Do not copy Praxis into every
repository once the global plugin or global skills are harness-visible.

## Codex harness mapping

| Skill text says | Codex behavior |
|---|---|
| `/megapraxis` | invoke `$praxis:megapraxis` for plugin install, `$megapraxis` for direct skill |
| `ToolSearch` | inspect the current Codex tool registry; discover exact prefixes dynamically |
| `Agent(subagent_type=...)` | use Codex multi-agent tools; inline sequentially if unavailable |
| `~/.claude/skills` | also inspect `~/.codex/skills` and installed Codex plugins |
| pharosiraptor MCP | optional for orientation; use filesystem fallback when absent |
| app restart | close and relaunch Codex after plugin-registry changes, then verify in a new task |

## Short-circuit hit

If the skill is registered, the user asked only for orientation, and no blocking trap is
present: emit the Megapraxis briefing and stop. Do not run a full trap roll-call, reconstruct
the package, or dispatch a swarm.

Leave the short-circuit when the user asks for Metamegapraxis, audit, swarm, traps, bridges,
graph-backed coverage, or when the install cannot be verified.

## Tarski residual

Whether future Codex releases change plugin marketplace or restart semantics is
`oracle-required`. The durable invariant is harness truth: verify the current task's registry,
never infer runtime availability from files or configuration alone.
