agentsclimarketplace

Handoff

Skill zhpy2004/claude-codex-handoff/codex/skills/handoff

Seamlessly hand off work between Claude Code and OpenAI Codex via a shared HANDOFF.md document

Install
npx -y skills add zhpy2004/claude-codex-handoff --skill handoff

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Hand off the current work to another AI coding tool (Claude Code), or resume work that another tool handed off, via a structured HANDOFF.md document in the project root. Use when the user wants to switch between Codex and Claude Code mid-task, "hand off", "交接", "save progress for the other tool", "pick up / resume / 接续 where the other tool left off", or runs /handoff save or /handoff resume.

SKILL.md

4.0 KB, 950 tokens by cl100k_base, as published. Nobody here has run it

Handoff (Codex ↔ Claude Code)

Carry work progress between Codex and Claude Code through one shared, human-readable HANDOFF.md file at the project root. This skill only reads and writes that document — it never launches the other CLI.

This Codex instance writes tool: codex when it saves.

Modes

Read the argument passed with the invocation:

  • save (aliases: out, 保存, 交接) → Save the current work into HANDOFF.md.
  • resume (aliases: in, 接续, 恢复) → Resume from an existing HANDOFF.md.
  • (no argument) → Auto-detect: if HANDOFF.md exists and its tool: header is not codex, do resume; otherwise do save. State which mode you picked and why.

An explicit argument always wins over auto-detect.

The document lives at <cwd>/HANDOFF.md by default. If the user names a different path, use that.


Save

  1. Reconstruct the work. From this session, identify: the goal, what was done, key decisions, what works vs. what's still broken/partial, the concrete next steps, the relevant files, open questions, and how to verify.

  2. Ground it in git (best-effort; skip cleanly if not a repo). Run:

    • git rev-parse --abbrev-ref HEAD → branch
    • git rev-parse --short HEAD → commit
    • git status --short and git diff --stat → uncommitted changes for "Current state" Use real output; never invent a branch/commit.
  3. Write HANDOFF.md to the project root using the template below. Fill every section; if a section truly has nothing, write - (none) rather than deleting the heading.

  4. Confirm to the user: report the path written and the status, then print the pickup hint:

    In Claude Code, cd into this directory and run /handoff resume (or /handoff to auto-detect).

    Do not run claude yourself.


Resume

  1. Read HANDOFF.md from the project root. If it is missing, tell the user there is nothing to resume and stop (offer /handoff save instead).
  2. Reality-check against git (best-effort): run git status --short and git rev-parse --short HEAD. Compare the actual branch/commit/working tree to the document's header and "Current state". Explicitly flag any drift (e.g. doc says committed but the tree is dirty, or a different branch).
  3. Summarize for the user, concisely:
    • who handed off (tool / model / timestamp), the Goal, where it stands (status + Current state), and the Next steps.
  4. Continue from the first item under Next steps. Pause and confirm with the user before any large or destructive action (consistent with this being a deliberate, controlled handoff).

HANDOFF.md template

Keep this format identical to the Claude Code side so either tool can read it.

---
tool: codex
model: <model name, e.g. gpt-5.5>
timestamp: <ISO 8601, e.g. 2026-06-02T14:30:00Z>
cwd: <absolute project path>
git_branch: <branch or "n/a">
git_commit: <short sha or "n/a">
status: in_progress | blocked | done
---

# Handoff: <one-line task title>

## Goal
<what we're ultimately trying to achieve>

## Done so far
- <completed work and key decisions, in order>

## Current state
<what works, what's broken/partial, files touched (paths)>

## Next steps
1. <ordered, concrete, actionable — the receiving tool starts here>

## Key files & references
- `path/to/file` — <why it matters>

## Open questions / gotchas
- <blockers, assumptions, things that bit us>

## How to verify / run
<commands to build/test/run and confirm state>

What ships with it: 1 file

244 B alongside SKILL.md

agents/

Keep looking

Skills are one crate of 326,984. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.