This repository has been archived on 2026-08-07. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
openclaw/skills/gsd-openclaw/.planning/phases/04-gsd-integration/04-CONTEXT.md
T

4.7 KiB
Raw Blame History

Phase 4: GSD Integration - Context

Gathered: 2026-03-11 Status: Ready for planning

## Phase Boundary

完成 GSD 命令全覆盖 — 确保所有 34 个 GSD slash 命令都能通过桥接正常工作,实现 BRDG-06 要求。这个阶段填补编排层(Phase 3)与 100% 命令覆盖之间的差距,同时完善项目上下文追踪和工作流连续性支持。

## Implementation Decisions

命令清单处理策略

  • 处理模式: 关键命令特殊处理,其余泛型透传
  • 关键命令定义: /gsd:new-project 和 /gsd:use 需要 orchestrator 特殊逻辑
  • 泛型命令: 其他 32 个命令统一通过 tmux 透传 + 卡片格式化

关键命令特殊处理

/gsd:new-project

  • 预创建会话: orchestrator 检测命令后,先调用 TmuxSessionManager 创建会话和工作空间
  • 命令透传: 会话创建后,透传命令到 tmux 让 GSD 初始化项目结构
  • 工作空间路径: ~/gsd-workspaces/{project}/

/gsd:use

  • 上下文追踪: OpenClaw 在用户级别追踪当前项目(存入独立用户状态文件)
  • 后续命令路由: 后续命令根据追踪的上下文选择目标 tmux 会话
  • 项目不存在处理: 检查项目是否存在,不存在则返回错误卡片 + 「创建新项目」按钮

项目上下文追踪

存储设计

  • 位置: ~/gsd-workspaces/.users/{user_id}/context.json
  • 格式: JSON,原子写入(与 Phase 1 state.json 一致)

追踪数据

  • 当前项目: 用户当前正在操作的项目名
  • 最近项目列表: 最近使用的项目(保留最近 5 个)
  • 最后活跃时间: 用户上次活动时间戳
  • 用户偏好: 可选的个性化设置(默认超时、输出格式等)

多用户场景

  • 隔离策略: 完全隔离 — 每个用户独立的 tmux 会话和工作空间
  • 用户识别: 通过 OpenClaw 的 user_id 区分

频道支持

  • Phase 4 范围: 仅飞书
  • 其他频道: 微信、Telegram、Discord 延后到 v2

工作流连续性

上下文保持

  • 机制: tmux 持久会话
  • Claude CLI 上下文: 自然保持在 tmux 会话中
  • 用户重连: 直接重连到现有 tmux 会话

中途掉线恢复

  • 责任归属: GSD 处理恢复(通过 STATE.md 追踪)
  • OpenClaw 角色: 只负责重新连接到 tmux 会话

长命令超时

  • 普通命令: 60 秒超时(Phase 3 已定义)
  • 长命令: 无超时,依赖 GSD 自己的完成信号
  • 长命令列表: execute-phase, plan-phase, discuss-phase, new-project
  • 进度更新: 使用 Phase 3 的 ProgressMonitor 机制

Claude's Discretion

  • 用户偏好的具体字段名和默认值
  • 长命令检测的具体逻辑(命令名匹配 vs 运行时检测)
  • 最近项目列表的保留数量(建议 5 个)
## Specific Ideas
  • 用户状态文件路径与 Phase 1 的 state.json 保持一致的原子写入模式
  • 「创建新项目」按钮样式与 Phase 2 的卡片按钮一致
  • 长命令识别通过命令名前缀匹配(execute-, plan-, discuss-, new-project)

<code_context>

Existing Code Insights

Reusable Assets

  • Phase 1 TmuxSessionManager: 会话创建、恢复、销毁 — /gsd:new-project 预创建会话的基础
  • Phase 1 StateManager: JSON 状态管理模式 — 用户上下文存储可直接复用原子写入模式
  • Phase 1 WorkspaceManager: 工作空间目录创建 — /gsd:new-project 需要调用
  • Phase 2 FeishuResponseFormatter: 卡片格式化 — format_success/format_error/format_info
  • Phase 3 Orchestrator: 命令路由框架 — 需要扩展添加特殊命令处理分支
  • Phase 3 ApprovalHandler: 按钮回调处理 — 「创建新项目」按钮可复用此机制
  • Phase 3 ProgressMonitor: 进度更新 — 长命令的进度反馈

Established Patterns

  • 状态持久化: JSON 格式,原子写入(tempfile + rename)
  • 错误处理: 中文错误消息 + 异常类
  • 卡片布局: 三区结构(标题区 + 内容区 + 操作区)
  • 命名规范: gsd- 前缀统一

Integration Points

  • UserContextManager (新增): 用户上下文追踪,被 Orchestrator 调用
  • Orchestrator.handle_message(): 需要扩展特殊命令处理逻辑
  • Orchestrator.parse_command(): 已有的命令解析可复用
  • Phase 4 完成后,BRDG-06 需求将满足

</code_context>

## Deferred Ideas
  • 微信频道支持 — v2 特性
  • Telegram/Discord 频道支持 — v2 特性
  • 多语言支持(中文/英文切换)
  • 项目共享(多用户协作同一项目)
  • 命令历史记录和搜索

Phase: 04-gsd-integration Context gathered: 2026-03-11