Learning to Learn (OpenMAIC)
THU-MAIC/OpenMAIC
A Chinese-language skill that embeds learning strategies like retrieval practice and self-explanation as a parallel goal inside an OpenMAIC subject lesson, without making study skills the topic.
Extract durable learnings and preferences from conversations for automatic memory capture.
$ npx skills add mikeyobrien/rho --skill auto-memory -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install mikeyobrien/rho auto-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/mikeyobrien/rho.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/auto-memory .claude/skills/auto-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 "auto-memory" agent skill from https://github.com/mikeyobrien/rho/tree/main/skills/auto-memory into .claude/skills/auto-memory/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "auto-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/mikeyobrien/rho/tree/main/skills/auto-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 mikeyobrien/rho --skill auto-memory -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install mikeyobrien/rho auto-memory --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mikeyobrien/rho.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/auto-memory .agents/skills/auto-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 "auto-memory" agent skill from https://github.com/mikeyobrien/rho/tree/main/skills/auto-memory into .agents/skills/auto-memory/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "auto-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 mikeyobrien/rho --skill auto-memory -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install mikeyobrien/rho auto-memory --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mikeyobrien/rho.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/auto-memory .cursor/skills/auto-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 "auto-memory" agent skill from https://github.com/mikeyobrien/rho/tree/main/skills/auto-memory into .cursor/skills/auto-memory/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "auto-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/mikeyobrien/rho.git --path skills/auto-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 mikeyobrien/rho --skill auto-memory -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install mikeyobrien/rho auto-memory --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mikeyobrien/rho.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/auto-memory .gemini/skills/auto-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 "auto-memory" agent skill from https://github.com/mikeyobrien/rho/tree/main/skills/auto-memory into .gemini/skills/auto-memory/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "auto-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 mikeyobrien/rho auto-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 mikeyobrien/rho --skill auto-memory -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/mikeyobrien/rho.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/auto-memory .github/skills/auto-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 "auto-memory" agent skill from https://github.com/mikeyobrien/rho/tree/main/skills/auto-memory into .github/skills/auto-memory/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "auto-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 mikeyobrien/rho --skill auto-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 mikeyobrien/rho auto-memory --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mikeyobrien/rho.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/auto-memory .opencode/skills/auto-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 "auto-memory" agent skill from https://github.com/mikeyobrien/rho/tree/main/skills/auto-memory into .opencode/skills/auto-memory/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "auto-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.
auto-memoryExtract durable learnings and preferences from conversations for automatic memory capture.
Auto Memory is an agent skill from mikeyobrien/rho. Extract durable learnings and preferences from conversations for automatic memory capture.
Its SKILL.md is about 2k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
The repository describes itself as: An AI agent that stays running, remembers across sessions, and checks in on its own. macOS, Linux, Android. Built on Pi. The licence is MIT.
4 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 073a3ee. 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.
No scripts in the folder and no shell commands in SKILL.md (its code samples are json).
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
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.
Auto Memory loads about 2k tokens when it runs. Until then it costs about 26 tokens; SKILL.md has 969 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 mikeyobrien/rho at commit 073a3ee, republished under its MIT licence (© mikeyobrien). 969 words, ~2,033 tokens.
.claude/skills/auto-memory/SKILL.md (or your agent's skills folder).Extract durable learnings and user preferences from a conversation that will remain useful across future sessions. This runs automatically after each agent turn, using a small/cheap model. Quality over quantity: one precise memory is worth more than five vague ones.
Scan the conversation and classify each substantive exchange into one of these categories:
Extractable:
Not extractable:
Constraints:
Compare each candidate extraction against the existing memories list.
Constraints:
For each valid candidate, draft a concise memory entry.
Constraints:
Assign each extraction a type and category.
Learning types:
Preference types with categories:
Constraints:
Output strict JSON only:
{
"learnings": [
{"text": "concise, actionable learning statement"}
],
"preferences": [
{"category": "Communication|Code|Tools|Workflow|General", "text": "concise, actionable preference statement"}
]
}If there are no genuinely new, durable items to extract, return:
{"learnings": [], "preferences": []}Returning empty is better than returning noise.
Conversation excerpt:
User: "Should we source the rho tmux config or swap it in?" Agent: "Here are the differences... Want me to source it or swap it?" User: "swap it in" Agent: swaps the config
Good extraction:
{"learnings": [{"text": "Rho tmux config at ~/.rho/tmux.conf is now the active ~/.tmux.conf, replacing the nix-configs-based one. Old config backed up at ~/.tmux.conf.bak."}]}Bad extraction (captures discussion, not decision):
{"learnings": [{"text": "The rho-specific tmux configuration is not being used by the current ~/.tmux.conf"}]}Conversation excerpt:
Agent: drafts a formal, structured X post User: "do something more clever" Agent: drafts dry, self-aware version User: "I like that personality, do that more"
Good extraction:
{"preferences": [{"category": "Communication", "text": "X post voice: understated, self-aware, dry. State the problem, state what was done, land it flat. Let the reader connect the dots."}]}Bad extraction (too vague):
{"preferences": [{"category": "Communication", "text": "User prefers clever X posts over formal ones"}]}Conversation excerpt:
User: "find recent X posts about rho and post something" Agent: searches, drafts, posts
Correct output:
{"learnings": [], "preferences": []}The task was executed but no durable knowledge was produced.
These look like learnings but fail the 30-day test:
| Candidate | Why it fails |
|---|---|
| "pi-coding-agent updated to 0.55.4 on 2026-03-04" | Version snapshot — stale tomorrow |
| "Heartbeat Feb 19 08:02 UTC: rho-web healthy" | Status report — not a decision or pattern |
| "ChefBench scored 42/89 = 47.2% on Terminal-Bench 2.0" | Benchmark result — won't change future behavior |
| "Fresh-eyes bug sweep: reviewed X, no bugs found" | Sweep status — no generalizable root cause |
| "The sessions hamburger button should use an icon-only button" | UI detail — too specific to one feature |
| "All 224 unit tests pass with no failures" | Test status — transient fact |
| "Task X is complete and verified" | Completion status — belongs in task tracking, not memory |
Correct output for all of the above:
{"learnings": [], "preferences": []}© mikeyobrien, 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/auto-memory of mikeyobrien/rho.
Open the folder on GitHubat commit 073a3ee
Auto 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 |
|---|---|---|---|---|---|---|
| Auto Memory this skillmikeyobrien/rho | 372 | — | ~2k | Automated safety check: Pass | MIT | |
| Learning to Learn (OpenMAIC)THU-MAIC/OpenMAIC | 40k | — | ~502 | Automated safety check: Pass | MIT | |
| Gsd Extract Learningsopen-gsd/gsd-core | 10k | 2 repos | ~225 | Automated safety check: Notes | MIT | |
| Scikit LearnK-Dense-AI/scientific-agent-skills | 48k | 1 repos | ~3.3k | Automated safety check: Notes | BSD-3-Clause | |
| Project Learnings Managergarrytan/gstack | 136k | — | ~8.2k | Automated safety check: Notes | MIT | |
| Extractalirezarezvani/claude-skills | 28k | — | ~1.4k | Automated safety check: Pass | MIT |
THU-MAIC/OpenMAIC
A Chinese-language skill that embeds learning strategies like retrieval practice and self-explanation as a parallel goal inside an OpenMAIC subject lesson, without making study skills the topic.
open-gsd/gsd-core
Extract decisions, lessons, patterns, and surprises from completed phase artifacts
K-Dense-AI/scientific-agent-skills
Supports machine learning in Python with scikit-learn. An agent skill from K-Dense-AI/scientific-agent-skills.
garrytan/gstack
Lets you review, search, prune and export the learnings gstack has collected across sessions, and surfaces them when a past fix or pattern comes up.
alirezarezvani/claude-skills
Turn a proven pattern or debugging solution into a standalone reusable skill with SKILL.md, reference docs, and examples.
affaan-m/ECC
[DEPRECATED - use continuous-learning-v2] Legacy v1 stop-hook skill extractor.
mikeyobrien/rho
Register an agent email address on Rhobot Mail (name@rhobot.dev).
mikeyobrien/rho
Install and configure Rho from scratch (Doom-style init.toml + sync).
mikeyobrien/rho
Open URLs and launch apps on Android. An agent skill from mikeyobrien/rho.
mikeyobrien/rho
Keep CHANGELOG.md idiomatic (Keep a Changelog) and cut a tag-based GitHub release that triggers npm publish CI.
mikeyobrien/rho
Manage agent email at name@rhobot.dev via the Rhobot Mail API.
mikeyobrien/rho
Create Tasker profiles and tasks via XML for Android automation.
Extract durable learnings and preferences from conversations for automatic memory capture. Auto Memory is an agent skill from mikeyobrien/rho. Extract durable learnings and preferences from conversations for automatic memory capture.
Run `npx skills add mikeyobrien/rho --skill auto-memory -a claude-code`. Or copy the skill folder (skills/auto-memory in mikeyobrien/rho) into .claude/skills/auto-memory in your project. Claude Code loads it when a task matches its description.
Run `npx skills add mikeyobrien/rho --skill auto-memory -a codex`. Or copy the skill folder (skills/auto-memory in mikeyobrien/rho) into .agents/skills/auto-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 mikeyobrien/rho --skill auto-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/auto-memory, .gemini/skills/auto-memory, .github/skills/auto-memory and .opencode/skills/auto-memory in your project.
SKILL.md names no scripts, command-line tools or credentials: Auto Memory is instructions for the agent only.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. 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.
Auto 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 2k tokens (SKILL.md is roughly 8.1k 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 Auto Memory: Learning to Learn (OpenMAIC) (THU-MAIC/OpenMAIC, 40k stars), Gsd Extract Learnings (open-gsd/gsd-core, 10k stars), Scikit Learn (K-Dense-AI/scientific-agent-skills, 48k stars) and Project Learnings Manager (garrytan/gstack, 136k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
mikeyobrien (a GitHub user) maintains it in mikeyobrien/rho, which has 372 GitHub stars. The repository holds 35 skills in this directory. The repository was last updated on October 1, 2026.
Source: mikeyobrien/rho on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.