Claude Code Plugins

Community-maintained marketplace

Feedback

Use for knowledge sharing across sessions. Search memory before starting work, store memory after learning. Critical for avoiding repeated mistakes and maintaining context.

Install Skill

1Download skill
2Enable skills in Claude

Open claude.ai/settings/capabilities and find the "Skills" section

3Upload to Claude

Click "Upload skill" and select the downloaded ZIP file

Note: Please verify skill by going through its instructions before using it.

SKILL.md

name memory
description Use for knowledge sharing across sessions. Search memory before starting work, store memory after learning. Critical for avoiding repeated mistakes and maintaining context.

Agent Memory - Knowledge Sharing

WHY Use Memory

Memory persists across ALL agent sessions. What you learn today helps other agents (and future you) tomorrow.

  • Avoid repeating mistakes
  • Reuse solutions that worked
  • Maintain context across sessions
  • Share knowledge between agents

WHEN to Search Memory

Before Starting Work

# Search for prior work on this ticket/topic
search_memory(query: "ticket #114", limit: 5)
search_memory(query: "daisyUI theme configuration", limit: 5)

When Stuck or Blocked

# Search for similar problems or solutions
search_memory(query: "Stacked PRs phase dependency", limit: 5)
search_memory(query: "rails credentials error", limit: 5)

Before Making Decisions

# Search for prior decisions on this topic
search_memory(query: "authentication", memory_type: "decision", limit: 5)
search_memory(query: "database schema", memory_type: "decision", limit: 5)

When Encountering Errors

# Search for previous solutions to this error
search_memory(query: "ActiveRecord not found error", memory_type: "error", limit: 5)

WHEN to Store Memory

After Learning Something New

store_memory(
  content: "Learned that daisyUI themes are configured in application.tailwind.css with @plugin directive",
  memory_type: "fact",
  ticket_id: 89
)

After Fixing a Bug

store_memory(
  content: "Fixed: Tailwind v4 requires @import 'tailwindcss' instead of @tailwind directives. Error: 'Unknown at rule @tailwind'",
  memory_type: "error",
  ticket_id: 89,
  metadata: { error_message: "Unknown at rule @tailwind", solution: "Use @import 'tailwindcss'" }
)

After Making a Decision

store_memory(
  content: "Chose daisyUI winter theme as default over emerald because better color contrast for accessibility",
  memory_type: "decision",
  ticket_id: 89
)

After Implementing a Pattern

store_memory(
  content: "When fixing existing PRs, always checkout the PR's branch using 'gh pr view X --json headRefName' instead of creating new branch",
  memory_type: "instruction",
  ticket_id: 98
)

After Completing Work

store_memory(
  content: "Implemented daisyUI theme polish with 3 themes: winter (default), dracula (dark), corporate. All AVO cards converted to daisyUI components (card, badge, progress, alert). Theme switcher component created with Stimulus controller.",
  memory_type: "summary",
  ticket_id: 89
)

Memory Types

Type When to Use Example
decision After making an architectural choice "Chose PostgreSQL over MySQL for JSON support"
error After fixing a bug or error "Fixed: 'undefined method' for nil - add .presence check"
instruction For reusable patterns/workflows "Always test on mobile before submitting PR"
fact For learned information "Ruby 3.4 requires syntax it {} instead of lambda {}"
summary After completing significant work "Phase 1 of epic #79: Added daisyUI and converted cards"
context For project-specific info "This project uses AVO admin framework with custom cards"
code_snippet For useful code patterns store_memory(content: "Use find_or_create_by for upserts", memory_type: "code_snippet")

Quick Reference

Situation Action
Starting work on ticket search_memory(query: "ticket #X")
Encountering error search_memory(query: "error message", memory_type: "error")
Fixed an issue store_memory(content: "Fixed: ...", memory_type: "error")
Made a choice store_memory(content: "Chose X because ...", memory_type: "decision")
Learned new info store_memory(content: "Learned that ...", memory_type: "fact")
Completed task store_memory(content: "Implemented ...", memory_type: "summary")

Best Practices

BE SPECIFIC

# Good
store_memory(content: "daisyUI 5.5.14 requires Tailwind CSS 4.1.18+ for @plugin syntax", memory_type: "fact")

# Too vague
store_memory(content: "Check daisyUI version compatibility", memory_type: "fact")

INCLUDE CONTEXT

store_memory(
  content: "For AVO cards, use daisyUI 'card' component with 'bg-base-100' for theme-aware backgrounds",
  memory_type: "instruction",
  ticket_id: 89,
  metadata: { component: "avo_card", theme: "daisyui" }
)

LINK TO TICKETS

store_memory(
  content: "git-workflow skill supports stacked PRs for phased development (Phase 1 → Phase 2 → Phase 3)",
  memory_type: "fact",
  ticket_id: 97
)

Examples by Memory Type

decision - Architectural Choices

# After choosing a library
store_memory(
  content: "Chose bun over npm/yarn because 10x faster install times and native ESM support",
  memory_type: "decision",
  ticket_id: 81
)

# After choosing an approach
store_memory(
  content: "Decided to use skills pattern (from ticket #98) instead of inline prompts for persistent workflows",
  memory_type: "decision",
  ticket_id: 114
)

error - Bugs and Solutions

# After fixing a specific error
store_memory(
  content: "Fixed: 'ActionController::UnknownFormat' - Add 'format.js { render json: {...} }' to respond_to block",
  memory_type: "error",
  ticket_id: 105,
  metadata: { error_class: "ActionController::UnknownFormat", solution: "Add format.js response" }
)

# After resolving configuration issues
store_memory(
  content: "Fixed: daisyUI components not rendering - Needed to run 'bun run build:css' to compile Tailwind v4",
  memory_type: "error",
  ticket_id: 89
)

instruction - Reusable Patterns

# Workflow guidance
store_memory(
  content: "When implementing epic subtasks, always check for auto-block dependencies via ticket.dependencies before starting work",
  memory_type: "instruction",
  ticket_id: 96
)

# Code pattern
store_memory(
  content: "Use 'find_by(id:)' instead of 'where(id:).first' to avoid loading entire relation",
  memory_type: "instruction",
  ticket_id: 100
)

fact - Learned Information

# Technical fact
store_memory(
  content: "Tailwind CSS v4 uses @import instead of @tailwind directives. CSS config moved to @plugin block in CSS file itself",
  memory_type: "fact",
  ticket_id: 89
)

# Project-specific fact
store_memory(
  content: "This project uses Tinkered workflow: Workers implement → Reviewers audit → Orchestrators coordinate",
  memory_type: "fact",
  ticket_id: 98
)

summary - Completed Work

# After completing a ticket
store_memory(
  content: "Ticket #89: Implemented daisyUI theme polish. 3 themes configured (winter, dracula, corporate). All AVO cards converted to daisyUI components. Created theme switcher controller and partial.",
  memory_type: "summary",
  ticket_id: 89
)

# After completing a phase
store_memory(
  content: "Epic #79 Phase 1 Complete: daisyUI installed, theme configured, base components converted. Ready for Phase 2: Advanced features.",
  memory_type: "summary",
  ticket_id: 79
)

Search Patterns

Search by Ticket

search_memory(query: "ticket #89", limit: 10)
search_memory(query: "#114", limit: 5)

Search by Type

search_memory(memory_type: "decision", limit: 20)
search_memory(memory_type: "error", query: "daisyUI", limit: 10)

Search by Keyword

search_memory(query: "authentication", limit: 10)
search_memory(query: "Stacked PRs", limit: 5)
search_memory(query: "AVO card", limit: 10)

Search by Ticket Context

# Get all memories for current ticket
search_memory(ticket_id: 114, limit: 20)

Workflow Integration

Standard Work Pattern

# 1. Start: Search for context
search_memory(query: "ticket #114", limit: 5)
search_memory(query: "memory skill pattern", limit: 5)

# 2. Work: Implement solution
# ... code changes ...

# 3. Learn: Store discoveries
store_memory(content: "Memory skills use same directory structure as git-workflow", memory_type: "fact", ticket_id: 114)

# 4. Complete: Store summary
store_memory(content: "Created memory skill with search/store guidance, memory types, examples", memory_type: "summary", ticket_id: 114)

Memory Quality Checklist

When storing memory, ensure:

  • Specific: Contains actionable details
  • Typed: Uses correct memory_type
  • Context: Includes ticket_id or metadata
  • Searchable: Uses keywords others might search for
  • Unique: Doesn't duplicate existing memories

When searching memory:

  • Before starting: Check for prior work
  • When stuck: Look for similar solutions
  • Before deciding: Check prior decisions
  • Use filters: Apply memory_type, ticket_id when relevant