← 返回信息流
Agent SkillLINUX DO · AI·2 小时前

开源ask-tmux-pipeline实现Codex与Claude嵌套协作

原标题:通过tmux嵌套实现让codex/claude互问的script/skill: ask-tmux-pipeline

速览

该开源项目ask-tmux-pipeline通过tmux嵌套技术,解决了在CLI环境中手动切换Codex和Claude进行代码设计与审查的繁琐问题。它支持自动将Prompt和Codex输出传递给Claude进行规划或审查,并处理长文本粘贴和窗口管理痛点。项目旨在简化开发者工作流,实现两个AI模型的无缝协作。

AI 深度解读

背景

在命令行界面(CLI)的日常工作中,许多开发者倾向于采用“分工协作”的模式:利用 codex 作为主要的执行 Worker,而将 claude 用于“设计规划”(design and plan)或“审查、评论与建议”(review, comment and suggest)。

然而,这种双模型协作模式在实际操作中面临显著的痛点。传统的“笨办法”是手动将 Prompt 和 codex 的完整响应复制粘贴到 claude 中,等待生成结果后再复制回 codex。这种方式存在三大缺陷:

  1. 效率低下:频繁的手动复制粘贴费时费力。
  2. 技术限制与 Bug:由于终端和 CLI 对巨量文本粘贴的限制,经常会出现各种粘贴错误或截断 Bug。
  3. 上下文丢失与管理混乱:当 CLI 响应时间较长,用户分心后返回时,难以在多开的终端窗口中快速定位到对应的会话窗口。

虽然社区中存在现有的解决方案,如 ask-claudecodex 官方的 codex review 插件,但它们均无法满足作者特定的工作流需求:

  • ask-claude:经常出现故障,且功能局限于代码审查,无法充分结合原始的 Prompt 或 Spec(规格说明)内容进行综合考量。
  • codex review:虽然好用,但依赖 Git 环境,主要用于代码审查,同样缺乏对原始 Prompt/Spec 上下文的整合能力。

基于此,作者决定自行开发一套基于 tmux 嵌套的工作流脚本,以解决上述痛点。

核心内容

作者开发了名为 ask-tmux-pipeline 的开源脚本/技能(Skill),其核心逻辑是利用 tmux 终端复用器实现 CLI 的嵌套调用,从而构建一个自动化的“互问”工作流。

工作流程机制

该脚本通过嵌套 tmux session 来隔离和管理 claude 的调用过程,具体流程如下:

  1. 输入处理:将原始的 CLI 成果(即 codex 的输出)以及/或原始的 Prompt 输入到嵌套的 tmux CLI 会话中。
  2. 任务执行:嵌套的 tmux CLI 根据预设的场景和要求,调用 claude 进行“设计规划”或“审查评论建议”。
  3. 结果返回:任务完成后,将结果返回给主 CLI,并释放 tmux session。
  4. 异常处理与交互
    • 如果在 claude 规划过程中遇到需要人工干预的问题,脚本会暂停并等待用户输入,随后继续执行。
    • 如果在主 CLI 中连续使用,脚本会选择 resume(恢复)之前对应的 tmux CLI 会话,而不是重新开启一个新的会话,从而保持上下文连贯性。

技术实现与限制

  • 实现方式:采用“最笨的方法”,即直接嵌套 tmux 和 CLI。
  • 资源优化:未进行内存优化,作者坦言这是为了快速实现功能而采取的简单策略。
  • 兼容性:作者表示该脚本主要服务于个人应用场景,覆盖面不广,且不确定在 macOS 上直接运行是否会因资源占用过高而卡顿。
  • 可视化辅助:GitHub 仓库中提供了 Flowchart(流程图),以更直观地展示不同场景下的工作流逻辑。

开源声明

该项目已在 GitHub 开源(Repository: TrailblazerSR/ask-tmux-pipeline),并遵循 LINUX DO 社区的开源推广规范:

  • 项目已打上“开源推广”标签。
  • 项目完整开源,无未开源部分。
  • 项目已链接认可 LINUX DO 社区。
  • 帖子内的 AI 生成或润色内容已截图公示,接受社区监督。

关键要点

  • 痛点驱动:解决 CLI 环境下多模型协作时,手动复制粘贴导致的效率低、易出错及上下文管理混乱问题。
  • 技术选型:利用 tmux 的嵌套会话功能,实现主 CLI 与辅助 CLI(运行 claude)的隔离与交互。
  • 核心功能
    • 支持将原始 Prompt/Spec 与 codex 输出共同作为输入。
    • 支持 claude 进行设计规划或代码审查。
    • 支持会话恢复(Resume),避免重复创建会话。
    • 支持交互式暂停,允许用户在 claude 规划阶段介入。
  • 局限性
    • 实现方式较为原始(“笨嵌套”),未做内存优化。
    • 主要面向个人特定场景,通用性有限。
    • 在 macOS 等特定环境下的性能表现存在不确定性。
  • 替代方案不足:现有的 ask-claudecodex review 插件在上下文整合(Prompt/Spec)和灵活性上无法满足作者需求。

意义与影响

ask-tmux-pipeline 提供了一个极具启发性的 CLI 自动化思路,即通过终端复用器(Terminal Multiplexer)来解决 AI 辅助编程中的工作流断点问题。

  1. 工作流自动化创新:它展示了如何利用现有的终端工具(tmux)以低成本构建复杂的 AI 协作管道,无需依赖复杂的后端服务或 API 集成,即可实现多模型间的自动数据流转。
  2. 上下文完整性重视:与仅关注代码审查的工具不同,该脚本强调将原始 Prompt 和 Spec 纳入审查/规划环节,有助于确保 AI 的输出更符合初始设计意图,提升了 AI 辅助开发的准确性。
  3. 实用主义导向:作者承认其实现“笨拙”且“未优化”,但这种实用主义态度反映了开发者社区中“先解决痛点,再优化性能”的典型迭代路径。对于面临类似 CLI 多窗口管理痛点的开发者而言,该脚本提供了一个可参考的、轻量级的解决方案原型。
  4. 社区开源价值:通过开源并详细记录开发动机和限制,该项目为其他开发者提供了改进的基础,可能激发更多关于 CLI 与 AI 结合的工作流优化讨论和实践。
查看原文 →linux.do