본문으로 건너뛰기
Koding
클로드 코드(Claude Code) 비개발자 입문서 — 설치, 영어 해석, 자주 쓰는 명령어
무료

클로드 코드(Claude Code) 비개발자 입문서 — 설치, 영어 해석, 자주 쓰는 명령어

"엔지니어는 아니지만 Claude Code를 써보고 싶다"는 사람을 위한 입문서. 설치부터 말 거는 법, 화면에 나오는 영어가 무슨 뜻인지, 자주 쓰는 명령어, 해서는 안 되는 일까지, 막히기 쉬운 지점을 한국어로 쉽게 풀어 설명한다. 책 끝에는 〈복붙해서 쓰는 프롬프트 & 설정 템플릿 모음〉을 수록했다

Claude Code클로드코드비개발자바이브코딩코딩에이전트

6.Claude Code 입문 — 6. 주의사항 7가지: 초보가 'Yes' 누르기 전 꼭 확인할 것 (rm·.env·DB)

이 챕터 목차

Claude Code를 쓰기 시작하고 첫 몇 주, 누구나 한 번은 사고를 친다.

파일을 지워 버렸다. API 키가 샜다. 데이터베이스 내용이 사라졌다. "됐습니다"를 믿었더니 전혀 안 움직였다.

Claude Code는 정말 유능한 비서다. 그래서 더더욱, "괜찮아 보이는" 분위기에 휩쓸려 그만 "예", "계속해", "알아서 해 줘"를 눌러 버린다.

이 장에서는 초보가 밟기 쉬운 7개의 지뢰를, 실제로 얼마나 위험한지 시나리오와 함께 소개한다.

주의사항1: rm -rf를 확인 없이 허가한다

이건 초보가 맨 처음 치는 단골 사고다.

Claude: "불필요한 파일을 정리하겠습니다."

rm -rf ./old_data ./backup_tmp ./logs

나: "……뭐 어때, 예"

rm은 파일을 삭제하는 명령어다. 앞 장에서 소개한 대로 휴지통에 들어가지 않고 즉시 삭제된다. -rf 옵션이 붙으면 폴더째로 안의 내용을 전부 지운다.

old_data가 정말 불필요한 파일이었다면 다행이다. 그런데 거기에 작년의 중요한 데이터가 들어 있었다면? 되찾을 방법은 없다.

대처법: rm이 나오면 반드시 멈춰서 확인하자. "이 폴더, 뭐가 들어 있어?"라고 물어본 뒤 삭제를 허가한다. Claude Code에 ls ./old_data를 실행시켜 내용을 보고 나서 판단하면 충분하다.

사고2: .env 파일을 GitHub에 올린다

수수하지만 제일 위험한 녀석이다.

.env는 API 키나 비밀번호를 적어 두는 파일이다. 이게 GitHub에 올라가 버리면 인터넷 전체에서 훤히 보이게 된다.

Claude: "변경을 GitHub에 푸시하겠습니다."

git add .
git commit -m "initial setup"
git push

나: "OK"

.env도 함께 push됐다.

GitHub에 API 키가 올라간 순간, 악의적인 스크립트가 그걸 스캔한다. 몇 분 안에 그 키가 도용되기도 한다. AWS 키가 새서 수백만 원짜리 청구서가 날아왔다는 얘기도 드물지 않다.

대처법: 프로젝트의 .gitignore 파일에 .env가 포함돼 있는지 확인한다. Claude Code에 ".gitignore 보여 줘"라고 부탁해 .env* 줄이 있는지 보면 된다. 없으면 ".env를 gitignore에 추가해 줘"라고 부탁한다.

주의사항3: 운영 데이터베이스에 직접 작업시킨다

"잠깐 데이터만 고치면 돼"가 제일 무섭다.

개발 중인 앱에는 "운영 DB"(실제 사용자 데이터가 들어 있는 것)와 "개발용 DB"(테스트용)가 있다. 운영 DB에 직접 변경을 가하면, 실수했을 때 돌이킬 수 없다.

Claude: "데이터베이스 컬럼을 수정하겠습니다."

ALTER TABLE users DROP COLUMN old_field;

나: "예"

→ 사실은 운영 DB에 연결돼 있었다. old_field에는 전체 사용자의 중요 데이터가 들어 있었다.

대처법: 데이터베이스 계열 작업을 시킬 때는 맨 먼저 "이거 개발용 DB에 대고 하는 거지?"라고 먼저 물어본다. 접속 대상을 모르겠으면 "지금 어느 DB에 연결돼 있어?"라고 물으면 알려 준다.

사고4: git 없이 대량 변경을 허가한다

"100파일을 수정하겠습니다"를 확인 없이 받아들이는 건 위험하다.

git은 변경 이력을 기록하는 도구다. "커밋"이라는 작업을 해 두면, 뭔가 문제가 생겼을 때 과거 상태로 되돌릴 수 있다.

문제는, Claude Code가 파일을 변경하기 전에 일부러 "커밋해 둘까요?"라고 먼저 묻지는 않는다는 점이다.

Claude: "전체 리팩터링을 진행합니다. 50파일을 수정합니다."

나: "예"

→ 수정 후 앱이 실행되지 않게 됐다. 어디서 망가졌는지 특정할 수 없다.

대처법: 큰 변경을 시키기 전에 "작업 전에 git commit해 둬"라고 한마디 덧붙인다. 이것만으로 세이브 포인트가 생긴다. "방금 변경 되돌려 줘"라고 하면 git을 써서 되돌려 준다.

작은 변경이라도 "5파일 이상 건드리면 먼저 commit"을 습관으로 들이면 좋다.

주의사항5: 에러를 무시하고 "계속해"를 연발한다

이건 "야금야금 망가지는" 패턴이다.

Claude: "에러가 발생했습니다. ModuleNotFoundError: No module named 'requests'"

나: "괜찮아, 계속해"

Claude: "다음 단계로 진행합니다…… 에러가 발생했습니다."

나: "계속해"

(5번 반복)

Claude: "완료했습니다."

나: (안 움직인다)

Claude Code는 "계속해"라고 하면 계속하려 한다. 그런데 토대가 망가진 채로 그 위에 쌓아 올려 봐야 의미가 없다. 에러를 무시하고 진행하면, 나중에 뭐가 망가졌는지 알 수 없게 된다.

대처법: 에러가 나면 "이거 무슨 뜻이야?", "고치고 나서 계속해"라고 묻는다. "계속해", "괜찮아"라고 하기 전에 에러 메시지를 일단 Claude에게 설명하게 한다. "이 에러, 무시해도 괜찮아?"라고 확인만 해도 된다.

NG6: "전부 알아서"로 큰 작업을 통째로 떠넘긴다

처음엔 감동한다. 그런데 이게 제일 "나중에 큰일 나는" 패턴이다.

나: "쇼핑몰 만들어 줘"

Claude: (묵묵히 작업)

나: (30분 후) "다 됐어요?"

Claude: "완성했습니다."

나: (보니까 원하던 것과 전혀 다른 설계였다)

Claude Code는 지시를 그대로 받아 실행한다. "쇼핑몰 만들어 줘"라고 하면 Claude 나름의 해석으로 쇼핑몰을 만든다. 그런데 그게 당신의 머릿속 그림과 일치한다는 보장은 없다.

범위가 크면 클수록 어긋남도 커진다.

대처법: 큰 작업은 "잘게 나눠서, 그때그때 확인한다"가 철칙이다. "먼저 메인 페이지만 만들어 줘" → 확인 → "다음으로 상품 목록 페이지를 추가해 줘"라는 흐름으로 간다. 작업 전에 "어떤 설계로 진행할 건지 알려 줘"라고 묻기만 해도 어긋남이 크게 줄어든다.

주의사항7: "됐습니다"를 곧이곧대로 믿는다

이건 의외로 안 알려진 함정이다.

Claude Code는 "됐습니다"라고 말한다. 그런데 그건 "코드를 다 썼다"는 뜻이지, "제대로 움직인다"는 보장이 아니다.

Claude: "기능을 구현했습니다. 완료입니다."

나: "고마워요"

(다음 날, 운영에서 버그 발각)

Claude는 성실하게 작업하지만 완벽하지는 않다. 특히 복잡한 처리, 날짜 계산, 외부 API와의 주고받기 같은 건 겉보기엔 맞아 보여도 실제로는 안 움직일 때가 있다.

대처법: "됐습니다" 뒤에 "실제로 돌려서 확인해 줘"라고 부탁하는 습관을 들인다. Claude Code는 스스로 프로그램을 실행해 결과를 확인할 수 있다. "테스트 케이스를 만들어서 실행해 줘"라고 부탁하는 것도 효과적이다. 나도 브라우저나 터미널에서 직접 동작을 확인해 본다.

정리: "멈춰서 확인한다"가 최고의 기술

주의사항일어나는 일대처
rm -rf를 확인 안 함파일이 사라지고 못 되돌린다삭제 전에 내용 확인
.env를 GitHub에 올림API 키가 유출된다.gitignore.env*
운영 DB에서 직접 작업사용자 데이터가 사라진다DB 접속 대상 확인
git 없이 대량 변경망가져도 못 되돌린다작업 전에 commit
에러를 무시하고 계속뭐가 망가졌는지 모르게 된다에러를 먼저 해결
큰 작업을 통째로 떠넘김머릿속 그림과 전혀 다른 게 나온다잘게 나눠 확인
"됐습니다"를 곧이곧대로안 움직이는 게 운영에 나간다실행해서 동작 확인

Claude Code는 정말 편리해서, 익숙해지면 "뭐든 해 준다"는 감각이 든다. 그런데 그건 "뭐든 올바르게 해 준다"는 뜻이 아니다.

'Yes'를 누르기 전에 1초 멈춘다. 이게 초보 시기를 안전하게 넘기는 최고의 기술이다.

Claude Code는 멈춰서 확인하는 걸 싫어하지 않는다. 오히려 "이거 정말 해도 될까요?"라고 먼저 물어 줄 때도 있다. 그런 Claude 자신의 신중함을, 나도 따라 하면 좋다.

초보 편은 여기서 끝입니다. 수고하셨어요.

여기까지 읽었다면, 이제 "무서워서 못 건드리겠다"는 상태는 벗어났을 거예요. 이다음은 실제로 손을 움직이면서, 자기 페이스대로 익숙해지면 됩니다.

그리고 다음 단계는 복붙해서 쓰는 프롬프트 & 설정 템플릿 모음을 꼭 곁에 두는 레퍼런스로서 써 주세요.


©2024-2026 ClaudeCode.to, Hand-crafted & made with Jaewoo Kim.

이메일문의: jaewoo@claudecode.to

Koding 프로필: https://koding.kr/u/jaewoo.kim2019

Jaewoo Kim by AI-fluent liberal arts Engineer

#AI기업교육 #AI에이전트개발교육 #클로드코드기업교육 #클로드코드교육 #AX전환 #ClaudeCode교육 #AI #LLM #엔지니어 #개발자 #Claude #ClaudeCode