agentleFS
gufrancogufranco/claude-engineering-rules/skills/session-log/SKILL.md

session-log

Skill3 starsChanged 30 days agoMITView on GitHub

Summarize the current session's files changed, tests run, commits, and decisions as handoff or standup notes.

21 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use ml-training-recipe, replication and 9 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • getcompanion-aiSkill

    ml-training-recipe

    Find implementable ML training recipes from papers, datasets, docs, and code. Use when the user wants to fine-tune, train, reproduce, or choose a practical ML method, dataset, hyperparameter setup, or benchmark recipe.

    Also in 3 projects that use this

  • getcompanion-aiSkill

    replication

    Plan a replication of a paper, claim, or benchmark, and execute only after an explicit environment choice. Use when the user asks to replicate results, reproduce an experiment, verify a claim empirically, or build a replication package.

    Also in 3 projects that use this

  • brainbytes-devSkill

    alpha-research

    Also in 3 projects that use this

  • JaimeParkerSkill

    paper-code-audit

    Perform three-way cross-validation of a research paper by comparing the original paper text (via Zotero), official code implementation (via Git), and personal Obsidian notes. Use this skill whenever the user wants to "audit a paper", "verify paper claims against code", "cross-check notes with implementation", "triangulate paper + code + notes", "find discrepancies between paper and code", or mentions wanting a deep, structured comparison of a paper's claims against its implementation and their own notes. Also trigger when the user asks to "analyze this paper thoroughly" with code available, or when they want to systematically reconcile what the paper says, what the code does, and what their notes claim.

    Also in 3 projects that use this

  • JimLiuSkill

    pdf-explore

    Use this skill when the user has attached a PDF, paper, report, or other document and the answer needs content from more than one place in it: summarize the methods or any other section, compare sections, find where a topic is discussed, read a value or label off a figure or chart, or find/list/extract every instance of something across the whole document (datasets, benchmarks, citations, figures, table rows, accession numbers — including appendices). Skip it only for a single lookup of 1–4 pages quoted in your very next response — `read_file(pages=[...])` attaches pages as images that are dropped from context after one turn, so multi-section answers end up re-reading the same ranges repeatedly. Parses the PDF once in the Python kernel: `pdf_pages` (pages as persistent text), `pdf_outline` (TOC), `pdf_scan` (rank pages by relevance), `pdf_map`/`pdf_extract` (per-page summary / structured fields via parallel haiku calls). For PDF creation/manipulation, use reportlab/pypdf directly.

    Also in 3 projects that use this

  • KISHOR403Skill

    session-search

    This skill should be used when searching Claude Code session transcripts with semantic understanding. Triggers on queries like "find sessions about X", "when did I work on Y", "search previous conversations". Supports natural language queries with synonym matching.

    Also in 4 projects that use this

  • +1 more from getcompanion-ai

The file

Show its rules and text

We split this skill into the rules it gives an agent

18 rules. 0 are common, 15 are distinctive, and 3 are very specific to this project.

  • 0

    Common

    Most of the 15 edited versions we read keep these.

  • 15

    Distinctive

    This author's own choices. Worth a look.

  • 3

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Run git log --oneline --since="<session start or today>" to find recent commits.

    line 34
  2. Distinctive:

    If no commits exist since today, check the last 24 hours.

    line 35
  3. Distinctive:

    Run git diff --name-status for uncommitted changes.

    line 39
  4. Distinctive:

    Run git diff --cached --name-status for staged changes.

    line 40
  5. Distinctive:

    Gather test activity: Check if tests were run during the session:

    line 43
  6. Distinctive:

    Look for test output in the conversation history.

    line 44
  7. Very specific:

    When /session-log export is invoked:

    line 98
  8. Distinctive:

    All timestamps in GMT.

    line 123
  9. Distinctive:

    Do not fabricate session activity.

    line 124
  10. Distinctive:

    Keep each section concise.

    line 126
  11. Distinctive:

    If no activity exists in a section, state "None this session" instead of omitting the section.

    line 127
  12. Distinctive:

    Stop and drop the row when a commit, test result, or decision has no source in git log or the conversation.

    line 138
  13. Distinctive:

    Stop and resolve the workspace with the helper when the export path you are about to write is the repository root or a tracked directory.

    line 139
  14. Very specific:

    Stop and ask for approval of the fact list before the first brain capture call.

    line 140
  15. Distinctive:

    Stop and convert to GMT when a timestamp carries a local offset.

    line 141
  16. Distinctive:

    Every commit hash in the log appears in git log output from this session.

    line 145
  17. Distinctive:

    Every section is present, with "None this session" where it is empty.

    line 146
  18. Distinctive:

    No file in the memory directory was written.

    line 148

“Common” is measured: kept by at least 6 in 10 of the 15 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Overview

Session activity logger that builds a summary of what happened in the current session. Useful for handoff between developers, standup preparation, and session documentation.

When to Use

  • Handing the work to another developer at the end of a session.
  • Preparing standup notes from what the session actually changed.
  • Recording what a long session did before the context is cleared.

For resumable working state, use /checkpoint save; for corrections that change how the assistant works, use /retro.

Invocation

InvocationAction
/session-logDisplay session summary in the conversation
/session-log exportExport session summary as a markdown file

Steps

  1. Gather git activity. Collect commits made during this session:
    • Run git log --oneline --since="<session start or today>" to find recent commits.
    • If no commits exist since today, check the last 24 hours.
    • For each commit: hash, message, files changed.
  2. Gather file changes. Identify all files modified in the session:
    • Run git diff --name-status for uncommitted changes.
    • Run git diff --cached --name-status for staged changes.
    • Categorize: added, modified, deleted, renamed.
  3. Gather test activity. Check if tests were run during the session:
    • Look for test output in the conversation history.
    • Summarize: test suite name, pass/fail counts, coverage if reported.
  4. Gather decisions. Scan the conversation for decisions made during the session:
    • Architecture choices.
    • Trade-offs discussed and resolved.
    • Scope changes agreed upon.
    • Rejected approaches with reasons.
  5. Identify next steps. Based on the session context:
    • What remains unfinished?
    • What follow-up tasks were identified?
    • What blockers exist?
  6. Format the output. Compile into a structured summary.

Output

## Session Log

**Date:** <timestamp GMT>
**Duration:** <approximate>
**Branch:** <current branch>

### Commits
| Hash | Message |
|------|---------|
| <short hash> | <commit message> |

### Files Changed
| Status | File |
|--------|------|
| M | <path> |
| A | <path> |
| D | <path> |

### Tests
| Suite | Passed | Failed | Coverage |
|-------|--------|--------|----------|
| <name> | <count> | <count> | <percentage or N/A> |

### Decisions
1. <Decision made and rationale>
2. <Decision made and rationale>

### Next Steps
- [ ] <Remaining task>
- [ ] <Follow-up identified>
- [ ] <Blocker to resolve>

Export mode

When /session-log export is invoked:

  • Inside a git repository, write the output to session-log-<YYYY-MM-DD-HHMM>.md in the project workspace, per rules/project-workspace.md. Resolve the workspace root with hooks/_lib/project_workspace.py the same way /checkpoint does, never by guessing:

    python3 -c 'import sys,pathlib; sys.path.insert(0, str(pathlib.Path.home()/".claude/hooks")); from _lib import project_workspace as pw; top = pw.toplevel(pathlib.Path.cwd()); print(top / pw.resolve_root(top))'
  • Outside a git repository, write it to the scratchpad directory.
  • The workspace is excluded through .git/info/exclude, so the export stays out of commits and the project's own files stay untouched.
  • Confirm the file path after writing.

Durable Facts

This skill runs only when the user invokes it. While building the log, route each finding by what it is:

FindingDestination
Task state, open decisions, next stepsThe log itself. When the work resumes in a later session, offer to call the Skill tool with checkpoint and the argument save
A fact a future session needs, such as a gotcha with no trace in code or a decision with lasting effectCall the Skill tool with brain and the argument capture, once per fact, after the user approves the list
A correction to how the assistant worksName it in the log and suggest /retro, which routes it to a rule, a skill, or the vault

Never write MEMORY.md or any memory file. The memory directory is compiled from the vault, per the Knowledge Single Source of Truth section of CLAUDE.md. When SECOND_BRAIN_VAULT does not resolve to a directory, list the durable facts under a Worth keeping heading in the log and tell the user that no vault is configured to hold them.

Rules

  • All timestamps in GMT.
  • Do not fabricate session activity. Only include what actually happened based on git history and conversation context.
  • Decisions must reflect what was actually discussed, not inferred preferences.
  • Keep each section concise. The reader needs a quick overview, not a transcript.
  • If no activity exists in a section, state "None this session" instead of omitting the section.

Common Rationalizations

  • "The tests probably ran, so list them as passing": a test row needs output from this conversation. With no output, the Tests section says "None this session".
  • "The project root is the obvious place for the export": the root belongs to the project. The export goes to the resolved workspace, which git ignores locally.
  • "This fact is worth remembering, so write it to memory": memory is compiled from the vault. Route the fact through brain capture, or list it under Worth keeping when no vault exists.
  • "The decision was implied, so record it": the Decisions section holds only what the conversation settled out loud.

Red Flags

  • Stop and drop the row when a commit, test result, or decision has no source in git log or the conversation.
  • Stop and resolve the workspace with the helper when the export path you are about to write is the repository root or a tracked directory.
  • Stop and ask for approval of the fact list before the first brain capture call.
  • Stop and convert to GMT when a timestamp carries a local offset.

Verification

  • Every commit hash in the log appears in git log output from this session.
  • Every section is present, with "None this session" where it is empty.
  • An export lands under the resolved workspace root or the scratchpad directory, and git status --short does not list it.
  • No file in the memory directory was written.

Related skills

  • /retro -- Deeper retrospective that persists learnings as config.
  • /checkpoint -- Save working state for cross-session resumption.
  • /morning -- Start-of-day sweep of pending work across every git account.
  • /ship commit -- Commit changes identified in the session log.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.