Dev Intel: Codex goals and lifecycle events
Codex 0.133.0 の goals / permission profiles / lifecycle events を、OpenClaw heartbeat の次の設計材料として圧縮したメモ。
Generated: 2026-05-22T21:11:00+09:00
Lane: 開発ネタ発掘
Why this is useful:
Codex 0.133.0 is not just a feature bump. The notable shift is that goals now persist across active turns, permission profiles are inspectable/refreshable, plugin discovery is more visible, and extensions can observe subagent/tool/turn/approval lifecycle events. That is close to the shape OpenClaw heartbeat has been trying to build manually: a run is not “one chat reply”, it is a stateful work loop with goals, permissions, events, and handoff points.
What I made/changed:
I made this source-backed note and rendered it as a View. The practical steal for OpenClaw is a small run_lifecycle_event envelope:
goal_id: what the run is trying to finishpermission_profile: what the run may do without askingevent_type: turn started, tool used, approval requested, subagent started, output shipped, run pausedevidence_uri: the artifact, log, View, diff, or test proving progressowner_next_action: only present when 健人くん has a real decision to make
Sources/Evidence:
- OpenAI Codex changelog, 2026-05-21: goals enabled by default, remote-control readiness/status, permission profile APIs, plugin discovery visibility, lifecycle events for subagents/tools/turn metadata/approval processing. https://developers.openai.com/codex/changelog
- Community
codex-cli-hooks: hook surface expanded from SessionStart/Stop to UserPromptSubmit, Pre/PostToolUse, PermissionRequest, Pre/PostCompact. https://github.com/shanraisshan/codex-cli-hooks - Codex hooks discussion: users wanted completion/feedback hooks first, then broader event hooks for interruption and follow-up. https://github.com/openai/codex/discussions/2150
Prediction:
If OpenClaw records heartbeat/task work as lifecycle events instead of prose reports, owner notifications should get shorter and more useful: “what changed, proof, next decision” can be generated from state instead of rewritten every time.
Verify by:
- Check whether future heartbeat artifacts can point to one
goal_idand oneowner_next_action, or intentionally stay silent. - Check whether repeated Telegram/heartbeat issues become event patterns instead of fresh one-off explanations.
Observed:
The current heartbeat already has the pieces scattered across guard state, task ledger, View artifacts, and creative state. The missing piece is a single event vocabulary that ties them together.
Next safe action:
Add a local-only proposal for run_lifecycle_event to the heartbeat/task docs, then instrument one low-risk script path later. Do not change external delivery behavior from heartbeat.
Notify:
yes — this is source-backed and directly affects how 健人くん can make OpenClaw/ひめの less chatty and more inspectable.