Claude commands and waits
Use your tier; unsure means subagent.
Main sessions
- Run
yoke watch <wrapper> --print-streaming-pair ...first; execute its printed recipe:background-wakearms the command and tail;in-turnuses foreground Bash withtimeout: 600000. - Relay launches set
BASH_DEFAULT_TIMEOUT_MS=3600000before Claude starts; subagents inherit it. Moved commands get one hour; a foreground timeout alone does not extend it. Without it, text-promptclaude -pkills moved calls ten minutes after the move. Have the launcher relaunch with the setting before a long wait; exporting inside Bash is too late. - Explicit background Bash uses
run_in_background: true, timeout: 3600000. - Preserve calls and captures without duplication; continue until exit. A background time limit means incomplete work. Never end an in-turn wait or poll a capture.
- Only interrupt a local check past about one minute: stop cleanly, retain its incomplete capture, commit and continue on CI. Never interrupt a CI watcher.
- Hold a claim: run
yoke sessions touch --mode parked --reason claimbefore Stop after arming Monitor. ci wait recorded for run N: end the turn if the watcher stops first; the verdict wakes you.
Wrappers
yoke watch --help lists wrappers; each --help owns its recipe. Iterate with
yoke watch pytest --impacted main --bounded; the attached QA case owns the full run.
Read raw capture once after exit. An announced QA-wait cadence means silence beyond it is
stuck; the deadline still ends the wait. Without a wrapper, Monitor a captured progress/failure
filter; read at most once per minute and file a note.
Subagents
Run foreground Bash through completion; the launch setting above protects moved calls.
Never use background Bash, Monitor or ScheduleWakeup. If missing, ask the parent to relaunch.
Suppression
Tokens never unblock watcher-tail, raw-pytest, subagent-background or GitHub polling checks.