paseo-handoff
getpaseo/paseo
Hand off tasks to another agent with full context preservation and zero-context briefing.
What is paseo-handoff?
Transfers the current task—including context, decisions, failed attempts, and constraints—to a fresh agent. Use when the user requests a handoff or wants to pass work to another agent. The receiving agent starts with zero context, so this skill creates a self-contained briefing that preserves task semantics.
- Parses user arguments to determine provider, worktree preference, and task description
- Generates a self-contained handoff prompt covering task, context, relevant files, current state, attempted approaches, decisions, acceptance criteria, and constraints
- Creates a new agent via Paseo with detached relationship and appropriate workspace placement
- Supports handoffs to current workspace, new worktrees, or existing worktrees
- Preserves task intent (investigate-only, fix, refactor) in the briefing
How to install paseo-handoff
npx skills add https://github.com/getpaseo/paseo --skill paseo-handoff- Paseo skill must be installed and readable
- Access to ~/.paseo/orchestration-preferences.json for provider resolution (unless user explicitly specifies a provider)
How to use paseo-handoff
- 1.Invoke the skill when the user says 'handoff', 'hand off', 'hand this to', or requests passing work to another agent
- 2.Parse the user's arguments to extract: provider (explicit or from preferences), worktree preference, and task description
- 3.Gather current task context: what's done, what failed, relevant files, decisions made, and constraints
- 4.Construct a self-contained handoff prompt using the template (Task, Context, Relevant files, Current state, What was tried, Decisions, Acceptance criteria, Constraints)
- 5.Create the receiving agent via Paseo with [Handoff] title, the briefing as initial prompt, and appropriate workspace configuration
- 6.Provide the user with the agent ID and instructions for following along
Use cases
- Hand off a partially-completed task to a specialist agent with different capabilities
- Transfer investigation work to another agent when you've gathered sufficient context
- Delegate a fix or refactor to a fresh agent in an isolated worktree
- Pass styling or UI work to an agent optimized for that domain
- Continue work in a new branch without losing context or decision history
- Developers coordinating multi-agent workflows
- Teams using Paseo for agent orchestration
- Users needing to isolate work in worktrees while maintaining full context
- Anyone delegating tasks between agents with different specializations
paseo-handoff FAQ
Read ~/.paseo/orchestration-preferences.json and use the `impl` preference, or `ui` if the task is styling-only.
No. Don't wait by default—the user decides whether to follow along or move on. Tell them the agent ID and how to follow along.
If the user mentions 'worktree' or 'in a worktree', create one via Paseo with a short branch name derived from the task. Use workspace configuration with kind 'create' and branch-off source.
Use workspace configuration with kind 'existing' and the workspaceId returned from the previous create_worktree call.
Investigate-only tasks should include 'DO NOT edit files.' Fixes should say 'implement the fix.' Refactors should say 'refactor, not rewrite.' Carry the exact intent in the briefing.
Full instructions (SKILL.md)
Source of truth, from getpaseo/paseo.
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. Before choosing a provider, read ~/.paseo/orchestration-preferences.json unless the user explicitly named a provider in this request. Do not create the receiving agent until you have read it.
Parsing arguments
- Provider — explicit user request first; otherwise resolve from
implpreference (oruiif the task is styling-only). - Worktree — "in a worktree" / "worktree" → create a worktree via Paseo with a short branch name derived from the task, based on the current branch.
- 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
Create the agent via Paseo with a [Handoff] <task> title, the briefing as initial prompt, and relationship: { kind: "detached" }.
Use workspace for placement:
- No worktree:
workspace: { kind: "current" }. - Worktree:
workspace: { kind: "create", source: { kind: "worktree", target: { kind: "branch-off", worktreeSlug: "<short-task-slug>", branchName: "fix/<short-task-slug>" } } }. - Existing worktree already created by
create_worktree:workspace: { kind: "existing", workspaceId: "<returned-workspace-id>" }.
Do not use workspace: { kind: "current", cwd: "<worktreePath>" } to place a handoff in a worktree; that keeps the agent in the caller's workspace with only a different runtime cwd.
Leave notifyOnFinish omitted unless the user explicitly wants no callback.
Handoff agents are siblings/root agents, not your subagents. They must survive you being archived and must not appear in your subagent track.
Don't wait by default — the user decides whether to follow along or move on. Tell them the agent ID and how to follow along (the paseo skill explains).
Related skills
More from getpaseo/paseo and the wider catalog.

paseo-loop
Run an agent loop with worker/verifier cycles until an exit condition is met.

paseo-orchestrate
Deprecated. Renamed to paseo-epic. Loading this skill redirects to paseo-epic and tells the user.

paseo
Manage AI coding agents and worktrees—create, prompt, and supervise agents on your machine.

paseo-committee
Form a two-agent committee to step back, diagnose root causes, and plan solutions when stuck or tunnel-visioning.

sentry-react-setup
Setup Sentry in React apps. Use when asked to add Sentry to React, install @sentry/react, or configure error monitoring, error boundaries, session replay, or browser tracing for React applications.

sentry-android-sdk
Full Sentry SDK setup for Android with error monitoring, tracing, profiling, and session replay.