SuperAPI AI 工具集

scartill-session

办公与效率

查看项目

更新于 10-31 16:50

技能介绍

用途

scartill-session 用于在开发任务之间进行“交接”,把多个并行或先后开展的工作会话以文件形式记录下来,方便随时切换和续接。所有记录都放在仓库的 .context/ 目录下,以纯 Markdown 保存,可随仓库一起提交,并能在 git 中清晰 diff。

主要能力

  • 多会话跟踪:每个会话对应 .context/sessions/<name>.md 文件,文件名由用户提供的名称规范化生成(小写、空格与非法字符转连字符),文件名本身不含日期,开始时间只记录在 frontmatter 的 Started 字段中。
  • 单一活动会话指针:.context/.current_session 保存一行,即当前活动会话文件的相对路径,是判断哪个会话处于活动状态的唯一依据。
  • 会话索引:.context/SESSIONS.md 以 Markdown 表格维护全部会话,列为 | Session | Started | Status |,Session 单元格链接到对应会话文件;首次使用时自动创建表头。
  • 时间戳:使用用户本地时区,在会话 frontmatter 和 Log 条目中记录完整的 YYYY-MM-DD HH:MM。

使用方式

命令格式:/scartill-session [new <name> | save | resume <id> | close | remove]

  • new <name>:生成 .context/sessions/<name>.md;若重名则追加数字后缀而不覆盖。将路径写入 .current_session,在 SESSIONS.md 中添加 Active 行,并以固定模板初始化会话文件(含 Started、Status、Objective、Key Changes、Blockers / Open Questions、Immediate Next Step、Log 等区块),最后报告创建路径并确认其为活动会话。
  • save:从 .current_session 解析活动会话,刷新 Key Changes、Blockers / Open Questions、Immediate Next Step,并追加带时间戳的 Log 条目;状态保持 Active,不关闭会话,并报告更新内容。
  • resume <id>:从 <id> 解析目标会话文件(<id> 可带或不带 .context/sessions/ 前缀与 .md 后缀)。若不存在,则列出 SESSIONS.md 中的可用会话并停止。存在时将其设为活动会话,并在索引中恢复为 Active;读取文件并向用户简报 Objective、最新 Log、未解决阻塞项与 Immediate Next Step,随后追加一条恢复 Log。
  • close:对活动会话做最终整理,将会话状态设为 Closed 并追加关闭 Log,同步更新 SESSIONS.md 中对应行为 Closed,然后清空 .current_session,报告已关闭且当前无活动会话。
  • remove:删除当前活动会话(不接受参数)。删除前必须先向用户确认(并说明文件名),同时提示因 .context/ 已提交,文件仍可从 git 历史恢复;确认后删除会话文件、从 SESSIONS.md 移除对应行并清空 .current_session,报告已移除且当前无活动会话。若需要保留完成会话的记录,应使用 close 而非 remove。

使用约定

  • 一切以 .context/ 下的纯 Markdown 为准,结构稳定、便于 diff,适合提交;但不会代替用户提交,除非用户明确要求。
  • 同一时间只允许一个活动会话:new 与 resume 使目标成为活动会话,close 后无活动会话。
  • 当需要活动会话而 .current_session 缺失或指向不存在的文件时,应提示用户先执行 new <name> 或 resume <id>,不得静默创建。
  • 存在同名会话文件时绝不覆盖,而是追加序号。

适用场景

适合需要在多个开发任务之间频繁切换、并希望把进度、阻塞项与下一步计划随代码一起版本化保存的开发者。

限制

资料未说明该技能的具体运行环境、依赖条件、性能指标或收费方式,暂未提供。