用途 Superset CLI 提供对 Superset 平台的项目、主机、工作区、智能体、终端、任务和自动化的命令行访问,核心目标是快速派生子智能体(subagents),并在隔离的工作区中创建项目副本,从而在多个编码智能体之间进行编排。
安装 若未安装 CLI,可使用以下命令安装:curl -fsSL https://superset.sh/cli/install.sh | sh
主要能力
- 工作区:基于项目与主机创建隔离工作区,可指定分支或 PR,也可使用 --local 指向本机;支持列表、重命名和删除。创建时可同时启动智能体(--agent/--prompt,二者需同时提供,可重复使用 --attachment 上传本地附件)或执行一次性命令(--command)。使用 --pr 时主机会检出已验证的 PR head 并推导分支,--base-branch 指定分支尚不存在时的分叉点。
- 智能体:用 agents list 查看主机或本机已配置的智能体(含 LABEL、PRESET、COMMAND、ID);用 agents create 在指定工作区启动智能体,--agent 可接受预设 id(如 claude、codex)、HostAgentConfig 实例 UUID,或 superset 表示内置 Superset 聊天会话。agents create --json 返回 { kind, sessionId, label },kind 为 chat 或 terminal。
- 终端会话:agents sessions 系列命令可对存活的终端智能体进行无头操作,包括 list、read(有界近期终端快照,非持久记录)、send(从位置参数、--file 或管道 stdin 三者择一传入)和 wait(等待空闲、权限、失败或退出事件)。这些命令在桌面渲染器关闭时仍可用,但仅控制终端智能体,不包含已退出进程续跑和 Superset 聊天会话。
- 桌面应用深度链接:workspaces open <id> 打开工作区,--print 仅打印 URL。会话需自行构造深度链接:chat 类型追加 ?chatSessionId=<sessionId>,terminal 类型追加 ?terminalId=<sessionId>;可加 &focusRequestId=<unique> 强制重新聚焦,且会话必须属于 URL 中的工作区。Linux/Windows 请使用平台对应的 URL 打开器(xdg-open、start)。
- 终端:terminals create --workspace <id> 可执行指定命令(--command)或打开交互式 shell,--cwd 可覆盖工作目录(默认 worktree)。
- 任务:tasks list/get/create/update/delete,支持按状态、优先级、指派人、指派人是我、创建者是我、搜索、分页等过滤。
- 项目与主机:projects list 列出已检出仓库(NAME、SLUG、REPO、ID);hosts list 列出可运行工作区的已注册机器(NAME、ONLINE、ID)。
- 自动化(别名 auto):按计划运行智能体会话,每次触发派发到主机并产生可供继续交互的工作区。需提供 --project 或 --workspace 之一或两者;计划以 RFC 5545 RRule 存储;运行采用至少一次派发,提示词应设计为幂等;目标主机离线时本次标记为 skipped_offline,下一次照常调度;省略 workspace 时会新建仓库克隆。支持 list/get/create/update/pause/resume/run(一次性运行)/delete/logs 及 prompt get/set(字节级往返,便于用编辑器修改提示词)。
使用方式 典型核心流程:先用 projects list 与 hosts list 选定项目与主机;用 workspaces create 创建工作区;用 agents create 派生智能体;用 tasks create 规划工作并随进展更新。在脚本或智能体中调用时建议始终使用 --json,各命令的 JSON 输出格式一致。开始前可先运行 auth whoami,多数失败源于配置中 organizationId 为空或令牌过期。
运行时上下文 在 Superset 工作区或终端内调用时,环境变量 $SUPERSET_WORKSPACE_ID 表示当前工作区 id,$SUPERSET_TERMINAL_ID 表示当前终端会话 id;若 $SUPERSET_WORKSPACE_ID 未设置,说明不在工作区内,需按核心流程先创建工作区。
适用场景 适合需要跨多个工作区并行运行编码智能体、按计划自动执行智能体任务、以脚本或智能体方式编排开发流程、以及在桌面应用中继续人工交互的开发者与团队。
限制 read 仅为有界近期终端快照;sessions 命令不支持已退出进程续跑与 Superset 聊天会话;自动化派发至少一次,需保证提示词幂等;主机离线时对应运行会被跳过。