Claude-skill-registry log-learning

Log key learnings to progress.txt during PRD iteration. Use when you discover codebase patterns, encounter gotchas, make important decisions, or learn something that would help future work sessions. Triggers on: log learning, add to progress, capture insight, record pattern, note gotcha, save lesson.

install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/log-learning" ~/.claude/skills/majiayu000-claude-skill-registry-log-learning && rm -rf "$T"
manifest: skills/data/log-learning/SKILL.md
source content

Log Learning

Capture key insights and learnings to progress.txt while iterating on PRD tasks. This file serves as session memory that is ingested at the start of subsequent work sessions.

When to Use

Invoke this skill whenever you:

  • Discover a codebase pattern that affects implementation
  • Encounter a gotcha or unexpected behavior
  • Make an architectural or design decision
  • Find a workaround for a tricky problem
  • Learn something about dependencies, APIs, or tooling
  • Complete a task and want to capture what was learned

Progress File Location

The progress file is at the project root:

progress.txt

Learning Categories

1. Codebase Patterns

Structural patterns discovered while working:

## Codebase Patterns

- Middleware uses `MiddlewareParams` struct for dependency injection
- Echo RequestLoggerWithConfig used for custom request logging
- Request ID middleware should be early in chain
- slog is the standard library structured logger

2. Task Completion Notes

Append after completing work on a user story or task:

---

## US-XXX: [Task Title]
Status: COMPLETE

### What was implemented:
- Specific change 1
- Specific change 2

### Files changed:
- path/to/file1.go
- path/to/file2.go

### Key learnings:
- Pattern discovered or reinforced
- Gotcha encountered
- Important decision made

---

3. Gotchas and Warnings

Issues to watch out for:

### Gotchas:
- NATS JetStream requires explicit bucket creation before use
- Echo context must be cast for custom types
- Air hot-reload doesn't detect new files without restart

4. Decisions Made

Record why certain approaches were chosen:

### Decision: [What was decided]
- Context: [situation]
- Options: [alternatives considered]
- Rationale: [why this choice]

How to Log

Quick Pattern Log

When you discover a pattern, append to the

## Codebase Patterns
section:

# Read current progress.txt first, then edit to add the pattern

Task Completion Log

After completing a task:

  1. Read the current progress.txt
  2. Update the task status to COMPLETE
  3. Add implementation notes under the task section
  4. Append key learnings

Session Summary

At the end of a work session, ensure progress.txt contains:

  • Updated status for all worked tasks
  • New patterns in the Codebase Patterns section
  • Any gotchas discovered
  • Important decisions made

Format Guidelines

  • Keep entries concise but informative
  • Use bullet points for easy scanning
  • Include file paths when relevant
  • Link patterns to specific implementations
  • Group related learnings together
  • Use
    ---
    separators between major sections

Example Progress Entry

---

## US-003: Add Request ID Middleware
Status: COMPLETE

### What was implemented:
- Created requestid.go middleware using X-Request-ID header
- Falls back to UUID generation when header not present
- Integrated with slog for trace correlation

### Files changed:
- services/api/middleware/requestid.go
- services/api/middleware/middleware.go
- services/api/middleware/slogger.go

### Key learnings:
- Request ID must be early in middleware chain for other middleware to use it
- Echo's c.Set() stores in request-scoped context
- Use c.Response().Header().Set() to echo ID back to caller

---

Progress File Template

If starting fresh, initialize with:

# Progress Log
Started: [date]

## Current Session - [Feature/PRD Name]
Source: [path to PRD or task file]

---

## Codebase Patterns (from this session)

[Patterns discovered during work]

---

[Task entries will be appended here]

Key Principles

  1. Log immediately: Capture learnings as they happen, not at the end
  2. Be specific: Include file paths, function names, concrete details
  3. Think future-you: Write what you'd want to know when resuming
  4. Compound knowledge: Each learning should make future work easier
  5. Keep it scannable: Bullet points and clear headers over paragraphs