Writing

Notes from the lab

Build logs, architecture decisions, and the occasional rabbit hole.

  1. September 17, 2026 KO

    서버는 끝났는데 캐릭터는 아직 말하고 있었다

    음성 캐릭터의 표정이 말하는 도중에 자꾸 풀렸다. 고치는 길에는 결국 지워버린 heuristic, 엉뚱한 걸 묻던 barge-in, 그리고 SDK가 만들어낼 수 없는 이벤트 순서를 테스트한 mock이 있었다.

  2. September 17, 2026 EN

    The Server Finished. The Character Didn't.

    My voice character's face kept resetting mid-sentence. Fixing it took a deleted heuristic, a barge-in that asked the wrong question, and a mock that tested an event order the SDK can't produce.

  3. August 18, 2026 KO

    내 300줄짜리 에이전트 프로토콜은 파라미터 하나를 우회하고 있었다

    autonomous loop이 왜 5시간 한도를 그렇게 빨리 태우는지 측정하다가 업스트림 버그를 찾았고, 그 버그를 없애니 얼마 전 글로 쓴 프로토콜 대부분이 같이 사라졌다.

  4. August 18, 2026 EN

    My 300-Line Agent Protocol Was Working Around One Parameter

    I measured why an autonomous loop burned a 5-hour limit so fast, found an upstream bug, and deleting the bug deleted most of the protocol I'd just written about.

  5. May 22, 2026 KO

    내 agent-team 리바이즈 루프가 300줄짜리 프로토콜을 갖게 된 이유

    의사코드 20줄을 state machine으로 자라게 만든 5가지 도그푸드 실패 모드 — hyperclaude의 plan-loop과 implement-loop 이야기.

  6. May 22, 2026 EN

    How My Agent-Team Revise Loop Earned a 300-Line Protocol

    Five dogfooded failure modes that turned twenty lines of pseudocode into a state machine — inside hyperclaude's plan-loop and implement-loop.

  7. May 09, 2026 KO

    Open Graph 이미지 만드는 세 가지 방법, 그리고 내가 만든 한 가지

    손으로 만든 PNG, vercel/og-image 같은 param-driven 서비스, 그리고 @vercel/og 위에 얹은 URL-driven 생성기 — 왜 세 번째가 살아남았는가.

  8. May 09, 2026 EN

    Three ways to generate Open Graph images, and the one I built

    Hand-designed PNGs, param-driven services like vercel/og-image, and a URL-driven generator built on @vercel/og — why the third one won.

  9. May 07, 2026 KO

    Google Search Console이 github.io 사이트맵을 못 가져오는 이유

    아티팩트에 대한 모든 진단이 초록불을 켠 이유, 공개된 가설들이 원인에 대해 합의를 못 하는 이유, 그리고 결국 그걸 해결한 커스텀 도메인.

  10. May 07, 2026 EN

    Why Google Search Console can't fetch your github.io sitemap

    Why every diagnostic on the artifact came back green, why the public theories don't quite agree on the cause, and the custom domain that finally fixed it.

  11. May 05, 2026 KO

    Chrome 확장 프로그램 OAuth: getAuthToken에서 launchWebAuthFlow로

    Chrome 계정 chooser가 어쩌다 cancel callback을 조용히 삼키는 이유, 그걸 위한 band-aid가 자기 자신과 race하는 이유, 그리고 둘 다 우회하는 primitive.

  12. May 05, 2026 EN

    Chrome Extension OAuth: From getAuthToken to launchWebAuthFlow

    Why Chrome's account chooser sometimes silently swallows your cancel callback, why the obvious band-aid races itself, and the primitive that side-steps both.

  13. May 04, 2026 KO

    에이전트 셋, 문서 하나: Claude Code 멀티 에이전트 문서 파이프라인

    한국어 백엔드 면접 가이드를 위한 가벼운 콘텐츠 파이프라인 — 왜 한 에이전트로 다 시키는 대신 writer, reviewer, consistency-checker로 쪼갰는가.

  14. May 04, 2026 EN

    Three Agents, One Document: A Claude Code Multi-Agent Doc Pipeline

    A lightweight content pipeline for a Korean backend interview guide — why splitting writer, reviewer, and consistency-checker beats a single all-in-one agent.

  15. May 03, 2026 KO

    Chrome 확장 프로그램 iframe 인증: chrome.cookies에서 CHIPS로

    Chrome 익스텐션의 iframe이 3rd-party 쿠키 차단 환경에서 어떻게 인증받는가 — 브라우저 우회 없이.

  16. May 03, 2026 EN

    Chrome Extension Iframe Auth: From chrome.cookies to CHIPS

    How a Chrome extension's iframe survives third-party cookie blocking — without bypassing the browser.