方式 1
桌面应用
需要:Apple 芯片和 macOS 11 或更高版本。Python 和 tmux 已内置。
- 下载
RandCompStudio-0.1.1.dmg。 - 打开文件,把 RandComp Studio 拖入 Applications。
- 打开应用,选择公司文件夹的位置。
构建过程会把版本、大小和 SHA-256 写入落地页;打开磁盘映像前请核对页面显示的哈希值。
文档
一个全能会话会累积所有工作和不断增长的上下文。RandComp Studio 让你把研究、产品、开发和评审拆成专注的角色会话,再把任务、消息、依赖与结果连接起来。它不会替代你的 AI 智能体或 skill 生态。
开始使用
先安装 RandComp Studio 应用,然后从桌面看板或支持 MCP 的 AI 会话操作同一支本地团队。两种方式都要求你已安装并登录一个受支持的命令行 AI 智能体。运行器支持可以扩展;角色与运行器一节会说明内置定义以及如何添加自己的运行器。
方式 1
需要:Apple 芯片和 macOS 11 或更高版本。Python 和 tmux 已内置。
RandCompStudio-0.1.1.dmg。构建过程会把版本、大小和 SHA-256 写入落地页;打开磁盘映像前请核对页面显示的哈希值。
方式 2
需要:RandComp Studio 应用、支持本地 MCP 服务器的 AI 客户端,以及 PATH 中的 randcomp。请先在应用中选择 RandComp Studio → Install the randcomp command in PATH。
claude mcp add -s user randcomp-studio -- randcomp mcp
上面是 Claude Code 示例。-s user 让它在所有项目中可用;不加该参数时,服务器只为当前文件夹注册。其他 MCP 客户端通过各自的本地服务器设置注册同一个 randcomp mcp 进程。
你的 AI 会话可以创建任务、雇用角色、启动智能体、发送工作并读取结果。应用打开后会显示同一块看板和同一组终端。
注册后还会向客户端添加四个 RandComp Studio 斜杠命令。
这是通过标准输入和标准输出通信的本地 MCP 进程,不是托管服务器。RandComp Studio 不需要账户或 API 密钥。AI 客户端仍按自身设置与其供应商通信。
公司文件夹用普通文件保存角色、任务、决策、状态、消息和结果。它不一定是智能体工作的代码库;每个任务可单独选择项目文件夹。
若有多个已配置的运行器可用,RandComp Studio 会询问哪个工具用于运行协调员。它只检查所选运行器是否看起来已登录,不读取或保存凭据值,也不会替你登录。
五分钟
randcomp 打开公司窗口。randcomp project create "上线一个带结账功能的小型在线商店" --runner kimi randcomp project list randcomp project ask PROJECT_ID "增加一个礼品卡页面" randcomp project show PROJECT_ID
从 randcomp project list 复制 PROJECT_ID。ask 会唤醒项目的真实协调员会话并把请求交给它;如何规划任务是协调员自己的判断。同一组项目命令也可以在公司的所在机器上通过 SSH 使用。
经典的以任务为中心的命令(如 randcomp task create)保持不变,仍可用于公司级任务板。
注册服务器后,让 AI 会话通过 RandComp Studio 创建和管理工作,而不是使用客户端自己的临时子智能体。AI 客户端选择 MCP 工具;RandComp Studio 则负责底层的持久项目、协调员、帮手智能体、会话、消息和结果。
使用 RandComp Studio 为这项工作创建一个项目。 让协调员规划任务,由开发实现,QA 独立评审。 让项目及其帮手始终显示在 RandComp Studio 看板上。
MCP 服务器以 v2_project_create、v2_project_list、v2_project_show、v2_project_ask、v2_project_finish、v2_project_reopen 等形式发布项目工具,另有 v2_task_*、v2_agent_* 和 v2_result_* 工具,与经典公司级工具并存。用自然语言提出请求仍是主要方式;下面四个命令只是常用句子的快捷方式。
RandComp Studio 发布四个 prompt,客户端会把它们转换成可在消息开头选择的命令。Claude Code 2.1.233 使用以下写法,并在 /mcp 下列出所有已连接服务器的命令:
| 输入 | 作用 |
|---|---|
/mcp__randcomp-studio__catch-me-up | 查看公司现状:所有任务、参与者、等待你处理的事项和沉默的会话。只读。 |
/mcp__randcomp-studio__what-came-out TASK_ID | 查看一个任务的目标、协调员记录的结果以及每个文件的完整路径。只读,会话结束很久后仍可使用。 |
/mcp__randcomp-studio__start-work WHAT YOU WANT DONE | 根据这句话创建任务,并让协调员雇用所需角色。启动智能体会产生费用;省略内容时系统会询问。 |
/mcp__randcomp-studio__check-on AGENT_ID | 读取一个智能体用自己的话记录的工作,以及它是否在等待你。只读。 |
prompt 名称分别为 catch-me-up、what-came-out、start-work 和 check-on。其他 MCP 客户端可能使用不同写法;请查看该客户端的 prompt 或命令列表。
命令后的内容是它唯一的值:任务 ID、智能体 ID,或你希望完成的工作。
它会返回应该调用哪些 RandComp Studio 工具以及如何读取结果。随后会话在客户端自身审批设置下发起调用;在你允许工具调用前,不会创建、启动或停止任何内容。
核心概念
| 概念 | 含义 |
|---|---|
| 公司 | 持久保存角色、任务、决策、消息、状态和产出文件的文件夹。 |
| 项目文件夹 | 智能体实际操作的代码库或工作文件夹。每个任务单独选择,可以位于公司文件夹之外。 |
| 项目 | 当前应用的主要工作单元:一句你想要的话、一位负责规划的协调员,以及由协调员拆出的一组具体任务。项目持久保存在磁盘上,重启后依然存在。 |
| 任务 | 项目计划中的一个具体工作项,有其帮手、实时状态、结果和文件。公司级经典任务板也仍然存在,可直接派发工作。 |
| 智能体 | 一个角色在一个任务中被雇用的实例。两个任务使用开发角色时,会得到两个不同的开发智能体。 |
| 会话 | 智能体正在运行的一个终端。会话会产生费用;会话停止后,智能体及其历史仍会保留。 |
| 角色 | 可复用定义,例如开发、QA 或市场分析。角色位于帮手库中,本身不会运行。 |
| 运行器 | 执行智能体的已安装命令行 AI 工具。Claude Code、Codex 与 Kimi Code 是当前预览版内置的首批定义,不是运行器模型的边界——任何能在终端中运行的 CLI 都可以成为运行器。 |
角色库没有实时关系图。关系与箭头只存在于一个任务内部,连接该任务雇用的智能体实例。
图形界面
直接运行 randcomp,不加其他参数。它会在独立窗口中打开公司,服务只绑定到 127.0.0.1。
用一句话开始项目,向协调员发送请求,观看具体任务的计划成形——每个任务都显示谁在负责、产出了什么。
浏览可复用的帮手角色库,阅读定义,或导入你已有的定义。
打开帮手的实时会话,阅读终端内容,更改它运行的 AI 工具,或停止会话而不删除智能体。
查看已记录的公司活动,切换浅色或深色外观,选择界面语言,或重播首次使用向导。
任务状态根据智能体推导,而不是保存一个猜测。需要你表示智能体记录了阻塞或请求;工作中表示当前工作活跃;已完成表示任务已经结束。沉默或未知状态会显示具体原因,不会被简单标成阻塞。
从任务中打开智能体,读取当前终端输出并发送消息。“在终端中打开”会加入真实 tmux 会话;按 Ctrl-B,再按 D 即可脱离,智能体会继续工作。
命令行
randcomp 与 randcomp-studio 是同一个程序,前者更短。每条命令先写对象,再写动作,例如 randcomp task list、randcomp task results TASK_ID、randcomp task finish TASK_ID。复数旧写法仍会继续工作;randcomp help 讲解的是单数新写法。
randcomp status randcomp task list randcomp agent list
status 是简洁的公司摘要:使用哪个程序运行智能体、是否已登录、任务与智能体数量,以及每项的一行摘要。randcomp task list 解释每个任务为什么处于当前状态;randcomp agent list 说明每个智能体正在做什么。
randcomp task list --company ~/Companies/acme randcomp --company ~/Companies/new-company
--company PATH 适用于整个命令面。指定不存在的路径会在该处创建公司;它不会改变智能体工作的项目文件夹。
参考
本参考与当前源代码中的公开解析器一致。方括号表示可选输入。每条命令都接受 -h 或 --help;randcomp help 打印顶层命令图。
| 值 | 来源 |
|---|---|
TASK_ID | randcomp task list 中任务旁的短标识,或足以唯一匹配一个任务的长名称片段。 |
AGENT_ID | randcomp agent list 中角色后括号内的 ID。若只有一个该角色智能体,也可使用角色名。 |
RESULT_FILE_PATH | randcomp task results TASK_ID 在“产出”下打印的完整路径。 |
ADDRESS | 已雇用智能体 ID,或不会产生歧义的角色名。 |
task、agent、role、status 和打开窗口的裸命令都接受 --company PATH。它选择包含 roles/ 与 coordination/ 的公司文件夹,而不是智能体的项目文件夹。默认使用首次运行时记住的公司;不存在的指定路径会被初始化为公司。对 role 命令,该参数可放在动作前或后。
randcomp mcp [--company PATH]
通过标准输入和标准输出使用 Model Context Protocol,让本地 MCP 客户端读取和控制公司。请用 claude mcp add -s user randcomp-studio -- randcomp mcp 注册,不要手动运行。它发布客户端可调用的工具,以及客户端显示为斜杠命令的四个 prompt。--company 可选择非默认公司。没有网络监听、托管服务、RandComp Studio 账户或 API 密钥。
randcomp task create TEXT... [OPTIONS]
创建任务、启动协调员,并让协调员雇用所需角色。
--name WORDS 设置显示名称和短任务标识的基础,默认使用请求文本。--in PATH 设置每个智能体打开的项目文件夹,默认使用上次选择的项目文件夹。--only ROLE,ROLE 限制协调员可考虑的角色并记住该范围;--only all 清除限制。--with-role ROLE 直接雇用你选择的一个角色,不让协调员选择。--let-it-work-without-asking 请求运行器的无人值守权限模式。这会降低审批边界;randcomp role list 会打印运行器允许的内容。--anyway 在已有会话运行时确认新增支出。省略时,RandComp Studio 会报告运行内容并停止。randcomp task list [--json] [--company PATH]
打印公司组织图:所有任务、推导状态、智能体和可直接运行的命令。--json 返回结构化 JSON。
randcomp task results TASK_ID [--json] [--company PATH]
显示请求、协调员结果、参与者和产出文件完整路径。若可交互确定任务,可以省略 ID。它只列文件,不打印内容;--json 输出结构化结果。
randcomp task show RESULT_FILE_PATH [--company PATH]
完整打印一个产出文档。包含目录分隔符的参数按文件路径读取,其余按任务名读取。请使用“产出”下显示的精确路径。
randcomp task finish TASK_ID [--yes] [--company PATH]
关闭任务并停止其所有智能体会话。终端中会列出会话并先询问;--yes 提前确认,非交互脚本不会收到提示。智能体和历史会保留。
randcomp task reopen TASK_ID [--company PATH]
重新打开已完成任务,但不会自动启动会话。请列出旧智能体,并仅对需要继续工作的对象运行 randcomp agent start AGENT_ID。
randcomp agent list TASK_ID [--json] [--company PATH] randcomp agent list [--json] [--company PATH]
列出一个任务的智能体;省略任务时列出公司全部智能体。--json 返回结构化输出。
randcomp agent logs AGENT_ID [--company PATH]
读取智能体自己的话:运行中读取完整实时回滚内容,停止后读取保存的对话。这不是可复用角色定义。
randcomp agent send AGENT_ID TEXT... [--company PATH]
向智能体发送一行。会话运行时直接进入会话;未运行时等待在智能体收件箱中。
randcomp agent attach AGENT_ID [--print-the-command] [--company PATH]
在当前终端加入 tmux 会话;按 Ctrl-B,再按 D 脱离。--print-the-command 只打印加入命令,供其他终端或脚本使用。
randcomp agent start AGENT_ID [--company PATH] randcomp agent stop AGENT_ID [--company PATH]
start 为持久智能体创建会话并恢复其身份与历史。stop 只结束会话;智能体仍保留并可再次启动。
randcomp role add ROLE [OPTIONS]
把公司中的一个角色加入任务。雇用会记录实例,但不一定立即启动;role hire 是旧写法。
--assignment WORDS... 记录该实例唯一的一项工作,也可稍后添加。--in PATH 设置智能体打开的项目文件夹,默认使用公司文件夹。隐藏的旧参数 --project PATH 等价。--task SLUG 把智能体绑定到一个任务的协调目录标识。只有真正跨任务工作时才省略。--because WORDS 记录任务为什么需要该角色。--runner NAME 选择运行器;省略时使用已安装并配置的默认项。randcomp role assign ADDRESS --assignment WORDS... [--continue] [--company PATH]
更改智能体的任务说明。一个会话只拥有一项工作,因此不同工作会被拒绝;--continue 明确表示这是对同一工作的更清晰描述。
randcomp role outcome --task SLUG [WORDS...] [--company PATH]
记录任务的简洁结果、产出路径、结论和剩余工作。不提供结果文字可清除错误结果。
randcomp role list [--all] [--company PATH]
列出已雇用成员和运行情况。--all 包括已退休成员;role roster 等价。
randcomp role retire ADDRESS [--company PATH]
不再把某个成员列为活跃,但保留其历史记录。
randcomp role import PATH [OPTIONS]
把现有 skill、agent、GPT 导出、AGENTS.md 或 Markdown 定义转换为 RandComp Studio 角色包。PATH 可以是文件、目录,或表示标准输入的 -。
--as NAME 覆盖推断的角色名。--add 时不会写入任何内容,只打印建议包供检查。--add 把转换结果复制到 role-library/<name>/ 并生成 roles/<NAME>.md。不会编辑来源或覆盖现有角色。--anyway 允许在缺少非关键资料时写入,但不能绕过缺少名称、使命或覆盖拒绝。randcomp role runners [--company PATH]
列出所有已配置运行器、是否安装和登录,以及默认运行器。
randcomp role coordinator [--use NAME | --default] [--company PATH]
不加参数时显示新协调员使用的运行器。--use 记住新选择;--default 清除选择并回到运行器表默认值。现有协调员会话不受影响。
randcomp role runs-on ADDRESS [--use NAME] [--wait SECONDS] [--company PATH]
显示智能体运行器。--use 将它迁移到另一个运行器。若正在运行,RandComp Studio 会先请求并验证交接;--wait 设置交接截止时间。
randcomp role launch ADDRESS [--let-it-work-without-asking] [--company PATH]
为已雇用智能体创建会话。无人值守参数会明确降低安全边界;若运行器未定义该模式则会被拒绝。
randcomp role stop ADDRESS [--company PATH] randcomp role attach ADDRESS [--company PATH]
stop 结束会话但保留雇用记录。角色级 attach 打印加入命令;agent attach 直接加入。
randcomp role replace ADDRESS [--wait SECONDS] [--let-it-work-without-asking] [--company PATH]
请求在线智能体交接、验证交接、退役旧会话并启动新的延续会话。超时则旧会话完全保持原样。
randcomp role at-once [HOW_MANY] [--company PATH]
显示或设置每个任务可同时运行的专业智能体数量。多余成员等待轮次;任务协调员不计入。旧 at-most 已移除,只会说明替代命令。
randcomp role check ADDRESS [--company PATH] randcomp role history ADDRESS [--company PATH]
check 取出智能体收件箱中等待的全部内容;history 显示该成员的所有会话及会话继承关系。
randcomp role say ADDRESS TEXT... [--about TASK_ID] [--company PATH]
发送创始人撰写的消息。向跨任务协调员发送时,--about 用于明确任务。
randcomp role send --to ADDRESS --from NAME [--as-founder] TEXT... [--company PATH]
从一个角色向另一个角色发送消息。--from 如实记录发送者;--as-founder 明确标记消息由创始人撰写。
randcomp role route [--company PATH]
投递角色发件箱中当前等待的全部消息。
randcomp role read ADDRESS [--lines N] [--company PATH]
读取完整实时回滚内容或保存的对话。--lines N 只限制实时内容;已完成对话始终完整显示。
randcomp role inbox [ADDRESS] [--company PATH]
显示一个接收者的未读消息;省略地址时显示所有接收者。
randcomp status [--json] [--company PATH]
打印所选运行器及登录状态、任务和智能体数量,再为每项打印一行摘要。--json 返回结构化输出。
randcomp [--company PATH] [--no-model]
不加后续命令时,在独立窗口中打开公司,并只绑定到 127.0.0.1。--no-model 禁用可选的本地模型说明。
randcomp help randcomp COMMAND --help
打印完整命令图,或某一命令的解析器帮助。
randcomp COMMAND --no-color
只有人在终端读取时,命令才会为状态、可复制值、标题和弱化的上下文行着色。通过管道、重定向或智能体读取时,输出是逐字节纯文本。所有命令都支持 --no-color,也遵循 NO_COLOR 和 FORCE_COLOR。
建议学习上面的语法。工具过去支持的所有写法仍会原样运行,因此已有脚本不会失效:
task create, do, dispatch | tasks new |
task list | tasks ls |
task results, results | tasks TASK_ID |
task show, show | tasks RESULT_FILE_PATH |
task finish, finish, reopen | tasks TASK_ID finish / reopen |
agent list | tasks TASK_ID agents |
agent logs/send/attach/start/stop, read, say, attach, start, stop | agents AGENT_ID logs 及其余动作 |
role library, roles | 并入 role list 与 role import |
role add | role hire |
app, ui | 直接运行 randcomp |
inbox, handoff, todo add/note/done | 不再出现在教学界面中,但仍可运行 |
执行
角色是工作定义,运行器是执行它的已安装程序。同一角色的两个智能体可以使用不同运行器。
randcomp role runners randcomp role coordinator --use NAME randcomp role runs-on AGENT_ID --use NAME randcomp role at-once NUMBER
coordinator --use 更改之后启动的协调员运行器。runs-on 把一个智能体迁移到另一运行器。at-once 控制每个任务同时运行的专业智能体数量;多余成员保持已雇用并等待轮次。
RandComp Studio 首批自带 Claude Code、Codex CLI 与 Kimi Code 的运行器定义。它们是初始集成,而不是产品定义。高级用户可在 ~/.config/mission-control/runners.json 中新增或覆盖运行器,无需修改产品;下一步也会加入更多内置运行器。
RandComp Studio 不是替代型 marketplace。导入器接受你已有的角色定义,例如 Agent Skill、Claude agent 或 skill、导出的 GPT 或普通 Markdown,并转换为本地角色包规范。
randcomp role import ROLE_SOURCE_PATH randcomp role import ROLE_SOURCE_PATH --add
第一条命令仅用于检查:打印系统理解的内容、角色转换结果,以及匹配规则能否真正选中它。不加 --add 不会写入任何内容。来源路径只读;确认后的转换结果会复制到公司 role-library/。
本地优先设计
127.0.0.1。~/.config/mission-control。设置 MISSION_CONTROL_HOME 可覆盖。智能体通过你选择的命令行 AI 工具读取和修改项目文件夹。该工具的审批与沙箱设置决定智能体能做什么。
会话会产生费用
雇用智能体只写入持久记录;启动会话才可能产生费用。RandComp Studio 明确区分这两个概念。
常见问题
randcomp: command not found把 ~/.local/bin 加入 PATH。安装程序会打印适合当前 shell 的精确命令。
export PATH="$HOME/.local/bin:$PATH"
这只影响源码安装,桌面应用自带 Python。源码安装需要 Python 3.11 以读取 TOML 运行器配置;在 macOS 上可运行 brew install python 安装当前版本,也可运行:
MISSION_CONTROL_PYTHON=/path/to/python3 ./install.sh
应用已经内置 tmux,无需另行安装。它无法内置的是你的命令行 AI 智能体:确认工具位于 PATH 并已通过自身命令登录。randcomp status 会显示找到的工具和登录状态。若从源码安装,则机器上仍需安装 tmux。然后检查:
randcomp status randcomp role runners
记住的公司不会随当前目录变化。请使用 --company PATH 明确指定另一个公司。
重启前先读取确切原因和会话记录:
randcomp agent logs AGENT_ID randcomp agent attach AGENT_ID
维护
已安装命令会指向该文件夹。移动后,请在新位置重新运行 ./install.sh。
rm ~/.local/bin/randcomp rm ~/.local/bin/randcomp-studio
然后删除解压后的产品文件夹。公司文件夹属于你,不会被触碰。