전체 글 207

Devin에 큰 작업을 맡길 때, PR은 어디서 나눠야 할까?

Devin에 API와 화면 수정을 함께 맡기면서 “PR은 백엔드와 프론트엔드로 나눠줘”라고 요청할 수 있습니다. 그런데 폴더가 다르다는 이유만으로 나누면, 먼저 배포된 쪽이 기존 화면을 깨뜨릴 수 있어요. 나눌 때 확인할 것은 각 PR이 끝난 시점의 동작입니다.PR마다 이 질문을 붙여보세요. “이 변경만 먼저 들어가도 지금 사용 중인 버전이 동작하는가?” 안 된다면 선행 변경과 적용 순서를 명시하거나, 호환되는 중간 단계를 먼저 만들어야 합니다.2026-10-01 작성. 아래 코드는 API 응답과 화면의 읽기 동작을 단순화한 설명용 예제입니다. 실제 Devin의 작업 결과나 운영 장애를 재현한 후기가 아닙니다.이름 하나를 바꿔도 서버와 화면의 순서가 생깁니다사용자 정보의 name을 displayName으..

Devin · Windsurf 2026.10.01

Devin에 같은 설명을 반복한다면? AGENTS.md에 남길 것과 빼야 할 것

“검색에 실패한 걸 결과가 없는 것으로 처리하면 안 돼.” 이런 설명을 작업마다 다시 적고 있다면, 다음 요청에도 필요한 기준인지부터 보세요. 프로젝트에서 계속 지킬 동작이라면 AGENTS.md에 남길 후보입니다. 이번 버그를 재현하는 입력이나 임시 우회 방법은 따로 두고요.옮길 것은 대화 전체가 아니라, 다음 작업에도 유효한 기준입니다. 짧은 프로젝트 규칙은 AGENTS.md에, 이번 작업의 입력과 완료 조건은 요청문에, 반복하는 긴 절차는 Skills나 별도 문서에 두는 구성을 권합니다.2026-09-28 공식 문서 확인 기준입니다. 아래 파일은 글을 위해 만든 설명용 예제이며, 실제 Devin 세션에서 규칙 적용률을 측정한 사용 후기는 아닙니다.“다음에도 같은 답인가?”로 남길 문장을 고릅니다지난 ..

Devin · Windsurf 2026.09.28

Devin이 같은 오류를 반복할 때, 다시 시키기 전에 확인할 것

Devin이 같은 오류를 다시 보고했을 때, 바로 “다시 고쳐줘”라고 보내기 전에 볼 것이 있습니다. 이번 시도에서 달라진 조건이 무엇인지입니다. 코드만 달라졌는지, 실행 환경도 달라졌는지, 아니면 같은 명령을 다시 돌렸는지부터 구분해야 해요.다시 시키기 전 확인할 것: 실패한 명령과 오류를 남기고, 실행 환경·요구사항·수정 방향 중 어디를 더 확인할지 정합니다. 다음 시도에는 가설과 확인 방법을 하나씩 붙입니다. 아래 실습에서는 설정이 빠진 실행이 세 번 모두 실패했고, 설정을 전달한 뒤 같은 소스로 정상 종료했습니다.2026-09-25 작성. Node.js v22.12.0에서 실행한 설명용 예제와 공식 문서를 바탕으로 정리했습니다. 세 번의 재실행은 직접 구성한 실습이며, 실제 Devin이 반복 실패..

Devin · Windsurf 2026.09.25

Devin이 만든 PR, 테스트 통과만 보고 합쳐도 될까?

같은 함수가 테스트 두 개는 모두 통과했습니다. 그런데 로딩 중과 네트워크 오류를 넣자 둘 다 “검색 결과 없음”으로 판정했어요. 테스트는 거짓말하지 않았습니다. 그 두 상황을 묻지 않았을 뿐입니다.Devin의 PR을 합치기 전에는 요청한 범위, 실제 변경, 검증한 조건을 대조합니다. 이번 설명용 예제에서 결함 함수는 정상 응답만 검사하면 2/2 통과했지만, 로딩·오류를 더하면 2/4만 통과했습니다. 발견한 문제를 어떤 수정 요청으로 돌려보낼지도 이어서 적었습니다.Devin이란? 요금과 한계 정리에서는 검색 화면 한 부분을 맡기는 요청서를 만들었습니다. 이번에는 그 요청의 결과를 검토하는 쪽으로 넘어갑니다.2026-09-24 작성. Node.js v22.12.0에서 실행한 독립 JavaScript 실습입..

Devin · Windsurf 2026.09.24

내 컴퓨터에서는 되는데, 새로 받으면 안 된다면? Git에 빠진 파일 찾기

내 컴퓨터에서는 배송비 3,000원이 잘 나오는데, 저장소를 새로 받으면 파일이 없다고 멈춥니다. 코드를 더 고치기 전에 확인할 것이 있어요. 실행에 필요한 파일이 커밋에도 들어 있는지입니다.오늘 확인한 함정: git status가 깨끗해도 필요한 파일이 .gitignore에 가려져 있을 수 있습니다. 로컬 실행, Git 추적, 커밋 포함, 새 복제본 실행을 차례로 확인해 봅니다.AI에게 기능을 맡길 때도 이 구분이 필요합니다. 에이전트가 실행한 폴더에는 생성한 파일이 남아 있으니까요. 그 자리에서 정상 동작했다는 결과만으로, 커밋을 받은 사람도 같은 상태에서 시작한다고 볼 수는 없습니다.2026-09-22 작성. 아래는 파일 누락을 의도적으로 만든 독립 실습입니다. 특정 AI 도구의 실제 출력이나 운영..

AI 코딩 일반 2026.09.22

AI 수정이 꼬였을 때, 내 코드까지 날리지 않고 되돌리는 법

AI가 고친 배송비 계산은 버리고, 내가 바꾼 화면 제목은 남기고 싶습니다. 그런데 둘 다 같은 파일 안에 있다면요. 파일 전체를 되돌리는 버튼을 누르기 전에, 무엇을 기준으로 복원하는지부터 확인해야 합니다.먼저 답부터: 이미 섞인 변경은 diff를 읽고 골라 되돌려야 합니다. 다음 작업부터는 내 변경을 커밋해 기준점을 남기세요. Git이 미커밋 변경을 보고 “이 줄은 사람, 저 줄은 AI”라고 구분해 주지는 않습니다.2026-09-21 작성. 별도 임시 Git 저장소에서 실행한 실습입니다. 사람의 수정과 AI의 수정을 코드로 만들어 비교했으며, 특정 AI 도구의 실제 출력이나 운영 프로젝트의 사고 기록은 아닙니다. 실행 환경: macOS, Git 2.50.1(Apple Git-155), Python 3..

AI 코딩 일반 2026.09.22

AI가 엉뚱한 곳을 고친다면? 방향 주는 지시법 (삽질 부검 2편)

삽질 부검 1편의 첫 실패는 성능을 개선해 달라는 지시에서 시작했습니다. 어디가 느린지 확인하기 전에 수정부터 맡겼죠. 이어서 없는 함수를 가져다 쓴 일, 예외를 숨긴 채 수정을 끝낸 일도 다뤘고요.이번 편의 답: 원인을 모르면 조사부터 맡기고, 새 작업에는 현재 사실을, 수정할 때는 완료 조건을 알려주세요. 1편의 세 실패에 대응하는 요청문과 직접 실행할 예제를 담았습니다.작업 명세의 기본 항목은 이전 글에서 정리했습니다. 이번에는 일이 이미 꼬이기 시작한 순간에 어떤 말을 덧붙일지 다뤄볼게요. 지시문에 중간 정류장을 두는 셈입니다. 원인도 모른 채 수정 완료까지 곧장 달리지 않도록요.원인을 모르면 첫 요청은 조사에서 끝낸다느리다는 증상만 보고 “캐시를 넣어줘”라고 하면 해결 방법을 먼저 골라준 꼴입니..

AI 코딩 일반 2026.09.19

AI 에이전트한테 시켰다가 날린 시간들: 삽질 부검 3건 (실측 후기)

핵심 요약: 지난 2주간 AI 에이전트에게 시켰다가 크게 세 번 날렸습니다. ① "성능 개선해줘"라는 모호한 지시가 부른 2시간 삽질(엉뚱한 계층을 뜯어고침), ② 하루 종일 한 세션을 끌고 간 대가로 컨텍스트가 방전돼 없는 함수를 지어낸 사건, ③ 버그를 "고쳤다"길래 봤더니 증상만 삼켜버린(try/except로 에러를 숨긴) 자신만만한 오답. 공통 원인은 하나였어요 — 에이전트는 지치지 않는 인턴이라, 길을 잘못 들어도 지치지 않고 계속 팝니다. 속도가 빠른 만큼 잘못된 방향으로도 빠르게 가요. 이 글은 각 사건의 실제 로그·날린 시간·토큰과, 재발을 막으려고 제가 세운 규칙 3개입니다.오늘은 자랑이 아니라 반성문입니다. AI 코딩 글은 대부분 "이렇게 잘 됐다"인데, 실제로 매일 쓰다 보면 안 되는..

AI 코딩 일반 2026.09.18

Cursor Auto 과금이 바뀌었다 (8/24): 내 청구서가 실제로 어떻게 달라졌나

핵심 요약: 8월 24일부로 Cursor가 Auto 모드의 정액요율($1.25/$6)을 없앴습니다. 이제 Auto는 "그때그때 라우팅된 모델의 정가"로 과금돼요 — Cursor 공식 안내도 "대부분의 요청은 요율이 올라간다"고 못 박았습니다. 대신 자사 모델(Composer 2.5·Grok) 포함량은 늘려줬고요. 실제로 제 사용량 그래프는 8/24 이후 같은 작업인데 더 빨리 닳기 시작했는데, 원인은 프론티어 모델(Claude·GPT)을 물린 Auto 요청이었습니다. 결론부터: 가격표(월 $20)는 그대로, 바뀐 건 "Auto 한 번의 원가"예요. 대응은 셋 — ① 일상은 Composer 2.5로 라우팅되게 두기 ② 프론티어는 난제에만 명시 지정 ③ 지출 한도 재점검. Enterprise 정액 유예도 9..

Cursor 2026.09.18

커서 vs 클로드코드 vs 코덱스: 작업별로 뭘 써야 하나 총정리 (디버깅·만들기·리팩토링·테스트·리뷰, 2026)

핵심 요약: "셋 중 뭐가 최고냐"는 틀린 질문입니다. 제가 같은 작업을 커서·클로드코드·코덱스에 똑같이 시켜본 실측 5편(디버깅·만들기·리팩토링·테스트·코드리뷰)의 결론은 하나로 모입니다 — 승자는 없고, 작업마다 잘하는 놈이 다르다. 요약하면: 맨바닥·빠른 초안·재현 쉬운 버그 = 코덱스(자율 실행 속도), 기존 코드에 얹기·앵커 주고 손보기 = 커서(IDE·@멘션), 원인 모를 버그·광범위 리팩토링·보안·심층 리뷰 = 클로드코드(맥락·깊이). 그래서 실전은 "하나 고르기"가 아니라 작업별로 나눠 쓰는 스택이고, 무엇을 쓰든 마지막 공통 결론은 같습니다 — 빨라질수록 검수가 실력.이 글에서 다루는 내용: 왜 "하나의 승자"가 없는지, 작업별 결정 매트릭스, 5개 실측의 한 줄 결론, 내 실제 조합, ..

AI 코딩 일반 2026.09.16

같은 PR, 커서 Bugbot·클로드코드·코덱스에 리뷰시켰다: 뭘 잡고 뭘 놓치나 (2026)

핵심 요약: 리뷰 시리즈 다섯 번째 — 이번엔 "코드 리뷰를 시켜보기"입니다. 제 서비스(AI 비용 계산기)의 실제 PR 하나(환율 유틸 리팩토링, 일부러 버그·보안 이슈 심음)를 커서 Bugbot(PR 자동 리뷰)·클로드코드(로컬 심층 리뷰)·코덱스(클라우드 PR 리뷰)에 똑같이 리뷰시켰어요. 결과: Bugbot은 PR에 붙어 명백한 버그·스타일을 빠르게 코멘트했지만 깊은 로직·보안은 얕았고(+오탐 약간), 코덱스는 빠르게 훑되 표면적, 클로드코드만 코드베이스 맥락을 읽어 숨은 보안 이슈(입력 검증 누락)와 엣지케이스까지 짚었습니다. 한 줄 결론: 상시 1차 필터는 Bugbot, 중요 PR 심층 리뷰는 클로드코드, 빠른 스캔은 코덱스 — 그리고 셋 다 사람 리뷰를 대체하는 게 아니라 앞단에 까는 것입니..

AI 코딩 일반 2026.09.15

Devin에 실제 작업 4개 시켜본 한 달 실전기: ACU 비용, PR 품질, 삽질까지 (2026)

핵심 요약: "AI 개발자" Devin을 한 달 결제해 제 서비스(AI 비용 계산기)와 블로그 코드에 실제 작업 4개를 시켜봤습니다. 결론부터 — 잘 정의된 반복 작업·버그 수정에서는 진짜 "외주 준 느낌"이 나지만(그동안 딴 일을 할 수 있음), 모호한 작업에선 러빗홀에 빠져 ACU만 태우고 실패했습니다. 가장 인상적이었던 건 병렬 실행(여러 작업 동시에)과 PR을 알아서 올려주는 fire-and-forget, 가장 아팠던 건 ACU 비용(같은 작업이 Cursor·Claude Code로는 몇 분의 1)과 "마지막 30%"(핵심은 되는데 엣지·UI가 미완). 한 줄 정리: Devin은 사람 대체가 아니라 "잘 정의된 티켓을 던지는 비동기 주니어"이고, 그 전제에서만 값을 합니다.이 글에서 다루는 내용: ..

Devin · Windsurf 2026.09.13

같은 함수, 커서·클로드코드·코덱스에 테스트 짜게 시켰다: 커버리지 vs 엣지케이스 (2026)

핵심 요약: 리뷰 시리즈 네 번째 — 이번엔 "테스트 짜게 시키기"입니다. 제 서비스(AI 비용 계산기)의 비용 환산·합계 함수 하나에 단위 테스트를 커서(Cursor)·클로드코드(Claude Code)·코덱스(Codex)에 동일 투입했어요. 결과가 테스트의 본질을 그대로 드러냈습니다 — 코덱스는 테스트를 제일 많이·빠르게 뽑아 커버리지 숫자는 최고였지만 대부분 해피패스라 진짜 버그는 못 잡았고, 커서는 기존 테스트 파일을 앵커로 주자 우리 스타일 그대로 확장했으며, 클로드코드만 코드를 읽고 경계값·예외 경로 같은 엣지케이스를 스스로 짚어 실제로 숨은 버그(음수 입력·null 환율)를 드러냈습니다. 한 줄 결론: 커버리지 숫자는 코덱스, 스타일 일관성은 커서, 버그 잡는 엣지케이스는 클로드코드 — 그리고..

AI 코딩 일반 2026.09.12

같은 리팩토링, 커서·클로드코드·코덱스에 다 시켰다: 광범위 수정 실전 비교 (2026)

핵심 요약: 버그 수정·새 기능 편에 이어, 리뷰 3부작의 마지막 — "리팩토링 시키기"입니다. 제 서비스(AI 비용 계산기)에서 여러 컴포넌트에 흩어진 통화 환산(USD→KRW) 로직을 공용 유틸 하나로 통합하는 과제를 커서·클로드코드·코덱스에 동일 투입했어요. 리팩토링의 생명은 "흩어진 호출부를 하나도 빠뜨리지 않고 다 바꾸느냐"인데 — 클로드코드가 긴 컨텍스트로 전 호출부를 추적해 가장 안전했고, 커서는 파일을 @멘션 앵커로 짚어주면 정확했지만 파일 수가 많아지자 후반에 몇 개를 놓쳤으며, 코덱스는 제일 빨랐지만 흩어진 호출부 두 곳을 빠뜨려 그대로 머지했으면 환산이 어긋날 뻔했습니다. 한 줄 결론: 광범위 리팩토링은 클로드코드, 범위가 좁으면 커서(앵커), 빠른 시도는 코덱스+철저한 검수.이 글에..

AI 코딩 일반 2026.09.10

같은 기능, 커서·클로드코드·코덱스에 다 만들게 시켰다: 스캐폴딩 실전 비교 (2026)

핵심 요약: 지난번 버그 수정 편에 이어, 이번엔 "새 기능 만들기"를 세 도구에 똑같이 시켜봤습니다. 제 서비스(AI 비용 계산기)에 새 계산기 페이지 하나를 통째로 스캐폴딩하는 과제를 커서(Cursor)·클로드코드(Claude Code)·코덱스(Codex)에 동일 투입했어요. 결과: 코덱스는 빈 캔버스에서 파일·의존성·기본 테스트까지 제일 빨리 뽑았지만 우리 프로젝트의 기존 컨벤션을 겉돌았고, 커서는 기존 계산기 파일을 @멘션으로 앵커 주자 스타일이 딱 맞게 나왔으며, 클로드코드는 힌트 없이도 계획을 먼저 보여주고 기존 구조를 스스로 파악해 맞췄습니다. 한 줄 결론: 맨바닥 신규는 코덱스, 기존 프로젝트에 얹기는 커서(앵커)나 클로드코드. 그리고 셋 다 컨벤션 검수는 사람 몫이었습니다.이 글에서 다루..

AI 코딩 일반 2026.09.10

같은 버그, 커서·클로드코드·코덱스에 다 시켜봤다: 디버깅 실전 비교 (2026)

핵심 요약: 제 서비스(AI 비용 계산기)에 실제로 있던 간헐적 버그 하나를 커서(Cursor)·클로드코드(Claude Code)·코덱스(Codex)에 똑같은 문장으로 던져봤습니다. 결과가 셋 다 달랐어요 — 코덱스는 증상 재현 테스트를 제일 빨리 짰지만 근본 원인은 못 짚고 표시 로직에 방어코드만 붙였고, 커서는 제가 "이 파일이 의심된다"고 짚어주자 인라인으로 정확히 고쳤고(안 짚어주면 헤맴), 클로드코드만 힌트 없이 여러 파일을 훑어 진짜 원인(비동기 핸들러의 stale closure)까지 거슬러 올라갔습니다. 한 줄 결론: 원인이 뻔한 버그는 코덱스, 원인 모를 버그는 클로드코드, 위치를 아는 상태에서 손보긴 커서. 그리고 셋 다 사람 검수 없이 그대로 머지했으면 위험했습니다.이 글에서 다루는 내..

AI 코딩 일반 2026.09.08

Copilot 구독료는 그대로인데 9월 청구서가 늘었다? — 포함 크레딧 최대 44% 삭감 정리

핵심 요약: GitHub Copilot이 9월 1일부터 포함 크레딧(included credits)을 대폭 줄였습니다 — Business는 $30→$19(−37%), Enterprise는 $70→$39(−44%). 6~8월 3개월 프로모션이 끝나며 표준값으로 내려온 건데, 구독료(Business $19·Enterprise $39)는 그대로예요. 즉 같은 돈을 내는데 "공짜로 쓸 수 있는 양"만 줄었습니다. 안심 포인트 하나 — 자동완성(인라인·Next Edit)은 크레딧과 무관하게 계속 무제한이라, 자동완성만 쓰는 팀은 영향이 없을 수 있어요. 크레딧을 먹는 건 챗·에이전트·프리미엄 모델입니다. 그리고 개인 Pro($10)·Pro+($39)는 이번 변화 대상이 아니에요. 문제는 에이전트를 많이 쓰는 팀 ..

GitHub Copilot 2026.09.07

Cursor CLI 명령어·실전 예제 총정리: 설치부터 CI 자동화 스크립트까지 (2026)

핵심 요약: Cursor CLI는 터미널에서 agent 한 단어로 Cursor 에이전트를 쓰는 도구입니다. 이 글은 명령어·플래그 레퍼런스와 복붙용 실전 예제를 한곳에 모은 쿡북이에요("이게 뭔가"는 개요 글에서 다뤘습니다). 외울 건 많지 않습니다 — 대화형은 agent, 스크립트·CI는 agent -p(프린트 모드), 파일을 실제로 고치려면 --force, 모드는 --mode=plan/ask, 이전 대화는 agent resume. 여기에 헤드리스 모드로 배치 리팩터링·자동 코드 리뷰·이미지 분석을 돌리는 실제 스크립트 예제를 붙였습니다. 명령어는 모두 공식 문서 기준으로 확인했고(하단 링크), 바로 복사해 쓸 수 있게 정리했어요.※ 이 글은 2026년 9월 6일 기준 공식 문서(cursor.com/d..

Cursor 2026.09.06

이번 주 진짜 주인공은 제일 싼 모델? — Gemini 3.8 Flash 정리

핵심 요약: 이번 주 프런티어 모델이 셋 나왔습니다 — Fable 5.1($10/$50), GPT-6 Astra($10/$50, Sol의 2.5배), 그리고 9월 2일 Google Gemini 3.8 Flash. 그런데 정작 주목할 건 제일 조용히 나온 세 번째일지도 몰라요. 가격이 입력 100만 토큰 $0.75, 출력 $3.75 — 플래그십들의 약 13분의 1인데, 구글은 "역대 최고 추론·코딩 모델"이라며 DeepSWE 같은 코딩 벤치에서 더 큰 모델들을 제치고 Opus 5도 일부 항목에서 이겼다고 합니다. 그럼 다 이걸 쓰면 될까요? 함정이 셋 있습니다 — ① Flash(경량) 티어라 아주 어려운 장기 작업은 여전히 약하고, ② "더 열심히 일하는" 설계라 토큰을 더 써서 싼 단가가 상쇄될 수 있고..

모델이 매주 바뀌는 시대의 생존법 — 워크플로를 특정 모델에 묶지 마라

핵심 요약: 이번 한 주만 돌아봐도 AI 코딩 도구의 바닥이 다섯 번 흔들렸습니다 — Claude Code 한도 전환(9/14), Copilot 모델 6종 폐기, OpenAI의 Cursor 공급 중단, Fable 5.1·GPT-6 Astra 출시까지요. 공통점이 보이시나요? 내가 쓰던 모델·한도·가격이 내 의사와 무관하게 바뀐다는 겁니다. 그래서 오늘은 뉴스가 아니라 원칙을 씁니다 — 무엇이 바뀌든 흔들리지 않는 워크플로를 만드는 다섯 가지. 핵심은 하나예요: "최고 모델 하나에 올인"이 아니라 "무엇이 바뀌어도 갈아탈 수 있게" 짜는 것. 매주 바뀌는 건 못 막아도, 매주 휘둘리는 건 막을 수 있습니다.※ 이 글은 특정 발표의 정리가 아니라, 이번 주 다섯 사건에서 뽑은 실전 원칙 모음입니다. 각 사건..

AI 코딩 일반 2026.09.06