mem-setup
GitHub配置 claude-mem-cowork 插件凭据,支持从 cmem.ai Connect 提取 sync token、user id 和 SyncHub URL。通过写入 config.json 或本地 settings.json 完成设置,确保密钥安全处理并验证连接状态。
Trigger Scenarios
Install
npx skills add thedotmack/claude-mem --skill mem-setup -g -y
SKILL.md
Frontmatter
{
"name": "mem-setup",
"metadata": {
"version": "0.1.0"
},
"description": "This skill should be used when the user asks to \"set up claude-mem\", \"pair claude-mem\", \"connect cmem\", \"add my cmem key\", \"set up cloud sync in Cowork\", or provides cmem.ai Connect values (sync token, user id, SyncHub URL) for this plugin. Configures the claude-mem-cowork plugin credentials.\n"
}
Claude-Mem Setup (Cowork pairing)
Configure this plugin with the user's own cmem.ai credentials so hooks can capture and inject memory. Anyone can pair — credentials are per-user configuration, never hardcoded in plugin logic.
What to collect
From cmem.ai → Connect, the user has three values:
- sync token (starts with
cm_) — used as the bearer API key - user id (UUID)
- SyncHub URL (a workers.dev or cmem.ai URL)
If the user pastes the whole Connect blurb, extract the three values from it. If any are missing, ask for the sync token at minimum — the other two are optional.
Secret handling — non-negotiable
- Never echo the token back in conversation, put it in a shell argv, or log it.
- Move it only via file writes (Write/Edit tool) and file reads.
Steps
-
Locate the installed plugin root (this skill's own plugin). Update its
config.json: setapiKeyto the sync token,userId, andsyncHubUrl. Leave other settings unless the user asks (injecttoggles). Project naming is automatic (cmem_work_*) and is not configurable. -
Cowork containers are ephemeral: edits to the installed copy last only for this session. To make pairing permanent, repackage — zip the plugin directory as
<plugin-name>.pluginand send it to the user to re-install (the cowork-plugin skill's packaging flow). Tell the user this is why. -
If this machine also has a local claude-mem install (a
~/.claude-mem/directory exists), optionally write the same values to~/.claude-mem/settings.jsonwith mode 0600 (CLAUDE_MEM_CLOUD_SYNC_TOKEN,CLAUDE_MEM_CLOUD_SYNC_USER_ID,CLAUDE_MEM_CLOUD_SYNC_HUB_URLkeys — the same keys the local claude-mem cloud-sync pairing writes) — the hook script and the local worker both read it. -
Verify without exposing the secret:
node "${CLAUDE_PLUGIN_ROOT}/scripts/cmem-hook.mjs" statusReport the masked output. A
MISSINGkey means the write didn't land; a 404 on/api/hooks/contextis expected until the Pro endpoints deploy (search/injection still work via/api/mcp).
Alternate source
Env vars override everything and need no file edits: CMEM_API_KEY,
CMEM_USER_ID, CMEM_SYNC_HUB_URL, CMEM_API_BASE.
Version History
- 866a0ca Current 2026-08-29 01:56


