Overrides the auto-detected project scope to read and write memories under a different project ID, or enables global search to access all memories across all users and projects. Use when working across multiple projects, accessing memories from another repo, enabling team-wide memory access, or when auto-detection resolves to the wrong project.
70
86%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
Override the automatic project_id detection for the current directory, or enable global search mode.
/mem0:switch-project <project-name> — switch to a specific project scope/mem0:switch-project --global — enable global search (all memories, all users, all projects)/mem0:switch-project --no-global — disable global search and return to per-project scoping--global flag is provided:Set global_search: true in ~/.mem0/settings.json using the Bash tool:
python3 -c "
import json, os
settings_file = os.path.expanduser('~/.mem0/settings.json')
settings = {}
if os.path.isfile(settings_file):
with open(settings_file) as f:
settings = json.load(f)
settings['global_search'] = True
with open(settings_file, 'w') as f:
json.dump(settings, f, indent=2)
print('Global search enabled')
"Print:
Global search enabled.
Searches now return all memories across all users and projects.
Writes still use the current user_id and app_id.
Restart the session for the change to take effect.--no-global flag is provided:Set global_search: false in ~/.mem0/settings.json using the Bash tool:
python3 -c "
import json, os
settings_file = os.path.expanduser('~/.mem0/settings.json')
settings = {}
if os.path.isfile(settings_file):
with open(settings_file) as f:
settings = json.load(f)
settings['global_search'] = False
with open(settings_file, 'w') as f:
json.dump(settings, f, indent=2)
print('Global search disabled')
"Print:
Global search disabled.
Searches now return only memories scoped to the current project.
Restart the session for the change to take effect.If no project name was given, ask: "What project_id should this directory use?"
Write the mapping to ~/.mem0/project_map.json using the Bash tool:
python3 -c "
import json, os
map_file = os.path.expanduser('~/.mem0/project_map.json')
mapping = {}
if os.path.isfile(map_file):
with open(map_file) as f:
mapping = json.load(f)
mapping[os.getcwd()] = '<PROJECT_NAME>'
os.makedirs(os.path.dirname(map_file), exist_ok=True)
with open(map_file, 'w') as f:
json.dump(mapping, f, indent=2)
print(f'Mapped {os.getcwd()} -> <PROJECT_NAME>')
"(Replace <PROJECT_NAME> with the user's chosen project name.)
Verify by searching for existing memories:
search_memories with query="project", filters={"AND": [{"user_id": "<active_user_id>"}, {"app_id": "<PROJECT_NAME>"}]}, top_k=1Print:
Switched to project <PROJECT_NAME>.
<N> memories found for this project.
Note: This override persists across sessions for this directory.b357a5a
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.