handoff
GitHub生成紧凑的会话交接证据,包含目标、完成工件路径及未决风险,供下游上下文直接使用。禁止推断行动或修改状态,确保事实可验证。
Trigger Scenarios
Install
npx skills add boshu2/agentops --skill handoff -g -y
SKILL.md
Frontmatter
{
"name": "handoff",
"context": {
"intent": {
"mode": "none"
},
"window": "inherit",
"intel_scope": "none"
},
"consumes": [],
"metadata": {
"tier": "session",
"effects": [
"write_handoff_artifact",
"read_git_state",
"read_clock"
],
"graph_root": true,
"disposition": "keep_specialist",
"capabilities": [
"handoff"
],
"dependencies": [],
"canonical_status": "canonical"
},
"produces": [
"caller-selected handoff path or .agents\/ao\/handoff\/*"
],
"practices": [
"adr",
"wiki-knowledge-surface",
"code-complete"
],
"context_rel": [],
"description": "Write compact caller-authored session evidence without choosing continuation. Triggers: \"handoff\", \"write compact session handoff\".",
"hexagonal_role": "supporting",
"output_contract": "caller-authored handoff artifact",
"skill_api_version": 1
}
Handoff
A handoff works because the next context can act on exact paths and facts without trusting the author's memory; any line the reader cannot verify from the artifact itself is decoration, not handoff.
Write a factual session artifact that another context can read. Include:
- caller-supplied goal and summary;
- completed artifacts and exact evidence paths;
- unresolved facts or risks;
- optional caller-supplied continuation text;
- best-effort read-only repository identity when useful.
Do not infer a next action, select work, assign ownership, consume the artifact, change tracker or Git state, classify a verdict, govern retries, or restart a runtime. Reading a handoff must not mutate it.
Named failure mode — optimistic closure: writing "done" for work whose evidence path does not exist, so the next context builds on a phantom.
Anti-pattern: narrating the session chronologically ("first I tried…, then…"). Corrective: record end-state facts — artifacts, paths, unresolved risks — and drop the journey.
Write the artifact to the caller-owned handoff location when the caller names
one; otherwise it is explicit requested proof under .agents/ao/handoff/.
There is no permanent generic handoff store — an artifact nobody consumes is
scratch, not evidence.
The ao session handoff and ao session rehydrate commands implement the same
boundary for JSON artifacts under .agents/ao/handoff/. The skill may write
Markdown when that better serves a human, but the content semantics remain
identical.
Earlier default compatibility
JSON artifacts already stored under .agents/handoff/ remain read-only
evidence. ao session handoff writes new JSON to .agents/ao/handoff/, while
ao session rehydrate searches both directories and selects the newest
lexical handoff id; if an identical filename exists in both, the canonical
.agents/ao/handoff/ copy wins. No command moves or deletes the legacy files.
Human-authored Markdown consumers receive the exact path, so they do not need
to scan either default. This owning skill contract is the compatibility
authority; no separate migration artifact is required.
Return the artifact path and stop.
Version History
-
7b07a7d
Current 2026-08-19 21:59
新增兼容性说明,明确旧版 .agents/handoff/ 目录为只读证据,新版写入 .agents/ao/handoff/,并规定同名文件优先使用新版。
- 3f402e5 2026-07-24 22:07


