session-end

session-end is a skill for Claude Code, Codex from will-pagane/claude-superdev-harness. It costs 0 tokens per session (2,148 once invoked), scanned A, original, MIT.

A session-closing workflow for finished branch work. A branch is a separate line of code changes, and the workflow can take it through committing, pushing, merging, and cleanup.

In plain words
What is it for?
Use it when finished work needs to be committed, migrated, deployed, pushed, merged into the default branch, and cleaned up.
Why use it?
It gathers the final repository tasks into one controlled close-out process instead of leaving branches, worktrees, or pending changes behind.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one. Also seen: mentions CLAUDE.md; mentions AGENTS.md.

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/will-pagane/claude-superdev-harness/session-end
Any agent
npx skills add will-pagane/claude-superdev-harness --skill session-end
Clone the repo
git clone --depth 1 https://github.com/will-pagane/claude-superdev-harness

Made for: Claude Code, Codex.

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 session-end

README.md
[![agentmods](https://agentmods.dev/badge/skills/will-pagane/claude-superdev-harness/session-end.svg)](https://agentmods.dev/skills/will-pagane/claude-superdev-harness/session-end)
Your own site
<a href="https://agentmods.dev/skills/will-pagane/claude-superdev-harness/session-end"><img src="https://agentmods.dev/badge/skills/will-pagane/claude-superdev-harness/session-end.svg" alt="Measured on agentmods" height="20"></a>
Per session 0 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 2,148 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.00000 $0.02148
Opus 5 $0.00000 $0.01074
Sonnet 5 $0.00000 $0.00430
Haiku 4.5 $0.00000 $0.00215

Measured yesterday against content hash bb458cccdcf1, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-05, from the pricing page.

Security

Grade A, and why

session-end 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 yesterday.

The scan reads SKILL.md. This mod also ships 14 executable files (scripts/gate.ps1, scripts/gate.sh, verify/all-gates.sh, …), listed below but not scanned — reading those needs a real analyzer, not pattern matching.

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.

skills/session-end/SKILL.md · 107 lines

How it starts

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

Session End

Finished branch in → merged default branch, production in sync, pendings recorded, branch and worktree gone.

Announce at start: "Using session-end to take <branch> from pushed to merged and cleaned up."

This run has two human gates (Step 0 ambiguity, and escalations). Everything between them happens without asking. That is a gate count, not a duration promise.

Authorization

The invocation authorizes, for the work already on this branch only: committing what is left, applying its migrations, deploying its edge functions, writing the pendings file, pushing, opening the PR, merging into the default branch, and deleting the branch + worktree afterwards. This is the one place where the standing "never open a PR / never merge without an explicit ask" rule is satisfied — the invocation is the ask.

Not authorized: new features, refactors, fixing unrelated findings, force-pushing, squashing, rewriting history, deleting anything outside the branch and its worktree.

Also not authorized — tree-mutating recovery. git stash with a merge or rebase in progress, git reset --hard, git rm --cached -r .. These destroy state you did not create. Observed: a git stash push -u with MERGE_HEAD live and six hand-resolved files staged, and a git rm --cached -r . && git reset --hard on a shared main checkout with no human gate. Both are escalations, not moves.

Out-of-scope arguments: refuse and hand off — do not do the cheap part anyway. Invoked with "take enough pendings to make three specs", the right answer is that /session-build owns that, and to stop. A run that refused the execution but cut the three specs regardless got the reply "pode rodar o session build em cima" — the specs were unwanted work in the wrong skill.

Human gates — only these:

  1. Step 0 — confirm the branch and the pendings list when either is ambiguous.
  2. Escalations — a red gate triaged as regression, an unapplied migration, a semantic merge conflict, an unverified deploy, a mid-run instruction that contradicts project law.
  3. Nothing else. Do not ask "should I continue?" between steps, and do not invent a third gate.

Read the full file on GitHub · 107 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. yesterday Changed · -182 lines scan B → A bb458cccdcf1
  2. 5d ago First seen · 289 lines · 0 tokens per session scan B dc91a852eab7

Subscribe to this mod's changes

session-end is a skill published in the GitHub repository will-pagane/claude-superdev-harness (4 stars, last pushed 3d ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 2,148 tokens. 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

release-engineering

Plan and verify software releases with versioning, changelogs, release branches, feature flags, canaries, migration gates, rollback, deployment checks, and release readiness. Use when preparing a release, shipping a risky PR, coordinating app/backend/database rollout, recovering from a bad deploy, or defining release…

majiayu000/spellbook · 69 tokens

release

Autonomously cut a Rove (@sma1lboy/rove) release end-to-end — detect the semver bump from pending changesets (flagging an upstream minor you didn't intend), run the release gates, bump/tag/push via scripts/release.sh, then poll the GitHub Actions Release workflow with gh until npm publish completes, diagnosing CI…

Sma1lboy/rove · 155 tokens

changelog-generator

Draft Rove release notes as Changesets. Writes user-facing entries as .changeset/.md files for @sma1lboy/rove (consumed into packages/kobe/CHANGELOG.md at release time). Use when the user asks for "changelog", "release notes", "what changed", "add a changeset", or before cutting a version. Enforces Rove's no-soft-wrap…

Sma1lboy/rove · 101 tokens

prepare-release

End-to-end release automation — reads commits since last tag, infers semver bump, drafts changelog, creates release PR, merges it, waits for CI green, tags, and monitors the Docker build to completion. Use when the user says: prepare release, cut a release, bump version, create release PR, ship a new version, tag a…

jpicklyk/task-orchestrator · 95 tokens

lov-release-via-cicd

Configure CI/CD and publish new versions for Node, Tauri, Vite, shell, and GitHub Release projects. Use when the user asks to setup release workflow, publish a new version, verify macOS signing/notarization, recover a failed GitHub Release, or mentions "release-via-cicd", "配置并发布新版", "签名", "notarize", "GitHub Release"…

lovstudio/skills · 98 tokens

dsh-plugin-publisher

Publish a validated DSH plugin package (@deepseek-ai/dsh- or @lovstudio/dsh-) to npm, git, or tarball channels and verify it loads in the DeepSeek Harness. Use when the user asks to publish, release, or ship a plugin. 触发:发布插件 / 上架插件 / release dsh 插件。.

lovstudio/skills · 82 tokens