Summary
LoopX v0.1.8 promotes deterministic agent onboarding and host-loop activation to the stable channel.
The main change is small but important: a new agent host should no longer guess whether codex means Codex App or Codex CLI. Hosts can now ask LoopX for the canonical agent type catalog, pass an exact runtime such as codex-app, codex-cli, or claude-code, and receive the matching host-loop activation contract.
Highlights since v0.1.7
- Added
loopx agent-onboard --list-agent-typesandloopx agent-onboard --agent-type ...as the deterministic onboarding interface for host runtimes. - Ambiguous values such as
codexnow fail closed with concrete suggestions instead of silently falling into the wrong activation path. /loopx <task>command packs now explicitly require host-loop activation after todo writeback: Codex App heartbeat automation, Codex CLI visible/goal <task_body>, Claude Code native/loop, or a declared custom host loop.- Bootstrap command packs now include a
host_loop_activationpacket and a low-cost recheck policy so normal ticks do not redo onboarding every turn. - README and protocol docs now distinguish command entry from the underlying loop driver, especially for Codex CLI TUI users.
- Added focused smoke coverage for agent type routing, ambiguous-input rejection, and Codex CLI host-loop activation output.
Update
Existing users can update from the stable channel:
loopx update --check
loopx update --execute
loopx doctorAfter updating, refresh host command entries if needed:
loopx slash-commands --installNew hosts can inspect the exact runtime catalog:
loopx agent-onboard --list-agent-types
loopx agent-onboard --agent-type codex-cli --project .Compatibility notes
- Existing LoopX CLI commands remain compatible.
- Codex App and Codex CLI are intentionally separate agent types because their loop activation mechanisms differ.
codexis intentionally rejected as an agent type; usecodex-apporcodex-cli.- Codex CLI cannot be considered connected by registry/quota identity alone; after todo writeback it must have
/goal <task_body>active or show the exact pasteable gate.
Validation
python3 examples/control_plane/agent-onboard-host-loop-activation-smoke.pypython3 examples/release/release-version-contract-smoke.pypython3 examples/release/release-readiness-doc-smoke.pypython3 -m py_compile loopx/__init__.py loopx/host_loop_activation.py loopx/agent_onboarding.py loopx/bootstrap_command_pack.py loopx/slash_commands.py loopx/slash_command_install.py loopx/cli_commands/starter_bootstrap.py loopx/cli.py examples/control_plane/agent-onboard-host-loop-activation-smoke.pypython3 -m loopx.cli --format json agent-onboard --agent-type codex --project .returns code 2 withcodex-app/codex-clisuggestions.python3 -m loopx.cli --format json agent-onboard --agent-type codex-cli --project . --goal-id loopx-meta --task-text 'demo task'python3 -m loopx.cli --format json bootstrap-command-pack --project . --host-surface codex-cli-tui --goal-id loopx-meta --goal-text 'demo task'python3 -m loopx.cli --format json versionreports0.1.8.git diff --checkpython3 -m loopx.cli check --scan-path ...public boundary scans were clean.
loopx check reported the pre-existing loopx-meta duplicate-index warning; it is unrelated to this release. No GitHub Actions checks were reported for the release PRs.