weekly-summary

weekly-summary is a skill for Claude Code from nicknisi/sessions. It costs 60 tokens per session (927 once invoked), scanned A, original, MIT.

A weekly report of your AI coding work across projects, based on sessions from the past seven days.

In plain words
What is it for?
Use it to see projects worked on, completed tasks, important decisions, discoveries, and recurring themes in your week.
Why use it?
It removes the need to revisit separate coding sessions and remember what happened each day.

Skill for Claude Code

Written for Claude Code: shipped in a Claude Code plugin. Also seen: mentions subagents.

Part of the sessions plugin — 7 skills, 1 MCP server shipped together

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/nicknisi/sessions/weekly-summary
Any agent
npx skills add nicknisi/sessions --skill weekly-summary
Clone the repo
git clone --depth 1 https://github.com/nicknisi/sessions

Made for: Claude Code.

Or install sessions, the plugin that ships this one along with the rest of its 7 skills, 1 MCP server.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for weekly-summary

README.md
[![agentmods](https://agentmods.dev/badge/skills/nicknisi/sessions/weekly-summary.svg)](https://agentmods.dev/skills/nicknisi/sessions/weekly-summary)
Your own site
<a href="https://agentmods.dev/skills/nicknisi/sessions/weekly-summary"><img src="https://agentmods.dev/badge/skills/nicknisi/sessions/weekly-summary.svg" alt="Measured on agentmods" height="20"></a>
Per session 60 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 927 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.1 $0.00060 $0.00927
Opus 5 $0.00030 $0.00464
Sonnet 5 $0.00012 $0.00185
Haiku 4.5 $0.00006 $0.00093

Measured 6d ago against content hash 6570d07a156b, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-06, from the pricing page.

Security

Grade A, and why

weekly-summary 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 6d 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.

plugin/skills/weekly-summary/SKILL.md · 59 lines

How it starts

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

Generate a weekly summary of the user's AI coding sessions.

Steps

  1. Get the date range. Calculate the start date (7 days ago) and end date (today) in YYYY-MM-DD format.

  2. Fetch the digest. Call get_activity_digest with:

    • startDate: 7 days ago
    • endDate: today
    • detail: "highlights" (first + last user messages for substantive sessions)
  3. Review the digest. Read the response directly — do NOT send it to a subagent. The highlights mode is compact enough to process inline. For each day, identify:

    • Which projects were worked on and what was accomplished
    • Key decisions, pivots, or discoveries (visible in the first/last message pairs)
    • Recurring themes across projects
  4. Drill into key sessions (optional). If any sessions look particularly significant (high message count, interesting topic) but the highlights don't capture enough detail, call get_session_messages on those specific sessions (up to 5) using the filePath from the digest.

  5. Write the summary. Structure it as:

    Week of {start} - {end}

    By the numbers: {total sessions} sessions, {total messages} messages across {project count} projects.

    Day-by-day: For each day with activity, write 2-4 bullet points capturing the most significant work. Be specific — name projects, features, and outcomes. Skip days with no meaningful activity.

    Highlights: The 3-5 most significant accomplishments across the entire week.

    Themes: Recurring work streams or focus areas (e.g., "SDK development", "infrastructure", "bug fixes").

  6. Surface new memory candidates. Run sessions memory mine --all --since-last --json, then sessions memory pending --json. The mine picks up only transcripts that changed since the last run, so this is cheap; --all is deliberate — a weekly summary spans every project, not whichever repo you happen to be sitting in.

    --all advances the watermark for every repo, not just this one. That is the point (nothing gets skipped), but it means a later sessions memory mine --since-last inside any single repo reports nothing changed until that repo's transcripts move again — this step has already mined them. Say nothing about it here; it is noted so the interaction is not rediscovered as a bug.

    pending prints {"count": N, "preview": [{"id", "text"}]}. If the count is zero, say nothing. Do not add an empty section, do not write "no new memory", do not mention that you checked. Most weeks have nothing, and a recurring empty section trains the user to skim past the whole summary.

    Otherwise close the summary with a short block: the count, up to three candidate texts from the preview (the preview holds five; showing three is deliberate), and one line saying to run /memory to triage. Do not triage here and never approve, reject, or snooze anything — this is a nudge, not the workflow.

    This step must never damage the summary. Unlike /memory, which stops loudly when the binary is missing, this one fails silently: if sessions is not installed, either command exits non-zero, or the output does not parse, skip the block entirely and finish the summary as written. The summary already succeeded before this step ran.

Read the full file on GitHub · 59 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. 6d ago First seen · 59 lines · 60 tokens per session scan A 6570d07a156b

Subscribe to this mod's changes

weekly-summary is a skill published in the GitHub repository nicknisi/sessions (30 stars, last pushed 4d ago), licensed MIT. It adds 60 tokens to every session and 927 once invoked, about $0.0003 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-30.