Orca CLI
stablyai/orca
Operate Orca-managed worktrees, folder contexts, terminals, repos, automations, artifacts, skill sharing, worktree comments, and Orca's embedded browser…
Write a session handoff at the end of a session so the next session can start from where this one stopped without rereading the whole conversation.
$ npx skills add techwolf-ai/ai-first-toolkit --skill handoff -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install techwolf-ai/ai-first-toolkit handoff --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/techwolf-ai/ai-first-toolkit.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/session-tools/skills/handoff .claude/skills/handoff && 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 "handoff" agent skill from https://github.com/techwolf-ai/ai-first-toolkit/tree/main/plugins/session-tools/skills/handoff into .claude/skills/handoff/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "handoff", 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/techwolf-ai/ai-first-toolkit/tree/main/plugins/session-tools/skills/handoffType 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 techwolf-ai/ai-first-toolkit --skill handoff -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install techwolf-ai/ai-first-toolkit handoff --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/techwolf-ai/ai-first-toolkit.git skills-src && mkdir -p .agents/skills && cp -r skills-src/plugins/session-tools/skills/handoff .agents/skills/handoff && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "handoff" agent skill from https://github.com/techwolf-ai/ai-first-toolkit/tree/main/plugins/session-tools/skills/handoff into .agents/skills/handoff/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "handoff", 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 techwolf-ai/ai-first-toolkit --skill handoff -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install techwolf-ai/ai-first-toolkit handoff --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/techwolf-ai/ai-first-toolkit.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/plugins/session-tools/skills/handoff .cursor/skills/handoff && 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 "handoff" agent skill from https://github.com/techwolf-ai/ai-first-toolkit/tree/main/plugins/session-tools/skills/handoff into .cursor/skills/handoff/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "handoff", 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/techwolf-ai/ai-first-toolkit.git --path plugins/session-tools/skills/handoff--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 techwolf-ai/ai-first-toolkit --skill handoff -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install techwolf-ai/ai-first-toolkit handoff --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/techwolf-ai/ai-first-toolkit.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/plugins/session-tools/skills/handoff .gemini/skills/handoff && 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 "handoff" agent skill from https://github.com/techwolf-ai/ai-first-toolkit/tree/main/plugins/session-tools/skills/handoff into .gemini/skills/handoff/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "handoff", 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 techwolf-ai/ai-first-toolkit handoffInstalls 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 techwolf-ai/ai-first-toolkit --skill handoff -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/techwolf-ai/ai-first-toolkit.git skills-src && mkdir -p .github/skills && cp -r skills-src/plugins/session-tools/skills/handoff .github/skills/handoff && 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 "handoff" agent skill from https://github.com/techwolf-ai/ai-first-toolkit/tree/main/plugins/session-tools/skills/handoff into .github/skills/handoff/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "handoff", 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 techwolf-ai/ai-first-toolkit --skill handoff -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install techwolf-ai/ai-first-toolkit handoff --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/techwolf-ai/ai-first-toolkit.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/plugins/session-tools/skills/handoff .opencode/skills/handoff && 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 "handoff" agent skill from https://github.com/techwolf-ai/ai-first-toolkit/tree/main/plugins/session-tools/skills/handoff into .opencode/skills/handoff/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "handoff", 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.
handoffWrite a session handoff at the end of a session so the next session can start from where this one stopped without rereading the whole conversation.
Handoff is an agent skill from techwolf-ai/ai-first-toolkit. Write a session handoff at the end of a session so the next session can start from where this one stopped without rereading the whole conversation. Use when user says "handoff", "wrap up", "write a handoff", "end of session", "park this session", "save where we are", or to RESUME with "/handoff read", "pick up the handoff", "read the handoff". Writes a tight resume note (HANDOFF.md) into the working directory, not a full transcript. Scope is the current project's resume note only, not searching or summarizing…
Its SKILL.md is about 1.8k 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: Open-source Claude Code skills and Codex skills for AI-first work. Audit, re-engineer, and bootstrap projects with AI-first design principles. The licence is MIT.
4 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 2ee7841. 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.
No URLs in SKILL.md. Its commands use git, which can reach the network depending on how they are called.
From 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.
Handoff loads about 1.8k tokens when it runs. Until then it costs about 152 tokens; SKILL.md has 898 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 techwolf-ai/ai-first-toolkit at commit 2ee7841, republished under its MIT licence (© techwolf-ai). 898 words, ~1,773 tokens.
.claude/skills/handoff/SKILL.md (or your agent's skills folder).Capture the minimum a fresh session needs to continue this work: what it is, where it stands, the exact next action. The next session reads ONE file instead of replaying the conversation. Optimized for "start from here", not "understand everything that happened".
The handoff is written to the current working directory (the project/folder being worked in), as HANDOFF.md at its root. It travels with the project, not with any tool's memory.
Two modes:
Scope. Handoff only reads/writes the resume note in the current project directory. It does not search or summarize past sessions ("where did I work on X / when did I last do Y" is a different job). And a bare "resume" or "continue" may belong to a project-specific resume command rather than this skill — only fire handoff-read on the explicit phrasings above.
Do NOT re-run searches or re-read source files. Pull everything from what already happened in this session:
Skip the file if there's no meaningful open next action (a quick lookup, a finished one-off). A handoff isn't worth writing when there's nothing to start from. Offer it instead of forcing it.
Never put secrets (API keys, tokens, PII) or unresolved placeholders in the file.
pwd) and state the resolved target path in your report before writing. A handoff in the wrong project is worse than none.HANDOFF.md at the root of that directory.date flags differ across platforms: GNU/Linux date -d 'YYYY-MM-DD' +%A, macOS/BSD date -j -f '%Y-%m-%d' 'YYYY-MM-DD' '+%A'.Dense bullets, not prose. Cap each entry to ~25 lines. Template for one entry:
# Handoff — <YYYY-MM-DD> — <one-line theme>
<!-- ISO date: machine-parsed file, not user-facing display. Don't "fix" to DD-MM. -->
status: in-progress | blocked: <waiting on what> | ready-to-ship
branch: <branch> @ <short-sha> | tree: clean/dirty | running: <none / processes or servers still up>
## Goal
<one or two lines: what we are actually trying to achieve>
## Where it stands
- <bullet: done>
- <bullet: in progress>
- <bullet: not started>
## Start here (next session)
1. <the single most concrete first action>
2. <then this>
3. <then this>
## Verify
- <command the next session runs to confirm it works, and the expected result>
## Decisions made (don't relitigate)
- <decision> — because <why>
## Dead ends / out of scope (don't repeat)
- <thing tried that didn't work, or a line not to cross>
## Open questions
- <question blocking progress, or none>
## Artifacts
- <file path / branch / PR / command / link>Drop any section that's empty rather than leaving a placeholder.
Appending to an existing file: read it and split into entries on each # Handoff — H1 (that header is the only delimiter — do not split on ---). Write the new entry first, then the previous entries, newest-first. If the most recent existing entry has today's date, REPLACE it instead of stacking. Keep the 3 newest entries, drop the rest. After writing, re-read and confirm the entry count.
Print the handoff in chat (it's the deliverable, the file is the durable copy) and end with the path. Offer to start the next step now if it's actionable.
HANDOFF.md from the current working directory. If it's not there, say so and check one level up / common subfolders before giving up. If more than one is found, prefer the one in cwd and say which you used.git log -1 --format=%cd), or the date is well in the past, warn that the handoff may be stale before acting on it.HANDOFF.md lives in the project. If it's a git repo, check whether the file is already tracked (git ls-files HANDOFF.md). Default to keeping it out of version control: if there's a .gitignore, offer to add HANDOFF.md in the same step. Never stage or commit it without asking.© techwolf-ai, 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 plugins/session-tools/skills/handoff of techwolf-ai/ai-first-toolkit.
Open the folder on GitHubat commit 2ee7841
Handoff 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 |
|---|---|---|---|---|---|---|
| Handoff this skilltechwolf-ai/ai-first-toolkit | 132 | — | ~1.8k | Automated safety check: Pass | MIT | |
| Orca CLIstablyai/orca | 87k | 2 repos | ~593 | Automated safety check: Pass | MIT | |
| Coding Agent Session Findercode-yeongyu/oh-my-openagent | 70k | 1 repos | ~2.8k | Automated safety check: Pass | Custom licence | |
| 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 |
stablyai/orca
Operate Orca-managed worktrees, folder contexts, terminals, repos, automations, artifacts, skill sharing, worktree comments, and Orca's embedded browser…
code-yeongyu/oh-my-openagent
Finds, reads and reconstructs past coding-agent sessions across Codex, Claude, OpenCode, Senpi and many other local agent logs.
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.
techwolf-ai/ai-first-toolkit
Mine the user's Claude Code + Cowork session history into a structured task profile, what they do with AI, how often, how successfully where friction lives, then propose atomic skills that would…
techwolf-ai/ai-first-toolkit
Find context from past Claude Code (CLI) and Claude Cowork (desktop) sessions on this Mac.
techwolf-ai/ai-first-toolkit
Personal diagnosis of where your Claude Code + Cowork spend goes.
techwolf-ai/ai-first-toolkit
Write or develop a blog post. An agent skill from techwolf-ai/ai-first-toolkit.
techwolf-ai/ai-first-toolkit
Write or develop an opinion piece (opiniestuk/op-ed). An agent skill from techwolf-ai/ai-first-toolkit.
techwolf-ai/ai-first-toolkit
Analyze, re-engineer, or bootstrap projects to align with AI-first design principles.
Categories
Write a session handoff at the end of a session so the next session can start from where this one stopped without rereading the whole conversation. Handoff is an agent skill from techwolf-ai/ai-first-toolkit. Write a session handoff at the end of a session so the next session can start from where this one stopped without rereading the whole conversation.
Handoff fits situations like: user says handoff; write a handoff; park this session; save where we are.
Run `npx skills add techwolf-ai/ai-first-toolkit --skill handoff -a claude-code`. Or copy the skill folder (plugins/session-tools/skills/handoff in techwolf-ai/ai-first-toolkit) into .claude/skills/handoff in your project. Claude Code loads it when a task matches its description.
Run `npx skills add techwolf-ai/ai-first-toolkit --skill handoff -a codex`. Or copy the skill folder (plugins/session-tools/skills/handoff in techwolf-ai/ai-first-toolkit) into .agents/skills/handoff 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 techwolf-ai/ai-first-toolkit --skill handoff -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/handoff, .gemini/skills/handoff, .github/skills/handoff and .opencode/skills/handoff in your project.
Going by SKILL.md and its folder, Handoff needs the command-line tools its instructions call (git).
SKILL.md contains no URLs. Its commands use git, which can reach the network depending on how they are called. 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.
Handoff is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.8k tokens (SKILL.md is roughly 7.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 Handoff: Orca CLI (stablyai/orca, 87k stars), Coding Agent Session Finder (code-yeongyu/oh-my-openagent, 70k stars), Beads Task Memory (gastownhall/beads, 28k stars) and Session History Search (slopus/happy, 24k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
techwolf-ai (a GitHub organization) maintains it in techwolf-ai/ai-first-toolkit, which has 132 GitHub stars. The repository holds 29 skills in this directory. The repository was last updated on September 29, 2026.
Source: techwolf-ai/ai-first-toolkit on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.