/handoff
Generate a self-contained hand-off brief so ANOTHER agent (a fresh session, Codex, Antigravity, any external reviewer) can pick up the exact state and review it - a plan, a branch, the last commits, a PR, or one file - or implement an approved plan (--execute). Prints one
> /plugin marketplace add restarter/lets-workflow > /plugin install lets@lets-workflow
How it fires
How this command gets triggered: by you, by Claude, or both.
- Fires itselfClaude auto-loads it when your prompt matches the work.
- You can call itInvoke it directly when you want it.
- Slash command
/handoff
Context preview
What this command does when you run it.
Generate a self-contained hand-off brief so ANOTHER agent (a fresh session, Codex, Antigravity, any external reviewer) can pick up the exact state and review it - a plan, a branch, the last commits, a PR, or one file - or implement an approved plan (--execute). Prints one
Command definition
handoff.mddescription: Generate a self-contained hand-off brief so ANOTHER agent (a fresh session, Codex, Antigravity, any external reviewer) can pick up the exact state and review it - a plan, a branch, the last commits, a PR, or one file - or implement an approved plan (--execute). Prints one pasteable brief, or delivers it (--send types it into an agent's Orca tab, --open opens a new Codex tab for it, --codex runs it through Codex headless) and brings the report back, verified against the code.
argument-hint: "[PR-url-or-number|--pr <id>|--local|--staged|--last-commit|--branch|--plan [<path>]|--file <path>|--commits <N>|--range <a>..<b>] [--spec <path>|none] [--execute] [--send [<tab>]|--open [<agent>]|--codex] [--fix]"
Handoff - Brief for Another Agent
Produce ONE message the user copies into another agent. That agent has NO context: not this conversation, not the task, not even which repo. The brief must be complete on its own.
- The brief is the deliverable - review nothing yourself and edit no file of the repository (`--fix` is the one exception); `--send` / `--open` / `--codex` hand it on and bring the report back (Step 7)
- `--execute` turns a plan's brief from "review this" into "implement this": the receiving agent writes code and commits, this session still edits nothing (Step 5b)
- `--fix` applies the report's verified fixes in THIS session when nothing needs deciding (7.4, the `apply-fixes` skill); the user typing it is the write authorization for that run - edits only, never a commit
- Target selectors mirror `/lets:review`, so the same flag reviews here or hands off there; works in any git repo, with or without LETS
> **IMPORTANT:** If the spec below invokes any deferred tool (e.g. `AskUserQuestion`), you MUST load and call it as specified. Never skip the call, never substitute a default answer of your own — the tool invocation is part of the contract. This is critical.
Usage
/lets:handoff # infer the target from context; asks only if genuinely ambiguous
/lets:handoff <PR-url-or-number> # GitHub or Bitbucket PR
/lets:handoff --pr <id-or-url> # alias of the bare form above
/lets:handoff --local # uncommitted changes
/lets:handoff --staged # staged changes only
/lets:handoff --last-commit # last commit
/lets:handoff --branch # full branch vs the merge branch (three-dot, like a PR)
/lets:handoff --plan # newest plan in .lets/plans/
/lets:handoff --plan <path> # a specific plan file
/lets:handoff --file <path> # one file
/lets:handoff --commits <N> # handoff-only: the last N commits (a fix round)
/lets:handoff --range <a>..<b> # handoff-only: an explicit range
/lets:handoff --spec <path> # what the reviewer judges against (or a bare task id)
/lets:handoff --spec none # deliberately no spec - no spec line, no caveat
/lets:handoff --plan --codex # run the brief through Codex headless (read-only), relay + verify its report
/lets:handoff --branch --send # type the brief into an agent tab of this worktree (pick one)
/lets:handoff --branch --send antigravity # ... the Antigravity tab (an agent name, or a fragment of the tab title)
/lets:handoff --plan --open # a new Codex tab (read-only) in this worktree gets the brief
/lets:handoff --execute --send codex # the open Codex tab implements the newest plan of this task
/lets:handoff --execute --plan <path> --send # ... a specific plan; pick the tab
/lets:handoff --branch --codex --fix # ... then apply the verified fixes here when nothing needs deciding
Selectors match `/lets:review`, with two deliberate differences: `--commits` / `--range` are **handoff-only** (review has no target for "the commits that answer a review round"), and `--pr` is kept as an alias because it is the spelling this tool shipped with. Review's output modifiers `--json` and `--workflow` are **not** implemented here.
`--send [<tab>]`, `--open [<agent>]` and `--codex` are the three delivery lanes (Step 7) - an open agent tab, a new visible session, a headless background run - combinable with any target and mutually exclusive. `--execute` is a brief kind, not a lane: it takes only a plan and goes only through `--send` (Step 1). `--fix` is a relay modifier: it needs a lane and a review brief (Step 1). `/lets:review-handoff` is a deprecated alias of this command (the old name), to be removed in a future release.
Step 1: Determine the target
- Delivery modifiers first: `--codex`, `--send [<tab>]` (`<tab>` = the next token when it does not start with `--`: a `term_` handle, an agent name such as `codex` / `antigravity`, or a fragment of the tab title), `--open [<agent>]` (`<agent>` = the next token when it does not start with `--`; default `codex`), the brief kind `--execute`, and the relay modifier `--fix`. Strip them, then apply the target rules to the rest.
- PR URL/number, or `--pr <id-or-url>` -> **PR mode**. `--local` / `--staged` / `--last-commit` / `--branch` / `--commits N` / `--range a..b` -> **local mode**. `--plan [path]` -> **plan mode**. `--file <path>` -> **file mode**.
- **Host resolution.** A `github.com` URL -> `gh`; a `bitbucket.org` URL -> `bbb`, whose PR number sits in the `/pull-requests/<n>` segment, not github's `/pull/<n>`; a bare number -> `{LETS_PR_FLOW}`. **When `{LETS_PR_FLOW}` is empty** - the normal state outside a LETS project, where the hook emits only four keys - fall through to the forge named by the `origin` URL Step 2 prints. Only when neither names a github or bitbucket host: stop and say a PR hand-off needs one.
- **No argument -> infer, do not ask by default.** Take the target from the user's sentence next to the command ("цих правок" -> the just-committed fixes; "цієї гілки" -> `--branch`; "план" -> `--plan`; "коміта" -> `--last-commit`) and from what just happened in the session. Only when genuinely ambiguous, ask **one** `AskU
Read more
description: Generate a self-contained hand-off brief so ANOTHER agent (a fresh session, Codex, Antigravity, any external reviewer) can pick up the exact state and review it - a plan, a branch, the last commits, a PR, or one file - or implement an approved plan (--execute). Prints one pasteable brief, or delivers it (--send types it into an agent's Orca tab, --open opens a new Codex tab for it, --codex runs it through Codex headless) and brings the report back, verified against the code. argument-hint: "[PR-url-or-number|--pr <id>|--local|--staged|--last-commit|--branch|--plan [<path>]|--file <path>|--commits <N>|--range <a>..<b>] [--spec <path>|none] [--execute] [--send [<tab>]|--open [<agent>]|--codex] [--fix]"
Handoff - Brief for Another Agent
Produce ONE message the user copies into another agent. That agent has NO context: not this conversation, not the task, not even which repo. The brief must be complete on its own.
- The brief is the deliverable - review nothing yourself and edit no file of the repository (`--fix` is the one exception); `--send` / `--open` / `--codex` hand it on and bring the report back (Step 7)
- `--execute` turns a plan's brief from "review this" into "implement this": the receiving agent writes code and commits, this session still edits nothing (Step 5b)
- `--fix` applies the report's verified fixes in THIS session when nothing needs deciding (7.4, the `apply-fixes` skill); the user typing it is the write authorization for that run - edits only, never a commit
- Target selectors mirror `/lets:review`, so the same flag reviews here or hands off there; works in any git repo, with or without LETS
> **IMPORTANT:** If the spec below invokes any deferred tool (e.g. `AskUserQuestion`), you MUST load and call it as specified. Never skip the call, never substitute a default answer of your own — the tool invocation is part of the contract. This is critical.
Usage
/lets:handoff # infer the target from context; asks only if genuinely ambiguous /lets:handoff <PR-url-or-number> # GitHub or Bitbucket PR /lets:handoff --pr <id-or-url> # alias of the bare form above /lets:handoff --local # uncommitted changes /lets:handoff --staged # staged changes only /lets:handoff --last-commit # last commit /lets:handoff --branch # full branch vs the merge branch (three-dot, like a PR) /lets:handoff --plan # newest plan in .lets/plans/ /lets:handoff --plan <path> # a specific plan file /lets:handoff --file <path> # one file /lets:handoff --commits <N> # handoff-only: the last N commits (a fix round) /lets:handoff --range <a>..<b> # handoff-only: an explicit range /lets:handoff --spec <path> # what the reviewer judges against (or a bare task id) /lets:handoff --spec none # deliberately no spec - no spec line, no caveat /lets:handoff --plan --codex # run the brief through Codex headless (read-only), relay + verify its report /lets:handoff --branch --send # type the brief into an agent tab of this worktree (pick one) /lets:handoff --branch --send antigravity # ... the Antigravity tab (an agent name, or a fragment of the tab title) /lets:handoff --plan --open # a new Codex tab (read-only) in this worktree gets the brief /lets:handoff --execute --send codex # the open Codex tab implements the newest plan of this task /lets:handoff --execute --plan <path> --send # ... a specific plan; pick the tab /lets:handoff --branch --codex --fix # ... then apply the verified fixes here when nothing needs deciding
Selectors match `/lets:review`, with two deliberate differences: `--commits` / `--range` are **handoff-only** (review has no target for "the commits that answer a review round"), and `--pr` is kept as an alias because it is the spelling this tool shipped with. Review's output modifiers `--json` and `--workflow` are **not** implemented here.
`--send [<tab>]`, `--open [<agent>]` and `--codex` are the three delivery lanes (Step 7) - an open agent tab, a new visible session, a headless background run - combinable with any target and mutually exclusive. `--execute` is a brief kind, not a lane: it takes only a plan and goes only through `--send` (Step 1). `--fix` is a relay modifier: it needs a lane and a review brief (Step 1). `/lets:review-handoff` is a deprecated alias of this command (the old name), to be removed in a future release.
Step 1: Determine the target
- Delivery modifiers first: `--codex`, `--send [<tab>]` (`<tab>` = the next token when it does not start with `--`: a `term_` handle, an agent name such as `codex` / `antigravity`, or a fragment of the tab title), `--open [<agent>]` (`<agent>` = the next token when it does not start with `--`; default `codex`), the brief kind `--execute`, and the relay modifier `--fix`. Strip them, then apply the target rules to the rest.
- PR URL/number, or `--pr <id-or-url>` -> **PR mode**. `--local` / `--staged` / `--last-commit` / `--branch` / `--commits N` / `--range a..b` -> **local mode**. `--plan [path]` -> **plan mode**. `--file <path>` -> **file mode**.
- **Host resolution.** A `github.com` URL -> `gh`; a `bitbucket.org` URL -> `bbb`, whose PR number sits in the `/pull-requests/<n>` segment, not github's `/pull/<n>`; a bare number -> `{LETS_PR_FLOW}`. **When `{LETS_PR_FLOW}` is empty** - the normal state outside a LETS project, where the hook emits only four keys - fall through to the forge named by the `origin` URL Step 2 prints. Only when neither names a github or bitbucket host: stop and say a PR hand-off needs one.
- **No argument -> infer, do not ask by default.** Take the target from the user's sentence next to the command ("цих правок" -> the just-committed fixes; "цієї гілки" -> `--branch`; "план" -> `--plan`; "коміта" -> `--last-commit`) and from what just happened in the session. Only when genuinely ambiguous, ask **one** `AskU
A development workflow plugin for Claude Code Stop babysitting your AI. Start shipping with it.
Repo: restarter/lets-workflow
Other commands on lets-workflow.
backlog
Backlog review and cleanup - multi-agent backlog review, quick no-agent pulse (--fast), or interactive triage cleanup
end
End a work session - a settlement pass that reconciles uncommitted / unpushed work + session context into git, the tracker, and a session snapshot file.…
execute
Execute implementation plan from /lets:plan - inline in native plan mode, or delegated to named implementer subagents you review and correct

