用途:but-agentlog 是 GitButler 提供的技能,用于从已捕获的代理会话中浏览既往工作,适合“获取分支上下文”“跟上这个分支的进展”“恢复分支上下文”“这个分支之前发生了什么代理工作”等提示。
主要能力:核心命令是 but agentlog skim,以时间顺序展示相关会话与轮次(turn)的缩写目录视图;支持指定目标:but agentlog skim branch <branch-name-or-ref>、but agentlog skim review <review-id-or-pull-request-key>、but agentlog skim change <change-id-or-key>。当 skim 信息不足或需精确证据时,用 but agentlog show <session-key> --limit 20,或 but agentlog show <session-key> --turn <turn-key> --limit 20 深入单个会话或轮次。需要精确句柄时可加 but --format json agentlog skim。
使用方式:若未给出明确目标(如“当前分支”),先直接运行 but agentlog skim,它会自动发现已应用的 GitButler 分支;不要先用 git branch --show-current 或 git status。仅在用户给出目标时传入显式参数。若目标发现失败,可运行 but status 查看 GitButler 状态。优先使用人类可读的 skim 输出,JSON 仅用于深入获取句柄。
适用场景:在下一步行动可能受先前工作影响时,先 skim 获得概览;需要判断某个分支上已讨论、计划、尝试或改动过什么时;需要验证或做出重要结论时深入 show。
限制与规则:skim 是压缩的目录,涵盖所有相关会话和轮次但不含完整记录或完整转录;show 用于轮次级或单轮细节。不要把每个候选会话的记录全部输出,不要输出完整记录或转录。相关匹配应视为关联证据而非归属,应说“与分支 X 通过轮次 Y 相关的会话”,而非“分支 X 的会话”。除非用户要求证据句柄或需传给后续命令,否则保持 session_key 与 turn_key 内部使用。不要读取本地 SKILL.md,也不要先查看通用 GitButler 技能。版本控制操作(提交、推送、分支、差异)应使用通用 GitButler 技能。