From 595c7077acb7d3ba9dd7b708c9e6c849db7c52a8 Mon Sep 17 00:00:00 2001 From: Paulus Schoutsen Date: Fri, 5 Jun 2026 05:52:23 -0400 Subject: [PATCH] =?UTF-8?q?sandbox:=20PLAN=5FRUNNER=20=E2=80=94=20brief=20?= =?UTF-8?q?is=20just=20piped,=20no=20file=20references?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Rewrote the briefing so it never frames the brief as a file or mentions the former tempfile handoff: compose it, pipe it straight into the session (heredoc), claude-screen pastes it as one message. Dropped the file-pipe example and the "no tempfile dance" aside. Co-Authored-By: Claude Opus 4.7 --- sandbox/plans/PLAN_RUNNER.md | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/sandbox/plans/PLAN_RUNNER.md b/sandbox/plans/PLAN_RUNNER.md index 9f1487324e0c..3db5264cee4f 100644 --- a/sandbox/plans/PLAN_RUNNER.md +++ b/sandbox/plans/PLAN_RUNNER.md @@ -20,10 +20,9 @@ the window. One plan per session, sequentially. The brief is the sub-session's whole instruction set: which plan to read, the locked decisions, hard rules, build steps, the exact tests/greps to run, and — -critically — to **write a STATUS marker file LAST**. You pipe it on stdin in -the next step (claude-screen pastes whatever you pipe, multi-line and all), so -source it from wherever is convenient — a heredoc, or a scratch file you -already have it in. +critically — to **write a STATUS marker LAST**. You pipe it straight into the +session in the next step; `claude-screen` pastes whatever you pipe as one +message, multi-line and all. Hard rules every brief repeats: - **Execute the plan with the `phx:work` skill** — step through the plan's @@ -42,12 +41,9 @@ included — using bracketed paste and a separate submit keystroke, so the whole brief lands as one message: ```bash -# from a heredoc: ~/dev/claude-screen /home/paulus/dev/hass/core <<'BRIEF' …brief… BRIEF -# …or from a scratch file you already have it in: -~/dev/claude-screen /home/paulus/dev/hass/core < /tmp/-brief.md ``` Use an **unambiguous full ``** — `screen -p` matches by prefix, so a @@ -103,8 +99,7 @@ Then advance to the next plan. ## Gotchas (all bit at least once) - **Confirm the prompt submitted** — a first-run banner can swallow it; send - `$'\r'` to nudge. (`claude-screen` pastes multi-line briefs directly via - bracketed paste, so you just pipe the brief — no tempfile dance.) + `$'\r'` to nudge. - **`screen -p` is prefix-match** — use full, distinct window names. - **STATUS is written last** — its presence means done; nothing earlier does. - **Avoid git ops in the repo while a sub-session is mid-write** — index