Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

session-log

🇰🇷 한국어 버전: README.ko.md

Introduction

This skill was built to solve a recurring problem I ran into while working on multiple projects with Claude Code: loss of continuity between sessions.

Claude Code's auto-memory captures facts, and git captures artifacts. But the space between them — the process of what was tried, what failed, and where the next session should pick up — has no home. This skill fills that gap.


The problem

Three situations repeat themselves in every long-running Claude Code project:

  • Mid-session compaction — the context window fills, auto-compaction runs, and the reasoning behind a decision from ten minutes ago disappears along with it.
  • New session, blank slate — the next Claude has to re-derive root causes the previous Claude already figured out.
  • Silent repetition of failed approaches — an approach that failed last session gets attempted again once the session changes, because the failure was never recorded anywhere.

Why it matters

Claude Code retains two things between sessions, and neither one holds "process".

System Captures Misses
Auto-memory (MEMORY.md) Durable facts — user profile, project constraints Anything that changes session-to-session
Git Artifacts — code that shipped Reasoning trail, failed attempts, fixes that were introduced then rolled back

The result: users end up re-briefing Claude at the start of every session, and Claude walks the same dead ends every week.


What this skill does

One markdown file per session, scoped to the project, indexed by date.

~/.claude/projects/<project-hash>/memory/sessions/
├── INDEX.md
├── 2026-07-30_0900.md
├── 2026-07-30_1420.md
└── 2026-07-31_0830.md

Each log has five sections. Empty ones are deleted.

  • What I did — grouped by outcome, not by tool call.
  • What I discovered (non-obvious) — root causes and hidden constraints uncovered along the way.
  • Failed attempts (don't repeat) — approaches to avoid re-attempting.
  • Next up — concrete file-level actions.
  • Files changed — path list only.

On session start, the skill loads the 3 most recent logs and briefly summarizes state before doing anything else.

On session end — a wrap-up phrase, a <summary> compaction tag, or an explicit request — it writes a new entry and updates INDEX.md.

Storage lives inside the folder Claude Code already manages (~/.claude/projects/<hash>/memory/). No parallel structure, no separate database, no extra install step.

💡 Tip: See session-log/example.md for a real entry from a working project.


Why it works

  • Zero dependencies — only Claude Code's built-in Read / Write / Glob / Grep.
  • Plain markdown — greppable, editable in any editor, portable even if Claude Code changes its storage layout tomorrow.
  • Failed attempts section is the point — logs without it are narrative; logs with it stop Claude from re-walking dead ends.
  • One session = one file — sessions are the natural unit of work. A week is easy to skim; any single entry is easy to open.
  • Complements auto-memory — auto-memory answers "what is durably true", session log answers "what happened yesterday". When the same failure gets recorded three times or more, it can be promoted to auto-memory as a feedback entry.

Install

The easiest way — one command via the skills CLI:

npx skills add Choonham/session-log-skill -g -a claude-code -y

That's it. The skill is installed globally and Claude Code picks it up on the next session.

Manual install (from source)

If you'd rather keep the source under your own path and symlink it in (useful for local development, or when you want to git pull updates yourself):

git clone https://github.com/Choonham/session-log-skill ~/skills-src/session-log-skill
mkdir -p ~/.claude/skills
ln -s ~/skills-src/session-log-skill/session-log ~/.claude/skills/session-log

On Windows, use mklink /D from an admin prompt (or from a normal prompt if Developer Mode is enabled), or simply copy the session-log/ folder into ~/.claude/skills/.

Verify

> /skills
session-log ... Project-scoped work journal that survives session compaction...

Uninstall

npx skills remove session-log -g -y

Name the skill explicitly. Do not add --all — that flag ignores the name and wipes every installed skill.


Triggers

The skill activates in the following situations:

  • The session starts with a <summary> tag (compaction detected)
  • The user says one of: log this session, wrap up, what did I do last session, resume where we left off, 이제 마무리, 다음에 계속, 지난 세션 뭐 했지, 지금까지 뭐 했는지 로그 남겨
  • Claude notices a meaningful checkpoint (bug fixed, feature landed, PR merged, etc.)

💡 Tip: For fully automatic load-on-start and log-on-end, add SessionStart and Stop hooks to ~/.claude/settings.json. The full spec lives in session-log/SKILL.md.


What NOT to log

  • Play-by-play tool calls (the JSONL transcript already has that)
  • Full file contents (a path plus a one-line reason is enough)
  • Anything already in a commit message (reference the sha instead)
  • Secrets

License

MIT — see LICENSE.


Hope this skill helps smooth out your Claude Code workflow.

About

클로드야, 다음부턴 까먹으면 안된다~

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors