{"skill":{"slug":"self-improving-global-safe","displayName":"Self-Improving Global Safe","summary":"Global, namespaced learning memory for OpenClaw. Use when users correct output, set stable preferences, ask what was learned, ask for memory stats, or reques...","description":"---\nname: self-improving\ndescription: Global, namespaced learning memory for OpenClaw. Use when users correct output, set stable preferences, ask what was learned, ask for memory stats, or request forgetting learned patterns. Keep memory cross-session, avoid context mixing, and enforce strict privacy boundaries.\nmetadata: {\"openclaw\":{\"os\":[\"darwin\",\"linux\",\"win32\"]}}\n---\n\n# Self-Improving (Global + Namespaced)\n\nMaintain global learning while preventing cross-project pollution.\n\n## Storage Root\n\nStore only in:\n\n```text\n~/.openclaw/self-improving/\n  global/\n    rules.md\n    corrections.md\n  contexts/\n    <context-key>/\n      rules.md\n      corrections.md\n      meta.md\n  index.md\n```\n\nNever write outside this root unless the user explicitly asks.\n\n## Context Key\n\nCompute a stable `context-key` in this order:\n1. If in a git repo, use `<host>-<owner>-<repo>` when available.\n2. Else use sanitized absolute workspace path.\n3. If user gives explicit project scope, append that suffix.\n\nUse `global/*` only for cross-context rules.\nUse `contexts/<context-key>/*` for local rules.\n\n## Load Strategy\n\nDefault read set:\n- `global/rules.md`\n- active `contexts/<context-key>/rules.md`\n\nWhen user asks cross-project/global questions, read additional context folders and cite exact source file.\n\n## Learning Triggers\n\nLearn only from explicit signal:\n- direct correction\n- explicit preference\n- repeated correction (3 times)\n\nDo not learn from silence, guesses, or one-off temporary requests.\n\n## Promotion Gates\n\nWrite every candidate to active `corrections.md`.\nPromote to context `rules.md` only after explicit confirmation.\nPromote to global `rules.md` only when:\n- user says it is global, or\n- rule is confirmed in 2+ different contexts.\n\nDetailed procedures: `operations.md`.\n\n## Conflict Handling\n\nConflict precedence:\n1. active context rule\n2. global rule\n3. ask user if ambiguity remains\n\nRecord conflicts and resolutions in corrections logs.\nDetailed policy: `conflict-resolution.md`.\n\n## Retention and Compaction\n\nKeep files concise, deduplicated, and auditable.\nApply retention windows and archive stale entries by policy.\nDetailed policy: `retention-policy.md`.\n\n## Safety Guardrails\n\nNever store:\n- credentials or secrets\n- financial, medical, biometric, identity-sensitive data\n- third-party private information\n\nIf uncertain, ask before writing.\n\n## User Requests\n\n- \"What did you learn?\" -> recent corrections (active context + global summary)\n- \"Show my rules\" -> active context rules and global rules\n- \"Memory stats\" -> counts by scope, file, and last update\n- \"Forget X\" -> remove in active context, then ask about global/all contexts\n- \"Forget everything\" -> ask scope first: active context, global only, or all contexts\n\nDo not auto-backup before deletion unless user asks for export.\n\n## Response Transparency\n\nWhen behavior uses learned memory, cite source file:\n- `global/rules.md`\n- `contexts/<context-key>/rules.md`\n","tags":{"latest":"0.1.0","stable":"0.1.0"},"stats":{"comments":0,"downloads":176,"installsAllTime":0,"installsCurrent":0,"stars":0,"versions":1},"createdAt":1772499691454,"updatedAt":1778491695332},"latestVersion":{"version":"0.1.0","createdAt":1772499691454,"changelog":"Initial release: global namespaced memory with anti-mixing, privacy guardrails, scoped deletion, conflict resolution, and retention policy.","license":null},"metadata":{"setup":[],"os":["darwin","linux","win32"],"systems":null},"owner":{"handle":"slicenferqin","userId":"s176kv3kpkp3z5qcrp8cbeac5h884q16","displayName":"Mark Lee","image":"https://avatars.githubusercontent.com/u/128122609?v=4"},"moderation":null}