Project Timeline Report
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.
Deliberately search, add to, or curate your long-term memory with the memory tool — beyond the automatic recall/capture every turn already does.
$ npx skills add yc-software/qm --skill memory -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install yc-software/qm memory --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/yc-software/qm.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills-seed/memory .claude/skills/memory && 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 "memory" agent skill from https://github.com/yc-software/qm/tree/main/skills-seed/memory into .claude/skills/memory/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "memory", 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/yc-software/qm/tree/main/skills-seed/memoryType 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 yc-software/qm --skill memory -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install yc-software/qm memory --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/yc-software/qm.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills-seed/memory .agents/skills/memory && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "memory" agent skill from https://github.com/yc-software/qm/tree/main/skills-seed/memory into .agents/skills/memory/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "memory", 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 yc-software/qm --skill memory -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install yc-software/qm memory --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/yc-software/qm.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills-seed/memory .cursor/skills/memory && 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 "memory" agent skill from https://github.com/yc-software/qm/tree/main/skills-seed/memory into .cursor/skills/memory/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "memory", 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/yc-software/qm.git --path skills-seed/memory--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 yc-software/qm --skill memory -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install yc-software/qm memory --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/yc-software/qm.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills-seed/memory .gemini/skills/memory && 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 "memory" agent skill from https://github.com/yc-software/qm/tree/main/skills-seed/memory into .gemini/skills/memory/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "memory", 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 yc-software/qm memoryInstalls 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 yc-software/qm --skill memory -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/yc-software/qm.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills-seed/memory .github/skills/memory && 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 "memory" agent skill from https://github.com/yc-software/qm/tree/main/skills-seed/memory into .github/skills/memory/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "memory", 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 yc-software/qm --skill memory -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install yc-software/qm memory --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/yc-software/qm.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills-seed/memory .opencode/skills/memory && 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 "memory" agent skill from https://github.com/yc-software/qm/tree/main/skills-seed/memory into .opencode/skills/memory/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "memory", 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.
memoryDeliberately search, add to, or curate your long-term memory with the memory tool — beyond the automatic recall/capture every turn already does.
Memory is an agent skill from yc-software/qm. Deliberately search, add to, or curate your long-term memory with the memory tool — beyond the automatic recall/capture every turn already does. Use when asked who someone is or what they're working on, when you learn a durable fact worth keeping now, or when your notebook holds stale or wrong entries you should clean up.
Its SKILL.md is about 1.2k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Agent Workflows, covering Agent memory. The repository describes itself as: Multiplayer agent harness for work. The licence is MIT.
Read from SKILL.md and the folder at commit 23af31b. 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.
Shell commands in SKILL.md call:
curlFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use curl, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
AGENT_API_TOKENFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Memory loads about 1.2k tokens when it runs. Until then it costs about 83 tokens; SKILL.md has 605 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); files beside SKILL.md are not scanned.
The full file from yc-software/qm at commit 23af31b, republished under its MIT licence (© yc-software). 605 words, ~1,165 tokens.
.claude/skills/memory/SKILL.md (or your agent's skills folder).Everything here goes through the typed memory tool. Memory is NOT a file: writing
memory/MEMORY.md with files action write or shell commands lands on your computer's disk and is
silently lost — the tool is the one real path.
Every turn already auto-recalls your notebooks into "## What you remember" and auto-extracts facts after you reply. This skill is for what the automatic path misses:
action: "search") — what you remember is bigger than what auto-recall
injects. Search spans every notebook this conversation may read (personal, channel,
org); when more than one is in reach, each hit is tagged with the notebook it came
from. Matching is substring-based (all terms must match), so prefer distinctive terms
(a name, a project) over sentences.
An empty result is a real answer: you have nothing recorded, so don't assert a memory.action: "remember") — when the user corrects you or tells you
something they'll expect you to know later, persist it immediately instead of hoping
post-turn extraction catches it. Write self-contained facts (who/what, with enough
context to be useful cold). Duplicates are dropped; added in the reply is the count
actually new.action: "read", then action: "rewrite") — read your whole notebook and
rewrite it without stale, duplicate, or wrong lines. A rewrite replaces the entire
notebook: read first, then write back the full corrected content, never a fragment.
Curation is for quality — merging duplicates, deleting disproven facts — not for
deleting things the user asked you to remember.The notebook you write is this conversation's own (your personal one in a DM, the channel's in a channel). There is no way to reach anyone else's, by design.
Two targeted writes the tool doesn't carry go through the self-API instead, called with
$AGENT_API_URL and $AGENT_API_TOKEN (both already in your environment on every turn —
if they are unset, this instance has no self-API; say so rather than pretending):
When someone asks you (say, in a DM) to remember something for a channel or group DM — the
way Bob, in a DM, might want the background on a project saved into that project's channel
so you know it when paged there — add a target to a facts call:
curl -fsS -X POST "$AGENT_API_URL/v1/memory/facts" \
-H "x-agent-capability: $AGENT_API_TOKEN" \
-H "content-type: application/json" \
-d '{"channel":"project-atlas","facts":["This channel coordinates ..."]}'Name a channel (core resolves the name — an ambiguous one comes back 409 with
candidates), or a group DM by its participants (the other members' ids). Core checks the
person you're helping may post there before writing: any internal teammate may write to a
public channel; a private channel or group DM requires they're a member (403 otherwise).
This appends only — you can't read or wholesale-rewrite another room's notebook this way. The
reply echoes the resolved channel/group and the scopeId written to.
When the chatting user is an org admin, the self-API additionally accepts the org-wide notebook as a target:
curl -fsS -X POST "$AGENT_API_URL/v1/memory/facts" \
-H "x-agent-capability: $AGENT_API_TOKEN" \
-H "content-type: application/json" \
-d '{"scope":"org","facts":["..."]}'(?scope=org on GET /v1/memory/self, "scope":"org" on the PUT body to curate.)
Those writes land in the notebook every conversation in the org recalls, so confirm the
wording with the admin before writing and keep personal facts out of it. A 403 org memory writes require an org admin means the user isn't one — say so rather than
retrying (GET $AGENT_API_URL/v1/admin/whoami answers it definitively).
401 unauthorized from the self-API — your token expired mid-turn; this resolves on
the next turn.© yc-software, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in skills-seed/memory of yc-software/qm.
Open the folder on GitHubat commit 23af31b
Memory 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 |
|---|---|---|---|---|---|---|
| Memory this skillyc-software/qm | 15k | — | ~1.2k | Automated safety check: Pass | MIT | |
| Project Timeline Reportthedotmack/claude-mem | 97k | 1 repos | ~3.1k | Automated safety check: Pass | Apache-2.0 | |
| Neat-Freak Knowledge CloseoutKKKKhazix/khazix-skills | 21k | — | ~1.9k | Automated safety check: Pass | MIT | |
| Beads Task Memorygastownhall/beads | 28k | — | ~1.2k | Automated safety check: Pass | MIT | |
| MemPalace Memory SearchMemPalace/mempalace | 59k | — | ~1.4k | Automated safety check: Pass | MIT | |
| Reflect on Session Learningscursor/plugins | 10k | 5 repos | ~1.2k | Automated safety check: Pass | None |
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.
KKKKhazix/khazix-skills
Brings project docs, agent rule files, authorized memory and leftover workspace files back in line with what the code and runtime actually do at the end of a work session.
gastownhall/beads
Tracks multi-session work with dependencies in the bd issue tracker so the agent can find ready tasks and recover its context after conversation compaction.
MemPalace/mempalace
Mines project files and conversation exports into a local, searchable memory palace and recalls past work by semantic search through the mempalace CLI.
cursor/plugins
Starts three parallel reviewer subagents over the current conversation transcript, then turns their findings into concrete edits to existing skills.
EveryInc/compound-engineering-plugin
Records one solved and verified problem as a durable learning in the repository, but only when the reasoning is not already clear from the final code, tests or docs.
yc-software/qm
Act for an org admin — the admin API (scope directory, per-scope config & SOUL, any scope's memory, transcripts & captured prompts, files, user roster & external users, audit/errors/metrics/egress)…
yc-software/qm
Drive a real stealth browser from your shell — act on websites (order food, file an expense, pull data behind a login), with per-person persistent sign-ins via the provider's managed auth (Kernel…
yc-software/qm
Show the app connection picker or setup widget when users ask to connect apps, reopen setup, or need an app that isn't connected yet.
yc-software/qm
Run the current worktree as a production-shaped local dev instance with web, Slack, or both, on a real LLM + Postgres.
yc-software/qm
Work with GitHub and GitLab repositories through resident gh/glab/git auth on the agent computer.
yc-software/qm
Read and act on the user's Gmail, Google Calendar, and Google Tasks through per-user OAuth.
Categories
Deliberately search, add to, or curate your long-term memory with the memory tool — beyond the automatic recall/capture every turn already does. Memory is an agent skill from yc-software/qm. Deliberately search, add to, or curate your long-term memory with the memory tool — beyond the automatic recall/capture every turn already does.
Memory fits situations like: asked who someone is; what theyre working on; you learn a durable fact worth keeping now; your notebook holds stale.
Run `npx skills add yc-software/qm --skill memory -a claude-code`. Or copy the skill folder (skills-seed/memory in yc-software/qm) into .claude/skills/memory in your project. Claude Code loads it when a task matches its description.
Run `npx skills add yc-software/qm --skill memory -a codex`. Or copy the skill folder (skills-seed/memory in yc-software/qm) into .agents/skills/memory 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 yc-software/qm --skill memory -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/memory, .gemini/skills/memory, .github/skills/memory and .opencode/skills/memory in your project.
Going by SKILL.md and its folder, Memory needs the command-line tools its instructions call (curl) and credentials named AGENT_API_TOKEN. Our summary lists: A credential in AGENT_API_TOKEN.
SKILL.md contains no URLs. Its commands use curl, 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. Review the folder before installing.
Memory is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.2k tokens (SKILL.md is roughly 4.7k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Memory: Project Timeline Report (thedotmack/claude-mem, 97k stars), Neat-Freak Knowledge Closeout (KKKKhazix/khazix-skills, 21k stars), Beads Task Memory (gastownhall/beads, 28k stars) and MemPalace Memory Search (MemPalace/mempalace, 59k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
yc-software (a GitHub organization) maintains it in yc-software/qm, which has 15,357 GitHub stars. The repository holds 29 skills in this directory. The repository was last updated on October 6, 2026.
Source: yc-software/qm on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.