skills/huangwb8/skills/parallel-vibe

parallel-vibe

SKILL.md

parallel-vibe

你要做什么

把用户的一条指令,拆成多个 thread(任务视角),并在多个**独立工作区(workspace)与多个独立进程(runner 子进程)**中执行:

  • 每个 thread 只运行一条终端命令(例如 codex ... exec "..."claude ... -p "..."),确保进程级独立

  • 默认串行跑 threads(省资源、减少 API 限流/轮询风险);用户明确要求时再并行

  • 最终把每个 thread 的产物与日志落盘,并在 @main/ 生成可追溯的计划与汇总

  • .parallel_vibe/{project_id}/{thread_id}/...

  • .parallel_vibe/{project_id}/@main/summary.md(综合汇总)

输入

  • 必需:prompt(用户原始指令)
  • 可选:n(线程数,默认 5,范围 1-9;用户明确要求则以用户为准)
  • 可选:每个 thread 的 runner/model/prompt(通过 @main/plan.json--plan-file 自定义)
  • 可选:--project-id/--resume(复用已有 project 目录)
  • 可选:--parallel/--max-parallel(用户明确要求并行时使用)

输出

你必须向用户返回:

  • 本次运行的结果目录:.parallel_vibe/{project_id}/
  • 如何查看汇总:.parallel_vibe/{project_id}/@main/summary.md

软护栏(必须遵守的操作规范;不是安全隔离)

当你在某个 thread 的 workspace/ 内工作时:

  • 只允许读写当前 workspace/ 及其子目录
  • 禁止访问父目录(..)与任何绝对路径写入
  • 禁止读取/写入 .parallel_vibe/{project_id} 下的其他 thread 目录
  • 产物必须落盘到当前 workspace/(便于追溯与汇总)

说明:parallel-vibe 提供的是“工程隔离”(减少相对路径污染与文件互相覆盖),不是容器/沙箱级的强安全隔离。默认拒绝 --src-dir 中的 symlink(可用 --symlink-policy 覆盖,但存在越界风险);不要把包含敏感文件(如 .env、SSH key)的目录作为 --src-dir

工作流

  1. 从用户消息提取:
    • 用户指令原文 prompt
    • 线程数 n:用户明确要求则照做,否则默认 5
    • 是否要求并行:若未明确要求,默认串行
  2. 规划 thread(启发式,必须落到“可执行命令”):
    • 每个 thread 明确:thread_id/title/runner/model/prompt
    • 推荐路由(默认策略):
      • claude:规划/审查/风险与边界(强推理、强约束)
      • codex:实现/修改/测试与验证(代码落地)
    • 模型选择
      • profile=fast|deep|default 表达”任务强度”,再由 parallel-vibe/config.yaml:models 映射到你本机可用的 model_id
      • 如你已经确定具体模型,也可在计划里直接写 model=<model_id> 覆盖 profile
    • effort 等级选择low / medium / high):
      • 若用户已明确指定,严格遵从用户要求
      • 否则根据 thread 的实际 prompt 自主判断:
        • low:指令简单明确,无歧义(如格式化、重命名、简单查询)
        • medium:中等复杂度(如功能实现、代码重构、文档生成)
        • high:需要深度推理(如架构设计、多步骤分析、有歧义需要深度理解的任务)
      • 每个 thread 可独立设置不同的 effort 等级
  3. 在用户当前目录运行脚本(不要手写编排逻辑):
python3 parallel-vibe/scripts/parallel_vibe.py --prompt "<用户指令原文>"

如果该 skill 已做系统级安装(推荐),脚本通常位于以下路径之一(按你当前平台选择):

python3 ~/.codex/skills/parallel-vibe/scripts/parallel_vibe.py --prompt "<用户指令原文>"
# 或
python3 ~/.claude/skills/parallel-vibe/scripts/parallel_vibe.py --prompt "<用户指令原文>"

常见参数(按需添加):

# 指定线程数(默认 5)
python3 parallel-vibe/scripts/parallel_vibe.py --prompt "<用户指令原文>" --n 5

# 复用已有 project(便于重跑/续跑;每次运行仍会重建各 thread/workspace)
python3 parallel-vibe/scripts/parallel_vibe.py --prompt "<用户指令原文>" --project-id <32位md5> --resume

# 只生成计划与工作区(不运行 threads),便于你先改 plan
python3 parallel-vibe/scripts/parallel_vibe.py --prompt "<用户指令原文>" --plan-only

# 使用自定义 plan(JSON)
python3 parallel-vibe/scripts/parallel_vibe.py --plan-file /path/to/plan.json --src-dir . --out-dir .

# src_dir 存在 symlink 时的处理策略(默认 error 拒绝;skip 剔除;keep 保留为 symlink)
python3 parallel-vibe/scripts/parallel_vibe.py --prompt "<用户指令原文>" --symlink-policy skip

# 用户明确要求并行时才开启(默认串行)
python3 parallel-vibe/scripts/parallel_vibe.py --prompt "<用户指令原文>" --parallel --max-parallel 3
  1. 打开并阅读汇总:
    • .parallel_vibe/{project_id}/@main/summary.md
  2. 向用户交付:
    • 汇总结论(以 @main/summary.md 为准)
    • 指向每个 thread 工作区的路径(用户需要时可直接查看/对比)

自定义 thread(可选)

如需精确控制每个 thread 的 runner/profile/model/prompt,可直接编辑运行产物:

  • .parallel_vibe/{project_id}/@main/plan.json

然后用同一个 --project-id + --resume 续跑。 注意:--resume 会复用 project 目录与 @main/plan.json,但每次运行仍会重建各 thread 的 workspace/(避免复用旧缓存导致不可追溯/不一致)。

⚠️ 安全提示:如计划中使用 runner.type=shell,它会执行你提供的任意命令模板(仅对受信任的 plan 使用);并且 shell/工具本身可能读写用户全局缓存目录或访问绝对路径,因此不应将其理解为“安全沙箱”。

Runner 命令形态(给规划用)

本 skill 的关键是假设 runner 支持“一条命令 = 一次独立执行”。

常见形态(以官方文档为准;具体参数以你本机 CLI 为准):

# OpenAI Codex CLI(非交互执行;全局参数通常放在子命令 exec 之前)
# <effort> 由 AI 根据 prompt 复杂度自主选择:low / medium / high
# 若用户已明确指定 effort,以用户要求为准
codex -m <model_id> -c 'reasoning_effort="<effort>"' exec "你的指令内容"

# Claude CLI / Claude Code(打印模式)
# <effort> 同上,AI 自主规划或遵从用户指定
claude --model <model_id> --effort <effort> -p "你的指令内容"

计划里 runner 参数约定(用于把 --help 中的参数安全落到“一条命令”):

  • runner.args:全局参数(放在子命令前;适合 codex -c ...claude --effort ...
  • runner.sub_args:子命令参数(放在子命令后、prompt 前;适合 codex exec --some-flag ...

清理方式

在触发目录执行:

rm -rf .parallel_vibe
Weekly Installs
1
Repository
huangwb8/skills
GitHub Stars
17
First Seen
5 days ago
Installed on
mcpjam1
claude-code1
replit1
junie1
windsurf1
zencoder1