OpenClaw Runtime Contract Map
過去レポートのView/ソース規律バックフィルで生成したView。
Generated: 2026-05-20T12:48:00+09:00
常駐AI系の外部記事から盗むところは、UIや名前ではなく「常駐運用の契約」。モデルが賢いかより、毎回どの設定を継承し、どの状態が残り、いつ走り、何を人間承認に回し、何を証跡として残すかが信頼の差になる。
Contract Axes
| runtime_contract | question | local control |
| --- | --- | --- |
| settings_inheritance | このrunは user/project/tool/skill/channel 設定をどこまで引き継いだ? | config snapshot, skill/plugin manifest scan, connector auth state |
| session_persistence | turn/compaction/restart/cron をまたいで何が残る? | memory files, task ledger gates, context sheet, session key |
| scheduler_policy | heartbeat/cron/guard はいつ走り、いつ黙り、いつ失敗扱い? | quiet hours, cooldown, timeout margin, skipped-run event |
| approval_queue | 外部送信/破壊/課金/unknown install はどこで止まる? | approval packet with exact action, destination, risk, rollback |
| observability_event | 何が起きたことを後から再現できる? | JSONL events for tool choice, guard result, delivery, source evidence, verification |
First Controls To Steal
| event | when to emit | minimum fields |
| --- | --- | --- |
| skill_selected | a skill/plugin playbook is chosen | skill, reason, source_message_id, allowed_tools |
| guard_result | heartbeat/cron/task guard makes a decision | guard, decision, skipped_reason, timeout_ms, next_action |
| external_action_queued | a write/send/install/destructive action needs approval | destination, exact_action, risk, approval_state |
| notification_shipped | Telegram/owner-visible message is sent | message_id, topic, value_reason, delivery_result |
| cron_skipped | scheduler suppresses a run | job_id, reason, quiet_hours, next_run |
| verification_recorded | claim is marked done | artifact, command, result, screenshot_or_log |
| compact_priority_preserved | a long/fragile session is about to compact or resume later | file_paths, confirmed_root_causes, open_questions, expensive_findings, next_safe_action |
| owner_rejection_categorized | 健人くんの差し戻しが入った | category, affected_surface, missed_gate, new_regression_gate, evidence |
Applied Today
- Added runtime_contract overlay to memory/heartbeat-known-failures.md.
- Added runtime_contract column to projects/openclaw-operations-improvement/openclaw-failure-layer-map.md.
- Added resident_agent_contract_gap as a reusable signature so resident-agent ideas route to event/guard work instead of staying as commentary.
- Implemented scripts/runtime_mode_events.py as the first tiny append-only runtime event writer.
- Added scripts/test_runtime_mode_events.py and recorded the first verification_recorded event in memory/runtime-mode-events.jsonl.
- Added compact_priority_preserved and owner_rejection_categorized as first-class runtime events, with regression tests for both.
Sources
- projects/heartbeat-editorial-room/20260520-0932-dev-intel-resident-agent-forks.md
- https://zenn.dev/is0383kk/articles/7f33a2eca6733d?locale=en
- https://zenn.dev/daishiro/articles/afk-code-openclaw-mac-autonomous?locale=en
- https://github.com/duanyytop/agents-radar/issues/1062
Next Safe Action
Wire one real caller next: after owner-visible code fixes, call runtime_mode_events.py record with mode=implementation, event=verification_recorded, and when a fix is rejected, immediately add owner_rejection_categorized with the missed gate. Keep external-action gates as logging only until explicitly approved.