Layer 1: checks SKILL.md, continuity_doctor.py, openclaw.plugin.json exist
Layer 2: runs continuity_doctor.py to confirm tool is available
Layer 3: detects empty/placeholder CURRENT_STATE.md and suggests --sample
--sample flag shows a realistic production migration task (db v2→v3,
blocked on migration window sign-off) so new users understand what
high-importance state looks like before their first session.
Colour output with ✅⚠️❌. README Quick Start updated with verify commands.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Bump version to 2.3.0 across package.json, openclaw.plugin.json.
Add comprehensive CHANGELOG documenting all bugs found and fixed
during the v2.x development cycle.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Short conversations (< 2 real user messages) no longer overwrite
existing meaningful state. This prevents the "recovery death spiral"
where:
1. Secret told → state saved ✅
2. /new → state injected → model ignores it → "I don't remember"
3. agent_end overwrites good state with "I don't remember" ❌
4. All subsequent recoveries fail permanently
Now step 3 is blocked: a 1-message "what was my secret?" conversation
won't overwrite the previously saved secret.
Also strips channel metadata and /new-style short commands from
the real message count.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The agent_end hook was skipping state extraction when CURRENT_STATE.md
already contained meaningful content. This meant once a state was written,
subsequent conversations never updated it — the next /new would always
recover stale data.
Now: every session end overwrites CURRENT_STATE.md with the latest
conversation state. Previous state is archived to STATE_ARCHIVE_<ts>.md.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
v2.2.0 — first fully working plugin release:
- Fix: resolve workspace dir from hook context (_ctx), not api.runtime
- Fix: strip channel metadata from user messages before state extraction
- Both fixes are required for gateway/Telegram/Discord deployments
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Hook callbacks now get workspace from _ctx.workspaceDir (the hook
context parameter) instead of api.runtime.workspaceDir which is
undefined in gateway mode. This was the root cause of the plugin
silently doing nothing on all remote/gateway deployments.
- extractStateFromMessages now strips Telegram/Discord channel
metadata ("Conversation info (untrusted metadata)") from user
messages before saving to CURRENT_STATE.md, preventing garbage
data in the Objective field.
Tested on: macOS local (GPT-5.4), Oracle Cloud (MiniMax M2.5)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
post-install.sh now writes plugins.installs with source:"path" so
OpenClaw recognizes the plugin origin. Eliminates both the allow-list
and provenance warnings on fresh install. Script is now fully
idempotent — always refreshes allow/installs/entries.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add package.json with openclaw plugin metadata, configure plugins.allow
in post-install.sh, and add source field to plugin manifest. Fresh
installs now load without trust/provenance warnings in gateway logs.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Unify version references across all files. Update GitHub repo
description from "Draft skill" to "Lifecycle plugin".
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Replace prompt-based skill approach with OpenClaw lifecycle hooks
(before_agent_start, agent_end, before_compaction, before_reset).
State injection now happens automatically at the hook level,
making it model-agnostic and reliable across all providers.
- Add index.js with 5 lifecycle hooks
- Add openclaw.plugin.json manifest
- Rewrite post-install.sh to handle plugin installation
- Update README with plugin architecture docs
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add scripts/post-install.sh to clear stale skillsSnapshot cache from
existing sessions, ensuring the skill loads immediately after install.
Update README with corrected install path and post-install instructions.
Include detailed troubleshooting report documenting the snapshot cache
root cause analysis.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>