← ClaudeAtlas

run-to-the-endlisted

오래 걸리는 명령을 돌리기 **직전에** 본다. 내가 "시험을 돌립니다" · "전체 검사를 돌리고" · "검증하겠습니다" · "실측하겠습니다" · "빌드하겠습니다" 라고 말하려는 자리, 또는 사용자가 "검사부터 돌려" · "시험 돌려" · "테스트 해봐" · "빌드해" · "마이그레이션 하자" · "커밋하고 푸시하자" 라고 한 자리에서 걸린다. `pytest` · `npm/pnpm test` · `gradle` · `mvn` · `cargo test` · `go test` · 타입 검사 · 린트 · 마이그레이션 · 배포 스크립트를 부르려 할 때도 걸린다. ⚠️ **정하는 것은 하나다 — 배경(run_in_background)으로 돌릴지 앞에서 기다릴지.** 배경으로 돌리고 턴을 끝내면 **기다리는 일이 사용자에게 넘어가고, 사용자가 "끝났어?" 를 물어야 일이 이어진다.** 대부분의 검사는 앞 한도(600초) 안에 들어오므로 배경으로 돌릴 이유가 없다 — 그것을 재는 도구가 여기 있다.
jjackkun/claude-harness-hermes · ★ 1 · AI & Automation · score 74
Install: claude install-skill jjackkun/claude-harness-hermes
# run-to-the-end — 시작한 일은 그 턴 안에서 끝낸다 ## 왜 만들었나 실제로 난 일이다. 한 세션에서 **세 번** 같은 모양이었다. ``` 나 시험을 배경으로 돌린다 → "끝나면 커밋하겠습니다" → 턴을 끝낸다 사용자 "시험 끝났어?" 나 (읽어 보고) "끝났습니다. 커밋하겠습니다" → 또 턴을 끝낸다 사용자 "왜 자꾸 끝났는데 끝나는대로 하겠다고 하는거야" ``` ★ **턴을 끝내면 공이 사용자에게 넘어간다.** 배경으로 돌린 뒤 턴을 끝내는 것은 **기다리는 일을 사용자에게 떠넘기는 것**이다. 사용자는 진행 보고를 원한 적이 없다 — **끝난 결과**를 원했다. ⚫ 마지막에는 더 나빴다: 시험 결과(`537 passed`)를 **이미 읽어 놓고도** *"끝나면 하겠습니다"* 라고 했다. 읽은 것과 말한 것이 어긋났다. ## 🔴 배경으로 돌릴 이유가 대개 없다 — 숫자로 확인한다 `Bash` 는 **앞에서 600초까지 기다린다**(`timeout` 최대치, 밀리초로 준다). 대부분의 검사는 그 절반도 안 쓴다. ```bash # ✅ 이렇게 — 결과를 손에 쥔 채로 다음 걸음까지 간다 Bash(command="<시험 명령>", timeout=600000) # 🔴 이러지 않는다 — 기다리기만 할 거면서 배경으로 돌린다 Bash(command="...", run_in_background=True) # → 턴이 끝나고 사용자가 기다린다 ``` ⚠️ **이 저장소는 얼마나 걸리나.** 숫자는 저장소마다 다르고 시간이 가면 늙는다. 그래서 **외우지 말고 잰다:** ```bash bash <이 스킬 폴더>/tests/how-long.sh ``` `package.json` · `Makefile` · `pyproject.toml` 등에서 **그 저장소의 검사 명령을 스스로 찾아** 하나씩 재고, 앞 한도 안에 드는지 알려 준다. ## 배경은 언제 쓰나 — **그동안 딴 일을 할 때만** 배경이 나쁜 것이 아니다. **그동안 실제로 다른 일을 할 때** 쓰는 것이다. ``` ✅ 시험을 배경으로 돌리고 그 사이 문서를 채운다 → 같은 턴에서 결과를 읽는다 ✅ 앞 한도(600초)를 넘는 것 — 배포 · 대규모 수집 · 오래 도는 벤치마크 🔴 배경으로 돌리고 할 일이 없어서 턴을 끝낸다 ← 이것이 그 실수다 ``` ⚠️ **배경으로 돌렸으면 그 턴 안에서 결과를 읽는다.** 딴 일이 먼저 끝나면 기다린다 — 사용자에게 넘기지 않는다. ## 턴을 끝내기 전 한 줄 점검 **마지막 문장이 사용자에게 "기다리라" 고 말하고 있나?** ``` 🔴 "시험이 끝나면 커밋하겠습니다" 🔴 "결과가 나오면 알려 드리겠습니다" ✅ "537개 통과했습니다. 커밋했습니다 (abc1234)." ``` ★ **끝났으면 다음 걸음까지 간다.** 사용자가 이미 *"진행하자"* 라고 했다면 그 진행에는 **커밋까지**가 들어 있다. 검사가 초록인 것을 확인한 뒤 다시 물어볼 일이 아니다. ⚠️ **