원클릭으로
util-0-v2-handover
Generate a domain-aware handover document for LLM agent continuity. V2 standalone rewrite.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Generate a domain-aware handover document for LLM agent continuity. V2 standalone rewrite.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Brief pre-work alignment for any stage. Use before planning, coding, editing, reviewing, or delegating when the user asks you to understand the thesis, vibe, intent, current position, or direction of a request or existing thing. Returns 2–4 bold-labelled one-sentence observations and one short synthesis, then stops.
The single front door to the SDD pipeline (docs/plans/): research → plan → workshop → ADR → phase tasks → implement → progress → review → ship. Use when the user wants to plan, research, explore, specify or architect (now one atomic 'plan' step → one document: business spec + implementation plan), clarify, workshop, write an ADR, break a phase into tasks, implement or build a phase (optionally with a live review companion), update progress, code-review, or ship a plan (push + PR + watch checks) — or types /the-flow (or a legacy /plan-N command), or asks to start, resume, or adopt a plan flow. Guided mode (no args) coaches from durable on-disk state; direct jump runs one stage: /the-flow <id> <verb> [flags] — 1a explore, 1b plan (spec + plan in one doc; incl. clarify), 2c workshop, 3a adr, 5 tasks, 6 implement (--companion for live review), 6a progress, 7 review, 8 ship, 8c reconcile. Ids and verbs resolve alone; printed commands carry both.
Adaptive, high-signal post-action validation for whatever was just produced — unified plan, tasks, code change, workshop, legacy spec, or any artifact. Proves the claims that matter, reports only findings likely to change action, and adds independent critics only when risk or uncertainty earns them. Thesis- and consumer-aware; read-only through adjudication; compact verdict.
Pre-task token discipline. Use before any task when every read, tool call, line of reasoning, and output token must materially advance the stated goal or thesis, without weakening correctness or safety.
FlowSpace-first codebase research agent for parallel subagent exploration with structured output for parent orchestrator synthesis. Domain-aware v2.
Establish or refresh the project constitution and align the supporting norms documents before any planning phases begin. Re-entrant command that preserves user customizations during updates. Domain-aware v2.
| name | util-0-v2-handover |
| description | Generate a domain-aware handover document for LLM agent continuity. V2 standalone rewrite. |
Please deep think / ultrathink as this is a complex task.
A conversation+code compaction handover that another LLM can paste in and resume immediately. V2 adds optional domain context so the receiving agent understands domain boundaries, ownership, and contracts.
CLI /util-0-v2-handover --plan "" # optional; used only for pointers/anchors --phase "" # optional; defaults to current/latest --format "compact|lean|json" # default: compact --max 1400 # token cap (default 1400; hard stop 1600) --domain "" # optional; scope handover to a specific domain
Hard Rules
Memory only: Do not open files or call tools. Summarize from session memory.
No scaffolding noise: No “Read…”, “Working…”, diffs, mermaid, stack traces, or step logs.
Pointers, not payloads: If a detail isn’t remembered, write ? and add a pointer in Refs (plan §/dossier/log).
Status tokens: [ ] pending, [~] in‑progress, [x] complete, [!] blocked.
Context protection: Obey strict caps; keep strings short (≤12 words) and lists Top‑N only.
Deterministic: Natural sort for IDs; consistent key order.
Entity preservation: File paths, function names, task IDs, decision IDs, and CLI commands MUST be preserved VERBATIM. Never paraphrase these — copy exactly or write “?”.
Two‑Stage Generation (single response)
Internal consolidation (silent): Think forward — what will the receiving agent need to DO next?
Emit summary: Output one artifact in the requested format using the schema below. If near --max, drop lowest‑priority sections in the Trim Order.
Output Formats A) --format compact (default; tight and skimmable)
HOVR/2 microformat with short keys and capped lists. One fenced block; no extra text.
HOVR/2 m:{ts:"", plan:"<path or ?>", phase:"", feat:"<slug or ?>", prog:"<x/y or %>", domain:"<slug or ? — optional>"}
intent:{ primary:"", quotes:["", ...≤2], scope:["<in/out of scope>", ...≤3] }
timeline:{ just_completed:"<last task/action finished with ID>", current:"", last_actions:["", ...≤4] }
concepts:{keys:["<key concept [domain]>", ...≤6]}
code:{ files:["<abs path or ?>", ...≤8], hot:["@+n/-m or 'hot'>", ...≤6], domain_dirs:{"":"
", ...≤6} }decisions:{ adrs:[["ADR-####","", "affects ", "<domain — optional>", "<why ≤8w>"], ...≤4], other:[["","", "", "<why ≤8w>"], ...≤6] }
tasks:{ done:[ids…≤8], ip:[ids…≤5], pend:[ids…≤10], blk:[["",""], ...≤3], critdeps:[["T033","T032"], ...≤5] }
tests:{unit:"pass|fail|mixed|?", integ:"pass|fail|mixed|?", cov:"<%|?>", notes:"<≤80 chars>"}
risks:[["", "", "", "<domain — optional>"], ...≤5]
fails:[["","",""], ...≤4]
anchors:{ immutable:["", ...≤5], user_verbatim:["", ...≤3] }
next:{ task:"", tasks_file:"<absolute-path-to-tasks.md>", why:"", validate:["", ...≤3], cmd:"/the-flow 6 --phase "" --plan "" --task """ }
refs:{plan:" §<anchor|?>", tasks_file:"<absolute-path-to-tasks.md|?>", log:"<.../execution.log.md|?>", paths:["<key dir/file>", ...≤5]}
Trim Order (when hitting --max): code.hot → code.domain_dirs → fails → risks → concepts.keys → decisions.other → tasks.pend → code.files → tests.notes → refs.paths → anchors.immutable. Never trim: m, intent.primary, timeline.just_completed, timeline.current, next (including next.tasks_file), m.domain (when present), anchors.user_verbatim.
Budget guide (approximate): intent+timeline ≈20%, code+decisions ≈35%, tasks ≈20%, next+refs ≈15%, risks+concepts+fails+anchors ≈10%.
B) --format lean (readable Markdown, still tight)
Plan: • Phase: • Feature: • Progress: <x/y or %> • Domain: <slug or ?> • Generated:
/the-flow 6 --phase "<phase>" --plan "<path>" --task "<id>"C) --format json (expanded keys; mirrors compact/lean)
Keys: meta, intent, timeline, concepts, code, decisions, tasks, tests, risks, fails, anchors, next, refs. Values follow the same caps and semantics as compact.
Size & Priority Policy
Global cap: --max (default 1400; hard stop 1600).
Section caps: Concepts ≤6; Files ≤8; Hot ≤6; DomainDirs ≤6; Decisions(other) ≤6; ADRs ≤4; Done ≤8; In‑Progress ≤5; Pending ≤10; Blocked ≤3; CritDeps ≤5; Risks ≤5; Fails ≤4; Anchors.immutable ≤5; Anchors.user_verbatim ≤3; Then ≤4.
Strings: Prefer ≤12 words. Use IDs and pointers over prose.
Required fields even when trimmed: meta, intent.primary, timeline.current, next (task/why/validate/cmd), anchors.user_verbatim.
Normalization
IDs: T###, ST###, ADR‑####.
Paths: Absolute when remembered; else ?.
Times: UTC ISO (YYYY‑MM‑DDThh:mm:ssZ).
Booleans as status words: pass|fail|mixed|?.
Quotes: Keep verbatim user quotes short to anchor intent.
Example (--format compact)
(Illustrative; replace with session memory; use ? if unknown.)
HOVR/2 m:{ts:"2025-11-07T23:18:00Z",plan:"/workspaces/.../realtime-chatbot-plan.md",phase:"Phase 5: WebRTC",feat:"realtime-chatbot",prog:"4/9",domain:"realtime"}
intent:{ primary:"Enable browser↔Azure WebRTC voice with ephemeral creds", quotes:["“get webrtc working end-to-end”","“no key caching”"], scope:["POC OK","manual tests acceptable","keep SDK types below repo"] }
timeline:{ just_completed:"ST008 pytest infra documented and green", current:"implement RealtimeService (T032) before wiring router", last_actions:["set ADR‑0001 repo isolation","outlined router endpoints","configured telemetry endpoint"] }
concepts:{keys:["ephemeral key mint [auth]","region-scoped webrtc URL [realtime]","repo pattern isolation [_platform]","TDD cycles","telemetry endpoint [observability]","no caching [auth]"]}
code:{ files:["src/backend/app/services/realtime_service.py","src/backend/app/routers/realtime.py","src/backend/app/main.py","tests/unit/test_realtime_service.py","tests/integration/test_realtime.py","src/ui/components/webrtc_client.html"], hot:["src/backend/app/main.py@?","tests/unit/test_realtime_service.py@?"], domain_dirs:{"realtime":"src/backend/app/services/","auth":"src/backend/app/auth/","observability":"src/backend/app/telemetry/"} }
decisions:{ adrs:[["ADR-0001","domain types above repo","services/routers","realtime","prevents circular imports"]], other:[["DEC-telemetry","/telemetry collects client stats","observability","needed for latency debugging"],["DEC-ephemeral","mint per Start click","stateless svc call","avoids key caching security risk"]] }
tasks:{ done:["ST008"], ip:[], pend:["T032","T033","T034","T035","T036"], blk:[], critdeps:[["T033","T032"],["T037","T035","T036"]] }
tests:{unit:"mixed", integ:"pass", cov:"~50%", notes:"RED→GREEN expected after T032"}
risks:[["mic permission denial","UI prompt/handle NotAllowedError","browser console","realtime"],["region mismatch","derive from AZURE_OPENAI_REGION","403/connect-failed","auth"]]
fails:[["REST polling",">500ms latency per round-trip","WebSocket/WebRTC mandatory"],["raw WebSocket without SDK","auth token refresh not handled","use Azure SDK for token lifecycle"]]
anchors:{ immutable:["PostgreSQL for JSONB support","WebRTC over WebSocket for <100ms","domain types above repo layer"], user_verbatim:["“no key caching”","“get webrtc working end-to-end”"] }
next:{ task:"T032", tasks_file:"/workspaces/.../tasks/phase-5/tasks.md", why:"service layer needed before router", validate:["unit tests green","returns domain type only","no caching"], cmd:"/the-flow 6 --phase "Phase 5: WebRTC" --plan "/workspaces/.../realtime-chatbot-plan.md" --task "T032"" }
refs:{plan:"/workspaces/.../realtime-chatbot-plan.md § Phase 5", tasks_file:"/workspaces/.../tasks/phase-5/tasks.md", log:"/workspaces/.../tasks/phase-5/execution.log.md", paths:["src/backend/app/","tests/","src/ui/components/"]}
Drop‑in System Prompt You are a domain-aware compact handover generator for agent continuity.
Constraints:
--max (default 1400; hard stop 1600).docs/domains/ exists) or when --domain is provided. Tag concepts, ADRs, and risks with [domain] when known.Method:
Content (by format):