mode-creator
Interactively create, install, activate, and verify custom claude-mem modes, including domain-specific observation types, concept tags, optional Telegram…
Skill by thedotmack
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/thedotmack-mode-creator
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: documents, productivity, agent-memory
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Node.js package
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/mode-creator
What's inside
- Skill name
mode-creator- Description
- Interactively create, install, activate, and verify custom claude-mem modes, including domain-specific observation types, concept tags, optional Telegram alerts, bot setup, worker restart, and startup-context verification. Use this whenever someone asks to customize what claude-mem remembers, create or change a mode, track domain-specific notes, add observation types or tags, or send Telegram notifications for particular memories—even if they do not use the word "mode."
- License
- Apache-2.0
- Compatibility
- 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.
- Instructions
- 158 lines in SKILL.md · view on GitHub
Before installing
- Ships executable scripts
Files (6)
- SKILL.md
- evals.json · evals/
- mode-authoring.md · references/
- telegram.md · references/
- configure-telegram.mjs · scripts/
- install-mode.mjs · scripts/
SKILL.md (first lines)
# Mode Creator 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. ## Ground rules - Use the available interactive question tool (`AskUserQuestion`, `request_user_input`, or equivalent) for the interview. Ask in small batches and wait for each response. - Explain observation types as mutually exclusive kinds of notes and concepts as reusable tags. Avoid jargon unless the user uses it first. - Inspect existing bundled and user modes before inventing a new one. Reuse or remix a close match when that serves the user better. - Do not edit a plugin cache or bundled mode. Install custom files under the resolved claude-mem data directory's `modes/` folder. - Do not expose a Telegram token in chat, command arguments, logs, or tool output. Treat it like a password. - Preserve unrelated settings and existing Telegram triggers. The helpers make timestamped backups and merge requested triggers. - Custom modes are supported by the local worker runtime. If `CLAUDE_MEM_RUNTIME` is `server`, explain that this workflow cannot safely install a per-user mode into the shared server and stop before mutation. - Existing observations keep their original types. The new mode applies to future observation generation. ## 1. Open with the purpose 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. ## 2. Discover what is worth remembering Use follow-up questions to obtain: 1. Three examples of moments or findings they would want available next week. 2. Routine activity that should be skipped. 3. The nouns and decisions they search for later: people, cases, materials, clients, constraints, experiments, incidents, and so on. 4. Anything sensitive that should never be recorded or sent to Telegram. 5. Whether notes should be selective or detailed. 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. ## 3. Propose the mode Read [references/mode-authoring.md](references/mode-authoring.md) before drafting. Propose: - A clear mode name and lowercase ID. - Usually 4–8 observation types. Each observed item gets exactly one type. - Usually 4–8 concept tags. An item may get several concepts. - One-sentence recording and skipping policies. - Two realistic notes the mode would record and two it would skip. 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. ## 4. Ask about Telegram alerts 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: - Let the user select exact observation types and/or concept tags from the approved mode. - Explain that matching is OR: after alerts are explicitly enabled, any selected type or any selected concept sends an alert. Selecting triggers alone does not enable delivery: per-observation alerts default to off. With the user's consent, set `CLAUDE_MEM_TELEGRAM_OBSERVATION_ALERTS_ENABLED` to `"true"` in the resolved data directory's `settings.json` after running the installer or credential helper. - Ask whether they already have a Telegram bot connected to claude-mem. - Read [references/telegram.md](references/telegram.md), then guide new users through BotFather and the secure setup helper. If no, leave every Telegram setting unchanged. ## 5. Draft, validate, and install 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: ```bash node <skill-directory>/scripts/install-mode.mjs \ --mode <temporary-mode.json> \ --mode-id <parent--custom-id> \ --dry-run ``` Fix every validation error before installation. Then install and activate it: ```bash 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: - Merges the override with its parent and validates the complete mode. - Installs the source override under `<data-dir>/modes/`. - Sets `CLAUDE_MEM_MODE` in `settings.json`. - Merges approved alert triggers without deleting existing triggers. - Writes atomically and reports any backup paths. Review its JSON result. Do not claim success if `ok` is not `true`. ## 6. Connect Telegram when needed 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: ```bash 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.
From thedotmack/claude-mem, Apache-2.0.
More from thedotmack/claude-mem
- 0.891score
version-bump
thedotmack
Automated semantic versioning and release workflow for Claude Code plugins.
SkillAFreshness: A★ 102.8KClaude Code +9 - 0.891score
request-progress
thedotmack
Group recent conversations into overall requests, review each one's progress from memory, link each to the owner goals it serves, and write the build story…
SkillAFreshness: A★ 102.8KClaude Code +9 - 0.891score
owner-goals
thedotmack
Map what the owner wants from the prompts they typed themselves (prompts an agent wrote are left out), then put their top priorities and open asks, each with…
SkillAFreshness: A★ 102.8KClaude Code +9 - 0.885score
oh-my-issues
thedotmack
Cluster a GitHub issue backlog by root cause into a small set of plan-master issues, redirect children with a standardized comment, and bundle…
SkillAFreshness: A★ 102.8KClaude Code +9 - 0.885score
handoff
thedotmack
Generate a HANDOFF.md that captures goal, current state, files touched, failed attempts, and next steps — so a fresh Claude session can continue exactly where…
SkillAFreshness: A★ 102.8KClaude Code +9 - 0.885score
screenpipe
thedotmack
Search screen and audio history recorded by Screenpipe and optionally save selected context into claude-mem.
SkillAFreshness: A★ 102.8KClaude Code +9 - 0.885score
pathfinder
thedotmack
Map a codebase into feature-grouped flowcharts, identify duplicated concerns across features, and propose a unified architecture.
SkillAFreshness: A★ 102.8KClaude Code +9 - 0.885score
weekly-digests
thedotmack
Generate a serial week-by-week narrative digest of a project's full claude-mem timeline.
SkillAFreshness: A★ 102.8KClaude Code +9 - 0.885score
babysit
thedotmack
Watch a pull request or review cycle until it is ready to merge.
SkillAFreshness: A★ 102.8KClaude Code +9 - 0.885score
timeline-report
thedotmack
Generate a "Journey Into [Project]" narrative report analyzing a project's entire development history from claude-mem's timeline.
SkillAFreshness: A★ 102.8KClaude Code +9 - 0.885score
make-plan
thedotmack
Create a detailed, phased implementation plan with documentation discovery.
SkillAFreshness: A★ 102.8KClaude Code +9 - 0.885score
knowledge-agent
thedotmack
Build and query AI-powered knowledge bases from claude-mem observations.
SkillAFreshness: A★ 102.8KClaude Code +9
Signals
- Stars
- 102,760
- Forks
- 9,078
- Open issues
- 46
- Last commit (this folder)
- Oct 13, 2026 (13 days ago)
- Last release
- Oct 23, 2026 (3 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- Apache-2.0
- Repository
- github.com/thedotmack/claude-mem
- Website
- claude-mem.ai
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from thedotmack
- 0.891score
version-bump
thedotmack
Automated semantic versioning and release workflow for Claude Code plugins.
SkillAFreshness: A★ 102.8KClaude Code +9 - 0.891score
request-progress
thedotmack
Group recent conversations into overall requests, review each one's progress from memory, link each to the owner goals it serves, and write the build story…
SkillAFreshness: A★ 102.8KClaude Code +9 - 0.891score
owner-goals
thedotmack
Map what the owner wants from the prompts they typed themselves (prompts an agent wrote are left out), then put their top priorities and open asks, each with…
SkillAFreshness: A★ 102.8KClaude Code +9 - 0.885score
babysit
thedotmack
Watch a pull request or review cycle until it is ready to merge.
SkillAFreshness: A★ 102.8KClaude Code +9 - 0.885score
handoff
thedotmack
Generate a HANDOFF.md that captures goal, current state, files touched, failed attempts, and next steps — so a fresh Claude session can continue exactly where…
SkillAFreshness: A★ 102.8KClaude Code +9 - 0.885score
weekly-digests
thedotmack
Generate a serial week-by-week narrative digest of a project's full claude-mem timeline.
SkillAFreshness: A★ 102.8KClaude Code +9
Cite this page
mode-creator skill. Agent Mart. https://agentmart.dev/skills/thedotmack-mode-creator (last updated 2026-10-24)