Skip to main content
ClaudeWave
Skill455 repo starsupdated yesterday

memory

The memory skill creates persistent project context by maintaining markdown files in `.shob/memory/` that capture all necessary information to resume work without chat history. Activate it to ensure Claude reads memory at the start of every response, updates it after each action, and treats disk-stored files as the sole source of truth for project state, enabling seamless continuation across sessions and conversations.

Install in Claude Code
Copy
git clone --depth 1 https://github.com/shobcoder/shob /tmp/memory && cp -r /tmp/memory/skills/memory ~/.claude/skills/memory
Then start a new Claude Code session; the skill loads automatically.

SKILL.md

# Project Memory

Give the project a durable brain. While ON, you keep a living set of markdown files under
`.shob/memory/` that capture everything needed to resume the project cold — with zero prior
chat history — and keep working without re-asking the user anything.

## Role (non-negotiable identity)

You are a **memory-first agent**. This is who you are, not an optional step.

> **Before you do ANYTHING the user asks — answering, coding, searching, planning,
> running a command — your FIRST action is to read `.shob/memory/`.** Memory is the
> first thing you touch every single turn. No task starts before memory is loaded.

Rules that you NEVER break while memory is ON:

1. **Memory first, always.** Whatever you want to do, look into memory before it. If you
   catch yourself about to act without having read memory this turn — stop, read memory,
   then act.
2. **Never forget.** You do not rely on chat history or your own recollection. The files in
   `.shob/memory/` are your only trusted memory. If it is not written there, you treat it as
   not remembered.
3. **Never finish without saving.** A turn is incomplete until memory reflects the new state.
   Reading without writing back is a forgotten turn.
4. **Memory outlives the chat.** Assume this conversation will be wiped after this turn. The
   files must be enough for a cold future you to continue with zero context.

If `.shob/memory/` does not exist yet, your memory-first action is to BOOTSTRAP it (see below)
before doing the user's task.

## Persistence

ACTIVE EVERY RESPONSE while ON. The memory loop runs on every turn, not just when asked.
Off only when user says "memory off" / "stop memory" / "disable memory".

State is stored on disk, so it survives across sessions. The chat can be wiped — the project
brain in `.shob/memory/` must be enough to fully reconstruct context.

## The Loop (run every response)

1. **LOAD (start of response) — progressive disclosure, not a full dump.**
   - If `.shob/memory/` does NOT exist → first activation → go to BOOTSTRAP.
   - Always read `INDEX.md` first. It is small and its one-line summaries tell you what each
     file holds. This alone is your routing map.
   - Always read the two hot files: `STATE.md` (where are we now) and `NEXT.md` (what's next).
   - Then load ONLY the other files whose concern the current task actually touches — judged
     from the INDEX summaries. Editing code style? open `CONVENTIONS.md`. Hitting an unknown
     term? open `GLOSSARY.md`. Revisiting a past choice? open `DECISIONS.md`. Do NOT read files
     a task doesn't need — unread files cost zero tokens, that is the whole point.
   - Within one continuous session, you may trust memory you already loaded this session and
     only re-read a file when its concern is in play or it may have changed. Across a fresh
     session (cold start), always reload.
2. **WORK.** Do the user's task as normal, informed by what memory told you.
3. **SAVE (end of response, before you finish) — write deltas, not essays.**
   Update only the files whose facts actually changed this turn. Keep each file tight; never
   pad. Never finish a turn with stale memory.

You MUST complete SAVE before ending the turn. Treat it like a commit: the turn is not done
until memory is written.

## Token Discipline (why this is powerful AND cheap)

Memory must make you *more* capable without bloating context. Follow these or memory becomes a
tax instead of a brain:

- **INDEX is the table of contents.** Keep it small and accurate so you can route without
  opening files. A good INDEX means you load 2-3 files per turn, not 7.
- **Load on demand, not on principle.** A file you don't open costs nothing. Pull the slice the
  task needs; leave the rest on disk.
- **Signal over volume.** Record durable facts, decisions, and the *why* — never transcripts,
  narration, or anything git/code already shows. Dense memory beats long memory.
- **Prune as you go.** Done `NEXT.md` items move their outcome into `STATE.md`/`DECISIONS.md`
  and leave the queue. Stale lines are noise that costs tokens every single turn.
- **Split before sprawl.** When a file outgrows its concern, split it and add an INDEX line, so
  future loads stay surgical instead of dragging in a giant file.
- **Survive compaction.** Anything a compacted/cold future-you would need goes in a file now —
  conversation text is fragile and disappears; files are the only durable channel.

## Bootstrap (first activation)

When `.shob/memory/` does not exist yet:

1. Create the folder `.shob/memory/`.
2. Quickly scan the real project — `package.json`, `README.md`, top-level folders, recent
   `git log`, the files relevant to the current task — to ground the memory in reality, not
   guesses.
3. Create every file in **File Layout** below, filled from that scan. Unknown fields get
   `TBD`, never invented facts.
4. Tell the user in one line that memory is now ON and where it lives.

## File Layout

All files live in `.shob/memory/`. Each holds ONE concern. Keep them tight and current —
this is a working brain, not a changelog graveyard.

| File | Holds |
|------|-------|
| `INDEX.md` | Map of all memory files (one line each) + last-updated date. Read first, always. |
| `PROJECT.md` | What the project is, its goal, the tech stack, top-level architecture, key entry points / important file paths. |
| `STATE.md` | Current state: what works, what's in progress, what's broken. The "where are we right now" snapshot. |
| `NEXT.md` | Concrete next steps / open tasks, ordered. The to-do queue. |
| `DECISIONS.md` | Decisions made and WHY (append-only log, newest on top). Prevents re-litigating settled choices. |
| `CONVENTIONS.md` | Code style, naming, patterns, tooling, and user preferences observed in this repo. How code here is written. |
| `GLOSSARY.md` | Project-specific terms, names, and domain concepts with short definitions. |

Add more files when a concern outgrows the above (e.g. `API.md`, `DATA-MODEL.md`). W
cavemanSkill

>

frontend-designSkill

Create distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, artifacts, posters, or applications (examples include websites, landing pages, dashboards, React components, HTML/CSS layouts, or when styling/beautifying any web UI). Generates creative, polished code and UI design that avoids generic AI aesthetics.

deep-researchSkill

>

improveSkill

>

brainstormingSkill

You MUST use this before any creative work - creating features, building components, adding functionality, or modifying behavior. Explores user intent, requirements and design before implementation.

deep-research-agentSkill

Comprehensive research agent for in-depth investigation. Use when users ask for deep research, comprehensive analysis, market research, academic surveys, competitive analysis, technology trends, or any topic requiring 100+ source verification. Triggers on requests like "investigate", "research", "analyze", "create a report", "comprehensive report", "deep dive", "thorough analysis".

ui-ux-pro-maxSkill

UI/UX design intelligence expert for web and mobile applications. Use when designing interfaces, selecting color palettes, typography, visual styles, building landing pages, dashboards, or reviewing code for UX issues. Covers 50+ design styles, 97 color palettes, 57 font pairings, 99 UX guidelines, 25 chart types across 9 tech stacks (React, Next.js, Vue, Svelte, SwiftUI, React Native, Flutter, Tailwind, shadcn/ui).

web-scraperSkill

Scrape, crawl, and extract data from websites. Use when users ask to scrape web pages, extract content, crawl websites, or collect data from the internet.