아침에 fork부터 하라고 썼다. 반나절 뒤 반대편 글을 읽었다
오늘 아침 'fork부터 하라'고 썼는데 반나절 뒤 Build vs Buy 글을 읽고 기준을 좁혔다. AI가 낮춘 건 만드는 비용이지 소유의 책임이 아니다. 갈라지는 지점은 교체 경로가 있느냐다.
오늘 아침 이 블로그에 "'만들 수 있다'가 차별점에서 탈락했다"고 썼다. 블루프린트가 공개됐으니 fork부터 하고 직접 짤 부분을 그다음에 정하라고. 반나절 뒤 정반대편 글을 읽었고, 그쪽이 더 중요한 질문을 던진다고 판단했다.
질문은 이거다. 3년 차에는 누가 패치하나.
아침 글이 놓친 것
Build vs Buy를 다룬 글의 핵심은 한 문장으로 줄어든다.
AI가 바꾼 것은 만드는 비용이지, 계속 운영하는 비용이 아니다. 핵심 질문은 "만드는 편이 더 싼가"가 아니라 "무엇을 앞으로도 계속 책임질 것인가"이다.
(원문)
글에 나오는 실패 사례가 구체적이다. 초기 B2B 스타트업이 오픈소스를 확장해 인증을 일주일 만에 만들었다. 예상은 맞았고 초기 고객도 잘 썼다. 부담은 그다음에 나타났다 — 보안 패치 추격, 기업 고객 보안 심사에서 자체 인증의 안전성을 직접 입증, 상용이라면 기본 제공했을 기능의 자체 개발. 결국 상용으로 전환했고 약 한 달 뒤 그 오픈소스 구성요소에서 심각한 취약점이 나와 여러 사이트가 침해당했다.
원문의 표현이 정확하다. 운이 좋았던 것과 처음부터 올바르게 판단한 것은 다르다.
나는 아침에 "만드는 재미로 시간 쓰던 구간이 사라졌다"고 썼다. 맞는 말이지만 절반만 맞다. 사라진 건 만드는 시간이지 소유의 책임이 아니다. fork도 소유다. 남의 저장소를 포크한 순간부터 그 코드의 CVE는 내 것이 된다.
그럼 아침 글은 틀렸나
아니다. 갈라지는 지점이 하나 있고, 원문이 그걸 정확히 짚는다. 교체 경로.
같은 글에 두 사례가 대비된다.
- 자체 인증: 더 싸서 만들었다. 교체 경로 없음. → 잘못된 결정.
- 내부 MCP 서버: 공식 서버가 없어서 만들었다. 공식판이 나오자 즉시 갈아탔다. → 옳은 결정.
원문의 정리는 이렇다. "MCP 서버는 대안이 없어서 만들었고, 인증은 더 저렴해서 만들었으며, 두 사례 중 타당한 이유는 전자였다."
그래서 아침 글의 "fork부터"는 이렇게 좁혀야 한다. 버릴 수 있는 것만 fork한다. 커머스 블루프린트로 장바구니 로직을 시작하는 건 괜찮다. 영향 범위가 제한적이고 공식 대안이 나오면 갈아탈 수 있다. 같은 저장소에서 결제나 인증 경로까지 끌어와 눌러앉는 건 다른 결정이다.
오늘 나온 도구 하나가 정확히 이 범주다
Apache Maka가 인큐베이터 프로젝트로 공개됐다. 에이전트의 도구 호출·권한 승인 여부·종료 상태를 순서대로 기록하는 로컬 우선 워크스페이스다. 설계 하나가 눈에 띈다 — 모델에 넘기는 문맥은 줄여도 원래 실행 기록은 지우지 않는다. 오래된 도구 출력을 다음 요청에서 빼더라도 실행 이력에서는 삭제하지 않는다.
(원문)
에이전트를 오래 굴려본 사람이면 이게 왜 필요한지 안다. 컨텍스트를 압축하는 과정에서 "그 수정이 왜 실패했는지"가 사라지고, 사후에 재구성할 방법이 없다.
- 확인된 것: Apache-2.0, 세션·설정·실행 기록 로컬 저장, macOS/Windows/Linux 빌드, 파일 작업과 셸 실행에 권한 확인과 OS 샌드박스 적용.
- 명시된 한계: Apache 공식 릴리스가 없는 Incubator 단계이고 데이터 형식과 CLI가 바뀔 수 있다. Windows·Linux는 서명되지 않은 프리뷰이고 Nightly는 프로덕션 배포본이 아니다. 샌드박스도 모든 도구를 격리하지는 않는다. API 키와 인증 토큰은 로컬 평문 파일에 저장된다.
- 모르는 것: 직접 써보지 않았다. 기록 포맷이 실제로 다루기 좋은지는 돌려봐야 안다.
바로 이래서 위의 기준이 필요하다. Maka는 "마땅한 대안이 없어 지금 쓰되, 형식이 바뀌거나 더 나은 게 나오면 버린다"는 칸에 넣을 물건이다. 운영 로그 파이프라인을 여기에 영구적으로 묶으면 안 된다.
오늘 바꾼 기준
아침 글에 한 줄 추가한다.
fork하거나 직접 만들기 전에 "3년 차에 누가 패치하나" 를 먼저 답한다. 1인 개발자라면 답은 언제나 "나"다. 그러니 진짜 질문은 이렇게 바뀐다.
이걸 3년 뒤에도 내가 패치하고 있을 각오가 되어 있나. 아니라면, 지금 버릴 경로가 있나.
둘 다 아니오면 만들지 않는다. 아침에 내가 덜 쓴 문장이다.
댓글
불러오는 중...