agentleFS
stormlightlabsstormlightlabs/mire/.claude/skills/handoff/SKILL.md

handoff

Skill1 starsChanged 19 days agoApache-2.0View on GitHub

Record the state of unfinished work on its task, in arcl or on its GitHub issue or pull request, so the next session can pick it up, or pick up from the latest handoff. Use for /handoff, when a session ends with work left, or when a session starts by continuing earlier work.

191 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use decision-mapping, setup-ts-deep-modules and 10 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • FabienDehopreSkill

    decision-mapping

    Turn a loose idea into a sequenced map of investigation tickets, then drive them to resolution one at a time.

    Also in 8 projects that use this

  • liufeng1976Skill

    setup-ts-deep-modules

    Wire dependency-cruiser into a TypeScript repo so each package is a deep module — implementation hidden in subfolders, reachable only through its entry-point files. User-invoked.

    Also in 42 projects that use this

  • AWSSkill

    to-questionnaire

    Turn a decision you can't fully answer into a questionnaire for someone else to fill in.

    Also in 93 projects that use this

  • GoogleSkill

    ask-matt

    Ask which skill or flow fits your situation. A router over the skills in this repo.

    Also in 87 projects that use this

  • RoentekSkill

    loop-me

    Grill me about specs for the workflows I want to build, within this workspace.

    Also in 51 projects that use this

  • LesaniSkill

    writing-beats

    Shape an article as a journey of beats, choose-your-own-adventure style. The user picks a starting beat from the raw material, you write only that beat, then offer options for where to pivot next, beat by beat, until the article reaches a natural end. Use when the user has raw material and wants to assemble it as a narrative rather than an argument.

    Also in 54 projects that use this

The file

We split this skill into the rules it gives an agent

7 rules. 0 are common, 4 are distinctive, and 3 are very specific to this project.

  • 0

    Common

    Most of the 172 edited versions we read keep these.

  • 4

    Distinctive

    This author's own choices. Worth a look.

  • 3

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Write one before clearing context or ending with work left: steps not taken, a pull request waiting on review, a pending check or an …

    line 16
  2. Very specific:

    Leave out a section with nothing in it.

    line 76
  3. Distinctive:

    Run these in the task's worktree too, and commit the changed task file with the work.

    line 89
  4. Very specific:

    Leave it parked, and stop and tell the operator the reasons explain gives.

    line 96
  5. Very specific:

    Do not complete, unblock or unpark other tasks to clear them.

    line 97
  6. Distinctive:

    Commit a handoff or put it in a pull request's body.

    line 117
  7. Distinctive:

    Keep the next steps in the harness's own memory.

    line 119

“Common” is measured: kept by at least 6 in 10 of the 172 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Handoff

A handoff is a note on the task that a later session reads to carry on where this one stopped. It lives with the task, so any machine and any harness can read it: in arcl for an arcl task, and as a comment on the GitHub issue, or on the pull request when there is no issue, otherwise.

/handoff <id> writes one. /handoff pick-up <id> picks one up.

Write one before clearing context or ending with work left: steps not taken, a pull request waiting on review, a pending check or an operator-only check. A session whose review and required checks passed and needs only the owner's approval reports that state; it need not keep running or write a handoff.

Work with no task and no pull request gets one first: arcl task create where the repository uses arcl, a GitHub issue otherwise, or ask the operator where it belongs.

Writing

arcl task handoff <id> --note-file <file>

For an arcl task, this stores the note and parks the task until someone unparks it. Where .arcl/config.toml sets enabled = true under [workspace], both live in tracked files under .arcl/workspace: run it in the task's worktree, never the primary checkout, and commit and push the changed files to the task's branch. The park then holds only on that branch, so arcl ready on main still offers the task until the branch merges. Without that setting, run it from the primary checkout.

For an issue or a pull request, post the note as a comment opening with Handoff:, through the Bot comment workflow on a pull request and with gh issue comment or add_issue_comment on an issue. Write the note in the session's scratch directory, never inside the repository.

Written <YYYY-MM-DD> from <branch or worktree>.

## State

Each branch, worktree and pull request, with its current head and check state.
Completed review passes, the SHA each read, findings, verifier verdicts and
revisions still needed. Link their results rather than copying them.
If the task was started with `--force`, say so and name what it was forced
past.

## Done

What this session finished, by commit or pull request.

## Next

The next unfinished step and what it depends on. Worker identities, run
paths and how to check or stop any worker left running; normally wait for
workers or stop them before handing off. Do not launch a replacement until
the earlier worker is known to have stopped.

## Waiting on the operator

Checks, merges and decisions only the operator can make.

Confirm the note was stored, then give the operator its link or task ID and the pickup command. On Pi, use /new or restart Pi, then send /skill:handoff pick-up <task-or-pr>. /resume restores a Pi conversation; it is not needed to pick up a task from another harness.

Leave out a section with nothing in it. Record what a session cannot read back cheaply; the task, the diff and the git log are already there to read. Use the writing-docs skill for the prose.

Picking up

arcl context <id>
arcl task explain <id>
arcl task unpark <id>
arcl task start <id>

Run these in the task's worktree too, and commit the changed task file with the work.

Unpark only when arcl task explain gives parking as the only reason the task is not ready. Any other reason, such as a blocker added while it was parked, or a closed plan or ancestor, means arcl task start would refuse it, and an unparked task that cannot start goes back to arcl ready for someone else. Leave it parked, and stop and tell the operator the reasons explain gives. Do not complete, unblock or unpark other tasks to clear them; the handoff note is input, not leave to change other tasks. Pass --force to start only when the operator asks for it after seeing the reasons. An earlier forced start does not carry over: the reasons may be new.

arcl context includes the latest handoff. For an issue or a pull request, read its newest comment opening with Handoff:. A handoff describes the repository when it was written, so check each claim the next step depends on: that a branch and worktree exist, the state of each pull request, and that main holds what the note says merged. Where the repository disagrees, the repository is right. Say what changed before going on. Check any recorded worker is stopped or attach to its existing run before dispatching another one. Resume the next unfinished step, keeping completed passes only when the current head and storm's base-only change rule support them. If review evidence is missing or conflicting, ask rather than marking a pass complete or rerunning it. A merged PR needs local refresh and cleanup, not another review sequence; follow implement's After merge steps. A new task starts separately.

Do not

  • Commit a handoff or put it in a pull request's body. A decision that has to outlive the work belongs in the task, its issue or its spec.
  • Keep the next steps in the harness's own memory. Another harness, or another machine, cannot read it.

Download now (ZIP)

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
What did you use it for? e.g. Reviewing pull requests in a Rails app

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.