SuperAPI AI 工具集

open

办公与效率

查看项目

更新于 10-16 06:31

技能介绍

用途

open(/open)是一个会话上下文重定向技能,用于按需重新加载会话上下文并加载配套技能。会话启动时的上下文简报现已自动生成,钩子会输出一份紧凑简报(成果、最近工作的缩放层级、交接摘要),Claude 应在首次响应中直接据此行动,无需调用 /open。

主要能力

  • 重新定向:在会话中途再次展示上下文。
  • 技能加载:确保 bon/todoist-gtd 模式可用。
  • 目录切换后重载:上下文是项目专属的,切换目录后上下文可能不同。
  • 深入查看:需要完整交接内容或超出简报的完整 bon 层级结构时使用。

使用方式

前置条件

运行 /open 前需验证基础设施健康,静默失败会导致后续混乱。检查项包括:

  • open-context.sh 是否存在:[ -x ~/.claude/scripts/open-context.sh ],若损坏则运行 claude-doctor.sh。
  • 脚本符号链接是否有效:~/.claude/scripts/check-symlinks.sh,若损坏则修复符号链接。
  • bon 是否可用:command -v bon,安装命令为 uv tool install ~/Repos/bon。

快速预检:[ -x ~/.claude/scripts/open-context.sh ] && echo "OK" || echo "BROKEN: open-context.sh missing"。若预检失败,应停止并诊断后再继续。

结构

前置条件 → 验证基础设施;门控 → 加载所需配套技能;收集 → 脚本输出;定向 → 综合重要信息;决策 → 用户选择方向;行动 → 从 Bon 抽取。

门控:加载配套技能

在综合之前,根据当前存在的内容加载技能,未加载前不继续:

  • 存在 .bon/:加载 Skill(bon),作为默认追踪器。
  • 既无 .bon/ 也无追踪器:跳过追踪器加载。
  • 上下文中有 @Claude 条目或交接中有 Todoist:提供 Skill(todoist-gtd)。
  • 用户对过去工作感到困惑:提供 Skill(garde) 进行祖先查找。

工作追踪器存在时为强制项。抽取模式(条目 → bon 工作 → bon 步骤)是发现偏差的地方。战术步骤持久化在 items.jsonl 中,强制串行执行,并能经受会话崩溃。Bon 是默认选项;todoist-gtd 是条件性的,仅在相关时提供,不默认加载。记忆是可选的,仅在用户对历史感到困惑时提供。

收集

模式:紧凑简报输出到 stdout,细节保存在磁盘。会话启动钩子输出综合简报,包含:正在推进的成果(来自 bon)、最近工作的缩放层级(当前动作及其战术步骤)、上次会话摘要(Done、Next、Gotchas)。

上下文文件是项目专属的。<encoded-cwd> 是工作目录,所有非字母数字字符替换为 -(例如 -Users-modha-Repos-trousse)。

深入上下文可读取源文件:项目理解 .bon/understanding.md;最新交接 ~/.claude/handoffs/<encoded-cwd>/;Bon 上下文 ~/.claude/.session-context/<encoded-cwd>/bon.txt;新闻 ~/.claude/.update-news。

计算路径:echo "$(pwd -P)" | sed 's/[^a-zA-Z0-9-]/-/g'。

若上下文文件缺失或过期,可重新生成:~/.claude/scripts/open-context.sh。

脚本失败处理:若脚本失败(退出码 127 表示文件未找到,或其他错误),应停止,不使用部分上下文;告知用户脚本失败通常意味着符号链接损坏;运行 check-symlinks.sh 诊断。

定向

根据通知指示读取文件后综合。计算编码路径后读取源文件:最新交接、追踪器上下文、相关新闻。

若 .bon/contributions/ 中有文件,先综合到 .bon/understanding.md 再继续:读取现有理解文档与所有贡献文件,重写(而非追加)理解文档,做出显著性判断,综合后删除贡献文件。

综合重要信息:交接(Done、Next、Gotchas)、追踪器层级(来自 bon.txt,直接展示给用户)、就绪工作(bon ready)、命令(若交接有 Commands 部分则提供运行)、范围不匹配(若交接 Next 与就绪条目不符则标记)。

关键:以文本输出,而非 Bash。展示追踪器层级或就绪工作时,在响应中以文本输出,不要通过 Bash 运行 bon list,因为 Claude Code 会将超过 10 行的工具输出折叠在 Ctrl+O 后,用户不可见。bon.txt 文件已包含格式化层级,读取后直接输出。

孤立本地交接:当 stdout 显示孤立的 .handoff* 文件时,告知用户这些文件对 /open 不可见,并提供将其移动到中央位置:mv .handoff* ~/.claude/handoffs/<encoded-path>/。

决策

用户选择方向,选项通常包括:继续交接中的 Next、从就绪工作(bon 条目)中选择、@Claude 收件箱条目、其他。

行动:抽取

抽取在所有实质性工作上触发,不仅是显式追踪器条目声明。

显式条目选择:用户选择工作条目后,读取条目、标记进行中(Bon 用 bon show <id>,bon 不追踪 in_progress),读取条目的标准(bon: brief.why/what/done),从标准分解为步骤,向用户展示分解并确认,然后带显式暂停点逐步推进。

延续短语:用户说“continue X”“keep going”“pick up where we left off”时,澄清范围(哪个条目?成果还是动作?),读取条目标准,分解为步骤,带显式暂停点推进。

外部简报:用户提供规格、简报或需求时,提取验收标准,从标准分解为步骤,向用户展示理解并确认,带显式暂停点推进。

模糊引用:用户说“the email thing”“that feature”等时,不要猜测,询问用户指的是哪个条目,澄清后执行完整抽取。

测试:若工作将超过 10 分钟,需要显式分解和暂停点。没有检查点,偏差会累积。完整抽取模式位于追踪器技能(bon)中,这就是门控加载重要的原因。

适用场景

  • 会话中途需要再次查看上下文。
  • 需要加载 bon/todoist-gtd 工作模式。
  • 切换目录后需要重新获取项目专属上下文。
  • 需要完整交接内容或完整 bon 层级结构。

限制

  • 会话刚启动且能看到简报时不应使用,应直接据此定向。
  • 不需要完整上下文的快速问题不应使用。
  • 用户已给出明确方向时不应使用。
  • 依赖 open-context.sh、符号链接、bon 等基础设施,任一损坏会导致失败。
  • 上下文文件为项目专属,切换目录后可能缺失或过期。
  • 追踪器层级等输出需以文本呈现,不能通过 Bash 运行 bon list,否则输出会被折叠不可见。

反模式

  • 通过 Bash 运行 bon list 或 bd ready:输出被折叠,用户看不到;应读取上下文文件并以文本输出。
  • 在“continue X”时跳过抽取:范围模糊;应始终读取条目并分解为步骤。
  • 跳过追踪器技能加载:缺少工作流模式;应先门控加载 bon。
  • 忽略脚本失败:部分上下文导致偏差;脚本失败时应停止并诊断。
  • 猜测模糊引用:选错工作;应询问用户指的是哪个条目。