paseo-handoff — Claude Code skill: what it does, how to install
Transfers the current task to a fresh agent with context, decisions, and constraints. Useful when moving work into a clean session or an isolated git worktree.
npx skills add getpaseo/paseo --skill paseo-handoff -a claude-codeWhat paseo-handoff does
The skill compiles active session context into a self-contained briefing for a receiving agent that starts with zero context. It records the imperative task goals, relevant files, current project state, failed attempts, and constraints, such as marking an investigation read-only.
Before launching, the skill inspects the base paseo skill and invokes list_profiles to match the task against configured agent notes. When requested, it provisions an environment using isolation: "worktree" on a dedicated branch. It then executes create_agent with a [Handoff] <task> title and attaches the briefing prompt.
The initiating agent does not poll or wait for the new agent to finish. The spawned subagent stays visible in your subagent track until you manually detach it.
What it helps with
- hand off a task to a fresh agent with documented context and decisions
- prevent duplicate work by detailing failed attempts and acceptance criteria
- isolate task execution inside a dedicated git worktree
- match agent profiles to task requirements using
list_profiles
Example prompts for the agent
- Hand off this task to a new agent in a worktree
- Handoff this debugging session to the backend agent profile
- Pass this work to another agent: finish the fix without modifying tests
How to install paseo-handoff
1Skills CLI (Vercel)
npx skills add getpaseo/paseo --skill paseo-handoff -a claude-code2Manually: put the files in place
~/.claude/skills/paseo-handoff/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/paseo-handoff/
1Skills CLI (Vercel)
npx skills add getpaseo/paseo --skill paseo-handoff -a codex2Manually: put the files in place
.agents/skills/paseo-handoff/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add getpaseo/paseo --skill paseo-handoff -a cursor2Manually: put the files in place
.cursor/skills/paseo-handoff/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install getpaseo/paseo paseo-handoff2Manually: put the files in place
.github/skills/paseo-handoff/SKILL.md1Skills CLI (Vercel)
npx skills add getpaseo/paseo --skill paseo-handoff -a gemini-cli2Platform CLI
gemini skills install https://github.com/getpaseo/paseo --path skills/paseo-handoffManually: put the files in place
.devin/skills/paseo-handoff/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add getpaseo/paseo --skill paseo-handoff -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
From the same set4
The whole set →Similar
Questions about paseo-handoff
How to install paseo-handoff in Claude Code?
Run npx skills add getpaseo/paseo --skill paseo-handoff -a claude-code. You can also place it directly at ~/.claude/skills/paseo-handoff/SKILL.md.
What does paseo-handoff do?
It packages task background, modified files, decisions, and constraints into a briefing prompt, then launches a new agent via create_agent.
What is required before spawning a receiving agent?
The skill requires the base paseo skill and must call list_profiles to inspect available profiles and their notes before agent creation.
Source text
SKILL.md · Apache-2.0
--- name: paseo-handoff description: Hand off the current task to another agent with full context. Use when the user says "handoff", "hand off", "hand this to", or wants to pass work to another agent. user-invocable: true --- # Handoff Skill Transfer the current task — context, decisions, failed attempts, constraints — to a fresh agent. The receiving agent starts with **zero context**, so the handoff prompt must be a self-contained briefing. **User's arguments:** $ARGUMENTS ## Prerequisites Read the **paseo** skill. Call `list_profiles` before choosing the receiving agent. Do not create it until you have read the configured profiles and their `notes`. ## Parsing arguments 1. **Agent profile** — explicit profile name first; otherwise choose the profile whose `notes` best match the work. Materialize it into `create_agent` as described by the **paseo** skill. If no profile fits, use Paseo's provider discovery fallback. 2. **Isolation** — "in a worktree" / "worktree" → create a workspace with `isolation: "worktree"`, using a short branch name derived from the task. 3. **Task description** — anything else the user said. ## The handoff prompt The receiving agent has zero context. Include: ``` ## Task [Imperative description.] ## Context [Why this task exists, required context.] ## Relevant files - `path/to/file.ts` — [what it is and why it matters] ## Current state [What's done, what works, what doesn't.] ## What was tried - [Approach] — [why it failed or was abandoned] ## Decisions - [Decision — rationale] ## Acceptance criteria - [ ] [Criterion] ## Constraints - [Must-not / must-preserve] ``` **Preserve task semantics.** Investigate-only → "DO NOT edit files." Fix → "implement the fix." Refactor → "refactor, not rewrite." Carry the user's exact intent. ## Launch Prepare the handoff in a dedicated workspace: 1. Select the current workspace or call `create_workspace` with the requested isolation. 2. Call `create_agent` with a `[Handoff] <task>` title, the briefing as initial prompt, and the selected `workspaceId` when explicit placement is needed. 3. Return the agent and workspace to the user, explaining that it remains in your subagent track until they detach it manually. Do not encode independence as a create mode and do not invoke CLI or wire-level detach operations. Detach is a user gesture in the subagents track. Do not wait or poll for the agent to finish.
© getpaseo · Apache-2.0 · getpaseo/paseo