AI coding 도구의 진화와 Claude Code의 등장
글쓴이 Indragie Karunaratne는 오랜 기간 맥용 소프트웨어를 개발해왔지만, 이번에는 특별한 경험을 하게 . 바로 macOS 네이티브 앱(Context)을 거의 100% Claude Code라는 AI coding agent로 개발해 출시한 것이죠. 전체 2만 줄의 코드 중, 직접 작성한 코드는 1,000줄도 되지 않는다고 .
"Context는 거의 100% Claude Code로 만들어졌어요. 2만 줄 중 제가 손으로 쓴 코드는 1,000줄도 안 ."
This article 그 여정과, 도구 선택 과정, Claude Code의 장단점, 그리고 AI coding agent를 최대한 잘 활용하는 방법을 시간순으로 상세히 풀어냅니다.
1. Copilot에서 Claude Code로: AI coding 도구의 변화
처음 AI coding 도구를 접한 것은 GitHub Copilot이었습니다. VS Code에 내장된 이 도구는 기존의 자동완성 기능을 넘어, 함수 전체 구현까지 제안해주는 점이 인상적이었죠. 하지만 여전히 개발자가 대부분의 작업을 해야 .
이후 Cursor, Windsurf 등 다양한 경쟁 제품이 등장하며, AI가 반복적으로 코드를 읽고, 빌드하고, test하며 점점 더 복잡한 작업을 수행하는 "agent 모드"가 대세가 .
2025년 2월, Claude Code가 등장. 기존처럼 IDE에 AI를 "덧붙이는" 방식이 아니라, 터미널 기반의 완전히 새로운 IDE로, 오직 prompt 입력창만 제공하며 모든 작업을 AI가 주도.
"AI가 IDE를 보조하는 게 아니라, 아예 IDE를 대체하는 방식이 신선해서 꼭 써보고 싶었어요."
2. 또 하나의 사이드 프로젝트 시작
많은 개발자처럼 글쓴이도 미완성된 사이드 프로젝트가 많았습니다. prototype은 만들 수 있지만, 마지막 20%의 완성이 너무 힘들어 6년간 프로젝트를 출시하지 못했다고 해요.
이번에는 MCP 서버 debugging을 위한 네이티브 macOS 앱을 만들기로 결심. 기존의 MCP 서버 test 도구는 불편했고, 맥 개발자로서 직접 더 나은 앱을 만들어보고 싶었습니다.
3. Claude Code의 코드 작성 능력
Claude Code(최신 Sonnet 4, Opus 4 모델)는 정말로 코드를 잘 씁니다. 최고 수준의 프로그래머는 아니지만, 평균 개발자보다 훨씬 뛰어난 결과를 보여줍니다.
Claude는 다음과 같은 작업을 할 수 있습니다:
- 프로젝트 내 관련 소스코드 탐색 및 이해
- 코드 스타일과 디자인 패턴 파악
- 추가 문서나 명세 읽기
- 기능 구현 코드 및 test 코드 생성
- 빌드 및 test 실행, 실패 시 반복 수정
- 스크린샷이나 콘솔 로그를 보고 버그 파악 및 수정
"새로운 직원이 아무런 맥락 없이 들어와서 몇 분 만에 완성된 기능을 내놓는 걸 상상해보세요."
4. Swift는 '보통', SwiftUI는 '잘' 다루는 Claude
최신 Swift 6.1과 SwiftUI로 앱을 만들면서, Claude가 Swift를 얼마나 잘 다루는지 실험. Swift는 학습 data가 적어 약간 부족However, Swift 5.5까지의 기능은 무난하게 사용. However, 최신 framework와 구식 Objective-C API를 혼동하는 경우가 .
SwiftUI 코드는 꽤 잘 생성However, 처음엔 다소 투박할 수 . 반복적으로 "더 아름답게" 요청하면 점점 더 세련된 UI가 완성.
"Claude가 만든 SwiftUI 코드는 대체로 정확However, 처음엔 좀 못생겼어요. 반복적으로 개선 요청을 하면 정말 쓸만한 UI가 나옵니다."
복잡한 UI 코드에서 Swift 컴파일러가 타입 추론에 실패하는 문제도 자주 발생However, Claude는 이를 잘게 나누어 해결하는 능력이 .
CLAUDE.md 파일에 "최신 API만 사용", "SwiftUI 우선", "Apple 디자인 가이드라인 준수" 등 간단한 규칙만 적어줘도 결과가 훨씬 좋아집니다.
5. "더 아름답게 만들어줘" 한마디면 OK 🎨
Claude가 처음에 예쁜 UI를 만들지 못해도, 그냥 "더 아름답고, 우아하고, 사용하기 쉽게 만들어줘"라고 말하면 놀랄 만큼 좋은 결과가 나옵니다.
"UI를 더 아름답게 만들어줘"라고만 해도, 정말 괜찮은 결과가 나와요.
Also, UI 버그나 개선이 필요할 때 스크린샷을 Claude에 붙여넣으면 바로 feedback을 받고 수정할 수 .
6. 핵심은 'context engineering'
예전에는 prompt engineering이 중요하다고 했지만, 최신 모델에서는 context engineering이 더 중요해졌습니다. In other words, AI가 참고할 수 있는 정보(context)를 얼마나 잘 제공하느냐가 결과의 품질을 좌우.
Claude는 20만 token의 context 윈도우를 제공However, 대화가 길어지면 자동으로 요약(compaction)하여 새 context로 이어집니다. 이 과정에서 중요한 정보가 누락될 수 있으니, 최대한 필요한 정보만, 효율적으로 제공하는 것이 관건.
"최신 모델은 불완전한 입력도 잘 이해However, 결국 context 윈도우의 한계와 싸우게 ."
7. agent '프라이밍'하기
Claude가 더 좋은 결과를 내도록 하려면, 작업 전에 관련 소스코드, 문서, 명세 등을 먼저 읽게 하는 '프라이밍'이 효과적.
For example, 여러 소스 파일과 웹의 명세 문서를 읽고 요약하게 한 뒤, 그 요약을 바탕으로 작업을 시키면 훨씬 좋은 결과가 나옵니다.
"관련 소스와 문서를 읽고 요약해달라고 하면, Claude가 더 잘 이해하고 작업을 진행."
In particular, 최신 API나 외부 라이브러리를 쓸 때는 이 과정이 필수적.
8. AI는 마음을 읽지 못한다, 명확한 '스펙'이 필요하다
Claude에게 기능 구현을 맡길 때는 상세한 스펙(요구사항)이 꼭 필요. 한 줄 prompt로 "앱 전체"를 만들 수 있다는 데모는 실제로는 prototype 수준에 불과.
"실제 기능을 원한다면, 제대로 된 스펙이 필요해요. 잘 쓴 문서가 아니어도, 말로 툭툭 던져도 괜찮아요."
스펙을 작성하는 데 드는 시간은, 직접 구현하는 것보다 훨씬 짧습니다.
9. "울트라싱크(ultrathink)로 먼저 계획 세워줘"
Claude는 종종 충분한 배경지식 없이 바로 구현에 들어가서 결과가 좋지 않을 때가 . 이럴 때는 "think", "think hard", "think harder", "ultrathink" 같은 키워드로 충분히 고민하고 계획을 세우게 하면 훨씬 나은 결과가 나옵니다.
"ultrathink로 먼저 계획을 세우고, 내가 승인할 때까지 구현하지 말라고 지시하면 좋아요."
Such 방식은 token을 더 많이 쓰지만, 결과의 품질이 확실히 올라갑니다.
10. feedback 루프(Feedback Loop) 구축하기
Claude가 스스로 변경 → test → 실패 원인 파악 → 재수정의 루프를 돌 수 있도록 환경을 만들어주면, 훨씬 효율적으로 개발할 수 .
- 빌드: Swift 패키지는
swift build로 잘 처리However, Xcode 프로젝트는 별도 도구(XcodeBuildMCP)가 필요할 수 . - test:
swift test로 단위 test 가능. UI test는 추가 설정 필요. - 버그 수정: Claude가 로그를 보고 버그를 찾을 수 있지만, 사용자가 직접 앱을 조작해 로그를 붙여넣어야 .
- UX 개선: 스크린샷을 붙여넣어 UI를 반복 개선할 수 .
11. Claude Code는 코드 작성 그 이상을 한다
Claude Code는 coding 외에도 다양한 작업에 활용할 수 . For example, 앱의 카피 문구 수정, 기능 로드맵 제안, 실제 data가 없을 때 현실적인 목(mock) data 생성 등도 가능.
"목 data 생성이 너무 쉬워서, 실제 data가 없어도 UI를 미리 다듬을 수 있었어요."
특히 MCP 서버의 다양한 기능을 test할 때, 목 data가 큰 도움이 되었습니다.
12. 고품질 automation, 이제 거의 '공짜'로 가능
앱 출시의 마지막 20%는 빌드, 코드서명, 노터리제이션, 패키징 등 복잡한 automation 작업이 가장 힘든 부분. 예전에는 fastlane 등으로 직접 스크립트를 짜야 했지만, 이번에는 Claude가 2,000줄짜리 파이썬 automation 스크립트를 만들어줬습니다.
- 환경 체크
- 변경 로그 및 릴리즈 노트 자동 생성
- 빌드, 코드서명, 노터리제이션, DMG 패키징
- 자동 업데이트용 Sparkle appcast 생성
- GitHub 릴리즈 및 Sentry 심볼 업로드
"몇 시간 만에 완성된 automation 스크립트 덕분에, 매번 수십 분씩 절약하게 됐어요."
13. 미래의 IDE는 완전히 달라질 것
이번 프로젝트에서 The author Claude Code와 GitHub Desktop만 사용. 기존 IDE의 파일 트리, 소스코드 에디터, 확장 기능 등은 거의 필요 없었습니다.
"이게 AI coding agent의 '최악'일 때 모습이라면, 앞으로 IDE는 지금과 완전히 달라질 거라고 확신해요."
미래의 IDE는 agent의 context를 세팅하고, feedback 루프를 구축하는 데 초점을 맞출 것이며, 소스코드 에디터가 중심이 아닐 수도 있다고 전망.
14. 다시 사이드 프로젝트를 출시할 수 있게 되다! 🎉
이 여정에서 가장 기쁜 점은, 이제 다시 사이드 프로젝트를 완성해 출시할 수 있게 됐다는 것. 마치 하루에 5시간이 더 생긴 느낌이고, 한 달에 20만 원 정도의 비용만 들었다고 해요.
"이제 다시 사이드 프로젝트를 완성해서 세상에 내놓을 수 있게 됐어요. 하루에 5시간이 더 생긴 기분."
Key Concepts Summary
- Claude Code: 터미널 기반 AI coding agent, 거의 100% 자동 코드 생성
- context engineering: AI가 참고할 정보(문서, 코드, 명세 등)를 잘 제공하는 것이 핵심
- 프라이밍(Priming): 작업 전 관련 자료를 읽고 요약하게 하여 이해도 향상
- 상세한 스펙: AI가 제대로 동작하려면 명확한 요구사항이 필수
- feedback 루프: 자동 빌드, test, 버그 수정, UI 개선의 반복 구조
- automation: 빌드/릴리즈/deployment 등 고품질 automation 스크립트도 AI가 작성
- 미래의 IDE: 소스코드 에디터 중심에서 벗어나, agent 중심의 UX로 변화
This article AI coding agent의 실전 활용법과, 앞으로 개발 환경이 어떻게 바뀔지에 대한 생생한 경험담을 담고 . AI와 함께라면, 이제 누구나 더 쉽고 빠르게 멋진 프로젝트를 완성할 수 있는 시대가 열리고 있음을 보여줍니다! 🚀