Lean internal ops layer for OpenClaw.
ClawOps provides a practical control plane on top of an existing OpenClaw install:
- health visibility
- recent errors and degraded states
- safe remediation hooks
- lightweight ops queue
- Telegram-friendly admin actions
- Health collector
- Simple web dashboard
- Background watcher
- Telegram admin command layer
src/server/Express web app + JSON APIsrc/collector/OpenClaw CLI + log collectorssrc/watcher/background checks and safe remediation policysrc/ops/lightweight in-process work queue / attention modelsrc/lib/shared utilitiessrc/config/runtime config loading and defaultsdata/snapshots, state, and queue files
- collect status from
openclaw status - collect gateway QR/connectivity diagnostics
- expose JSON API
- render a minimal dashboard
- dev: one node process running server + polling loop
- prod: systemd or pm2 later; keep single-process first
ClawOps now exposes a small Codex harness status block in snapshots and the dashboard.
Environment variables:
OPENCLAW_CODEX_PLUGIN_ENABLED=trueto indicate the codex plugin is enabledOPENCLAW_DEFAULT_MODEL=codex/gpt-5.4to mirror the selected default modelOPENCLAW_EMBEDDED_HARNESS_RUNTIME=codexto force the embedded harness runtimeOPENCLAW_EMBEDDED_HARNESS_FALLBACK=noneto mirror the configured fallbackOPENCLAW_EXECUTION_CONTRACT=strict-agenticto mirror strict mode
Example:
OPENCLAW_CODEX_PLUGIN_ENABLED=true \
OPENCLAW_DEFAULT_MODEL=codex/gpt-5.4 \
OPENCLAW_EMBEDDED_HARNESS_RUNTIME=codex \
OPENCLAW_EMBEDDED_HARNESS_FALLBACK=none \
node src/index.jsWhen these are set, the dashboard reports whether Codex harnessing is merely available or actually active for embedded turns.
ClawOps now seeds a lightweight "Memory Palace" file at clawops/data/memory-palace.json and exposes it at:
GET /api/memory-palace- the main dashboard
The initial shape includes:
- rooms
- activeMemory
- recentDreams
- importedChats count
This is a lightweight scaffold for the newer OpenClaw memory direction: imported chats, structured memory rooms, and an "active memory" surface that can be explored in the UI.
ClawOps now includes a bundled Codex plugin module at src/plugins/codex/.
It exposes:
- plugin metadata
- activation logic
- guided setup steps
GET /api/plugins/codex- dashboard visibility
This does not replace OpenClaw core plugin loading, but it gives you a first-class bundled plugin surface inside this repo that mirrors the intended Codex harness behavior.
ClawOps now also surfaces strict mode support for:
agents.defaults.embeddedPi.executionContract = "strict-agentic"
It appears in snapshot data, the dashboard, and the bundled Codex plugin setup flow.
ClawOps currently includes:
- Codex harness visibility
- bundled Codex plugin scaffolding
- strict mode visibility
- Memory Palace and active memory scaffolding
- a lightweight dashboard and JSON API
GitHub Actions now runs a lightweight smoke-test pipeline on pushes and pull requests.
Recommended branch protection for main:
- require pull requests before merging
- require 1 approval
- require status checks to pass (
ci / test) - require branches to be up to date before merging
- block force pushes
- block deletions
Dependency review:
npm audit: 0 known vulnerabilities at time of hardening- keep
npm ciin CI for deterministic installs
Release flow:
- push tags like
v0.1.0to trigger the release workflow
ClawOps includes early scaffolding for a browser-first X reader flow.
Goal:
- paste an
x.comlink - open it in a real browser session
- capture the post, visible thread context, and surrounding replies
- turn that into a clean discussion view
Current state:
- URL normalization and browser-reader planning are implemented in
src/x-reader/ - primary path is browser-first
- fallback path can later use the installed
xurlskill/API tooling