Chat SDK
databuddy-analytics/Databuddy
Build multi-platform chat bots with Chat SDK (chat npm package).
Walks you through creating, installing and verifying a custom claude-mem mode, including note types, tags and optional Telegram alerts for chosen memories.
$ npx skills add thedotmack/claude-mem --skill mode-creator -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install thedotmack/claude-mem mode-creator --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/thedotmack/claude-mem.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugin/skills/mode-creator .claude/skills/mode-creator && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "mode-creator" agent skill from https://github.com/thedotmack/claude-mem/tree/main/plugin/skills/mode-creator into .claude/skills/mode-creator/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "mode-creator", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/thedotmack/claude-mem/tree/main/plugin/skills/mode-creatorType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add thedotmack/claude-mem --skill mode-creator -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install thedotmack/claude-mem mode-creator --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/thedotmack/claude-mem.git skills-src && mkdir -p .agents/skills && cp -r skills-src/plugin/skills/mode-creator .agents/skills/mode-creator && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "mode-creator" agent skill from https://github.com/thedotmack/claude-mem/tree/main/plugin/skills/mode-creator into .agents/skills/mode-creator/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "mode-creator", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add thedotmack/claude-mem --skill mode-creator -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install thedotmack/claude-mem mode-creator --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/thedotmack/claude-mem.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/plugin/skills/mode-creator .cursor/skills/mode-creator && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "mode-creator" agent skill from https://github.com/thedotmack/claude-mem/tree/main/plugin/skills/mode-creator into .cursor/skills/mode-creator/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "mode-creator", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/thedotmack/claude-mem.git --path plugin/skills/mode-creator--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add thedotmack/claude-mem --skill mode-creator -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install thedotmack/claude-mem mode-creator --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/thedotmack/claude-mem.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/plugin/skills/mode-creator .gemini/skills/mode-creator && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "mode-creator" agent skill from https://github.com/thedotmack/claude-mem/tree/main/plugin/skills/mode-creator into .gemini/skills/mode-creator/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "mode-creator", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install thedotmack/claude-mem mode-creatorInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add thedotmack/claude-mem --skill mode-creator -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/thedotmack/claude-mem.git skills-src && mkdir -p .github/skills && cp -r skills-src/plugin/skills/mode-creator .github/skills/mode-creator && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "mode-creator" agent skill from https://github.com/thedotmack/claude-mem/tree/main/plugin/skills/mode-creator into .github/skills/mode-creator/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "mode-creator", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add thedotmack/claude-mem --skill mode-creator -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install thedotmack/claude-mem mode-creator --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/thedotmack/claude-mem.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/plugin/skills/mode-creator .opencode/skills/mode-creator && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "mode-creator" agent skill from https://github.com/thedotmack/claude-mem/tree/main/plugin/skills/mode-creator into .opencode/skills/mode-creator/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "mode-creator", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
mode-creatorWalks you through creating, installing and verifying a custom claude-mem mode, including note types, tags and optional Telegram alerts for chosen memories.
The skill interviews you about what you work on, then proposes a small taxonomy: observation types, which are mutually exclusive kinds of notes, plus concept tags that can be reused across them. It waits for your approval before installing anything. It opens with the purpose, using examples such as a law student noting rules and exam traps or an architect capturing design decisions, and asks about your work before asking for a mode name or any JSON fields. It inspects the existing bundled and user modes first and may remix a close match.
Custom files go into the modes folder of the claude-mem data directory, never into the plugin cache or a bundled mode. The skill can set up Telegram alerts for particular memories without ever exposing the bot token in chat, arguments or logs, merges new triggers with existing ones and keeps timestamped backups of settings. It then restarts the worker and checks that the active mode appears in startup context. Existing observations keep their old types, and the new mode applies to future ones.
Helper scripts install-mode.mjs and configure-telegram.mjs handle the writes, and an evals file and reference notes on mode authoring and Telegram come with it. It works with a local worker runtime only. With a server runtime it explains the limit and stops before changing anything.
8 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 71ddd11. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 2 files in scripts/ (JavaScript), which the agent can run.
Shell commands in SKILL.md call:
nodenpxFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use npx, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Requires a local claude-mem worker installation, an interactive question tool, filesystem access, and Node.js 20+. Telegram setup requires network access and a Telegram account.
From compatibility in the SKILL.md frontmatter.
Custom Mode Creator for claude-mem loads about 2.4k tokens when it runs, and up to ~5.3k if it reads all its reference files. Until then it costs about 122 tokens; SKILL.md has 1,247 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from thedotmack/claude-mem at commit 71ddd11, republished under its Apache-2.0 licence (© thedotmack). 1,247 words, ~2,441 tokens.
.claude/skills/mode-creator/SKILL.md (or your agent's skills folder). This skill also uses 5 other files; get the full folder from GitHub.Create a useful note-taking system, not merely a valid JSON file. Interview the user, propose a small taxonomy, obtain approval, install it durably, configure optional alerts, restart the worker, and prove the active mode appears in startup context.
AskUserQuestion, request_user_input, or equivalent) for the interview. Ask in small batches and wait for each response.modes/ folder.CLAUDE_MEM_RUNTIME is server, explain that this workflow cannot safely install a per-user mode into the shared server and stop before mutation.Begin with this message inside the first interactive question:
Custom modes let you take notes for whatever you're working on. If you're a law student, you may want to write down every time a case establishes a rule, a professor flags an exam trap, or doctrines conflict. If you're an architect, you may want to capture every design decision, code constraint, client preference, or site discovery. What are you working on?
Do not start by asking for a mode name or JSON fields. Learn the work first.
If the answer is code-related, say:
Code mode already works well for software work. A custom variant may work better if it also tracks [2–4 specific kinds of notes inferred from their work] and tags [2–4 useful cross-cutting themes]. Would you like to keep standard code mode or customize it?
Use concrete suggestions. For an ML platform engineer, for example, suggest experiment outcomes, data-contract changes, production incidents, model decisions, cost findings, and reproducibility risks—not generic “custom notes.” If the user chooses standard code mode, do not create a redundant file; continue to the optional notification and verification steps.
Use follow-up questions to obtain:
Infer answers already present in the conversation instead of asking twice. When the user gives a broad answer, propose examples and let them select or edit them.
Read references/mode-authoring.md before drafting.
Propose:
Present the proposal in plain language and use the interactive question tool for approval. Let the user rename, add, remove, or reword categories. Do not write or install until they approve the taxonomy and privacy boundary.
Prefer an inherited ID such as code--architecture-practice so the mode reuses claude-mem's stable output protocol while replacing the domain taxonomy and behavioral prompts. The code parent is an implementation base; the override must remove code-specific semantics from the prompts. Use a standalone mode only when inheritance is genuinely unsuitable.
After the taxonomy is approved, ask:
Would you like Telegram notifications when claude-mem records any particular types or tags? Alerts include the observation type, title, subtitle, project, and observation ID, so avoid selecting categories that may expose sensitive material.
If yes:
CLAUDE_MEM_TELEGRAM_OBSERVATION_ALERTS_ENABLED to "true" in the resolved data directory's settings.json after running the installer or credential helper.If no, leave every Telegram setting unchanged.
Resolve the absolute directory containing this SKILL.md; all helper paths are relative to that directory.
Write the approved mode to a temporary JSON file. Use the exact inherited override shape in the authoring reference. Then validate without mutating anything:
node <skill-directory>/scripts/install-mode.mjs \
--mode <temporary-mode.json> \
--mode-id <parent--custom-id> \
--dry-runFix every validation error before installation. Then install and activate it:
node <skill-directory>/scripts/install-mode.mjs \
--mode <temporary-mode.json> \
--mode-id <parent--custom-id> \
--telegram-types <comma-separated-approved-types> \
--telegram-concepts <comma-separated-approved-concepts>Omit both Telegram flags when alerts were declined. The installer:
<data-dir>/modes/.CLAUDE_MEM_MODE in settings.json.Review its JSON result. Do not claim success if ok is not true.
If alerts were requested and both bot token and chat ID are already present, ask permission to reuse them and send a test. If credentials are missing, explain the BotFather steps from the Telegram reference.
Run the credential helper only after explicit consent:
node <skill-directory>/scripts/configure-telegram.mjs \
--types <comma-separated-approved-types> \
--concepts <comma-separated-approved-concepts>The helper accepts the token through hidden terminal input, validates it with getMe, discovers or asks for the chat ID, sends a test message, and stores the settings with owner-only permissions. Never pass the token as an argument.
If the agent environment cannot give the user control of an interactive terminal, show the exact helper command and pause for the user to run it locally. This is the only acceptable manual boundary; do not ask them to paste the token into chat as a workaround. After they confirm, inspect only whether the credential fields are present—never print their values.
Read the configured runtime before restarting. For a worker runtime, use the verified CLI restart path:
npx claude-mem restart
npx claude-mem statusIf the CLI shim is unavailable, run the installed plugin's scripts/worker-service.cjs restart with Bun. Do not use a bare restart HTTP request when the verified CLI path is available.
Verify all of the following:
settings.json names the intended CLAUDE_MEM_MODE without displaying secrets.session_start_context MCP tool when available. Otherwise call /api/context/inject?project=mode-creator-verification&full=true on the configured local worker.Mode: <mode name> (<mode id>).If the worker falls back to code, inspect the worker log for a mode validation or lookup error, repair the mode, and repeat the restart. Do not describe a fallback as successful activation.
Conclude with:
Never include the Telegram bot token in the handoff.
© thedotmack, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 5 other files (scripts, references) in plugin/skills/mode-creator of thedotmack/claude-mem.
Open the folder on GitHubat commit 71ddd11
Custom Mode Creator for claude-mem next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Custom Mode Creator for claude-mem this skillthedotmack/claude-mem | 98k | — | ~2.4k | Automated safety check: Pass | Apache-2.0 | |
| Chat SDKdatabuddy-analytics/Databuddy | 1.2k | — | ~2.6k | Automated safety check: Pass | AGPL-3.0 | |
| Watchmen Setupfirstbatchxyz/watchmen | 296 | — | ~1.1k | Automated safety check: Notes | MIT | |
| Test Ocas Openclawpwrdrvr/openclaw-codex-app-server | 265 | — | ~4k | Automated safety check: Pass | MIT | |
| OmniRoute Plugins, Skills and Memory CLIdiegosouzapw/OmniRoute | 74k | — | ~1k | Automated safety check: Pass | MIT | |
| Agentmemory Capture Hooksrohitg00/agentmemory | 29k | — | ~444 | Automated safety check: Pass | Apache-2.0 |
databuddy-analytics/Databuddy
Build multi-platform chat bots with Chat SDK (chat npm package).
firstbatchxyz/watchmen
Walks through installing watchmen, running its init wizard, wiring the plugin into Codex or Claude Code and checking the result with doctor.
pwrdrvr/openclaw-codex-app-server
Regression test the OpenClaw Codex App Server plugin against a live local OpenClaw instance in Telegram or Discord.
diegosouzapw/OmniRoute
Command reference for the omniroute CLI's memory, plugin, marketplace and skills commands: search and manage stored memory, install and scaffold plugins, and find skill packages.
rohitg00/agentmemory
Describes the lifecycle hooks in the agentmemory Claude Code plugin that record observations automatically, and what to check when observations go missing.
nanocoai/nanoclaw
Installs mnemon in the agent container so agents recall relevant past context before replying and store new insights after every turn.
thedotmack/claude-mem
Checks claude-mem cloud sync status and guides you through connecting a cmem.ai Pro account without the sync token ever passing through the chat.
thedotmack/claude-mem
Searches the user's persistent cross-session memory for timestamped observations synthesized from past agent sessions on cmem.ai.
thedotmack/claude-mem
Pairs the claude-mem Cowork plugin with a cmem.ai account by writing the sync token, user id and SyncHub URL into the plugin config without exposing the secret.
thedotmack/claude-mem
Writes a narrative Journey Into report on a project's whole development history, built from the timeline that claude-mem has recorded.
thedotmack/claude-mem
Keeps watching a pull request, fixing real review and CI problems and resolving stale threads, until it is clean and ready to merge.
thedotmack/claude-mem
Use this when setting up claude-mem on Grok Bot: local worker plus CMEM Pro observer (default), optional host-login observer, or remote cmem.ai. No Cursor…
Works with
Categories
Walks you through creating, installing and verifying a custom claude-mem mode, including note types, tags and optional Telegram alerts for chosen memories. The skill interviews you about what you work on, then proposes a small taxonomy: observation types, which are mutually exclusive kinds of notes, plus concept tags that can be reused across them. It waits for your approval before installing anything.
Custom Mode Creator for claude-mem fits situations like: customizing what claude-mem remembers for your kind of work; adding domain-specific observation types or tags; sending Telegram notifications for particular kinds of memory; checking that a newly installed mode is active.
Run `npx skills add thedotmack/claude-mem --skill mode-creator -a claude-code`. Or copy the skill folder (plugin/skills/mode-creator in thedotmack/claude-mem) into .claude/skills/mode-creator in your project. Claude Code loads it when a task matches its description.
Run `npx skills add thedotmack/claude-mem --skill mode-creator -a codex`. Or copy the skill folder (plugin/skills/mode-creator in thedotmack/claude-mem) into .agents/skills/mode-creator in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add thedotmack/claude-mem --skill mode-creator -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/mode-creator, .gemini/skills/mode-creator, .github/skills/mode-creator and .opencode/skills/mode-creator in your project.
Going by SKILL.md and its folder, Custom Mode Creator for claude-mem needs JavaScript for the scripts in its folder and the command-line tools its instructions call (node and npx). Our summary lists: A local claude-mem worker installation; Node.js 20 or newer; A tool for asking you questions during the interview; Network access and a Telegram account for alerts. Compatibility (from SKILL.md): Requires a local claude-mem worker installation, an interactive question tool, filesystem access, and Node.js 20+. Telegram setup requires network access and a Telegram account..
SKILL.md contains no URLs. Its commands use npx, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Custom Mode Creator for claude-mem is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.4k tokens (SKILL.md is roughly 9.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 2.8k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Custom Mode Creator for claude-mem: Chat SDK (databuddy-analytics/Databuddy, 1.2k stars), Watchmen Setup (firstbatchxyz/watchmen, 296 stars), Test Ocas Openclaw (pwrdrvr/openclaw-codex-app-server, 265 stars) and OmniRoute Plugins, Skills and Memory CLI (diegosouzapw/OmniRoute, 74k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
thedotmack (a GitHub user) maintains it in thedotmack/claude-mem, which has 97,851 GitHub stars. The repository holds 26 skills in this directory. The repository was last updated on October 7, 2026.
Source: thedotmack/claude-mem on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.