{"id":48671304,"url":"https://github.com/2951461586/openclaw-memory-compiler","last_synced_at":"2026-04-10T12:14:04.971Z","repository":{"id":346145378,"uuid":"1188685251","full_name":"2951461586/openclaw-memory-compiler","owner":"2951461586","description":"Derived continuity and control-plane plugin for OpenClaw.","archived":false,"fork":false,"pushed_at":"2026-03-22T13:12:01.000Z","size":267,"stargazers_count":0,"open_issues_count":5,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-03-23T04:34:54.724Z","etag":null,"topics":["agent-memory","context-engineering","continuity","control-plane","lcm","memory-compiler","openclaw","openclaw-plugin"],"latest_commit_sha":null,"homepage":"https://github.com/2951461586/openclaw-memory-compiler#readme","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/2951461586.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-03-22T12:51:06.000Z","updated_at":"2026-03-22T13:12:04.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/2951461586/openclaw-memory-compiler","commit_stats":null,"previous_names":["2951461586/openclaw-memory-compiler"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/2951461586/openclaw-memory-compiler","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/2951461586%2Fopenclaw-memory-compiler","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/2951461586%2Fopenclaw-memory-compiler/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/2951461586%2Fopenclaw-memory-compiler/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/2951461586%2Fopenclaw-memory-compiler/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/2951461586","download_url":"https://codeload.github.com/2951461586/openclaw-memory-compiler/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/2951461586%2Fopenclaw-memory-compiler/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31641671,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-10T07:40:12.752Z","status":"ssl_error","status_checked_at":"2026-04-10T07:40:11.664Z","response_time":98,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["agent-memory","context-engineering","continuity","control-plane","lcm","memory-compiler","openclaw","openclaw-plugin"],"created_at":"2026-04-10T12:14:04.268Z","updated_at":"2026-04-10T12:14:04.966Z","avatar_url":"https://github.com/2951461586.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# memory-compiler\n\n**Language: English | [中文](./README.zh-CN.md)**\n\n[![Release](https://img.shields.io/github/v/release/2951461586/openclaw-memory-compiler?sort=semver)](https://github.com/2951461586/openclaw-memory-compiler/releases)\n[![License](https://img.shields.io/github/license/2951461586/openclaw-memory-compiler)](./LICENSE)\n[![Open Issues](https://img.shields.io/github/issues/2951461586/openclaw-memory-compiler)](https://github.com/2951461586/openclaw-memory-compiler/issues)\n[![Stars](https://img.shields.io/github/stars/2951461586/openclaw-memory-compiler?style=social)](https://github.com/2951461586/openclaw-memory-compiler)\n\nDerived continuity and control-plane plugin for OpenClaw.\n\n## Install / verify at a glance\n\n```bash\ncd /path/to/your/openclaw/workspace\nmkdir -p plugins\n\ngit clone https://github.com/2951461586/openclaw-memory-compiler.git plugins/memory-compiler\ncd plugins/memory-compiler\nnpm install\n\nopenclaw gateway restart\nnode ./bin/memory-compiler.mjs doctor -\nnode ./bin/memory-compiler.mjs migrate -\nnode ./bin/memory-compiler.mjs refresh - \u003c\u003c'JSON'\n{\n  \"pluginConfig\": {\n    \"enabled\": true,\n    \"controlPlaneMode\": \"plugin-preferred\"\n  }\n}\nJSON\nnode ./bin/memory-compiler.mjs verify - \u003c\u003c'JSON'\n{\n  \"pluginConfig\": {\n    \"enabled\": true,\n    \"controlPlaneMode\": \"plugin-preferred\"\n  }\n}\nJSON\nnpm test\nnpm run smoke:clean-install\nnpm run smoke:trusted-install\nnpm run check:publish\n```\n\nIf those commands are green, the install surface and publish surface are in good shape.\n\n`memory-compiler` turns source-backed inputs (workspace files, LCM recall, durable memory exports, session state) into operator/runtime artifacts such as facts, threads, continuity records, digests, session packs, source backlinks, review queues, and control-plane reports.\n\n## What this plugin is for\n\nUse this plugin when you want OpenClaw to:\n- compile derived continuity from source-backed inputs\n- keep operator-facing review / control-plane artifacts in one place\n- inject tighter runtime context before prompt build\n- preserve source-first behavior for precise questions\n\nWhat it is **not**:\n- not a vector database\n- not a replacement for LCM\n- not a replacement for `memory-lancedb-pro`\n\n## Requirements\n\n- OpenClaw `\u003e= 2026.3.13`\n- Node.js compatible with your OpenClaw install\n- A writable workspace (default: `~/.openclaw/workspace`)\n\n## Quick start\n\n### 1) Put the plugin in your workspace\n\n```bash\ncd /path/to/your/openclaw/workspace\nmkdir -p plugins\ngit clone https://github.com/2951461586/openclaw-memory-compiler.git plugins/memory-compiler\ncd plugins/memory-compiler\nnpm install\n```\n\n### 2) Enable it in `openclaw.json`\n\nMinimal config:\n\n```json\n{\n  \"plugins\": {\n    \"allow\": [\"memory-compiler\"],\n    \"load\": {\n      \"paths\": [\"/absolute/path/to/your/openclaw/workspace/plugins/memory-compiler\"]\n    },\n    \"entries\": {\n      \"memory-compiler\": {\n        \"enabled\": true,\n        \"config\": {\n          \"enabled\": true,\n          \"workspaceDir\": \"/absolute/path/to/your/openclaw/workspace\",\n          \"controlPlaneMode\": \"plugin-preferred\"\n        }\n      }\n    }\n  }\n}\n```\n\nNotes:\n- prefer **absolute paths** for `plugins.load.paths`\n- `controlPlaneMode: \"plugin-preferred\"` is the only supported mode\n- clean installs should **not** add `memory-compiler-bridge`\n\n### 3) Restart OpenClaw\n\n```bash\nopenclaw gateway restart\n```\n\n### 4) Run the operator bootstrap checks\n\n```bash\ncd plugins/memory-compiler\nnode ./bin/memory-compiler.mjs doctor -\nnode ./bin/memory-compiler.mjs migrate -\nnode ./bin/memory-compiler.mjs refresh - \u003c\u003c'JSON'\n{\n  \"pluginConfig\": {\n    \"enabled\": true,\n    \"controlPlaneMode\": \"plugin-preferred\"\n  }\n}\nJSON\nnode ./bin/memory-compiler.mjs verify - \u003c\u003c'JSON'\n{\n  \"pluginConfig\": {\n    \"enabled\": true,\n    \"controlPlaneMode\": \"plugin-preferred\"\n  }\n}\nJSON\n```\n\n### 5) Run the package smoke checks\n\n```bash\nnpm test\nnpm run smoke:clean-install\nnpm run smoke:trusted-install\nnpm run check:publish\n```\n\nIf all four are green, you have a usable install surface.\n\n## Install into an existing trusted workspace\n\n### Legacy surface note (2026-03-24)\n\nOn maintained nodes, the old workspace-root legacy surfaces have already been retired and removed:\n- `scripts/memory-compiler/`\n- `reports/openclaw-memory-compiler/`\n- `plugins/memory-compiler-bridge/`\n\nIf you still see references to those paths in old notes or copied snippets, treat them as historical/stale and prefer the plugin-owned surface under `plugins/memory-compiler/`.\n\nIf the workspace already has trusted `memory/compiler` data, keep it in place.\n\nRecommended order:\n1. enable the plugin\n2. keep default data paths first\n3. run `doctor`\n4. run `migrate`\n5. run `refresh`\n6. run `verify`\n7. only then do any legacy retirement work\n\n## Common commands\n\n```bash\nnode ./bin/memory-compiler.mjs doctor -\nnode ./bin/memory-compiler.mjs status -\nnode ./bin/memory-compiler.mjs migrate -\nnode ./bin/memory-compiler.mjs refresh - \u003c\u003c'JSON'\n{\n  \"pluginConfig\": {\n    \"enabled\": true,\n    \"controlPlaneMode\": \"plugin-preferred\"\n  }\n}\nJSON\nnode ./bin/memory-compiler.mjs verify - \u003c\u003c'JSON'\n{\n  \"pluginConfig\": {\n    \"enabled\": true,\n    \"controlPlaneMode\": \"plugin-preferred\"\n  }\n}\nJSON\nnode ./bin/memory-compiler.mjs review-triage - \u003c\u003c'JSON'\n{\n  \"limit\": 5\n}\nJSON\nnode ./bin/memory-compiler.mjs scheduler-plan - \u003c\u003c'JSON'\n{\n  \"eventType\": \"heartbeat\",\n  \"force\": true\n}\nJSON\n```\n\n## Config highlights\n\nCore path settings:\n- `workspaceDir`: workspace root\n- `dataDir`: derived data root, default `memory/compiler`\n- `reportsDir`: operator reports root, default `memory/compiler/reports`\n- `runtimeDir`: runtime state root, default `memory/compiler`\n- `docsDir`: docs/contracts root, default `plugin:docs`\n- `sessionStatePath`: default `SESSION-STATE.md`\n- `workingBufferPath`: default `memory/working-buffer.md`\n- `dailyMemoryDir`: default `memory`\n\nCore behavior/settings:\n- `controlPlaneMode`: `plugin-preferred` only\n- `enableRuntimeBridge`\n- `enableSessionLifecycle`\n- `enableControlPlane`\n- `preferredSourcePrefixes`\n- `includeReviewTriage`\n- `maxReviewItems`\n\nSee `docs/CONFIG.md` for the full reference.\n\n## Evidence / trust stance\n\nDefault trust order:\n1. `file:` source refs\n2. `sum:` LCM summaries with source-bearing context\n3. `mem:` durable memory support\n4. session/artifact-derived context only as support\n\nPractical rule:\n- exact claims should be source-backed\n- digests are continuity aids, not final proof\n- control-plane output is operator evidence, not truth by assertion\n\n## Repository boundary\n\nIf you publish or package this plugin, the publishable boundary is this directory only:\n\n```text\nplugins/memory-compiler/\n```\n\nTreat these as package-owned:\n- `bin/`\n- `contracts/`\n- `docs/`\n- `scripts/`\n- `src/`\n- `test/`\n- `index.ts`\n- `openclaw.plugin.json`\n- `README.md`\n- `MIGRATION.md`\n- `CHANGELOG.md`\n- `LICENSE`\n- `package.json`\n\nDo **not** treat workspace runtime state as publishable package content:\n- `memory/compiler/`\n- `_trash/`\n- ad-hoc reports outside the package root\n- host-specific `openclaw.json`\n\n## FAQ\n\n### Do I need `memory-compiler-bridge` for a fresh install?\nNo. Clean installs should enable `memory-compiler` directly.\n\n### Does `migrate` move or delete my data?\nNo. `migrate` inspects and prepares the plugin layout. It does not destructively move trusted runtime data.\n\n### Should I delete `memory/compiler/` during cleanup?\nNo. `memory/compiler/` is the active runtime/data root.\n\n### How do I know the install is healthy?\nA healthy install should pass:\n- `doctor`\n- `migrate`\n- `refresh`\n- `verify`\n- `npm test`\n- `npm run smoke:clean-install`\n- `npm run check:publish`\n\n### Where do I look for day-2 operator docs?\nStart with:\n- `docs/README.md`\n- `docs/CONFIG.md`\n- `docs/ARCHITECTURE.md`\n- `docs/OPERATOR-REVIEW-FLOW.md`\n\n### Do I need migration history to use this plugin?\nNo. Normal installs should use this README plus `docs/CONFIG.md`. `MIGRATION.md` is maintainer history, not the primary operator path.\n\n## Docs map\n\n- `docs/README.md` — operator docs index\n- `docs/CONFIG.md` — config reference and recommended defaults\n- `docs/ARCHITECTURE.md` — layering and trust boundary\n- `docs/OPERATOR-REVIEW-FLOW.md` — operator review workflow\n- `docs/RETIREMENT-PLAN.md` — legacy retirement boundary\n- `MIGRATION.md` — maintainer migration notes / historical context\n- `CONTRIBUTING.md` — contribution expectations, validation flow, and PR evidence shape\n\n## Current product boundary\n\nThis package is ready to install, enable, validate, and operate as a plugin-first OpenClaw package.\n\nWhat remains evolutionary rather than blocking:\n- continued cleanup of deeper script-layer internals\n- further normalization of copied MJS modules into stable TS modules\n- ongoing polish of acceptance/burn-in fixture surfaces\n\nThose are implementation refinements, not blockers for clean install / enable / doctor / migrate / refresh / verify / smoke / publish-check flows.\nresh / verify / smoke / publish-check flows.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F2951461586%2Fopenclaw-memory-compiler","html_url":"https://awesome.ecosyste.ms/projects/github.com%2F2951461586%2Fopenclaw-memory-compiler","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F2951461586%2Fopenclaw-memory-compiler/lists"}