Session Handoff Document
thedotmack/claude-mem
Writes a HANDOFF.md capturing goal, state, files, failed attempts and next steps so a fresh agent session can continue exactly where this one stopped.
项目交接:把长任务的目标、有效决定、真实进度、关键文件和下一步整理成接手材料,让新对话核对后继续,避免重述和两边同时改。用户说“保存一下进度”“整理交接”“开个新对话接着做”“读 PROJECTSTATE 继续上次”时使用;宿主注入 project-handoff…
$ npx skills add duoduoler-ops/Table-skills --skill project-handoff -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install duoduoler-ops/Table-skills project-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/duoduoler-ops/Table-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/project-handoff .claude/skills/project-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 "project-handoff" agent skill from https://github.com/duoduoler-ops/Table-skills/tree/main/project-handoff into .claude/skills/project-handoff/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "project-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/duoduoler-ops/Table-skills/tree/main/project-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 duoduoler-ops/Table-skills --skill project-handoff -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install duoduoler-ops/Table-skills project-handoff --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/duoduoler-ops/Table-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/project-handoff .agents/skills/project-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 "project-handoff" agent skill from https://github.com/duoduoler-ops/Table-skills/tree/main/project-handoff into .agents/skills/project-handoff/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "project-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 duoduoler-ops/Table-skills --skill project-handoff -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install duoduoler-ops/Table-skills project-handoff --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/duoduoler-ops/Table-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/project-handoff .cursor/skills/project-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 "project-handoff" agent skill from https://github.com/duoduoler-ops/Table-skills/tree/main/project-handoff into .cursor/skills/project-handoff/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "project-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/duoduoler-ops/Table-skills.git --path project-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 duoduoler-ops/Table-skills --skill project-handoff -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install duoduoler-ops/Table-skills project-handoff --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/duoduoler-ops/Table-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/project-handoff .gemini/skills/project-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 "project-handoff" agent skill from https://github.com/duoduoler-ops/Table-skills/tree/main/project-handoff into .gemini/skills/project-handoff/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "project-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 duoduoler-ops/Table-skills project-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 duoduoler-ops/Table-skills --skill project-handoff -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/duoduoler-ops/Table-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/project-handoff .github/skills/project-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 "project-handoff" agent skill from https://github.com/duoduoler-ops/Table-skills/tree/main/project-handoff into .github/skills/project-handoff/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "project-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 duoduoler-ops/Table-skills --skill project-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 duoduoler-ops/Table-skills project-handoff --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/duoduoler-ops/Table-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/project-handoff .opencode/skills/project-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 "project-handoff" agent skill from https://github.com/duoduoler-ops/Table-skills/tree/main/project-handoff into .opencode/skills/project-handoff/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "project-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.
project-handoff项目交接:把长任务的目标、有效决定、真实进度、关键文件和下一步整理成接手材料,让新对话核对后继续,避免重述和两边同时改。用户说“保存一下进度”“整理交接”“开个新对话接着做”“读 PROJECTSTATE 继续上次”时使用;宿主注入 project-handoff…
Project Handoff is an agent skill from duoduoler-ops/Table-skills. 项目交接:把长任务的目标、有效决定、真实进度、关键文件和下一步整理成接手材料,让新对话核对后继续,避免重述和两边同时改。用户说“保存一下进度”“整理交接”“开个新对话接着做”“读 PROJECTSTATE 继续上次”时使用;宿主注入 project-handoff 压缩计数、到达压缩检查点、准备交付一个可验收阶段、发现已核实的目标或版本混淆时,也用它评估是否建议交接。提醒、保存、新建接续是三个独立动作,互不授权。
Its SKILL.md is about 540 tokens, which your agent loads only when the skill is triggered. The skill folder holds 13 other files, including scripts, reference files and assets (for example `agents/openai.yaml`, `assets/PROJECT_STATE.template.md` and `hooks/claude-settings.example.json`).
The repository describes itself as: 自用 AI Skills 合集:项目交接与网页替身,让长任务接续更清楚,让独立重任务交给网页 ChatGPT。 The licence is MIT.
Read from SKILL.md and the folder at commit fb60c35. 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.
Ships 2 files in scripts/ (Python), which the agent can run.
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
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.
Project Handoff loads about 538 tokens when it runs, and up to ~5.2k if it reads all its reference files. Until then it costs about 56 tokens; SKILL.md has 70 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); the scripts in this folder are not scanned.
The full file from duoduoler-ops/Table-skills at commit fb60c35, republished under its MIT licence (© duoduoler-ops). 70 words, ~538 tokens.
.claude/skills/project-handoff/SKILL.md (or your agent's skills folder). This skill also uses 8 other files; get the full folder from GitHub.让接手对话拿到当前成果、有效决定和明确的第一步,不用用户重述,也不会两个对话同时改。适用于代码、文档、研究和媒体制作。提醒、保存、新建接续是三个动作,各有各的授权:提醒不写文件,保存不开新对话,新建只在用户确认了具体提议之后。
| 信号 | 做什么 | 读哪页 |
|---|---|---|
用户要求保存进度、整理交接,或只输入本宿主的交接入口(Codex $project-handoff,Claude Code /project-handoff) | 保存材料,交付路径和可复制的开场白。笼统的“交接一下”也只到这一步 | 保存、自动接续与恢复「保存」 |
| 用户明确要求新建并继续,或确认了写明“保存、在指定目录新建并打开、核对后继续”的提议 | 保存后自动接续。同一次明确授权不逐步重问 | 同页「自动接续」 |
| 用户指定交接来源并要求继续 | 恢复:先只读核对,再按已有授权推进。只要求查看就只读 | 同页「恢复」 |
| 宿主注入 project-handoff 计数或待评估的检查点;准备交付一个可独立验收的阶段;进入下一大段工作;发现已核实的目标、版本或约束混淆 | 按下节评估是否建议交接 | 本页;有计数器时再读 计数、评估与最终核验 |
讨论、审查、修改本 Skill 本身不触发以上任何动作;正好在检查点时,按参考页登记为不适用。
只用当前任务已有的事实判断:用户决定、验证结果、文件和任务的真实状态、宿主的压缩事件。不翻私人历史,不为评估另调模型,也不按聊天轮数或感觉估算压缩次数。
| 条件 | 看什么 | 为什么 |
|---|---|---|
| 安全位置 | 当前操作已收拢;成果、验证和后台任务的归属都能定位;该用户验收的不写成已验收 | 接手时不能有半截写入或没人认领的任务,否则两边都以为对方在管 |
| 明确后续 | 目标、范围、下一步和完成标准清楚,新对话能确定第一步 | 没有第一步的交接只是存档,新对话还得回头问用户 |
| 切换收益 | 能说出这次的具体好处,例如已结束的大量探索和后续执行分开、已纠正的旧路线不再带入 | 换对话有成本:重读材料、丢隐性上下文。只有旧上下文会拖累下一步时才值得 |
决定提醒且用户尚未回应时,建议放在最终答复正文第一段,在成果列表和任务卡之前,以“交接建议:”开头,一段话写清具体原因、接续第一步和确认后会做的动作。放最前,是因为用户通常只看开头和结尾,计数器的最终核验也只认首段;进度消息不算展示。不要放进引用、示例或代码块。例句只示范格式,不是项目事实:
交接建议:资料筛选已完成,后续进入方案编写,适合只带入已选资料与约束。确认后我会保存材料,在同一项目原目录新建并打开任务,核对后继续编写方案。
没有自动新建能力的宿主,把“新建并打开”改成实际能做的保存和手动入口。已交付的建议不在以后每轮重贴;用户已回应、建议失效或任务已无后续时撤下。
© duoduoler-ops, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 8 other files (scripts, references, assets) in project-handoff of duoduoler-ops/Table-skills.
Open the folder on GitHubat commit fb60c35
Project 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 |
|---|---|---|---|---|---|---|
| Project Handoff this skillduoduoler-ops/Table-skills | 393 | — | ~538 | Automated safety check: Pass | MIT | |
| Session Handoff Documentthedotmack/claude-mem | 99k | — | ~1.4k | Automated safety check: Pass | Apache-2.0 | |
| Handoffnexu-io/open-design | 100k | — | ~547 | Automated safety check: Pass | Apache-2.0 | |
| Handoffalirezarezvani/claude-skills | 28k | — | ~2.5k | Automated safety check: Notes | MIT | |
| Handoffalirezarezvani/claude-skills | 28k | — | ~532 | Automated safety check: Pass | MIT | |
| Session Handoff Writercodewhale-hq/Codewhale | 41k | — | ~1.2k | Automated safety check: Pass | MIT |
thedotmack/claude-mem
Writes a HANDOFF.md capturing goal, state, files, failed attempts and next steps so a fresh agent session can continue exactly where this one stopped.
nexu-io/open-design
Push the run's accepted artifact to a downstream collaboration surface (cli, other code agents, cloud, desktop) and stamp the artifact manifest with the export target.
alirezarezvani/claude-skills
Compact the current conversation into a handoff document for another agent to pick up.
alirezarezvani/claude-skills
Compact the current conversation into a handoff document for another agent to pick up.
codewhale-hq/Codewhale
Writes a compact handoff note from real git and CI state so the next session or a teammate can pick up the work without rebuilding the context.
sickn33/agentic-awesome-skills
A skill your agent uses when context approaches capacity, before /clear or /compact, when switching tasks, or when ending a coding session: produces a structured handoff artifact for the next session.
项目交接:把长任务的目标、有效决定、真实进度、关键文件和下一步整理成接手材料,让新对话核对后继续,避免重述和两边同时改。用户说“保存一下进度”“整理交接”“开个新对话接着做”“读 PROJECTSTATE 继续上次”时使用;宿主注入 project-handoff…. Project Handoff is an agent skill from duoduoler-ops/Table-skills.
Run `npx skills add duoduoler-ops/Table-skills --skill project-handoff -a claude-code`. Or copy the skill folder (project-handoff in duoduoler-ops/Table-skills) into .claude/skills/project-handoff in your project. Claude Code loads it when a task matches its description.
Run `npx skills add duoduoler-ops/Table-skills --skill project-handoff -a codex`. Or copy the skill folder (project-handoff in duoduoler-ops/Table-skills) into .agents/skills/project-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 duoduoler-ops/Table-skills --skill project-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/project-handoff, .gemini/skills/project-handoff, .github/skills/project-handoff and .opencode/skills/project-handoff in your project.
Going by SKILL.md and its folder, Project Handoff needs Python for the scripts in its folder. Our summary lists: Python 3.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. 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. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Project 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 538 tokens (SKILL.md is roughly 2.2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 4.7k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Project Handoff: Session Handoff Document (thedotmack/claude-mem, 99k stars), Handoff (nexu-io/open-design, 100k stars), Handoff (alirezarezvani/claude-skills, 28k stars) and Handoff (alirezarezvani/claude-skills, 28k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
duoduoler-ops (a GitHub user) maintains it in duoduoler-ops/Table-skills, which has 393 GitHub stars. The repository was last updated on October 4, 2026.
Source: duoduoler-ops/Table-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.