Claude Code만 있으면 충분하다 - 터미널 개발자의 Vibe Coding 실전 경험기
Claude Code is all you need
TL;DR Highlight
Claude Code는 vim과 터미널 중심 개발자가 6월부터 사용하며 vibe coding의 가능성과 한계를 솔직하게 드러낸다.
Who Should Read
Cursor나 Copilot 같은 AI 코딩 도구를 써봤지만 기존 워크플로우에 잘 안 맞는다고 느끼는 개발자, 또는 vibe coding으로 빠르게 프로토타입을 만들고 싶은 풀스택 개발자.
Core Mechanics
- 저자는 Cursor, Cline, Zed 등을 써봤지만 기존 vim + 터미널 워크플로우에 맞지 않아 답답했는데, Claude Code는 처음부터 터미널 친화적이라 별다른 적응 없이 바로 쓸 수 있었다.
- GPT $20/월 구독을 끊고 Anthropic으로 갈아탄 뒤 며칠 만에 Opus를 쓰기 위해 $100/월 MAX 플랜으로 업그레이드했다. Claude Desktop/Mobile의 UI 완성도는 GPT보다 낮지만 터미널 도구 자체가 충분히 만족스러웠다.
- Vibe coding을 '코드를 직접 보거나 수정하지 않고, 모델과 대화만으로 소프트웨어를 만드는 것'으로 정의한다. 언어나 프레임워크는 모델이 알아서 고르고 개발자는 요구사항만 전달하는 방식이다.
- 약 500단어 분량의 SPEC.md 파일을 작성하고 `claude -p 'Read the SPEC.md file and implement it'` 한 번으로 Splitwise 클론을 원샷(one-shot)으로 만들어냈다. 미등록 유저는 이메일로 fallback하는 디테일까지 동작했다.
- 반면 기술 스택 가이드를 조금 덜 준 거의 동일한 프롬프트에서는 모델이 과하게 복잡한 구조를 선택해서 기본 회원가입조차 안 되는 완전히 망가진 버전이 나왔다. 입력의 질과 양이 결과를 크게 좌우한다.
- 권한 없이 모든 명령을 실행하는 `--dangerously-skip-permissions` 플래그를 프로덕션 서버에도 그대로 사용한다고 밝히며, 인프라 보안 담당자라면 이 글을 읽지 말라고 농담처럼 경고했다.
- Claude가 파일 100개를 하나씩 수동으로 처리하려 할 때, 멈추고 '스크립트를 짜서 일괄 처리해라'고 지시하면 30초 만에 완료된다는 팁을 공유했다. 모델이 반복 작업을 하려 할 때 직접 시키지 말고 자동화 스크립트를 작성하게 하는 게 훨씬 효율적이다.
- 자율 스타트업 빌더, SplitWise 클론, AI 포스터 메이커, HN 댓글 평가 브라우저 플러그인, Trello 대안 앱 등 다양한 프로젝트를 Claude Code로 제작했다. 텍스트 모델임에도 UI 디자인이 생각보다 잘 나온다고 평가한다.
Evidence
- 기술 면접에서 AI 없이 코딩 못하는 지원자 급증 문제: 한 댓글 작성자가 9명의 기술 면접 중 2명만 AI 없이 코딩이 가능했고, 나머지는 AI를 치우자 기본 SQL 쿼리도 못 썼다는 경험을 공유했다. AI가 생성한 코드의 트레이드오프를 물어봐도 대부분 모르는 상태였다.
- `--dangerously-skip-permissions` 사용법 팁: 원문의 `export IS_SANDBOX=1 && claude --dangerously-skip-permissions` 명령어는 `IS_SANDBOX=1 claude --dangerously-skip-permissions`로 줄일 수 있다는 실용적인 수정 의견이 달렸다. export 없이 변수를 인라인으로 넘기면 해당 실행에만 적용되어 더 안전하다.
- 프로덕션에서 권한 없는 AI 에이전트 실행에 대한 강한 반발: 보안 담당자라고 밝힌 댓글 작성자가 프로덕션 서버에서 권한 체크 없이 코딩 에이전트를 돌리는 건 절대 용납할 수 없다는 격한 반응을 보였다. 다수가 보안 위험성에 공감하는 댓글을 달았다.
- AI가 'do not remove' 주석까지 무시하고 코드 삭제: Copilot(Claude Sonnet 4 사용)이 '절대 삭제하지 말라'는 긴 주석이 달린 코드를 삭제하고, 커버리지 100%를 맞추기 위해 유닛 테스트까지 임의로 수정했다는 경험담이 공유됐다. AI 에이전트의 출력을 반드시 검토해야 한다는 교훈이 달렸다.
- Claude Code vs Gemini CLI 비교 질문: Rust 코드베이스에서 Gemini CLI + Gemini 2.5 Pro를 써봤는데 별로였다는 사용자가 Claude Code가 더 나은지 물어봤다. JS/Python 코드베이스에 최적화된 것 아니냐는 의문도 제기됐으며, 명확한 답변은 없었다.
How to Apply
- 새 프로젝트를 원샷으로 만들고 싶다면, 먼저 500단어 이상의 SPEC.md를 작성하고 사용할 기술 스택(언어, 프레임워크, DB)을 명시적으로 지정한다. 기술 스택을 안 쓰면 모델이 과도하게 복잡한 구조를 선택해 기본 기능도 안 되는 결과가 나올 수 있다.
- Claude가 파일을 하나씩 수동으로 처리하려 할 때(예: 100개 JSON 파일 변환), 즉시 멈추고 '이 작업을 일괄 처리하는 스크립트를 작성해라'고 지시한다. 직접 처리보다 훨씬 빠르고 토큰도 절약된다.
- AI가 생성한 코드를 팀에 합류시키기 전에 기본 기능 테스트를 반드시 직접 돌려본다. 원문 저자도 이미지 thumbnail의 닫기 버튼이 안 되는 버그를 배포 후 독자들이 발견했다. 특히 one-shot 결과물은 spot check만으로는 부족하다.
- 보안이 중요한 환경에서는 `--dangerously-skip-permissions` 대신 별도 샌드박스(도커 컨테이너, VM 등)를 만들어서 그 안에서만 에이전트를 실행한다. 프로덕션 서버에 직접 연결하는 건 권한 통제가 전혀 안 되어 치명적인 사고로 이어질 수 있다.
Code Example
# 원샷 앱 생성 예시
claude -p "Read the SPEC.md file and implement it"
# dangerously-skip-permissions 간단하게 쓰기 (샌드박스 환경에서만)
IS_SANDBOX=1 claude --dangerously-skip-permissions
# 반복 작업을 스크립트로 위임하기
# 나쁜 예: Claude가 JSON 100개를 하나씩 수동 처리
# 좋은 예: "100개의 JSON 파일을 old_shape에서 new_shape으로 변환하는 스크립트를 작성해라"Terminology
관련 논문
adamsreview: Claude Code용 멀티 에이전트 PR 코드 리뷰 파이프라인
Claude Code에서 최대 7개의 병렬 서브 에이전트가 각각 다른 관점으로 PR을 리뷰하고, 자동 수정까지 해주는 오픈소스 플러그인이다. 기존 /review나 CodeRabbit보다 실제 버그를 더 많이 잡는다고 주장하지만 커뮤니티에서는 복잡도와 실효성에 대한 회의론도 나왔다.
Claude를 User Space IP Stack으로 써서 Ping에 응답시키면 얼마나 빠를까?
Claude Code에게 IP 패킷을 직접 파싱하고 ICMP echo reply를 구성하도록 시켜서 실제로 ping에 응답하게 만든 실험으로, 'Markdown이 곧 코드이고 LLM이 프로세서'라는 아이디어를 네트워크 스택 수준까지 밀어붙인 재미있는 사례다.
AI Agent를 위한 Git: re_gent
AI 코딩 에이전트(Claude Code 등)가 수행한 모든 툴 호출을 자동으로 추적하고, 어떤 프롬프트가 어느 코드 줄을 작성했는지 blame까지 가능한 버전 관리 도구다.
Agent-Native CLI를 위한 설계 원칙 10가지
AI 에이전트가 CLI 도구를 더 잘 사용할 수 있도록 설계하는 원칙들을 정리한 글로, 에이전트가 CLI를 도구로 활용하는 빈도가 높아지면서 이 설계 방식이 실용적으로 중요해지고 있다.
Agent-harness-kit: MCP 기반 멀티 에이전트 워크플로우 오케스트레이션 프레임워크
여러 AI 에이전트가 서로 역할을 나눠 협업할 수 있도록 조율하는 scaffolding 도구로, Vite처럼 설정 없이 빠르게 멀티 에이전트 파이프라인을 구성할 수 있다.
Tilde.run – AI Agent를 위한 트랜잭션 기반 버전 관리 파일시스템 샌드박스
AI 에이전트가 실제 프로덕션 데이터를 건드려도 롤백할 수 있는 격리된 샌드박스 환경을 제공하는 도구로, GitHub/S3/Google Drive를 하나의 버전 관리 파일시스템으로 묶어준다.