session-start

A session-start guide for Claude Code that reads project notes such as CLAUDE.md, DECISIONS.md, and CONTEXT.md, then summarizes the project and next steps.

In plain words
What is it for?
Use it when joining a project, returning after a break, or asking where work left off.
Why use it?
It reduces the time spent reconstructing what a project is and what happened during an earlier coding session.

Skill for Claude CodeCodex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/s9b/session-handoff/session-start
Any agent
npx skills add s9b/session-handoff --skill session-start
Clone the repo
git clone --depth 1 https://github.com/s9b/session-handoff

Made for: Claude Code, Codex.

Per session 126 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 792 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00126 $0.00792
Opus 5 $0.00063 $0.00396
Sonnet 5 $0.00025 $0.00158
Haiku 4.5 $0.00013 $0.00079

Measured 2d ago against content hash 13da0ed840d9, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

session-start scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skill/session-start/SKILL.md · 78 lines

How it starts

The opening of the file, as written. The whole thing — 78 lines — stays where its author put it; the contents beside it link to each section on GitHub.

session-start

You are orienting yourself (and the user) at the start of a new work session. Read the knowledge files and give a clear, useful briefing. Do not start writing code until you've done this.


Step 1 — Read the knowledge files

Read these files if they exist at the project root:

  1. CLAUDE.md — the project truth file (tech stack, APIs, architecture)
  2. DECISIONS.md — find the latest entry (it's at the top, right after the <!-- ENTRIES_START --> marker, between the first --- and the second ---)
  3. CONTEXT.md — the current sprint status

If none of these files exist, tell the user:

"No knowledge files found. This project hasn't used session-handoff yet. Run /session-handoff at the end of your first session to start building the project memory."

If some but not all files exist, read what's there and note what's missing in your briefing.


Step 2 — Give the briefing

Output your briefing in exactly this format. Fill in real content — do not leave template placeholders:

## 📋 Project Briefing — [Project Name]

**What this is:** [one sentence description from CLAUDE.md]
**Tech stack:** [list from CLAUDE.md — languages, frameworks, main libraries, APIs]

---

**Last session ([date]):** [2-3 sentences summarizing what was done last session, from the latest DECISIONS.md entry]

**Changes made:** [brief list of main files or things that changed]

**Problems fixed:** [any bugs that were solved — or "None" if there were none]

---

**Current state:**
✅ Working: [what's confirmed working right now]
⚠️ Broken / In progress: [what's not done or not working]
🚫 Don't touch: [any explicit warnings from DECISIONS.md or CONTEXT.md]

---

**Your next task:** [exactly what to start working on next, taken from the "Next steps" section of DECISIONS.md or CONTEXT.md — be specific]

---
Ready. What would you like to work on?

Notes

  • Be specific, not vague. "Fix the auth bug" is worse than "Fix the JWT expiry bug in src/auth/middleware.js — tokens expire after 1 hour, set expiresIn to '7d' instead."
  • If DECISIONS.md has warnings ("don't touch X", "this is broken"), put them in the 🚫 section even if CONTEXT.md doesn't mention them.
  • If the latest DECISIONS.md entry has an in-progress next step, that's almost certainly the next task to work on.
  • Keep the briefing under one screen if possible. The user needs to absorb it quickly and start working.
  • After the briefing, wait. Don't start writing code or making changes until the user responds and confirms what they want to work on.

Read the full file on GitHub · 78 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 2d ago First seen · 78 lines · 126 tokens per session scan A 13da0ed840d9

Subscribe to this mod's changes

session-start is a skill published in the GitHub repository s9b/session-handoff (1 stars, last pushed 4mo ago), licensed MIT. It adds 126 tokens to every session and 792 once invoked, about $0.0006 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

context-mine

Extracts structured context from conversation exports (Slack, meeting transcripts, chat logs) into inbox for processing.

walm00/business-context-os · 27 tokens

seo-image-gen

AI image generation for SEO assets: OG/social preview images, blog hero images, schema images, product photography, infographics. Powered by Gemini via nanobanana-mcp. Requires banana extension installed. Use when user says "generate image", "OG image", "social preview", "hero image", "blog image", "product photo"…

AgriciDaniel/claude-seo · 111 tokens

seo-audit

Full website SEO audit with parallel subagent delegation. Crawls up to 500 pages, detects business type, delegates to up to 15 specialists (8 always + 7 conditional), generates health score. Use when user says audit, full SEO check, analyze my site, or website health check.

AgriciDaniel/claude-seo · 64 tokens

wiki-lint

Run a deterministic, read-only health check on an Obsidian wiki. Use for lint, vault health check, audit wiki health, find orphans, find dead links, frontmatter audit, provenance audit, or wiki audit. Reports graph, link, frontmatter, provenance-ledger, empty-section, and stale-index findings; it does not reason…

AgriciDaniel/claude-obsidian · 79 tokens

blog-google

Google API integration for blog performance: PageSpeed Insights, CrUX Core Web Vitals with 25-week history, Search Console performance, URL Inspection, Indexing API, GA4 organic traffic, NLP entity analysis for E-E-A-T, YouTube video search for embedding, and Google Ads Keyword Planner. Progressive feature…

AgriciDaniel/claude-blog · 155 tokens

banana

Direct, generate, edit, compare, and review visual assets with current Google Gemini image models. Use for image creation, image editing, reference-based consistency, product and character visuals, text-bearing graphics, grounded diagrams, video-derived images, and multi-model image portfolios.

AgriciDaniel/banana-claude · 55 tokens