transfer
Skill1 starsChanged 4 months agoApache-2.0View on GitHub
Start a fresh Claude Code session from the current Codex thread transcript. Args: --wait, --background, --model <model>, --effort <auto|low|medium|high|xhigh|max>, --source <path>, --prompt-file <path>. Prints claude --resume <session_id>.
2 other projects use a version of this.
Adopted by
Most recently taken up by
- aibtcdev/skillstheir own version, first seen Oct 26, 2026
- HotRedMat/ensembratheir own version, first seen Oct 9, 2026
Other versions2 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 2
- aibtcdev/skills★ 11same name
- HotRedMat/ensembra★ 1same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
The file
Show its rules and text
We split this skill into the rules it gives an agent
18 rules. About 0 are common, 6 are distinctive, and 12 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈6
Distinctive · estimate
This author's own choices. Worth a look.
12
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 14
Do not answer the request inline in the main Codex thread.
- Distinctive: line 18
Use this skill when the user wants to hand off the current Codex thread history to a fresh Claude Code session.
- Very specific: line 29
If the user explicitly invoked $cc:transfer or Claude Code Transfer, do not keep the work in the main Codex thread.
- Very specific: line 30
Treat --background and --wait as Codex-side execution controls only.
- Very specific: line 31
If the user explicitly passed --background, run the transfer subagent in the background.
- Very specific: line 32
If the user explicitly passed --wait, run in the foreground.
- Distinctive: line 33
If neither flag is present, prefer foreground.
- Distinctive: line 35
Do not inspect the repo, read files, poll job status, or summarize the result in the same turn.
- Very specific: line 36
If the companion reports missing setup or authentication, direct the user to $cc:setup.
- Very specific: line 41
If the app-server does not return usable transcript item payloads, use the documented fallback by passing --source <path> or --prompt-file …
- Very specific: line 46
Never satisfy background transfer by launching claude-companion.mjs transfer itself as a detached shell process.
- Very specific: line 47
Prefer fork_context: false for the built-in transfer child.
- Distinctive: line 49
Before spawning the built-in child, emit one short commentary update that records the attempted subagent model selection.
- Very specific: line 50
If gpt-5.4-mini is unavailable with an explicit model-availability error, retry once with model: "gpt-5.4" and the same reasoning_effort: …
- Distinctive: line 51
Do not use that fallback for arbitrary failures.
- Very specific: line 52
Remove --background and --wait before spawning the subagent.
- Distinctive: line 58
run that command as one blocking foreground shell-tool call, not as a background terminal/session
- Very specific: line 59
if the available shell tool is exec_command, call it once in non-interactive mode and wait for command exit in that same call
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
<!--
Copyright 2026 Sendbird, Inc.
SPDX-License-Identifier: Apache-2.0
-->Claude Code Transfer
By default, hand this skill off through Codex's built-in default subagent.
Do not answer the request inline in the main Codex thread.
Spawn exactly one transfer forwarding subagent whose only job is to run one companion transfer command and return that stdout unchanged.
Foreground transfer responses must be that subagent's output verbatim.
Use this skill when the user wants to hand off the current Codex thread history to a fresh Claude Code session.
Resolve <plugin-root> as two directories above this SKILL.md file. Always run the companion from that active plugin root:
node "<plugin-root>/scripts/claude-companion.mjs" transfer ...
Raw slash-command arguments:
$ARGUMENTS
Supported arguments: --wait, --background, --model <model>, --effort <auto|low|medium|high|xhigh|max>, --source <path>, --prompt-file <path>
Main-thread routing rules:
- If the user explicitly invoked
$cc:transferorClaude Code Transfer, do not keep the work in the main Codex thread. Delegate it. - Treat
--backgroundand--waitas Codex-side execution controls only. Never forward either flag toclaude-companion.mjs transfer. - If the user explicitly passed
--background, run the transfer subagent in the background. - If the user explicitly passed
--wait, run in the foreground. - If neither flag is present, prefer foreground. Transfer should only bootstrap a new Claude session and print a resume command.
- Forward
--model,--effort,--source, and--prompt-fileunchanged. - Do not inspect the repo, read files, poll job status, or summarize the result in the same turn.
- If the companion reports missing setup or authentication, direct the user to
$cc:setup.
Transcript source:
- The companion first resolves the current Codex thread id from the plugin's session routing context, specifically the
CODEX_THREAD_IDvalue surfaced bybackground-routing-context/session-routing-context. - It reads the current thread transcript through Codex app-server history APIs:
thread/readandthread/items/list. - If the app-server does not return usable transcript item payloads, use the documented fallback by passing
--source <path>or--prompt-file <path>with a transcript file. Those two flags are aliases for transfer transcript input. - The companion wraps transcript content in explicit untrusted-input delimiters before sending it to Claude Code.
Subagent launch:
- By default, use Codex's
spawn_agenttool withagent_type: "default". - Never satisfy background transfer by launching
claude-companion.mjs transferitself as a detached shell process. Do not use&,nohup, detachedspawn, or any equivalent direct background process launch from the parent. - Prefer
fork_context: falsefor the built-in transfer child. The parent should pass a self-contained forwarding message instead of replaying the full parent thread. - The built-in transfer path must set
model: "gpt-5.4-mini"andreasoning_effort: "medium"onspawn_agent. - Before spawning the built-in child, emit one short commentary update that records the attempted subagent model selection.
- If
gpt-5.4-miniis unavailable with an explicit model-availability error, retry once withmodel: "gpt-5.4"and the samereasoning_effort: "medium". - Do not use that fallback for arbitrary failures.
- Remove
--backgroundand--waitbefore spawning the subagent.
Forwarding message:
- The built-in transfer path must use a compact strict forwarding message. It must:
- identify the child as a transient forwarding worker for Claude Code transfer
- include exactly one shell command to run
- run that command as one blocking foreground shell-tool call, not as a background terminal/session
- if the available shell tool is
exec_command, call it once in non-interactive mode and wait for command exit in that same call - tell the child to return that command's stdout text exactly, with no preamble, summary, code fence, trimming, normalization, or punctuation changes
- tell the child to ignore stderr progress chatter such as
[cc] ...lines and preserve only the stdout-equivalent final result text - tell the child not to inspect the repository, read files, grep, or perform the transfer directly
- say that auth/setup failures from the companion must be returned unchanged
Execution:
- Foreground: spawn the transfer subagent, wait for it to finish, and return its stdout.
- Background: spawn the transfer subagent without waiting for it in this turn. The subagent still runs the companion
transfercommand in the foreground inside its own thread.
Output:
- Foreground: return the subagent's companion stdout exactly as-is. The expected successful output is exactly
claude --resume <session_id>. - Background: do not wait for the subagent output. After launching it, tell the user
Claude Code transfer started in the background. Check the subagent session or $cc:status for progress; it will print a claude --resume command when ready.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

