tderoussel/session-log

Write a durable record of a work session — what was built, root-caused, or shipped — into the project's notes. Use when the user says log this session, write a session log, record this, or when a substantial piece of work has just finished and needs to be handed off to a future session.

¿Qué es session-log?

session-log is a Claude Code agent skill that write a durable record of a work session — what was built, root-caused, or shipped — into the project's notes. Use when the user says log this session, write a session log, record this, or when a substantial piece of work has just finished and needs to be handed off to a future session.

Compatible con~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/tderoussel/agent-skills/tree/main/skills/session-log

Installed? Explore more Productividad y colaboración skills: steipete/gemini, steipete/gh-issues, steipete/skill-creator · View all 6 →

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

Session log

Writes a durable record of a work session. These logs get treated as ground truth by whoever reads them next — including you, six weeks from now, with none of this context. Accuracy matters more than polish.

When to run this

  • A build, fix, audit, or research wave just finished
  • A session is ending and there's state the next one would need
  • Something was root-caused and the mechanism is worth keeping

Don't run it for trivial work. A one-line fix doesn't need a log.

Where it goes

Wherever the project keeps its session records — a docs/sessions/ directory, a notes vault, a wiki. Ask once if it isn't obvious, then stay consistent.

A filename carrying the date and a short description sorts and scans well: YYYY-MM-DD Short Description.md.

Steps

1. Gather the facts before writing

Do not write from memory of the conversation alone. Collect:

  • PR numbers, commit SHAs, migration timestamps, deploy IDs
  • What was actually verified, and by what command
  • What failed, and what's still open
  • Anything only a human can do

If a fact can't be confirmed, mark it unconfirmed rather than dropping it or asserting it.

2. Write the body

# YYYY-MM-DD — <what was root-caused or shipped>

<One line naming how the work was run: who planned, who built, who reviewed.>

## What happened

- Mechanism first. Why this happened, not just what.
- Concrete evidence: PR numbers, SHAs, timestamps, row counts, log lines.
- Distinguish proven from inferred, explicitly.

## Fix

1. Numbered steps. Each states what was verified and how.

## Standing DO-NOT rules
<Only if the session produced prohibitions. Ground each in the incident that caused it.>

## Remaining items — needs a human

- [ ] Things only they can do

Links: <related documents>

If the notes system uses frontmatter, include an outcome field: one full sentence stating what is now true that wasn't before. It is the most-read line in the file. Make it a real claim, not a label.

3. The two sections everyone drops

## Remaining items and the links footer are required. They are the two sections that carry value forward and the two most often omitted — in one vault, measured across 230 existing logs, they appeared in only ~21% and ~28% of them.

Write both, every time. If nothing is genuinely held for a human, write None — nothing is held. rather than deleting the heading.

4. Mark every claim

Label each one VERIFIED (how) or ASSUMED (why not checked) inline. Do not blur them.

"Verified" should mean a human or a command actually confirmed it. A claim about production requires a query against production — not a passing test, not a merged PR, not a green deploy.

5. Resolve every link before saving

Check each link target against a real file before writing it. A notes system accumulates broken references fast, and a log full of dead links is a log nobody trusts.

6. Update the project's state

If the work changed a project's status, add a dated state section to that project's main document — newest first, prepend, never overwrite history.

If the work advanced a program with a handoff document, update it in place so the next session picks up correctly.

7. Feed the lessons back

If the user corrected something during the session, write the lesson somewhere durable — a rules file, a memory store, this skill itself. That is how corrections stop repeating.

House style

  • Specific and falsifiable. Vague summaries are worse than nothing here.
  • Never claim a status without saying how it was checked.
  • Lead with bad news. Don't bury it.
  • Write for a reader with none of your context.

Do not

  • Do not overwrite an existing log. Read first, then edit.
  • Do not write into machine-generated directories.
  • Do not create scratch files or build output alongside the notes.

Individual skills in this repo

This repo contains 8 individual skills — each has its own dedicated page.

tderoussel/codebase-audit

Runs a ranked, evidence-backed audit of a product, codebase, or subsystem, ending in a verify list that separates proven findings from inferred ones. Use when the user asks for an audit, a gap analysis, a deep read, a bug hunt, a readiness check, a re-audit, a state reconciliation, or asks what they are not seeing. Trigger phrases include "audit", "gap analysis", "what am I missing", "deep audit", "readiness", "bug hunt", "review the whole thing". Produces findings and a verify list; does not fix.

tderoussel/competitive-teardown

Researches a competing product against your own and produces a ranked build-or-ignore verdict, plus optional comparison-page copy. Use when the user names a competitor or asks how their product stacks up against one. Trigger phrases include "vs us", "competitor", "what does X have", "should we copy", "competitive gap", "teardown", "are we behind". Produces a ranked verdict with effort estimates and an explicit not-worth-copying list.

tderoussel/decision-council

Run a structured multi-perspective review of a decision instead of getting one agreeable answer. Use when the user says run a council, get me perspectives on this, should I do X, stress-test this decision, or is this a good idea.

tderoussel/fleet-brief

Authors a workstream brief for dispatching multiple parallel build agents across one codebase, with per-lane file ownership, shared-ground warnings, and a derived DO-NOT list. Use whenever work is about to be split across concurrent agents, workers, lanes, or waves — even if the user does not say "write a brief". Trigger phrases include "fan out", "parallel agents", "orchestrate this", "split into lanes", "workstreams", "run these in parallel", "review-gated build". Produces the brief; does not dispatch.

tderoussel/inbox-triage

Triage an email inbox — sort what needs a reply, draft the replies, flag what needs a decision, and surface what can be ignored or unsubscribed. Use when the user says triage my inbox, do my email, what's in my inbox, or clean up my email.

tderoussel/overnight-build

Composes an autonomous unattended Claude Code build prompt that survives usage-limit resets via BUILD_LOG.md checkpointing, plus the launcher that restarts it. Use when the user asks for an overnight build, an autonomous build, a build to run while they sleep, an unattended or unsupervised session, or any long build they will not be monitoring. Trigger phrases include "overnight build", "run overnight", "build while I sleep", "autonomous build", "let it run", "unattended". Produces a single copyable prompt; does not run the build.

tderoussel/ship-gate

Verification gate for a Next.js-on-Vercel + Supabase + GitHub Actions stack, to run before claiming anything is shipped, deployed, live, merged, passing, or done. Use before saying a change is in production, before merging a PR, before reporting CI green, and before writing any status into a document — even if the user does not ask for verification. Trigger phrases include "is it live", "did it deploy", "ship it", "merge it", "is CI green", "confirm prod", "did that work". Encodes traps where the obvious check returns a false pass.

tderoussel/vault-doctor

Audits and repairs an Obsidian vault's structural health — broken [[wikilinks]], ambiguous duplicate filenames, missing or malformed frontmatter, stale status markers, and hub notes whose state sections have gone cold. Use when the user asks about vault health, broken links, vault cleanup, dead links, orphan notes, tag consistency, or says the vault feels messy or out of date. Trigger phrases include "vault health", "broken links", "clean up the vault", "audit the vault", "is the vault current". Read-only by default; every repair is proposed before it is made.

Skills relacionados