tstack: "full send" 한마디로 머지까지 가는 에이전트 스킬
medplum에 올라온 PR 하나가 문서 링크 157개를 고치고 sol-loop 승인 한 줄을 달고 나왔어요
- 누가
- Theo Browne(t3dotgg, Ping.gg CEO)가 매일 쓰는 스킬을 누구나 쓰게 정리해 공개했어요.
- 언제
- 2026년 10월 24일 공개, 릴리스 없이 main에서 바로 받아요. 마지막 수정은 10월 28일이에요.
- 어디서
- Claude Code와 Codex에서 돌아요. T3 Code가 있으면 그 기능을 쓰고, 없으면 각 에이전트의 기본 도구로 돌아가요.
이게 불편했어요
에이전트에게 고칠 걸 맡겨도 PR을 연 다음부터는 다시 사람 일이었어요. CI가 끝났는지, 리뷰 봇이 뭘 지적했는지, main이 앞서 나갔는지 계속 들여다봐야 했어요. 자리를 비우면 에이전트는 '검사 기다리는 중'에서 멈춰 있었고요.
그래서 이렇게 풀어요
"full send"라고 한마디 하면 에이전트가 지금 상태부터 병합된 PR까지 혼자 맡아요. 핵심은 '아무도 안 보고 있다'는 전제예요. 그래서 직접 본 증거 없이는 병합하지 않고, 다른 회사 모델의 리뷰를 거치고, 검사가 도는 동안 턴을 끝내지 않고 pr-wait로 기다려요. 막히면 질문 도구로 물어서 스레드가 기다리는 중임을 드러내요.
이걸로 만든 사람들
문서 157곳, 49쪽의 상대 링크를 절대 경로로 바꾸고 CI에 검사까지 넣은 PR이에요. sol-loop 한 라운드에 승인을 받았다고 적었어요.
Reviewed with sol-loop: 1 round with gpt-6.1-sol. Sol verdict: approved
아이폰 성경 리더가 스크롤 중 터치하면 멈추던 문제를 고친 PR이에요. 설명 끝에 council 리뷰 표가 붙었고 GPT-6.1-Sol이 9/10을 줬어요.
Touching the iPhone reader while it was still gliding could freeze scrolling permanently.

맥과 윈도우 앱에서 숨어 있던 사람별 이름·색 편집을 Style 위로 꺼낸 PR이에요. 테스트 결과와 맥 미리보기 사진을 증거로 붙였어요.
Reviewed with sol-loop: 2 rounds with gpt-6.1-sol. Sol verdict: approved.
안에서는 이렇게 돌아가요
- 1
나 → full-send
"full send"이 한마디가 병합, 자기 브랜치 --force-with-lease, 묻지 않고 테스트할 권한을 함께 넘겨요.skills/full-send/SKILL.md - 2
full-send → Claude Code / Codex
가장 작은 수정 + 직접 본 증거실패를 재현하고 고친 뒤 같은 재현이 통과하는 걸 보거나, CI 검사·스크린샷으로 증거를 남겨요.skills/full-send/SKILL.md - 3
Claude Code / Codex → GPT Sol (sol-loop)
diff와 "Review only" 지시Sol 하나가 기본 3라운드까지 읽고 VERDICT: APPROVE 또는 CHANGES와 blocker·should·nit을 돌려줘요.skills/sol-loop/SKILL.md - 4
Claude Code / Codex → 병합된 PR
문제부터 쓴 PR 설명file-pr이 변경 목록 대신 문제를 먼저 쓰고, 끝에 Reviewed with sol-loop 줄을 붙여 PR을 열어요.skills/file-pr/SKILL.md - 5
pr-wait → Claude Code / Codex
사건마다 한 줄실패한 검사, 새 리뷰, BEHIND·DIRTY를 한 줄씩 알리고 준비되면 0, 손볼 일이 있으면 1로 끝나요.skills/babysit-pr/scripts/pr-wait - 6
Claude Code / Codex → 병합된 PR
병합 게이트 통과 → 병합증거, 초록 검사, 봇 지적 처리, 최신 브랜치가 모두 맞으면 병합하고 링크와 결정을 보고해요.skills/full-send/SKILL.md
넣으면 이렇게 나와요
나한테 맞을까요
이럴 때 좋아요
- 작은 수정을 맡겨 두고 자리를 비우고 싶을 때
- Greptile이나 Macroscope 같은 리뷰 봇이 붙은 저장소에서 지적을 일일이 처리하기 귀찮을 때
- PR 하나를 여러 회사 모델로 교차 리뷰받고 싶을 때
- 멈춘 남의 PR을 크레딧을 지키며 마무리해야 할 때
이건 안 돼요
- 로그인된 GitHub CLI(gh)가 있어야 하고, pr-wait는 python3가 필요해요.
- council과 sol-loop는 다른 회사 모델을 서브에이전트로 돌려야 해요. T3 Code가 아니면 그런 하네스가 따로 있어야 해요.
- pr-wait는 fcntl을 불러와서 지금 코드로는 Windows에서 시작되지 않아요.
- pr-wait의 기본 조건 ready는 Greptile이나 Macroscope 리뷰를 기다려요. 둘 다 없는 저장소는 --until green을 써야 해요.
발행 전에 Devalley 편집자가 검토했어요. 칼럼은 어떻게 만드나요
tstack: agent skills that take a change all the way to merge
A medplum PR fixed 157 doc links and shipped with one line: reviewed with sol-loop, approved
- Who
- Theo Browne (t3dotgg, CEO of Ping.gg) published the skills he uses every day, cleaned up for anyone.
- When
- Published October 24, 2026; no releases, you take it from main. Last pushed October 28.
- Where
- Runs in Claude Code and Codex. Uses T3 Code features when they are there and falls back to native tools when not.
What was hard
You could hand an agent a fix, but once the PR was open the job came back to you. Had CI finished, what did the review bot flag, had main moved on. Step away, and the agent sat at "waiting for checks" until you came back.
What it does about it
Say "full send" and the agent owns the work from where it is to a merged PR. The whole skill is written for nobody watching: it won't merge without proof it observed itself, it gets a review from a model by another provider, and it keeps its turn open with pr-wait while checks run. When it is truly stuck, it asks through the harness's question tool so the thread shows it is waiting.
What people made with it
A PR that turned 157 relative links across 49 doc pages into absolute paths and added a CI check for them, approved in one sol-loop round.
Reviewed with sol-loop: 1 round with gpt-6.1-sol. Sol verdict: approved
A fix for an iPhone Bible reader that froze when touched mid-scroll. Its description ends with a council review table where GPT-6.1-Sol gave 9/10.
Touching the iPhone reader while it was still gliding could freeze scrolling permanently.

A PR that moved per-person name and color editing up above Style on Mac and Windows, with test results and a Mac preview attached as proof.
Reviewed with sol-loop: 2 rounds with gpt-6.1-sol. Sol verdict: approved.
How it runs inside
- 1
You → full-send
"full send"The phrase grants merging, --force-with-lease on its own branch, and running tests without asking first.skills/full-send/SKILL.md - 2
full-send → Claude Code / Codex
Smallest change + proof it sawReproduce the failure, fix it, watch the same repro pass, or run the repo's CI checks and take screenshots.skills/full-send/SKILL.md - 3
Claude Code / Codex → GPT Sol (sol-loop)
The diff and a "Review only" briefOne Sol reviewer, three rounds by default, replies VERDICT: APPROVE or CHANGES with blocker, should and nit.skills/sol-loop/SKILL.md - 4
Claude Code / Codex → Merged PR
A description that leads with the problemfile-pr opens the PR problem-first, not as a change inventory, with a Reviewed with sol-loop line.skills/file-pr/SKILL.md - 5
pr-wait → Claude Code / Codex
One line per real eventFailed checks, new reviews, BEHIND or DIRTY each print a line; it exits 0 when ready and 1 when you must act.skills/babysit-pr/scripts/pr-wait - 6
Claude Code / Codex → Merged PR
Merge gate passes, then mergeWith proof, green checks, bot findings handled and an up-to-date branch, it merges and reports link and decisions.skills/full-send/SKILL.md
What goes in, what comes out
Is it for you
Good for
- Handing off a small fix and walking away
- Repos with review bots like Greptile or Macroscope whose findings you'd rather not triage by hand
- Cross-checking one PR with models from different providers
- Finishing a stalled PR without losing its author's credit
Not for
- Needs an authenticated GitHub CLI (gh), and python3 for pr-wait.
- council and sol-loop run subagents on other providers' models; outside T3 Code you need a harness that can.
- pr-wait imports fcntl, so as the code stands it does not start on Windows.
- pr-wait's default, ready, waits for a Greptile or Macroscope review; repos with neither need --until green.
Reviewed by Devalley’s editor before publishing. How the column is made