puff
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChinesePuff
Puff
Overview
概述
Use this skill to launch Codex Cloud tasks without blocking the local CLI session. Use to run the Zig CLI, submit work, detach status watchers, and retain logs/results for later diff/apply actions.
run_puff_toolpuff使用此技能无需阻塞本地CLI会话即可启动Codex Cloud任务。使用运行Zig编写的 CLI,提交工作任务,分离状态监视器,并保留日志/结果以便后续进行差异对比/应用操作。
run_puff_toolpuffZig CLI Iteration Repos
Zig CLI迭代仓库
When iterating on the Zig-backed helper CLI path, use these two repos:
puff- (
skills-zig): source for the/Users/tk/workspace/tk/skills-zigZig binary, build/test wiring, and release tags.puff - (
homebrew-tap): Homebrew formula updates/checksum bumps for released/Users/tk/workspace/tk/homebrew-tapbinaries.puff
在基于Zig的辅助CLI路径上进行迭代时,请使用以下两个仓库:
puff- (
skills-zig):/Users/tk/workspace/tk/skills-zigZig二进制文件的源码、构建/测试配置以及发布标签。puff - (
homebrew-tap):已发布/Users/tk/workspace/tk/homebrew-tap二进制文件的Homebrew公式更新/校验和更新。puff
Quick Start
快速开始
bash
run_puff_tool() {
install_puff_direct() {
local repo="${SKILLS_ZIG_REPO:-$HOME/workspace/tk/skills-zig}"
if ! command -v zig >/dev/null 2>&1; then
echo "zig not found. Install Zig from https://ziglang.org/download/ and retry." >&2
return 1
fi
if [ ! -d "$repo" ]; then
echo "skills-zig repo not found at $repo." >&2
echo "clone it with: git clone https://github.com/tkersey/skills-zig \"$repo\"" >&2
return 1
fi
if ! (cd "$repo" && zig build -Doptimize=ReleaseSafe); then
echo "direct Zig build failed in $repo." >&2
return 1
fi
if [ ! -x "$repo/zig-out/bin/puff" ]; then
echo "direct Zig build did not produce $repo/zig-out/bin/puff." >&2
return 1
fi
mkdir -p "$HOME/.local/bin"
install -m 0755 "$repo/zig-out/bin/puff" "$HOME/.local/bin/puff"
}
local os="$(uname -s)"
if command -v puff >/dev/null 2>&1 && puff --help 2>&1 | grep -q "puff.zig"; then
puff "$@"
return
fi
if [ "$os" = "Darwin" ]; then
if ! command -v brew >/dev/null 2>&1; then
echo "homebrew is required on macOS: https://brew.sh/" >&2
return 1
fi
if ! brew install tkersey/tap/puff; then
echo "brew install tkersey/tap/puff failed." >&2
return 1
fi
elif ! (command -v puff >/dev/null 2>&1 && puff --help 2>&1 | grep -q "puff.zig"); then
if ! install_puff_direct; then
return 1
fi
fi
if command -v puff >/dev/null 2>&1 && puff --help 2>&1 | grep -q "puff.zig"; then
puff "$@"
return
fi
echo "puff binary missing or incompatible after install attempt." >&2
if [ "$os" = "Darwin" ]; then
echo "expected install path: brew install tkersey/tap/puff" >&2
else
echo "expected direct path: SKILLS_ZIG_REPO=<skills-zig-path> zig build -Doptimize=ReleaseSafe" >&2
fi
return 1
}bash
run_puff_tool() {
install_puff_direct() {
local repo="${SKILLS_ZIG_REPO:-$HOME/workspace/tk/skills-zig}"
if ! command -v zig >/dev/null 2>&1; then
echo "zig not found. Install Zig from https://ziglang.org/download/ and retry." >&2
return 1
fi
if [ ! -d "$repo" ]; then
echo "skills-zig repo not found at $repo." >&2
echo "clone it with: git clone https://github.com/tkersey/skills-zig \"$repo\"" >&2
return 1
fi
if ! (cd "$repo" && zig build -Doptimize=ReleaseSafe); then
echo "direct Zig build failed in $repo." >&2
return 1
fi
if [ ! -x "$repo/zig-out/bin/puff" ]; then
echo "direct Zig build did not produce $repo/zig-out/bin/puff." >&2
return 1
fi
mkdir -p "$HOME/.local/bin"
install -m 0755 "$repo/zig-out/bin/puff" "$HOME/.local/bin/puff"
}
local os="$(uname -s)"
if command -v puff >/dev/null 2>&1 && puff --help 2>&1 | grep -q "puff.zig"; then
puff "$@"
return
fi
if [ "$os" = "Darwin" ]; then
if ! command -v brew >/dev/null 2>&1; then
echo "homebrew is required on macOS: https://brew.sh/" >&2
return 1
fi
if ! brew install tkersey/tap/puff; then
echo "brew install tkersey/tap/puff failed." >&2
return 1
fi
elif ! (command -v puff >/dev/null 2>&1 && puff --help 2>&1 | grep -q "puff.zig"); then
if ! install_puff_direct; then
return 1
fi
fi
if command -v puff >/dev/null 2>&1 && puff --help 2>&1 | grep -q "puff.zig"; then
puff "$@"
return
fi
echo "puff binary missing or incompatible after install attempt." >&2
if [ "$os" = "Darwin" ]; then
echo "expected install path: brew install tkersey/tap/puff" >&2
else
echo "expected direct path: SKILLS_ZIG_REPO=<skills-zig-path> zig build -Doptimize=ReleaseSafe" >&2
fi
return 1
}Workflow
工作流程
- Ensure ChatGPT auth is present.
codex login - Run readiness checks.
Optional: print manual environment-creation instructions.
run_puff_tool doctor --env <env-id-or-label>run_puff_tool create - Launch cloud work with a detached watcher.
Optional: launch the cloud Join operator prompt (
run_puff_tool launch --env <env-id-or-label> --prompt "Implement X") for PR patch routing.seq -> joinCanary mode (single bounded cycle):run_puff_tool join-operator --env <env-id-or-label> --repo <owner/repo> --patch-inbox <locator>run_puff_tool join-operator --env <env-id-or-label> --repo <owner/repo> --patch-inbox <locator> --canary - Inspect running and completed watcher jobs.
run_puff_tool jobs - Tail watcher logs when needed.
tail -f <watch_log_path> - Inspect or apply result when ready.
codex cloud diff <task-id>codex cloud apply <task-id>
- 确保已完成ChatGPT身份验证。
codex login - 运行就绪性检查。
可选:打印手动创建环境的说明。
run_puff_tool doctor --env <env-id-or-label>run_puff_tool create - 启动带独立监视器的云端任务。
可选:启动云端Join操作器提示(
run_puff_tool launch --env <env-id-or-label> --prompt "实现X功能")以进行PR补丁路由。seq -> join金丝雀模式(单次有限循环):run_puff_tool join-operator --env <env-id-or-label> --repo <owner/repo> --patch-inbox <locator>run_puff_tool join-operator --env <env-id-or-label> --repo <owner/repo> --patch-inbox <locator> --canary - 查看正在运行和已完成的监视器任务。
run_puff_tool jobs - 必要时查看监视器日志。
tail -f <watch_log_path> - 准备就绪后查看或应用结果。
codex cloud diff <task-id>codex cloud apply <task-id>
Command Selection
命令选择
Use for async/background execution.
runs by default; pass to bypass pre-checks.
Use when you need formatted manual environment-creation instructions only.
Use when only task id/url is needed (it executes a cloud task).
Use for explicit auth/environment readiness checks.
Use for blocking foreground polling.
Use and to manage detached watchers.
Use to generate and launch the cloud join loop prompt that enforces manifest-first routing and execution.
Use for bounded runs; is shorthand for one cycle.
launchlaunchdoctor--skip-doctorcreatesubmitdoctorwatchjobsstopjoin-operatorseq -> joinjoin-operator --max-cycles <n>--canary使用进行异步/后台执行。
默认会运行;传递可跳过预检查。
仅当需要格式化的手动创建环境说明时使用。
仅需要任务ID/URL时使用(它会执行一个云端任务)。
使用进行显式的身份验证/环境就绪性检查。
使用进行阻塞式前台轮询。
使用和管理独立监视器。
使用生成并启动云端join循环提示,该提示强制执行清单优先路由和执行。
使用进行有限次数的运行;是单次循环的简写。
launchlaunchdoctor--skip-doctorcreatesubmitdoctorwatchjobsstopjoin-operatorseq -> joinjoin-operator --max-cycles <n>--canaryInterop With $cas
$cas与$cas
的互操作性
$casUse when orchestration requirements exceed simple cloud task lifecycle control.
Use for fast cloud kickoff and lifecycle polling.
Use directly for proxy lifecycle management (/) and app-server thread/turn orchestration, steering, forwarding server requests, or complex multi-thread routing.
$cas$puff$casstartstop当编排需求超出简单的云端任务生命周期控制时,使用。
使用进行快速云端任务启动和生命周期轮询。
直接使用进行代理生命周期管理(/)以及应用服务器线程/轮次编排、控制、转发服务器请求或复杂的多线程路由。
$cas$puff$casstartstopNotes
注意事项
Pass either environment id or unique environment label to .
Treat and as successful terminal states in watch loops.
Treat as terminal failure and inspect with and .
Runtime bootstrap policy for mirrors //: use the Zig binary only, default to Homebrew install on macOS, and fallback to direct Zig install from on non-macOS.
--envREADYAPPLIEDERRORcodex cloud status <task-id>codex cloud diff <task-id>puffseqcasliftpuffskills-zig向传递环境ID或唯一环境标签均可。
在监视器循环中,将和视为成功的终端状态。
将视为终端失败状态,并使用和进行检查。
的运行时引导策略与//一致:仅使用Zig 二进制文件,在macOS上默认使用Homebrew安装,在非macOS系统上回退到从直接进行Zig安装。
--envREADYAPPLIEDERRORcodex cloud status <task-id>codex cloud diff <task-id>puffseqcasliftpuffskills-zigResources
资源
- binary: create/submit/watch/launch/jobs/stop wrapper around
puff.codex cloud - : command map including optional
references/commands.mdpairing.$cas
- 二进制文件:
puff的创建/提交/监视/启动/任务/停止的封装工具。codex cloud - :命令映射,包括可选的
references/commands.md配对说明。$cas