openclaw - 💡(How to fix) Fix Feature request: per-agent self-improving memory isolation [1 comments, 1 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
openclaw/openclaw#53750Fetched 2026-04-08 01:23:56
View on GitHub
Comments
1
Participants
1
Timeline
2
Reactions
0
Participants
Timeline (top)
commented ×1cross-referenced ×1

Fix Action

Fix / Workaround

A symlink workaround exists but only works for one agent at a time, which is not practical for multi-agent concurrent usage.

RAW_BUFFERClick to expand / collapse

Problem

Currently, the self-improving skill stores memory at `~/self-improving/` which resolves to the system home directory. All agents share the same path, meaning their self-improving memory (corrections, patterns, preferences) is physically mixed together in `/Users/binary/self-improving/`.

This makes it impossible for multiple agents to simultaneously maintain independent self-improving memories.

Proposed Solution

Support per-agent memory paths, ideally through sandbox-level `` resolution so that each agent gets its own `/self-improving/` automatically, without manual symlink switching.

Possible approaches:

  1. Make sandbox `~` resolve to the sandbox root instead of system home
  2. Add a skill-level `memoryPath` config option in SKILL.md that takes precedence over hardcoded `~/self-improving/`
  3. Support an environment variable or agent config key for the self-improving base path

Context

  • OpenClaw version: 2026.3.23-2
  • Agents: code, xiaoxian, TS
  • Skill: self-improving v1.2.10

A symlink workaround exists but only works for one agent at a time, which is not practical for multi-agent concurrent usage.

extent analysis

Fix Plan

To support per-agent memory paths, we will implement a skill-level memoryPath config option. This approach allows each agent to have its own independent self-improving memory path without manual symlink switching.

Steps to Implement the Fix

  • Add a memoryPath config option to the SKILL.md file for the self-improving skill.
  • Update the self-improving skill code to use the memoryPath config option instead of the hardcoded ~/self-improving/ path.
  • Set the memoryPath config option for each agent in their respective config files.

Example Code

# In SKILL.md, add the memoryPath config option
memoryPath: ~/self-improving/

# In the self-improving skill code, use the memoryPath config option
import os
from skill_config import get_config

def get_memory_path():
    config = get_config()
    memory_path = config.get('memoryPath')
    return os.path.expanduser(memory_path)

# In each agent's config file, set the memoryPath config option
# For example, in agent_code_config.yaml
memoryPath: ~/code-self-improving/

Verification

To verify that the fix worked, start multiple agents concurrently and check that each agent's self-improving memory is stored in its own independent path.

Extra Tips

  • Make sure to update the memoryPath config option for each agent to ensure they have their own independent self-improving memory paths.
  • Consider using environment variables or agent config keys to set the memoryPath config option for more flexibility.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING