首页 / 资讯中心 / 文章详情

Trellis Channel 多 Agent 协作工作流实战:六种 Channel 模式的完整命令手册

Trellis Channel 多 Agent 协作工作流实战:六种 Channel 模式的完整命令手册 ★ FEATURED ARTICLE
桌面应用【免费下载链接】EcoPaste跨平台的剪贴板管理工具 | Cross-platform clipboard management tool项目地址https://gitcode.com/ayangweb/EcoPaste点击查看免费下载本指南以仓库.opencode/skills/trellis-channel/references/workflows.md为骨架系统讲解 Trellis Channel 本地多 Agent 协作运行时的六种标准工作流A–F多轮头脑风暴、实现/检查派发、并行评审、一次性 Worker、论坛频道与既有线程接管。文章完整收录每种模式的可复制命令并结合同目录下的 command-reference.md、workers.md、forum.md、progress-debugging.md 以及 SKILL.md 技能索引补充每个命令的参数含义、事件模型与注意事项。读完本文你将掌握按意图选模式、用持久频道承载多轮协作、用channel run处理一次性提问、用wait的--kind事件信号等待 Worker的完整实操能力。模式选择总则按意图选 Patterntrellis channel是 Trellis 的本地多 Agent 协作运行时。它的核心设计理念是多轮工作优先使用持久频道durable channel一次性提问使用channel run。当 Agent 需要通过持久事件日志互相沟通、需要以独立进程形式派生出 Worker、需要对运行中的 Worker 进行中断或调试、或者需要在--type forum的持久频道上记录反馈时都应该使用trellis channel。在深入六种模式之前先用三条命令确认环境就绪trellis --version trellis channel --help trellis channel list --all参考 SKILL.md 的意图路由表用户意图与模式的对应用法如下用户说和 codex/claude 讨论一下或 brainstorm with another agent → 阅读并应用本文的Pattern A用户说派一个 implement/check agent或 让 agent review → 应用Pattern B/C再配合 workers.md 查阅 spawn 细节用户说开 issue 区 / topic 群 / changelog / board → 应用Pattern E配合 forum.md用户说看看这个 thread / linked context → 应用Pattern F用户说channel 卡住了 / 没输出 / progress 被截断 → 配合 progress-debugging.md用户说具体命令怎么写 / what flags does X take → 配合 command-reference.md。Pattern A多轮头脑风暴Multi-round Brainstorm适用场景用户提出和 codex/claude 讨论一下、brainstorm、拉一个 agent 进来一起看。核心原则是绝不能只答一轮就停——一次回答加一次确认只是 review不是 brainstorm。必须阅读回答、识别模糊地带、发出新的探针probe循环往复直到结果可以执行。标准命令序列# 1. 创建频道--by main 记录创建者 trellis channel create brainstorm-storage-layer --by main \ --task .trellis/tasks/05-XX-storage-adapter # 2. 派生架构师 Worker指定 agent 卡片、provider、注入上下文文件 trellis channel spawn brainstorm-storage-layer \ --agent architect --provider codex \ --file .trellis/tasks/05-XX-storage-adapter/prd.md \ --file .trellis/tasks/05-XX-storage-adapter/design.md \ --as cx-arch --timeout 30m # 3. 发送第一轮探针长文本优先用 --text-file避免塞进 shell 位置参数 trellis channel send brainstorm-storage-layer \ --as main --to cx-arch --text-file /tmp/brainstorm-r1.md # 4. 阻塞等待 Worker 完成回合 trellis channel wait brainstorm-storage-layer \ --as main --kind done --from cx-arch --timeout 10m参数注解以 workers.md 为准create --task path将频道与 Trellis 任务目录关联记录在create事件中spawn --agent architect加载.trellis/agents/architect.md卡片卡片 frontmatter 提供 provider/model/as默认值markdown 正文成为 Worker 的系统提示词角色spawn --provider codex覆盖卡片中的 provider须通过适配器注册表校验当前支持claude、codexspawn --as cx-arch频道内 Worker 的句柄其他 Agent 用--to cx-arch与之通信spawn --file path ...可重复、支持 glob把文件内容注入 Worker 系统提示词。上下文装载器有硬性限制单文件 1 MB 硬上限超限报错、200 KB 单文件预警、500 KB 组装总上下文预警、路径穿越围栏所有解析路径必须落在--cwd之下spawn --timeout 30m超时自动击杀30s/2m/1h等格式send --as main --to cx-arch--as是说话者身份--to是目标 Worker长文本应使用--text-file或--stdinwait --kind done以 Trellis 系统事件作为完成信号详见下文tag vs kind。最小轮次结构必须覆盖的五项每一轮头脑风暴都应覆盖以下五个维度否则不算完成方向切分该能力应放进现有机制还是新建一套机制MVP 边界v1、v2 分别是什么什么情况会迫使 v2 回退到 v1数据契约事件events、schema、元数据、状态唯一事实来源source of truth、兼容性。CLI / UX 契约命令名、flag、错误处理、默认值、歧义场景。跨层风险与测试共享工具shared helpers、漂移点drift points、阻塞发布release-blocking的测试。可选轮次运维轮日志、调试、卡死的 Worker、kill/restart、恢复路径迁移/发布轮破坏性变更breaking status、manifest、changelog、文档站点反对派评审轮让对等 Agent 反过来论证当前方案的缺陷。探针质量要求每一轮探针都应要求对方给出具体的文件路径、命令、schema、被否决的备选方案、阻塞发布的 issues。当需要拍板时拒绝含糊其辞reject hedging直接要求决策。Pattern B实现 / 检查 Agent 派发Implement / Check Agent适用场景用户要求派发实现implement或评审check类工作。TASK.trellis/tasks/05-12-foo trellis channel create cr-foo --task $TASK --by main trellis channel spawn cr-foo \ --agent check \ --jsonl $TASK/check.jsonl \ --file $TASK/prd.md \ --file $TASK/design.md \ --file $TASK/implement.md \ --cwd $PWD --timeout 15m trellis channel send cr-foo --as main --to check --text-file /tmp/cr-brief.md trellis channel wait cr-foo --as main --kind done --from check --timeout 15m trellis channel messages cr-foo --kind message --from check --tag final_answer实现 vs 检查实现工作使用--agent implement并发送一份实现简报implementation brief。仓库中 trellis-implement.md 定义了 Implement Agent 的职责先读.trellis/workflow.md、.trellis/spec/、任务 prd/design/implement 工件再按规格实现且禁止执行git commit、git push、git merge只实现必需内容、不做过度设计检查工作使用--agent check简报中必须包含确切的 diff 范围、相关规格、已运行的验证。仓库中 trellis-check.md 定义了 Check Agent 的职责用git diff获取改动、对照 prd/design/implement 与.trellis/spec/审查、自己修复问题而非只报告、最后跑 lint 与 typecheck 验证并按固定格式回报。--jsonl清单注入--jsonl $TASK/check.jsonl是 Trellis 清单manifest注入每行形如{file:path,reason:why}reason会以注释形式保留在注入内容头部让 Worker 知道为什么给它看这个文件。spawned事件会记录字面files数组与由--jsonl展开的manifests保证审计轨迹反映 Worker 实际看到的内容。关于完成信号的权威结论tag vs kind重要trellis channel wait的完成信号必须使用--kind done/--kind turn_finished这类Trellis 系统事件而不是用户自定义的--tag。依据 command-reference.md 的tag-vs-kind章节v0.6.0 的 channel CLI 中根本没有--tagflag--kind也不是任何--tag的遗留别名--kind是唯一的事件类型过滤器且被限制在 Trellis 事件白名单CHANNEL_EVENT_KINDS内依赖 Worker 自己运行send --tag my_signal来汇报完成是不可靠的——LLM Worker 常常把 tag 字符串写进散文而不是真的执行 CLI 命令不要发明用户侧 tag 作为完成信号Worker 在消息里写自定义字符串只是message事件里的文本无法被wait匹配。Pattern C并行评审者Parallel Reviewers适用场景需要多个评审 Agent 并行检查同一份产出。用一个频道 不同的 Worker 名称不要为每个评审者各开一个频道。trellis channel create cr-feature --by main --ephemeral trellis channel spawn cr-feature --agent check \ --jsonl $TASK/check.jsonl --file $TASK/prd.md --file $TASK/design.md \ --timeout 15m # 第二个 Worker不同 provider用 --as 显式命名区分 trellis channel spawn cr-feature --agent check --provider codex --as check-cx \ --jsonl $TASK/check.jsonl --file $TASK/prd.md --file $TASK/design.md \ --timeout 15m # 向两个 Worker 各自发送同一份评审简报 trellis channel send cr-feature --as main --to check --text-file /tmp/cr-brief.md trellis channel send cr-feature --as main --to check-cx --text-file /tmp/cr-brief.md # 等待全部 Worker 完成 trellis channel wait cr-feature --as main --kind done --from check,check-cx --all --timeout 15m要点--ephemeral频道从默认channel list中隐藏且是channel prune --ephemeral的清理目标--from check,check-cx作者 CSV 过滤--all要求--from列出的每一个 Worker 都产生匹配事件才会返回若超时则退出码为124并向 stderr 打印timeout: still waiting on ...指名仍缺失的 Worker详见 command-reference.md 的wait行为说明。Pattern D一次性 WorkerOne-shot Worker适用场景一次性提问不需要保留频道。trellis channel run --provider codex --message say hi in 3 words --timeout 1m trellis channel run --agent plan --message-file /tmp/plan-question.md --timeout 10mrun的语义依据 command-reference.md一次性模式name 省略时自动生成run-hex名称内部流程创建临时频道createModerun→ 派生单个 Worker → 发送提示词 → 等待done→ 将最终助手文本打印到 stdout →成功则删除临时频道失败错误/超时/被杀则保留频道并打印路径供检查退出码为 1run没有--tagflag完成判定依赖 supervisor 发出的done事件run的 stdout 只输出最终助手文本方便管道pipe消费诊断信息走 stderr。Pattern E论坛频道Forum Channel适用场景issue 论坛、话题式反馈、发布 todos、Agent findings、内部 changelog。完整模型见 forum.md此处给出接入要点创建时必须指定--type forum创建后类型不可变forum ↔ chat 不能互转论坛频道不是普通聊天流默认读取路径是论坛摘要 → 单条线程时间线 → 当前上下文chat默认是扁平消息时间线channel messages永远渲染事件流论坛专属的--thread/--action会被拒绝forum类型下post、forum、thread、thread rename子命令才可用线程通过稳定的--thread key惯例为小写 kebab-case标识首个动作是opened--description是持久的线程描述回答这条线程是关于什么的--text/--stdin/--text-file是事件正文这条时间线条目上的评论/载荷--labels/--assignees是 CSV 且为替换语义replace不是 append--summary是滚动线程摘要在status closed时设置摘要是标记线程已解决并附带上下文的标准做法纠正状态用post ... status、post ... summary、post ... --labels、thread rename不要把删除单条评论或硬删线程建模为正常流程。thread rename是唯一的重命名路径post name rename会被拒绝trellis channel thread rename design-feedback old-key new-key \ --scope global \ --as main内部 Changelog 模式全局论坛频道的常见用法之一是内部发布/运行时 changelog每个显著变更开一条线程保持历史可搜索trellis channel create release-notes \ --type forum \ --scope global \ --description Internal release and runtime changelog. \ --context-raw One thread per notable change; close when shipped. \ --by main trellis channel post release-notes opened \ --scope global \ --as main \ --thread release-2026-q1 \ --title Channel threads and forum UX in 0.6 \ --description Forum channel UX shipped in the 0.6 line. \ --labels channel,release \ --text-file /tmp/release-notes.md线程 key 要稳定、有描述性如release-2026-q1、runtime-event-schema-change方便后续读者按名查找。Pattern F接管既有线程Take Over Existing Thread适用场景用户直接给出一个论坛/线程名称要求恢复上下文。trellis channel forum board --scope global trellis channel thread board thread --scope global --raw trellis channel context list board --scope global --thread thread trellis channel messages board --scope global --raw --thread thread输出约束摘要而非转储接管后向用户输出的是约束摘要不是事件转储。摘要至少包含五项用户层面的问题user-level problem影响本仓库的上下文文件context files that affect this repo当前版本 vs 未来版本的需求current-version versus future-version requirements当前代码/设计是否满足它whether current code/design satisfies it下一步动作或待追加的评论next action or comment to append。贯穿全部模式的通用要点作用域project vs global所有子命令默认接受--scope project|global除非另有说明默认project解析当前 cwd 的项目桶bucket--scope project默认操作当前 cwd 的项目桶--scope global操作跨项目共享的__global__桶必须刻意选择作用域一个全局论坛从项目列表里是看不到的除非显式传--scope global找不到频道时用trellis channel list --all --all-projects扫描每个项目桶。长文本传递使用--stdin或--text-file承载长消息不要把混合中英文的长文本塞进 shell 位置参数zsh 等 shell 会错误解释标点send的正文优先级位置参数[text]→--stdin→--text-file惯用写法trellis channel send T --as A --stdin /tmp/message.md或trellis channel send T --as A --text-file /tmp/message.md。事件模型速查command-reference.md 权威列表CHANNEL_EVENT_KINDS白名单由parseChannelKind强制校验create、join、leave、message、thread、context、channel、spawned、killed、respawned、progress、done、error、waiting、awake、undeliverable、interrupt_requested、turn_started、turn_finished、interrupted、supervisor_warning。wait侧--kind支持 CSVOR 语义messages侧--kind只接受单值progress、waiting、awake、supervisor_warning、turn_*/interrupt*属于非默认可见事件需显式--kind或--include-progress才可见超时退出码wait超时为124常规错误为 1/2。Worker 收件箱与派发循环Worker 在收到第一次send --to worker或在--inbox-policy broadcastAndExplicit下的广播之前保持收件箱空闲。典型的派发循环# 1. 唤醒 Worker严格投递模式可防消息静默丢失 echo Run the failing test and report. \ | trellis channel send impl-task --as dispatcher --to codex-impl --stdin \ --delivery-mode requireRunningWorker # 2. 阻塞直到完成 trellis channel wait impl-task --as dispatcher \ --from codex-impl --kind done,error --timeout 30m # 3. 读取最终回答 trellis channel messages impl-task --from codex-impl --last 1 --rawsend --delivery-mode三档appendOnly默认只管记录、requireKnownWorker目标必须有spawned事件否则失败、requireRunningWorker目标 Worker 当前必须存活否则失败。Worker 资源防护OOM Guard每次spawn都会按项目桶执行两条防护策略空闲 TTL默认5m0禁用清扫超过阈值的空闲 Worker存活 Worker 预算默认60禁用拒绝超过预算的新 spawn。配置优先级从高到低CLI flag → 环境变量TRELLIS_CHANNEL_WORKER_IDLE_TIMEOUT、TRELLIS_CHANNEL_MAX_LIVE_WORKERS→.trellis/config.yaml的channel.worker_guard→ 内置默认值。调试纪律优先子命令不手工 grep events.jsonl依据 progress-debugging.mdpretty 输出是操作员仪表盘可能截断 progress 增量、工具名、多行状态等——永远不要根据被截断的 progress 行来诊断 Worker审计一律用--raw每行一个 JSON 事件用messages --raw --kind progress拼接detail.text_delta可重建模型实际流式输出的文本Worker活着但沉默的常见原因provider 冷启动、阻塞的 MCP server、等待工具结果时子进程挂起、模型限流——依次检查list --all --all-projects、worker.pid/worker.worker-pid存活状态、tail -f worker.log、最后 50 条 raw 事件论坛频道绝不直接解析events.jsonl多线程复用到单一文件手工解析会混线程、漏线程生命周期事件、忽略收件箱游标一律使用forum、thread、messages --thread、context list常见故障对照trellis: command not found→npm install -g mindfoldhq/trelliswait立即退出 → 过滤器或身份冲突改用不同--as并查看 raw 消息幽灵 Worker →trellis channel kill name --as worker --force。存储布局供排障时定位文件~/.trellis/channels/ └── bucket/ └── channel-name/ ├── events.jsonl ├── channel.lock ├── worker.log ├── worker.pid ├── worker.worker-pid ├── worker.config ├── worker.session-id ├── worker.thread-id ├── worker.inbox-cursor └── worker.spawnlockkill会清理pid、worker-pid、config、spawnlock侧车文件但保留log、session-id、thread-id用于取证与--resume续跑。模式选择速查表用户意图推荐模式关键命令讨论 / brainstorm / 拉 Agent 一起看Pattern Acreatespawnsendwait --kind done多轮探针派发实现或评审Pattern Bspawn --agent implement\|checkwait --kind done多 Agent 并行评审Pattern C单频道 多--aswait --all一次性提问Pattern Dchannel run --message/--message-fileissue 区 / changelog / 论坛Pattern Ecreate --type forumpost opened/comment/status/summary接管既有线程Pattern Fforumthreadcontext listmessages --thread输出约束摘要总结trellis channel的六种工作流覆盖了多 Agent 协作的完整生命周期从头脑风暴A到派发执行B、并行评审C、一次性问答D、持久化论坛沉淀E再到既有上下文接管F。它们的共同底座是共享事件日志所有命令都在同一份events.jsonl上追加与消费--as标注身份、--to控制路由、wait --kind以系统事件作为可靠完成信号。按意图选择模式在六种参考文档workflows.md、command-reference.md、workers.md、forum.md、progress-debugging.md、SKILL.md之间取用细节即可把和另一个 Agent 讨论从一次性聊天升级为可审计、可恢复、可复用的多 Agent 协作流程。赞分享桌面应用【免费下载链接】EcoPaste跨平台的剪贴板管理工具 | Cross-platform clipboard management tool项目地址https://gitcode.com/ayangweb/EcoPaste点击查看免费下载相关推荐Trellis Channel 多代理协作工作流实战六种模式与命令级操作指南Trellis Channel 多代理协作工作流实战六种模式与命令级操作指南 导读 本文是 trellis channel skill 中 workflows桌面应用Trellis Channel 多智能体协作工作流实战六种频道模式的意图匹配与命令行编排Trellis Channel 多智能体协作工作流实战六种频道模式的意图匹配与命令行编排 本指南基于 EcoPaste 仓库内置的 trellis chann桌面应用EcoPaste 项目中的 Trellis 多智能体协作工作流实战指南六大 Channel 协作模式详解EcoPaste 项目中的 Trellis 多智能体协作工作流实战指南六大 Channel 协作模式详解 导读 本文以 EcoPaste 仓库内安装的 Tre桌面应用上一篇Aeron 2024-2025路线图10个即将发布的关键特性深度解析下一篇arduino-esp32 全链路跑通从点亮 LED 到 OTA 升级创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
阅读完成 · 觉得有帮助?
咨询建站