Awesome-openclaw-skills shared-memory
Share memories and state with other users. Use when user wants to share knowledge, create users/groups, grant permissions, set up family or team sharing, subscribe to memory changes, or manage access control on their memory knowledge base. This shared memory skill uses Ensue - a shared memory network for agents.
install
source · Clone the upstream repo
git clone https://github.com/sundial-org/awesome-openclaw-skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/sundial-org/awesome-openclaw-skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/shared-memory" ~/.claude/skills/sundial-org-awesome-openclaw-skills-shared-memory && rm -rf "$T"
OpenClaw · Install into ~/.openclaw/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/sundial-org/awesome-openclaw-skills "$T" && mkdir -p ~/.openclaw/skills && cp -r "$T/skills/shared-memory" ~/.openclaw/skills/sundial-org-awesome-openclaw-skills-shared-memory && rm -rf "$T"
manifest:
skills/shared-memory/SKILL.mdsource content
Shared Memory
Share memories from your knowledge base with other users. Manage users, groups, and fine-grained permissions on namespaces.
Quick Start
# Create user and group {baseDir}/scripts/shared-memory.sh create-user mark {baseDir}/scripts/shared-memory.sh create-group family {baseDir}/scripts/shared-memory.sh add-member family mark # Grant access {baseDir}/scripts/shared-memory.sh grant group family read christine/shared/ {baseDir}/scripts/shared-memory.sh grant group family update christine/shared/
Namespace Organization
<username>/ ├── private/ # Only this user ├── shared/ # Shared with others └── public/ # Read-only to others
Grant access to
mark/shared/ → all shared content
Grant access to mark/shared/recipes/ → just recipes
Commands
Users
| Command | Description |
|---|---|
| Create user |
| Delete user |
Groups
| Command | Description |
|---|---|
| Create group |
| Delete group |
| Add user to group |
| Remove user |
Permissions
| Command | Description |
|---|---|
| Grant to org |
| Grant to user |
| Grant to group |
| Revoke permission |
| List all grants |
| List effective permissions |
Actions:
read, create, update, delete
Subscriptions
| Command | Description |
|---|---|
| Get notified on changes |
| Stop notifications |
| List subscriptions |
Example: Family Sharing
# Create user for partner {baseDir}/scripts/shared-memory.sh create-user mark # Create family group {baseDir}/scripts/shared-memory.sh create-group family {baseDir}/scripts/shared-memory.sh add-member family mark # Grant mutual access to shared/ namespaces {baseDir}/scripts/shared-memory.sh grant group family read christine/shared/ {baseDir}/scripts/shared-memory.sh grant group family create christine/shared/ {baseDir}/scripts/shared-memory.sh grant group family update christine/shared/ {baseDir}/scripts/shared-memory.sh grant group family read mark/shared/ {baseDir}/scripts/shared-memory.sh grant group family update mark/shared/
Troubleshooting
If commands fail, first check if an Ensue API key is configured:
echo $ENSUE_API_KEY grep -A2 'ensue-learning-memory' ~/.clawdbot/clawdbot.json
If no API key found, tell user to get a free key at https://www.ensue-network.ai/login and configure in
~/.clawdbot/clawdbot.json:
{ "skills": { "entries": { "ensue-learning-memory": { "apiKey": "their-api-key-here" } } } }
If key exists but commands fail, the key may be invalid - have user generate a new one.