You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
setup.sh in an AI assistant's shell (no terminal) refuses with "Re-run with --yes", the flag AGENTS.md's first rule forbids the assistant, and AGENTS.md gives no other route #476
(lane openRepoShape-3, 2026-10-12T21:54Z) Found by lane 3's v1.0.0 acceptance pass: an assistant following AGENTS.md literally, on Linux, standard at 36538fd. Lane 3 claims it.
What is wrong. AGENTS.md's first rule says: "Run ./setup.sh (or the one-liner) WITHOUT --yes and let it ask. The human types yes at its prompt; you never answer it for them." Section 2 says the same (AGENTS.md:22-24, 76-81; README.md:440-443). But an AI assistant's shell almost never has a terminal: Claude Code's Bash tool, Codex and CI-style runners give the command no tty. So the assistant runs setup exactly as told and gets the plan, then:
REFUSED: this will create THREE repositories and there is no terminal to confirm on. Re-run with --yes if you mean it.
That is exit 2, from setup-project.py:1616-1618 (the not sys.stdin.isatty() branch). The prompt the human was to answer never appears. The only way forward the refusal offers is --yes, the flag rule 1 forbids the assistant to pass. AGENTS.md has no route for this case, so an assistant that obeys stops, and one that follows the refusal breaks the rule that outranks the rest. The same holds for the one-liner and the openRepoShape <Project> command, which hand over to the same code.
tests/test_setup_project_py.py:349 asserts the refusal deliberately, so the code behaves as designed. The gap is that nothing tells the assistant what to do instead.
Proposed fix. It keeps the rule: the human's own yes creates repositories.
AGENTS.md section 2, within the cap: when the shell has no terminal, the assistant shows the plan from a run without --yes, then gives the human the exact command to run in THEIR OWN terminal, where the prompt can ask. It never passes --yes itself. Mirror it in README's setup section.
setup-project.py's no-terminal refusal: name that exit first, along the lines of "run this command in a terminal so it can ask, or, if you are the person deciding, re-run with --yes". It must not read as an instruction an agent can take.
Keep tests/test_setup_project_py.py:349's refusal. Assert the new wording, and that it never invites the assistant to pass --yes on its own.
Why v1.0.0. This is the first procedure in AGENTS.md, for the readers AGENTS.md is written for. As written, it cannot be completed by an assistant that obeys it. Proposed P1.
Parent: #459 (setup, scaffold, family and the shared helpers).
CLAIMED — lane openRepoShape-3, session 20b4ae33-927d-4b5d-a856-e7e467ea11b2@Eagle, 2026-10-12T22:01:52Z, for #476
Logged in lanes/log/openRepoShape-3.md at 60a6f2bbf8d0e13210b58b44e83243630dccc1c0.
The three reads (lane-collision-protocol Rule 1):
1. existing `CLAIMED —` comments on opensoft/openRepoShape#476:
none
2. `gh pr list --repo opensoft/openRepoShape --state all --search "#476"`, kept where the row or its body names `#476`:
none
3. `git ls-remote --heads git@github.com:opensoft/openRepoShape` branches naming `476` as a whole token:
none
Activity
brettheap commentedon Oct 12, 2026
CLAIMED — lane openRepoShape-3, session 20b4ae33-927d-4b5d-a856-e7e467ea11b2@Eagle, 2026-10-12T22:01:52Z, for #476
Logged in
lanes/log/openRepoShape-3.mdat60a6f2bbf8d0e13210b58b44e83243630dccc1c0.The three reads (lane-collision-protocol Rule 1):
setup-project.py: every question - the yes, each install offer, the p…
Merge origin/main (48585e6: #465) into fix/setup-no-terminal-route
setup-project.py: a controlling terminal this run cannot be answered …
Merge origin/main (57c85e9: #468) into fix/setup-no-terminal-route
README.md: the preflight offers, for gh, to install it, log it in or …
setup-project.py: every question - the yes, each install offer, the p…
Merge origin/main (70d0d1b) into docs/v1-accuracy
README.md and AGENTS.md: 28 statements the v1.0.0 accuracy pass found…
Merge main cc8f2da into fix/adopt-plan-quote-yaml-keywords (#181)