返回顶部
w

workstation工作站控制

Control Varie Workstation sessions (Claude Code multi-session orchestration). Use when: (1) user wants to work on / start / resume a coding project, (2) checking session status, (3) sending commands to a session, (4) listing active sessions, (5) creating new sessions, (6) user replies to a plan approval or question notification, (7) user wants to stop/cancel/interrupt a session, (8) user wants a screenshot of a session or screen. Triggers on: work on, start, resume, sessions, workers, workstatio

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.0.1
安全检测
已通过
221
下载量
免费
免费
0
收藏
概述
安装方式
版本历史

workstation

工作站控制

通过 wctl 控制 Varie Workstation 编码会话。

第0步:检查待处理提示(始终先执行此步骤)

在任何路由或会话工作之前,检查是否有会话正在等待用户输入:

bash
cat ~/.openclaw/workspace/pending-prompts.json 2>/dev/null || echo {prompts:[]}

如果 prompts 数组非空 且用户的消息看起来像是一个回复(数字、approve、yes、no、reject、简短回答,或引用了待处理列表中的项目):
→ 这是对待处理提示的回复。直接转到下面的 响应会话提示 部分。

如果 prompts 数组为空 或用户的消息明显是一个新请求(提及不同的项目、要求开始/创建某些内容等):
→ 继续下面的智能路由。

智能路由(主要工作流程)

当用户提到要处理某个项目时(例如,处理我的API、恢复前端工作、开始认证重构),请静默地遵循此决策树——除非遇到模糊情况,否则不要询问用户:

第1步:检查守护进程 + 列出会话

bash wctl list

(如果守护进程未运行,告知用户启动 Workstation 应用。)

第2步:匹配项目

查看每个工作进程的 repo 字段。将用户提到的项目与仓库名称进行模糊匹配——frontend匹配my-frontend-app,api匹配backend-api-service。

如果会话存在且任务上下文匹配(用户的请求符合当前的 taskId/workContext):
→ wctl dispatch

如果会话存在但任务上下文不匹配(用户想在同一个仓库中处理不同的事情):
→ 询问:{repo} 上已有一个会话正在处理 {taskId}。我应该将此消息发送到该会话,还是创建一个新的?

如果该项目没有匹配的会话:
→ 转到第3步。

如果多个仓库匹配(例如,api可能指 frontend-api 或 backend-api):
→ 询问是哪一个。

第3步:自动创建会话(未找到匹配的会话)

bash
wctl discover

从发现的列表中找到项目路径,然后:

bash
wctl create

从用户的消息中推导出 task-id(例如,处理认证重构 → task-id: auth-refactor)。保持简短、小写、连字符格式。

创建后,确认:已为 {repo} ({task-id}) 启动新会话。

如果在发现结果中未找到项目,请询问用户仓库路径。

命令参考

命令用途
wctl status --human检查守护进程是否存活
wctl list
列出会话(JSON格式,用于解析) | | wctl list --human | 列出会话(可读格式,供用户查看) | | wctl dispatch | 向现有会话发送消息 | | wctl dispatch-answers ... | 发送多问题答案。多选时使用 next:N | | wctl create [task] | 创建新会话 | | wctl escape | 发送 Escape 键(取消提示/菜单) | | wctl interrupt | 发送 Ctrl+C(停止正在运行的进程) | | wctl enter | 发送 Enter 键(确认/关闭) | | wctl screenshot | 截取会话截图(聚焦并捕获) | | wctl screenshot --screen | 截取主屏幕截图 | | wctl set-remote-mode on\|off | 启用/禁用远程模式(桥接自动聚焦用于截图) | | wctl discover | 扫描项目仓库 |

会话控制(Escape / Interrupt)

当用户想要停止、取消或中断会话时:

用户说命令
停止会话X、取消、杀掉它、中止wctl interrupt <id>(发送 Ctrl+C)
退出、返回、取消提示、关闭
wctl escape (发送 Escape 键) |
| 按回车、确认、继续、提交 | wctl enter (发送 Enter 键) |

策略: 如果不确定,先尝试 escape(安全——取消UI提示)。如果仍然卡住,使用 interrupt(更强制——发送 SIGINT)。

截图

向用户展示会话的外观:

bash

1. 捕获会话


wctl screenshot

返回:{ status: ok, imagePath: /path/to/screenshot.png }

2. 使用内置消息工具发送给用户

要发送截图,请使用内置的 message 工具(不是 bash),使用 action: send 并将 mediaUrl 指向捕获的图像路径。消息工具与会话绑定——它会自动定位到您当前正在聊天的频道和用户。无需手动指定频道或目标。

如果 message 工具不可用,回退到 CLI:
bash
openclaw message send --media --channel --target

替换为当前对话的值(例如,telegram + 用户的聊天ID,或 whatsapp + 他们的电话号码)。

对于全屏(例如,查看 Chrome、其他应用):wctl screenshot --screen

何时使用: 用户说给我看看、截图、它看起来像什么、会话X中发生了什么。

始终在捕获后通过 openclaw message send --media 发送图像——wctl 仅将文件保存在本地。

关键规则

  1. 1. 始终对现有会话使用 dispatch——它直接输入到终端。切勿使用 wctl route(它可能会重启 Claude 并中断工作)。
  2. 切勿在消息前添加 claude——直接将用户的消息原样传递给 dispatch。
  3. 向用户显示输出时添加 --human——否则使用 JSON 供您自己解析。
  4. 不确定时询问——如果您无法自信地将用户的消息匹配到恰好一个会话/项目,请询问确认。错误的 dispatch 会中断实际的编码工作。自主性很好,但正确性更重要。
  5. 切勿猜测或幻觉——不要编造项目名称、会话ID或选项。始终检查 wctl list 和 pending-prompts.json 以获取真实信息。
  6. 使用Chat about this作为回退——如果您无法自信地将用户的答案映射到多问题提示的选项编号,请使用 --chat-arrows 20 选择Chat about this,然后将其消息作为文本 dispatch。卡住的问题模态框比回退到聊天更糟糕。

响应会话提示

当第0步发现待处理提示且用户的消息是回复时:

第1步:识别目标会话

待处理提示有一个 project 字段。使用它来查找会话:

bash
wctl list

找到 repo 与待处理提示的 project 匹配的会话。使用其 sessionId。

如果有多个提示待处理,将用户的消息与最相关的提示匹配(按项目名称提及或最近时间)。

第2步:将意图映射到响应

计划审批(4个选项):

用户说Dispatch
1、清除上下文、全部绕过wctl dispatch <id> 1
2、绕过权限、是绕过
wctl dispatch 2 |
| 3、批准、是、继续、看起来不错、手动批准 | wctl dispatch 3 |
| 拒绝、不、将X改为Y等反馈 | 两步: wctl dispatch 4 然后等待2秒,然后 wctl dispatch <他们的反馈> |

当用户说是、批准、继续等通用批准时,默认为选项3(是,手动批准编辑)。

选项4(反馈/拒绝)的重要说明: 这是一个两步过程。首先 dispatch 4 选择文本输入选项,等待2秒让文本提示出现,然后 dispatch 反馈文本。示例:
bash
wctl dispatch abc123 4
sleep 2
wctl dispatch abc123 不要修改数据库架构

问题——始终 dispatch 选项编号,而不是文本:

在待处理提示的 questions 数组中查找用户的答案,找到匹配的选项编号。示例:如果选项是 [1. 夜晚, 2. 白天, 3. 早晨] 且用户说夜晚,则 dispatch 1(而不是夜晚

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 coding-agent-orchestrator-1776115758 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 coding-agent-orchestrator-1776115758 技能

通过命令行安装

skillhub install coding-agent-orchestrator-1776115758

下载

⬇ 下载 workstation v1.0.1(免费)

文件大小: 7.27 KB | 发布时间: 2026-4-15 12:14

v1.0.1 最新 2026-4-15 12:14
Improved security documentation: declared pending-prompts.json file access, clarified screenshot scope (session-only by default, full-screen only on explicit request), noted screenshots are sent only to the requesting user's channel.

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部