그냥 막 클로드 코드를 사용하면서 설치다가 클로드 코드를 제대로, 체계적으로 활용하고 있지 못 한 거 같아서 엔트로픽에서 클로드 코드 강의를 보고 복기해보았다.
이 강의 전에도 엔트로픽 아카데미에서 AI Fluency for students라는 강의를 봤었다.
학생이 어떻게 LLM을 사용해야 할지 알려주는 강의. 예전에 궁금해서 가장 먼저 봤던 강의다.
주변에서 AI를 사용하는 방법은 제각각이었고, 어떻게 AI에게 의존하지 않고 활용할 것인지, 어디까지는 AI를 활용하고 어디까진 제가 해야하는 건지 몰라서 찾아보았다. 이 강의를 보고 프롬프팅에 따라 AI가 과제 같은 걸 그저 대신해주는 생각의 외주화 도구가 될 수도 있고, 함께 공부하는 파트너가 될 수 있음을 느꼈다. 학습적인 측면에서 AI를 그저 답을 내주는 도구로 보는 것이 아닌, 질문하고 검증하며 함께 토론하는 파트너로서 활용하는 것이 올바른 편이라고 생각하게 됐다.
허나 학습 분야에서는 이런 식으로 함께 대화를 하며 학습하는 것이지, 실제 개발 등 각각 다른 활용 방면마다 AI를 적절히 사용하는 법이 있을테고, 각 방면에 맞게 올바르게 사용하는 것의 필요성을 느꼈다. 그래서 이번에는 개발 측면에서의 활용법. 클로드 코드 강의를 하나씩 보려고 한다.
클로드 코드 강의 목록
- Claude Code 101: 처음 볼 클로드 코드 입문 강의. 전체적인 오버뷰를 보여주는 듯.
- Claude Code In Action: 실제 개발에서 클로드 코드 활용 강의
- Introduction to Subagents: 서브에이전트 집중 강의
- Introduction to Agent Skills: 스킬 집중 강의
- Introduction to Model Context Protocol: MCP 집중 강의
이렇게 있는데 이번 글에서는 Claude Code 101 강의를 먼저 보고 복기를 해보겠다.
Claude Code 101
1. What is Claude Code
이 챕터에서는 그냥 클로드 코드 짧게 소개하는 챕터였다.
클로드와의 차이가 뭐냐? 클로드 코드는 클로드라는 뇌에다가 명령어 사용, 파일 접근 등 같은 걸 할 수 있도록 몸을 달아준 느낌?
그저 질의응답이 아니라 실제로 기여해주는 Agent라고 볼 수 있다.
또한 클로드 코드는 사용자의 프롬프트를 충족할 때까지 루프를 돌며 계속 작업을 수행한다고

그냥 참고
- 기본적으로 최신 기능이 터미널에 먼저 들어가기 때문에 터미널을 추천한다고 한다.
- homebrew로 깔면 자동 업데이트가 안 되니 curl로 네이티브 인스톨러 설치 권장
2. Your first prompt
이 챕터에서는 음 설치하는 거 제외하면 다음 챕터 맛보기라서.
자동 승인 or 승인 요청 있다. 편한 거 쓰쇼
[쉬프트 + 탭] 하면 [자동 승인 / 플랜 모드] 변경 가능
여기서 핵심은 플랜 모드를 잘 활용해라!
3. Daily workflows
여기서는 클로드 코드 사용 가이드를 말해준다.
많은 사람들이 그냥 바로 코딩으로 들어가는데 Explore -> Plan -> Code -> Commit 순서로 하라고 한다.
가장 효율적인 토큰 사용 및 컨텍스트 관리 방법이라고
Explore(탐색)
막무가내로 시작 전 Plan mode로 readOnly를 통해 프로젝트 상황 보기
Plan(계획)
바로 코딩 시작 전 클로드 코드가 계획을 수립 받고 확인 받는 과정인데 이 과정에서 클로드가 모호한 부분을 사용자에게 추가로 물어볼 수 있고, 클로드 코드 계획에 오류가 있다면 수정할 수 있다. 이러면 코딩 과정에서 오류를 발견하는 것보다 컨텍스트 및 토큰 절약을 할 수 있고 탄탄한 토대를 가지고 구현에 들어갈 수 있다.
Code(구현)
계획을 토대로 개발에 들어간다.
Commit(커밋)
커밋 전 서브에이전트로 리뷰하기. 메인 에이전트로 코드 리뷰까지 하게 되면 이전 컨텍스트를 가지고 Bias한 리뷰를 할 수 있기에 컨텍스트가 없는 서브 에이전트를 하나 만들어서 새로운 시각을 가진 제 3자가 리뷰하도록 하라는 말이다.
Context Window(컨텍스트 윈도우)
클로드 코드의 메모리 같은 느낌?(그냥 메모리가 맞음) 클로드 코드 잘 쓰려면 컨텍스트 관리를 잘 해야한다고 한다.
세션의 컨테스트 윈도우가 다 차면 자동으로 컴팩트 됨
우리에게 이 컨텍스트를 관리?할 수 있는 세 명령어가 있는데
/compact
수동으로 세션의 컨텍스트 압축. 이전 대화 내용 기억하면서 계속 진행하고 싶을 때. 컴팩트를 하면 요약본이 남기에 디테일이 소실될 수 있음 당연히.
/clear
컨텍스트 다 지움. 기억을 지움. 이제 다른 기능 개발하거나 이전 대화에 편향된 결과를 받고 싶지 않을 때.
/context
현재 세션의 컨텍스트를 자세히, 시각적으로 확인 가능.
compacting vs clear
-> 한 기능 개발이 덜 끝났으면 컴팩트, 새 개발 부분이면 clear
따라서 클로드 코드의 컨텍스트를 잘 관리할 수 있어야 한다. 그러기 위해 우리는 클로드 코드에게 성공 기준을 명확히 프롬프트로 제공해야 한다. 명확한 프롬프트를 주지 않는다면 클로드 코드는 그걸 알아내기 위해 토큰을 더 많이 소비하며 더욱 Explore를 함 그만큼 컨텍스트도 더 차고 따라서 대충 짧은 프롬프트를 넣는 것이 디테일한 프롬프트보다 컨텍스트를 더 많이 잡아먹는다.
또한 해당 세션에서 사용하지 않는 MCP도 끄라고 한다. MCP도 컨텍스트를 차지하는데, 컨텍스트 윈도우는 한정되어 있기 때문에 컨텍스트를 잡아먹는 MCP를 너무 많이 켜놓으면 성능 저하.
서브에이전트를 사용하는 이유도 일을 시키고 요약만 받아오면 메인 세션의 컨텍스트 윈도우 관리 가능. 약간 추상화 같은 느낌? 일 시켜놓으면 서브에이전트가 수행 후 결과를 요약해주니 메인 세션은 더욱 전체적인 관점에서 작동 가능.
만약 컨텍스트를 없애도 남기고 싶은 것이 있다면 CLAUDE.md에다가 명시하면 된다. 시스템 프롬프팅을 저기 넣는 느낌. 예를 들어 CLAUDE.md에 구현 후 테스트를 매번 돌리라고 넣는 거. <- 참고로 이처럼 구현 단계에서는 테스트를 꼭 넣는 것이 좋다고.
4. Customizing Claude Code
CLAUDE.md 파일
매 세션을 처음 시작할 때마다 클로드 코드가 읽는 파일이다. 매 세션마다 처음에 정의해 주거나 말해줘야 하는 것들을 여기 적어놓으면 됨. /init 하면 클로드가 현재 프로젝트를 분석하여 CLAUDE.md 초안을 만들어준다.
처음부터 완벽하게 CLAUDE.md를 짜려고 하지 않아도 된다. 개발 도중 앞으로 계속 기억이 필요한 것들은 그때그때 CLAUDE.md에 넣어달라고 하기.
CLAUDE.md 안에 모든 내용을 적으려 하면 너무 길어지니 다른 문서를 참고하고 싶다면 [@파일경로] 이런 식으로 적어놓으면 찾아서 읽는다고
서브에이전트(Subagents)
컨텍스트 관리를 더욱 잘 할 수록 클로드 코드는 더 Productive하게 된다. 그러나 컨텍스트를 고려하지 않고 사용 시 많은 컨텍스트가 그저 코드 탐색, 웹사이트 검색 등으로 소비된다. 이 과정 중 헛발질한 것도 다 컨텍스트에 추가된다. 이런 과정들은 서브에이전트에 맡기면 다른 새로운 컨텍스트를 가진 세션을 만들어 실행하여 메인 세션과 컨텍스트를 분리하여 수행 후 결과만 반환할 수 있다. 메인 세션은 핵심 결과만 받고 그 과정에서 생성되는 컨텍스트는 생략할 수 있다는 거임. 약간 자판기 느낌인 듯?
/agents를 통해 내 에이전트를 커스터마이징하고 어떤 프롬프트가 실행될 때 에이전트를 불러올지 설정할 수 있다는데 우선 클로드 기본 에이전트부터 활용하고 나서 만들어보아야겠다.
기본적으로 특성 상황에서 기본 서브에이전트를 호출해서 실행하는 거 같은데 이런 패시브 상황 외에도 내가 판단하에 서브에이전트가 효율적일 거 같은 상황인 경우 호출할 수 있도록 해봐야 할 듯.
기본적으론 서브에이전트를 돌린다고 메인 세션에서 다른 걸 할 수 있지는 않다. 백그라운드 옵션을 키지 않으면 기본적으로 컨텍스트 분리만을 위한 서브에이전트 호출이 되어 기다려야 함.
메인에서도 병렬적으로 다른 걸 수행하고 싶으면 서브에이전트를 백그라운드에서 돌려달라고 해보자.
-> 컨트롤 + B를 누르면 서브에이전트를 백그라운드로 보낼 수 있다.
더 자세한 건 서브에이전트 강의에서..
스킬(Skills)
PR 리뷰라든가 반복적으로 하는 것들을 매번 설명하거나 복붙 하기도 귀찮은데 그걸 문서화해놓고 그걸 통해서 간단하게 자동화하는 것.
클로드는 Skill 문서의 이름과 description만 읽어 놓고 이 스킬이 언제 필요한지 판단하고 필요할 때 해당 스킬을 시전 한다.
그치만 그냥 / 명령어를 통해서 스킬을 직접적으로 호출하는 것도 가능.
자세한 건 스킬 강의에서..
MCP(Model Context Protocol)
외부 도구에 접근할 수 있도록 하는 MCP라는 프로토콜 원래는 이런 프로토콜이 없이 연결 방법이 다 제각각이었는데, 엔트로픽이 USB-C 타입과 같은 표준화된 방법인 MCP를 제시하였고 거의 표준으로 자리 잡고 있는 듯하다.
주의
MCP는 안 써도 켜놓기만 해도 해당 세션의 컨텍스트를 소모한다.
컨텍스트의 10% 이상을 MCP가 차지하게 되면 클로드 코드는 성능 저하를 막기 위해 도구 서칭 모드로 들어간다고. 적당히 쓰고 안 쓰는 MCP는 끄도록 하자.
자세한 건 MCP 강의에서..
Hooks
AI가 실수로라도 넘을 수 없는 가드레일 설정
CLAUDE.md에 있는 건 가끔 빼먹을 수 있는 Soft Rule이라고 하면 Hooks는 예외 없이 안 지킬 수 없는 Hard Rule이다.
그냥 유튜브랑 블로그로 주워들은 걸로 클로드 코드를 사용하려니까 제대로 사용하지 못하고 있는 거 같아서 봤는데 구조를 잡는데 큰 도움이 되었다. 기본적인 틀을 먼저 이해하고 심화 활용하는 방안으로 가야겠다.
'개념' 카테고리의 다른 글
| 김영한 스프링 핵심 원리 - 기본편 복기 (1) | 2026.04.10 |
|---|