CentricMem Agent Skill
SkillSearchOrganises and retrieves Markdown memory on the hosted CentricMem librarian (search, notes, decisions, transcripts). Use when starting a session, resuming after context compress / checkpoint / new chat, filing Non-Micro work, searching project memory, connecting an agent key, or refreshing this Skill. On session start, compare the loaded copy (see REFERENCE Skill refresh) against cm_health / ambient skill_latest and refresh if stale.
Use CentricMem Agent Skill in Claude, ChatGPT or Ahel Desktop
Free. Sign in, add CentricMem Agent Skill and connect your AI. About a minute.
Also: Claude Code · Cursor · Codex
Then ask your AI: use the CentricMem Agent Skill
Details
Instructions available. Your AI can read the instructions. Execution depends on the setup they require.
Account requirements not reviewed. Check the skill instructions before use; ahel provides instructions and does not run this skill.
No other account needed.
Add ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.
What this skill tells your AI
The instructions your AI receives, as published by hashgraph-online/awesome-codex-plugins in plugins/zeyu-j/centricmem-skill/skills/centricmem-agent/SKILL.md and read by ahel’s review.
Names: product/CLI = centricmem; GitHub install package = centricmem-skill; this Agent Skill folder = centricmem-agent (keep that folder name — it is not a second product).
Handover (when / loop). Schemas win. Branches: REFERENCE.md.
Library → Shelf → Card (summary + key points). No Inbox / unclassified. One key = grants. Never paste keys in chat (REFERENCE Bearer: where plaintext is OK vs not — claim may write a private local MCP file; docs/plans use ${VAR} or URL-only).
Style of a card (voice, length, evidence density) is yours + this agent's — not a CentricMem house voice. Structure only: REFERENCE Card contract.
Do not (full list: REFERENCE)
- Don't wait for "log this" / close / wrap up to file a finished chunk — sweep before you yield (§4)
- Don't write
unclassified— pick or create a named shelf - Don't put secrets / keys in cards, and never ask the human to paste a key or transcript in chat
- Never echo a credential value. Confirm a key with a fingerprint, not the value (
9352... len=64 fp=5E4ED29C); never dumpmcp.json/config.toml/*.envwhole, and never redact by length threshold (short keys slip through). If a key reaches the transcript, say so in that turn and rotate it. Details: REFERENCE Never echo a credential (agent side). - Don't stop after a title-only card — every card needs summary + key points
- Don't treat this git checkout as the memory disk
- Don't let a dead session pass for a key problem: a transport failure gets the re-handshake path (section 0), and a refusal (401/403) gets the rotation path - different causes, different fixes, and never call a key unrotated from the store alone: compare three fingerprints first - the card, the process env, and whether this host is on OAuth at all.
When to Use
Start or resume; search; file Non-Micro; connect / refresh Skill. Recipes: REFERENCE.
0. Reach
- MCP only
https://mem.centricmem.com/mcp:cm_healthcm_ambientcm_doctorcm_searchcm_showcm_notecm_log_decisioncm_donecm_keepcm_librarycm_copycm_movecm_deletecm_renamecm_importcm_indexcm_ops. No curl / CLI-write / bootstrap. - Missing tools or short grants → connect this turn. REFERENCE Reach. Remote/cloud is not “paste key only”: OAuth if this agent receives the browser login; paste Bearer only when it cannot. Listed OAuth hosts only: an unlisted callback shape leaves the host stuck on “connecting”, so prefer
/connect?device=and send that callback shape to zeyu@poppyg.com (REFERENCE “Approved, but the agent stays connecting”). Tools that were there and then vanished, or a load-timediscoverfailure, mean the MCP session died, not the key: probe withcentricmem doctor(its own request, unaffected by the session), re-handshake (goose: disable then enable centricmem, or restart the host), retry once. While the session is dead, nothing here is loaded either. cm_show= card on the hosted shelf (not a local junction file).grants=["*"]= default. Extramode=read= view-only (search/show only).ACADEMIC.mdbeside this → follow it. Upsert corpus paths: REFERENCE Import shapes (bundle.imported+rel_path, never bareitems=). Host-specific install, refresh or failure detail:cm_ops- read it when a host detail actually blocks you (librarian >=1.0.6; it is served on request rather than shipped in every copy).- Writes —
items=andbundleare different contracts.cm_note/cm_log_decision/cm_donefile cards;cm_importwithitems=(orpackage.items, or a zip) adds new cards underimported/kept/and nothing else.cm_importwithbundle: {version: 1, …}is the full ImportBundle and also writes library files:context→ the shelf'sactive_context.md(current focus, overwritten),rules→AGENTS.mdGlobal Rules, plusdecisions/lessons/sessions/imported/research. A key that can open the shelf can write those — it is not host-only. An unknown or mistyped top-level slot is400 BAD_IMPORT_BUNDLE(it names the slot and the allowed list), never a silent drop. Slot table: REFERENCE Writes.
1. Classify
| Skip (Micro) | Sweep (Non-Micro) |
|---|---|
| Typo, one-liner, no durable fact | Implement, ops, research, architecture, decision |
| ≥2 real turns or one turn that shipped / decided |
2. Start
Prefer cm_ambient with shelf= (or library=) first — it already carries grants / mode / skill_latest / Recent / Session. That shapes Recent decisions / Session tail / Curate, not only later write routing. Ambient with only an unmatched cwd and no shelf= often shows empty Recent/Session — that is not “the shelf is empty.” Call cm_health only when tools are missing, connect is needed, or ambient is unhealthy / unreachable. Unreachable: say once — no bootstrap. Named shelf for writes.
Resume = new session. Compress, checkpoint restore, or new chat on same task → ambient first (health only if needed).
Once after ambient (or health): refresh if skill_latest newer. Load path ≠ refresh path — read the version of the copy this host loads, not a sibling skills dir (plugin-tree hosts: <host-plugins-dir>/centricmem-skill/package.json; npx -g / ~/.agents does not update that tree). Install morphologies + hosts outside them: REFERENCE Skill refresh — adapt, do not invent a fourth shared hub. After a disk refresh: re-read this SKILL.md and Do not before the next write — installing newer ≠ acting on it. Name the key once (mode=read → view-only). Don't log → skip sweep. Empty shelf once: REFERENCE Existing memory
3. During
chunk = accepted unit (verified fragment, locked decision, evidenced lesson, delivery). Any in this reply → same-turn sweep. Not the whole task. yield = any reply end (incl. progress).
Search/show/ambient while working. Hold half-finished. Chunk done → sweep before you yield. Cards need summary + key points. Keep stubs ≠ cards. File/folder: REFERENCE Writes. Voice/density: theirs + yours (REFERENCE Card contract), not a CentricMem template.
4. Sweep — single source
No wrap-up wait. Agent close does not run this. Don't log / Skill done → skip.
Gate: Non-Micro chunk this reply, zero cm_* this session, no Don't log → sweep before you yield.
| File now | File at wrap-up |
|---|---|
| Locked decision; method-changing lesson; finished chunk | Version-tied stats; unverified conclusions |
Same lessons.md title → 409; rewrite = cm_delete then write (REFERENCE). Early wrong write costs more.
MCP down: hold CentricMem deferred sweep; connect (REFERENCE); file after health. Say so once, keep working without memory, and never fake a card, pick a local hub, or treat a leftover copy of the hub as the shelf.
shelf= / library= (REFERENCE Shelf routing):
- Transcript plaintext exists → Shell-read →
cm_keep(no paste /path=). Else skip keep. - Same batch:
cm_note/cm_log_decision/cm_done(+attach) as needed. - Copy/move/delete/rename leftovers: REFERENCE Writes.
Typical Workflows
Connect: REFERENCE. Daily: §2 → work → §4 before yield. Empty shelf: REFERENCE Existing memory.
Signals
- GitHub stars
- 1k
- Forks
- 316
- Last commit
- Oct 2026
Advanced
- Item type
- skill
- Key
centricmem-agent- Source
- github.com/hashgraph-online/awesome-codex-plugins
github.com/hashgraph-online/awesome-codex-plugins