From knack
Use when the user is wrapping up a session and wants a copy-paste prompt to continue the work in a fresh session. Generates a self-contained handoff prompt in the session language. Triggers: handoff, 핸드오프, 인계 프롬프트, handoff prompt 작성해줘, 다음 세션에서 시작, 새 세션에서 이어서, 복붙해서 시작, 클립보드 복사.
How this skill is triggered — by the user, by Claude, or both
Slash command
/knack:handoffThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
**Language rule**: The generated handoff prompt body and all communication with
Language rule: The generated handoff prompt body and all communication with the user follow the language the session is conducted in. Skill definition files and internal instructions are in English.
Flow: 1. Classify session state → 2. Collect facts → 3. Verify references → 4. Output + clipboard
SKILL.md holds the full workflow. Read ONE reference file (the matching template) at Step 4 — never load all three.
The next session cannot see this conversation. Never write "위에서 말한 대로", "아까 논의한", or any reference to the current chat. Every fact the next session needs must be in the handoff body.
Every file path and commit hash in the handoff must pass Step 3 verification. An unverified reference must be fixed or removed — a dead reference derails the next session.
End with one executable first step ("Task 1부터 진행", "X 파일 Read부터"). "이어서 해줘" is forbidden.
Target 15–40 lines. Too short starves context; too long won't be read.
Review the current conversation and pick ONE type:
| Signal | Type | Template |
|---|---|---|
| Spec/plan approved & committed, execution not started | execution | references/execution-handoff.md |
| Implementation in progress (some tasks/commits done, more remain) | midwork | references/midwork-handoff.md |
| Research/analysis/discussion, decisions not yet final | research | references/research-handoff.md |
If ambiguous, do NOT guess — ask once via AskUserQuestion (a deferred tool;
load it first with ToolSearch(query="select:AskUserQuestion", max_results=1)).
Use these options and descriptions verbatim:
From the conversation:
From git (run in the working directory):
git rev-parse --abbrev-ref HEAD # branch
git rev-parse --short HEAD # HEAD commit
git status --porcelain # dirty files
Non-git rule: if the working directory is not a git repository, gracefully skip the branch/HEAD/dirty sections (and the dirty-file rule below) — file path verification in Step 3 still applies.
Dirty-file rule: if git status --porcelain is non-empty, STOP before
generating. Warn the user and ask via AskUserQuestion: 커밋하고 진행 /
handoff에 더티 상태 명시 / 무시. If the user picks "무시", treat it the same
as "더티 상태 명시" for the handoff body — list the dirty files; the only
difference is proceeding without further discussion. A handoff that hides
uncommitted state breaks the next session.
For EVERY path and hash you intend to write into the handoff:
test -f <path> && echo OK || echo MISSING # files (test -d for dirs)
git cat-file -t <hash> # commits — expect "commit"
Drop or fix anything that fails. Do not silently keep it.
pbcopy <<'HANDOFF_EOF'
<handoff body exactly as printed>
HANDOFF_EOF
Guides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.
npx claudepluginhub yehyeokbang/knack --plugin knack