New to Claude Skills? Learn how to install them →

nexu-io on GitHub

Handoff

Free

Seamlessly push artifacts to collaboration surfaces.

Get this skill

Free · Opens the source repo

What Handoff does

Handoff is a specialized tool designed to facilitate the transfer of accepted artifacts to various downstream collaboration surfaces. In the context of an open design run, the process is not complete until the artifact is placed in a location where users can continue to work on it. This skill serves as the critical 'push it somewhere' stage, complementing the diff-review process by ensuring that artifacts are not just created but effectively integrated into the user's workflow.

The skill accepts an artifact set that has been approved through the diff-review process and allows users to specify an export target from a predefined list of surfaces. These surfaces include options such as CLI, desktop applications, web publishing, Docker containers, GitHub for pull requests, Figma for design files, and various code agents like Cursor, Claude Code, and Codex. This flexibility ensures that users can choose the most appropriate destination for their artifacts based on their next steps in the project.

Upon execution, Handoff updates the ArtifactManifest.exportTargets[] to reflect the history of where artifacts have been pushed, maintaining an append-only record. This feature is crucial for tracking the distribution and evolution of artifacts over time, which is particularly important in collaborative environments. The skill ensures that the user’s intent is respected, preventing any unintended pushes to surfaces not on the user's list, thereby maintaining control over the workflow.

Handoff is ideal for developers and designers who need to manage the lifecycle of their artifacts effectively. By providing a clear and structured method for pushing artifacts to various surfaces, it enhances collaboration and ensures that all team members can access the latest versions of their work. Whether you are working on code, design files, or documentation, Handoff simplifies the process of sharing and iterating on artifacts in a collaborative setting.

When to use it

Use Handoff when you need to push accepted artifacts to various platforms for further collaboration or iteration.

When not to use it

Avoid using Handoff if your workflow does not involve transferring artifacts to external surfaces or if you require a more complex artifact management system.

What you can build with it

Pushing Code to GitHub

After reviewing and accepting changes, use Handoff to push the code to GitHub for a pull request.

Exporting Designs to Figma

Transfer accepted design artifacts back to Figma for further editing and collaboration.

Creating Docker Containers

Wrap your accepted artifacts into Docker containers for deployment or testing purposes.

How to install Handoff

View source

1. Install with the skills CLI

npx skills add nexu-io/open-design/handoff --agent claude-code

2. Or install it manually

Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.

Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs

Inside SKILL.md

Written by nexu-io

Handoff

Spec §11.5.1 / §21.5: an OD run isn't done when the artifact exists — it's done when the artifact reaches the surface the user will keep iterating on. This atom is the "push it somewhere" stage. It's the natural counterpart to diff-review.

Inputs

  • The accepted artifact set (after diff-review resolved with decision: 'accept' | 'partial').
  • The export target (one of the surface enum values from ArtifactManifest.exportTargets[].surface).

Surfaces

surfacetypical follow-on
clithe user runs od files read against the project; no extra push
desktopopen the project in the OD desktop app
webpublish to the public marketplace via spec §13's od:// deep link
dockerwrap the artifact into a self-contained container (calls the §15.4 image)
githubopen a PR via od plugin publish --to <catalog>
figmaround-trip back into the figma-migration source file
code-agenthand off to Cursor / Claude Code / Codex sitting on top of the project cwd

Output

Updates ArtifactManifest.exportTargets[] with a row per push, appending — never replacing — so the artifact's distribution history stays append-only.

Convergence

The atom completes when at least one exportTargets[] entry matches the user's intent or the user explicitly skipped via the confirmation GenUI surface.

Anti-patterns the prompt fragment forbids

  • Pushing the artifact to a surface that wasn't on the user's intent list.
  • Mutating sourcePluginSnapshotId (it's immutable; the export trail is additive).
  • Treating figma as a no-op when the user's source was a Figma file — round-trip is the whole point of the figma-migration scenario.

Status

Implemented by the daemon runner in apps/daemon/src/plugins/atoms/handoff.ts. It records provenance, handoffKind, and export targets, then persists the updated artifact manifest.

Frequently asked questions about Handoff

Similar skills