From pmm
Reconfigures Poor Man's Memory (PMM) settings by reading memory/config.md, summarizing current values, and prompting interactively for changes to save cadence, git commit/push behavior, window size, verbosity, and more. Triggered by /pmm:settings.
npx claudepluginhub nominexhq/pmm-pluginThis skill uses the workspace's default tool permissions.
Reconfigure the Poor Man's Memory system. This skill presents the same preference prompts used during first-run initialisation, pre-filled with current values.
Initializes Poor Man's Memory in projects: runs interactive wizard for save cadence, git commit behavior, window size, verbosity, repo visibility, model choice; scaffolds memory/ dir, configures hooks. First-time only.
Loads, saves, and applies durable project memory from MEMORY.md at repo root. Activates on 'remember this' commands, session starts with file, or mistake corrections.
Manages branch-aware persistent memory using git notes to store/retrieve context, decisions, tasks, learnings across sessions via silent CLI commands.
Share bugs, ideas, or general feedback.
Reconfigure the Poor Man's Memory system. This skill presents the same preference prompts used during first-run initialisation, pre-filled with current values.
User runs /pmm:settings or asks to change memory configuration.
Read memory/config.md and display the current settings to the user as a summary:
Current PMM settings:
- Save cadence: [current]
- Commit behaviour: [current]
- Auto-push: [current]
- Window size: [current preset or custom]
- Verbosity: [current]
- Repository visibility: [current]
- Maintain agent model: [current]
- Maintain strategy: [current]
- Readonly agent model: [current]
- Session start: [current]
- Recall beyond window: [current]
- Secrets in git: [current]
- Pre-compact hook: [current]
- Context tiers: [current]
- Memory priority: [current]
- Active files: [count] of 15 active
- Deactivated: [list, or "none"]
- Load strategies: [list files with non-default strategies, or "all full"]
Use AskUserQuestion to present the same questions from Phase 1 of the main skill, pre-filled with current values. The user can change any or all options.
Q1: Save cadence — How often should memory be updated?
Note: For frequent saves, choose every-N-messages — hooks handle the trigger automatically.
Q2: Commit behaviour — When should changes be committed to git?
Q3: Auto-push — Should memory commits be automatically pushed to the remote?
Q4: Sliding window size — How many entries to load at session start for timeline.md and summaries.md?
Note: Files are never truncated on disk regardless of this setting. The window controls injection at session start only.
Q5: Decay scoring (Advanced) — Enable relevance scoring for Tier 2 files?
Note: When enabled, the maintain agent tracks relevance via inline HTML comment tags. Conservative defaults: decay 0.90, reinforce 1.05, advisory threshold 0.30. No entries are auto-deleted — scores are signals only. Per-file overrides available in config.md.
Q6: Verbosity — How should memory updates be communicated?
Q7: Repository visibility — Is this repository public or private?
Q8: Maintain agent model — Which model should handle memory updates?
Note: Session-start and recall agents use the Readonly Agent Model (Q12 below).
Q9: Maintain strategy — How should memory saves dispatch agents?
Explain: Single mode saves 2 agent dispatches per /pmm:save. Tiered mode is faster if you have a large memory installation and need parallel tier updates — but costs 3x the agent dispatches.
Q10: Secrets in git — Should memory/secrets.md be committed to git?
Q11: Active files — Which memory files to activate? (multi-select, config.md always active)
Q12: Readonly agent model — Which model should handle read-only operations (session-start, recall, pmm:query, pmm:dump, pmm:status, pmm:viz)?
Haiku is strongly recommended — read-only agents do simple file I/O and retrieval, not nuanced reasoning.
Q13: Session start mode — How should PMM load memory at session start?
Lazy mode works automatically when the pmm plugin is installed — the SessionStart hook handles loading.
Q14: Recall beyond window — When a recall query isn't found in the current memory window, should PMM ask before searching git history?
In lazy mode, all active memory files are already in context. Git history is the audit trail — accessible via pmm:recall for entries outside the session-start window. Most queries will be answered from context without any agent dispatch.
Q15: Pre-compact hook — Should PMM save before /compact?
Q16: Context tiers — How should memory files be loaded at session start?
Explain: Tier 1 (config, standinginstructions, progress, last, preferences, decisions, lessons, processes, voices, memory, summaries, timeline) covers everything needed for session orientation. Tier 2 (graph, vectors, taxonomies, assets) is available on demand via the Read tool when a recall query needs it.
Q17: Memory priority — How should PMM interact with Claude's built-in auto-memory?
Explain: Claude Code has its own auto-memory system (in .claude/projects/.../memory/). PMM-first means PMM is the source of truth — Claude auto-memory should not duplicate facts, decisions, or timeline events that PMM already tracks.
Q18: Load strategies — How much of each Tier 1 file should the SessionStart hook inject at session start?
Read the current ## Active Files section from memory/config.md and display each active Tier 1 file with its current strategy (or full if none set). For each file the user wants to change, accept a new strategy:
full (default) — load the entire filetail:N — load only the last N lines/entries (recommended for timeline.md, decisions.md, lessons.md)header — load only the file headerskip — exclude from session-start injection (file remains active for maintain; use pmm:recall to load on demand)Suggested defaults if starting fresh:
timeline.md: tail:5decisions.md: tail:10lessons.md: tail:5Format written to config.md:
- timeline.md: active | tail:5
- decisions.md: active | tail:10
Missing | strategy = full. Tier 2 files (graph.md, vectors.md, taxonomies.md, assets.md) ignore load strategies — they are never loaded at session start.
Note: Load strategies only affect what the SessionStart hook injects. pmm:recall always loads the full file on demand regardless of the configured strategy.
Update memory/config.md with the new values. Preserve the file format from the template.
If active files changed OR context tier mode changed:
${CLAUDE_PLUGIN_ROOT}/context/session-instructions.md based on current active files and context tier mode:
Mode: tiered (default): Tier 1 active files are injected by the SessionStart hook; Tier 2 active files are listed as on-demand onlyMode: all-in-context: all active files are injected by the SessionStart hook${CLAUDE_PLUGIN_ROOT}/references/templates.md${CLAUDE_PLUGIN_ROOT}/references/core.md. This ensures activated files start with synthesized content from existing memory, not empty templates. Commit hydrated files separately: git add memory/<file> && git commit -m "memory: hydrate <file> from existing context"git add memory/config.md && git commit -m "memory: update PMM configuration"
Confirm to the user: settings updated and saved.