Orca CLI
stablyai/orca
Operate Orca-managed worktrees, folder contexts, terminals, repos, automations, artifacts, skill sharing, worktree comments, and Orca's embedded browser…
Use at the end of a work session on a DAE feature, so the next session picks up cleanly.
$ npx skills add swingerman/engineer --skill session-summary -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install swingerman/engineer session-summary --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/swingerman/engineer.git skills-src && mkdir -p .claude/skills && cp -r skills-src/engineer/skills/session-summary .claude/skills/session-summary && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "session-summary" agent skill from https://github.com/swingerman/engineer/tree/master/engineer/skills/session-summary into .claude/skills/session-summary/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "session-summary", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/swingerman/engineer/tree/master/engineer/skills/session-summaryType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add swingerman/engineer --skill session-summary -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install swingerman/engineer session-summary --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/swingerman/engineer.git skills-src && mkdir -p .agents/skills && cp -r skills-src/engineer/skills/session-summary .agents/skills/session-summary && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "session-summary" agent skill from https://github.com/swingerman/engineer/tree/master/engineer/skills/session-summary into .agents/skills/session-summary/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "session-summary", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add swingerman/engineer --skill session-summary -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install swingerman/engineer session-summary --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/swingerman/engineer.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/engineer/skills/session-summary .cursor/skills/session-summary && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "session-summary" agent skill from https://github.com/swingerman/engineer/tree/master/engineer/skills/session-summary into .cursor/skills/session-summary/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "session-summary", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/swingerman/engineer.git --path engineer/skills/session-summary--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add swingerman/engineer --skill session-summary -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install swingerman/engineer session-summary --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/swingerman/engineer.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/engineer/skills/session-summary .gemini/skills/session-summary && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "session-summary" agent skill from https://github.com/swingerman/engineer/tree/master/engineer/skills/session-summary into .gemini/skills/session-summary/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "session-summary", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install swingerman/engineer session-summaryInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add swingerman/engineer --skill session-summary -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/swingerman/engineer.git skills-src && mkdir -p .github/skills && cp -r skills-src/engineer/skills/session-summary .github/skills/session-summary && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "session-summary" agent skill from https://github.com/swingerman/engineer/tree/master/engineer/skills/session-summary into .github/skills/session-summary/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "session-summary", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add swingerman/engineer --skill session-summary -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install swingerman/engineer session-summary --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/swingerman/engineer.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/engineer/skills/session-summary .opencode/skills/session-summary && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "session-summary" agent skill from https://github.com/swingerman/engineer/tree/master/engineer/skills/session-summary into .opencode/skills/session-summary/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "session-summary", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
session-summaryUse at the end of a work session on a DAE feature, so the next session picks up cleanly.
Session Summary is an agent skill from swingerman/engineer. Use at the end of a work session on a DAE feature, so the next session picks up cleanly. Triggers — "/engineer.session-summary", "wrap up the session", "write the session log", "I'm stopping for the day".
Its SKILL.md is about 1k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Agent Workflows, covering Session handoff. The repository describes itself as: Disciplined Agentic Engineering — a methodology kit for Claude Code: acceptance-test-first specs, explicit checkpoints, and autonomy you can actually leave running. The engineer… The licence is MIT.
3 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 32947eb. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
gitFrom the folder's file list and the shell code blocks in SKILL.md.
Links to these hosts (documentation or services it may open):
notion.soFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Session Summary loads about 1k tokens when it runs. Until then it costs about 55 tokens; SKILL.md has 452 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from swingerman/engineer at commit 32947eb, republished under its MIT licence (© swingerman). 452 words, ~1,032 tokens.
.claude/skills/session-summary/SKILL.md (or your agent's skills folder).Write the per-session entry in a feature's session-log.md so the human can close the laptop and pick back up cleanly. The human-readable counterpart to the machine handoffs. checkpoint: null.
At the end of a work session on a feature. Three boundaries reach it without the human remembering to:
post-merge Step 6 auto-invokes it at autonomy medium/high.PreCompact hook; see ${CLAUDE_PLUGIN_ROOT}/examples/pre-compact-session-summary.md. This is the boundary where the pickup record matters most, because everything else about the session is about to be summarized away.Stop hook.Both hooks are project config, not part of this skill.
It is deliberately not invoked at every checkpoint exit: this is a per-session record, and several entries a day makes session-log.md useless for the one job it has — being readable when you come back cold.
Not for: mid-session (nothing's wrapping up); syncing the tracker (progress-log); per-skill records (each skill's own handoff).
${CLAUDE_PLUGIN_ROOT}/scripts/dae_resolve.py (see references/resolving.md). Scope = the feature(s) the session touched (default: current branch; multiple → an entry in each; none → nothing to log, stop).handoffs/*.md, git activity on the branch, and conversation context (decisions, problems, deferrals).features/NNN-<slug>/session-log.md:## Session — <ISO date> <start>–<end>
**Current state:** <which checkpoint, one line>
### Previous tasks (done this session)
- ...
### Current task
- <in progress at session end, if any>
### Next tasks
- <concrete, actionable, ordered>
### Open questions / blockers
- <or "None">Create the file with a # Session log — <title> heading if absent.
Tear down session-end infra. Run ${CLAUDE_PLUGIN_ROOT}/scripts/dae_infra.py teardown (no args = all entries with effective teardown: session-end or always). Default behavior leaves entries with teardown: leave-running (the per-entry default and the project-wide default we ship with) untouched — emulators are expensive to start, and the user typically wants them up across sessions while working on a feature. The teardown's JSON output goes into the session log as a one-line summary.
Branch cleanup if merged. If the current branch is not main/master, run git fetch origin --quiet then git merge-base --is-ancestor HEAD origin/HEAD (fallback origin/main). If the branch is merged, defer to /engineer.post-merge (the dedicated cleanup skill) — at autonomy high/medium auto-invoke it; at low surface the finding. If the branch is not merged, do nothing — the work isn't complete yet. Record the post-merge outcome in the session log.
Handoff — emit a summary.
Emit per ${CLAUDE_PLUGIN_ROOT}/references/handoff-summary.md. checkpoint: null; human_action_needed: no; recommended_next: the first "Next task" from the entry. (session-summary is not the handoff processor, so it follows the normal contract — no exemption.)
Three records, three readers: handoffs/ = machine, per-invocation; progress.md = machine-derived, glanceable; session-log.md = human, per-session, narrative. They don't duplicate — different granularity, different reader.
session-log.md in the storage layout, the session-log ↔ handoffs distinction (Section 5)engineer/scripts/dae_infra.py — invoked here at session end© swingerman, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in engineer/skills/session-summary of swingerman/engineer.
Open the folder on GitHubat commit 32947eb
Session Summary next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Session Summary this skillswingerman/engineer | 154 | — | ~1k | Automated safety check: Pass | MIT | |
| Orca CLIstablyai/orca | 87k | 2 repos | ~593 | Automated safety check: Pass | MIT | |
| Beads Task Memorygastownhall/beads | 28k | — | ~1.2k | Automated safety check: Pass | MIT | |
| Session History Searchslopus/happy | 24k | — | ~3.1k | Automated safety check: Pass | MIT | |
| Paseo Agent Handoffgetpaseo/paseo | 20k | 1 repos | ~606 | Automated safety check: Pass | Custom licence | |
| Memori Long-Term MemoryMemoriLabs/Memori | 17k | — | ~2k | Automated safety check: Notes | Custom licence |
stablyai/orca
Operate Orca-managed worktrees, folder contexts, terminals, repos, automations, artifacts, skill sharing, worktree comments, and Orca's embedded browser…
gastownhall/beads
Tracks multi-session work with dependencies in the bd issue tracker so the agent can find ready tasks and recover its context after conversation compaction.
slopus/happy
Searches past Claude Code, Codex and Cursor sessions and summarizes what was worked on, tried or decided, using extraction scripts instead of reading raw logs.
getpaseo/paseo
Hands off the current task, including context, decisions and failed attempts, to a fresh agent through Paseo by writing a self-contained briefing prompt and launching that agent.
MemoriLabs/Memori
Connects Claude Code to Memori Cloud for long-term memory, recalling stored context before substantive replies and saving new context afterward.
liwp/again
A skill your agent uses when working in a repository that uses bd or Beads for durable project task tracking, issue dependencies, blocker management, multi-session handoff, or shared work memory.
swingerman/engineer
A skill your agent uses to produce a risk-based refactor + test plan for recently-changed code on a diff/branch/PR by computing CRAP (complexity × untested) on changed methods.
swingerman/engineer
A skill your agent uses to add a third validation layer to the ATDD workflow — after acceptance tests verify WHAT and unit tests verify HOW, mutation testing verifies the tests actually catch bugs.
swingerman/engineer
A skill your agent uses to drive a bug fix from first report through close, with a "why didn't we catch it?" loop at the end.
swingerman/engineer
A skill your agent uses to drive feature work through the Acceptance Test Driven Development workflow — Given/When/Then specs before code, a project-specific test pipeline, and two parallel test…
swingerman/engineer
Use after a feature passes Light Verify (CP7), to prove the tests actually catch bugs and, where the code warrants it, to formally check its invariants — Checkpoint 8.
swingerman/engineer
Use at the start of a work session, or any time the question is "what should I pick up now" across the whole project.
Categories
Use at the end of a work session on a DAE feature, so the next session picks up cleanly. Session Summary is an agent skill from swingerman/engineer. Use at the end of a work session on a DAE feature, so the next session picks up cleanly.
Session Summary fits situations like: — /engineer.session-summary; wrap up the session; write the session log; im stopping for the day.
Run `npx skills add swingerman/engineer --skill session-summary -a claude-code`. Or copy the skill folder (engineer/skills/session-summary in swingerman/engineer) into .claude/skills/session-summary in your project. Claude Code loads it when a task matches its description.
Run `npx skills add swingerman/engineer --skill session-summary -a codex`. Or copy the skill folder (engineer/skills/session-summary in swingerman/engineer) into .agents/skills/session-summary in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add swingerman/engineer --skill session-summary -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/session-summary, .gemini/skills/session-summary, .github/skills/session-summary and .opencode/skills/session-summary in your project.
Going by SKILL.md and its folder, Session Summary needs the command-line tools its instructions call (git).
SKILL.md names 1 domain. As links in the text: notion.so. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Session Summary is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1k tokens (SKILL.md is roughly 4.1k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Session Summary: Orca CLI (stablyai/orca, 87k stars), Beads Task Memory (gastownhall/beads, 28k stars), Session History Search (slopus/happy, 24k stars) and Paseo Agent Handoff (getpaseo/paseo, 20k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
swingerman (a GitHub user) maintains it in swingerman/engineer, which has 154 GitHub stars. The repository holds 27 skills in this directory. The repository was last updated on September 23, 2026.
Source: swingerman/engineer on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.