用途:在会话开始时做只读定位,是 session-wrap 的反向操作——wrap 写下未了线索,spinup 把它们读回来。避免用户坐下后忘记之前开了什么、转而开始新工作,导致昨天的 PR 搁置。
主要能力:由共享脚本 scripts/session-survey.sh 完成确定性工作,包括项目检测、调查、GitHub 议题与 taskwarrior 去重、陈旧度判断、日志提取。技能运行一次收集器,再应用判断,把摘要过滤到真正重要的 3-6 项,并建议下一步。
使用方式:读取 .claude/session-plugin.local.md(项目级,回退到 ~/.claude/)获取 taskwarrior 项目命名映射与日志设置,然后运行:bash "${CLAUDE_SKILL_DIR}/../../scripts/session-survey.sh" --with-dedup --with-blueprint。需要日志时加 --with-journal --journal-path <dir>;需要覆盖项目时加 --project <name>;仅需粗略计数时加 --summary。摘要包含 PROJECT、GIT、PRS、TASKWARRIOR、GITHUB_DRIFT、JOURNAL、BLUEPRINT、STALE_ACTIVE_ELSEWHERE 等部分。
适用场景:用户说“spin up”“what was I doing”“pick up where I left off”;新会话打开且有未了线索时由 hook 提示;在挑选下一步前做定位。若是在已知状态上恢复 TDD 循环,应改用 project-plugin:project-continue;跨项目队列健康用 taskwarrior-plugin:task-status;不熟悉的代码库定位用 project-plugin:project-discovery。
限制:只读,不编辑代码,不自动恢复任务或启动工作流,只提供 2-4 个下一步建议由用户选择。当 GH_READY=false 时,PRS 与 GITHUB_DRIFT 的零值表示未查询而非无内容,需通过 GitHub MCP 获取或明确标注 github: not queried (gh unavailable)。当 PROJECT_CONFIDENCE=low 时不得声称队列干净,需按 TASK_SCOPE 说明真实范围。RECENT_TASK_* 行只是指针,不是完整任务。SessionStart hook 只注入一次性提示,不会运行技能;可用 touch ~/.cache/claude-session-spinup-nudge/<session_id> 预先静默。