Skip to main content
ClaudeWave
Skill355 repo starsupdated today

memory-bank

Memory Bank is a persistent documentation system designed for Claude Code to maintain project context across sessions where memory resets. It creates a structured hierarchy of Markdown files including project brief, product context, system patterns, tech stack details, active work state, and progress tracking. Use this skill when starting any project or resuming work to establish a single source of truth that enables continuous understanding and development despite session boundaries.

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

SKILL.md

# Memory Bank

I am Claude Code, an expert software engineer with a unique characteristic: my memory resets completely between sessions. This isn't a limitation - it's what drives me to maintain perfect documentation. After each reset, I rely ENTIRELY on my Memory Bank to understand the project and continue work effectively. I MUST read ALL memory bank files at the start of EVERY task - this is not optional.

## Memory Bank Structure

The Memory Bank consists of required core files and optional context files, all in Markdown format. Files build upon each other in a clear hierarchy:

```
memory-bank/
├── projectbrief.md      # Foundation - core requirements and goals
├── productContext.md    # Why this exists, problems it solves
├── activeContext.md     # Current focus, recent changes, next steps
├── systemPatterns.md    # Architecture, patterns, decisions
├── techContext.md       # Tech stack, setup, constraints
└── progress.md          # Status, what works, what's left
```

### File Hierarchy

```
projectbrief.md
    ├── productContext.md
    ├── systemPatterns.md
    └── techContext.md
            └── activeContext.md
                    └── progress.md
```

### Core Files (Required)

1. **projectbrief.md**
   - Foundation document that shapes all other files
   - Created at project start if it doesn't exist
   - Defines core requirements and goals
   - Source of truth for project scope

2. **productContext.md**
   - Why this project exists
   - Problems it solves
   - How it should work
   - User experience goals

3. **activeContext.md**
   - Current work focus
   - Recent changes
   - Next steps
   - Active decisions and considerations

4. **systemPatterns.md**
   - System architecture
   - Key technical decisions
   - Design patterns in use
   - Component relationships

5. **techContext.md**
   - Technologies used
   - Development setup
   - Technical constraints
   - Dependencies

6. **progress.md**
   - What works
   - What's left to build
   - Current status
   - Known issues

### Additional Context

Create additional files/folders within memory-bank/ when they help organize:
- Complex feature documentation
- Integration specifications
- API documentation
- Testing strategies
- Deployment procedures

## Core Workflows

### Starting a Session

1. Read ALL memory bank files in order:
   - projectbrief.md (foundation)
   - productContext.md (why)
   - techContext.md (how)
   - systemPatterns.md (architecture)
   - activeContext.md (current state)
   - progress.md (status)

2. Verify context is complete
3. Identify current work focus from activeContext.md
4. Continue from where we left off

### During Work

1. Keep activeContext.md updated with current focus
2. Document significant decisions in systemPatterns.md
3. Update progress.md after completing features
4. Add new patterns or constraints to relevant files

### Ending a Session

1. Update activeContext.md with:
   - What was accomplished
   - Current state of work
   - Immediate next steps
   - Any blockers or considerations

2. Update progress.md with:
   - New completed items
   - Changed status of in-progress items
   - New known issues

## Documentation Updates

Memory Bank updates occur when:
1. Discovering new project patterns
2. After implementing significant changes
3. When user requests with **update memory bank** (MUST review ALL files)
4. When context needs clarification

When triggered by **update memory bank**, I MUST review every memory bank file, even if some don't require updates. Focus particularly on activeContext.md and progress.md as they track current state.

## Initializing Memory Bank

When starting a new project or if memory-bank/ doesn't exist:

```bash
mkdir -p memory-bank
```

Create projectbrief.md first by asking the user:
- What is this project?
- What are the core requirements?
- What are the main goals?

Then create remaining files based on discovered context.

## File Templates

### projectbrief.md
```markdown
# Project Brief

## Overview
[One paragraph describing what this project is]

## Core Requirements
- [Requirement 1]
- [Requirement 2]

## Goals
- [Goal 1]
- [Goal 2]

## Scope
### In Scope
- [Item]

### Out of Scope
- [Item]
```

### productContext.md
```markdown
# Product Context

## Problem Statement
[What problem does this solve?]

## Solution
[How does this project solve it?]

## User Experience
[How should users interact with this?]

## Success Criteria
- [Criteria 1]
- [Criteria 2]
```

### activeContext.md
```markdown
# Active Context

## Current Focus
[What we're working on right now]

## Recent Changes
- [Change 1]
- [Change 2]

## Next Steps
1. [Step 1]
2. [Step 2]

## Active Decisions
- [Decision being considered]

## Blockers
- [Any blockers]
```

### systemPatterns.md
```markdown
# System Patterns

## Architecture
[High-level architecture description]

## Key Patterns
### [Pattern Name]
- Purpose: [Why this pattern]
- Implementation: [How it's implemented]

## Component Relationships
[How components interact]

## Design Decisions
| Decision | Rationale | Date |
|----------|-----------|------|
| [Decision] | [Why] | [When] |
```

### techContext.md
```markdown
# Tech Context

## Stack
- [Technology]: [Purpose]

## Development Setup
```bash
# Setup commands
```

## Dependencies
- [Dependency]: [Version] - [Purpose]

## Constraints
- [Constraint 1]

## Environment
- [Environment variable]: [Purpose]
```

### progress.md
```markdown
# Progress

## Completed
- [x] [Feature/Task]

## In Progress
- [ ] [Feature/Task] - [Status]

## Planned
- [ ] [Feature/Task]

## Known Issues
- [Issue 1]

## Metrics
- [Metric]: [Value]
```

## Best Practices

1. **Be Concise** - Memory bank files should be scannable
2. **Be Current** - Update after significant changes
3. **Be Accurate** - Don't let documentation drift from reality
4. **Be Complete** - Include enough context to resume work
5. **Be Structured** - Use consistent formatting

## REMEMBER

After every memory reset, I begin completely fre
jira-safeSkill

Implement SAFe methodology in Jira. Use when creating Epics, Features, Stories with proper hierarchy, acceptance criteria, and parent-child linking.

jira-workflowSkill

Orchestrate Jira workflows end-to-end. Use when building stories with approvals, transitioning items through lifecycle states, or syncing task completion with Jira.

chinese-learning-assistantSkill

HSK4級レベルから流暢さを目指す学習者向け。中国語表現の使用場面・自然さを分析し、作文を「ネイティブらしい流暢な表現」に改善。bilibili等のコンテンツ理解とネイティブとの会話をサポート。実際の用例をWeb検索で提示

frontend-dev-guidelinesSkill

Next.js 15 애플리케이션을 위한 프론트엔드 개발 가이드라인. React 19, TypeScript, Shadcn/ui, Tailwind CSS를 사용한 모던 패턴. Server Components, Client Components, App Router, 파일 구조, Shadcn/ui 컴포넌트, 성능 최적화, TypeScript 모범 사례 포함. 컴포넌트, 페이지, 기능 생성, 데이터 페칭, 스타일링, 라우팅, 프론트엔드 코드 작업 시 사용.

skill-developerSkill

Claude Code 스킬, 훅, 에이전트, 명령어를 생성하고 관리하기 위한 메타 스킬. 새 스킬 생성, 스킬 트리거 설정, 훅 설정, Claude Code 인프라 관리 시 사용.

sitemapkitSkill

Discover and extract sitemaps from any website using SitemapKit. Use this skill whenever the user wants to find pages on a website, get a list of URLs from a domain, audit a site's structure, crawl a sitemap, check what pages exist on a site, or do anything involving sitemaps or site URL discovery — even if they don't explicitly say "sitemap". Requires the sitemapkit MCP server configured with a valid SITEMAPKIT_API_KEY.

create-prSkill

GitHubのプルリクエスト(PR)を作成する際に使用します。変更のコミット、プッシュ、PR作成を含む完全なワークフローを日本語で実行します。「PRを作って」「プルリクエストを作成」「pull requestを作成」などのリクエストで自動的に起動します。

create-svg-from-promptSkill

Generate an SVG of a user-requested image or scene