Home/Notes & PKM/shared-memory

shared-memory

Safe
Notes & PKM

Share memories and state with other users.

SKILL.md

# Shared Memory Share memories from your knowledge base with other users. Manage users, groups, and fine-grained permissions on namespaces. ## Quick Start ```bash # 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 <username>` | Create user | | `delete-user <username>` | Delete user | ### Groups | Command | Description | |---------|-------------| | `create-group <name>` | Create group | | `delete-group <name>` | Delete group | | `add-member <group> <user>` | Add user to group | | `remove-member <group> <user>` | Remove user | ### Permissions | Command | Description | |---------|-------------| | `grant org <action> <pattern>` | Grant to org | | `grant user <name> <action> <pattern>` | Grant to user | | `grant group <name> <action> <pattern>` | Grant to group | | `revoke <grant_id>` | Revoke permission | | `list` | List all grants | | `list-permissions` | List effective permissions | **Actions**: `read`, `create`, `update`, `delete` ### Subscriptions | Command | Description | |---------|-------------| | `subscribe <key>` | Get notified on changes | | `unsubscribe <key>` | Stop notifications | | `list-subscriptions` | List subscriptions | ## Example: Family Sharing ```bash # 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: ```bash 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`: ```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.

More in Notes & PKM