2026. 3. 19. 12:34ㆍClaude Code
개발의 기본은 역시 공식문서이죠. 하지만 너무 길어서 누가 필요한 부분만 알려주면 좋겠다고요?
제가 바로 그 "누"입니다.
Claude의 작동 방식
: 자료 조사 > 작업 수행 > 검증
항상 이 순서로 작업이 진행되고, "루프"라고 부릅니다. 아래 설명을 읽을 때 참고해주세요
claude code 터미널(windows 기준)
1. Git bash + windows Terminal
: 성능/ 가독성 좋음
2. PowerShell
3. cmd
주요 단축키
/init
: 프로젝트를 위한 CLAUDE.md 생성을 안내합니다. 프로젝트 생성 직후 사용하면 좋습니다.
/context
: context 상황을 확인할 수 있음
/clear
: context를 비웁니다. CLAUDE.md는 남아있습니다.
ecs키 2번 누르기
: claude는 파일 변경 전 현재 컨텐츠의 스냅샷을 만듭니다. esc를 두 번 누르면 변경을 취소하고 변경 전의 상태로 돌아갑니다.
Shift + Tab
: claude 모드 변경. 자세한 설명은 아래에
alt + v
: 이미지 붙여넣기
그 외 단축키
?
: 단축키 보기
/
: 명령어 구분자
/compact
: context를 압축합니다.
/btw
: context를 오염시키지 않고 처리하는 질문, 진행 중이던 작업과 별개로 진행된다.
ctrl + t
: 작업 중 현재 진행 단계 확인
/plugin
: 내 플러그인을 확인하고 마켓에서 플러그인을 받을 수 있습니다.
/resume: 세션이 끊기거나 실수로 터미널을 닫았을 때, 이전의 대화 맥락을 그대로 복구할 수 있습니다.
/simplify: 기능 구현이나 버그 수정 후 실행하면 코드를 자동으로 정리
1. 코드 재사용 검토
2. 코드 품질 검토
3. 효율성 검토
/batch: 대규모 변경을 병렬 처리
방법: /batch + ( 프롬프트 ) 입력
1. 코드베이스 ㅡ조사
2. 작업을 5~3-개 독립 만위로 분해
3. 계획 승인 요청
4. 단위별 독립 에이전트가 각각 git worktree에서 병렬 실행
5. 각 에이전트가 구현 + 테스트 +PR 생성까지 수행
/ralph-loop: 성공 조건에 다다를 때 까지 무한 반복
방법: /ralph-loop "프롬프트, 작업이 완료되면 반드시 Done을 입력해" --max-iterations 10 -- completion-promise Done
> Trigger 워드 Done을 발견할 때 까지 최대 10번 프롬프트를 반복한다.
ex) /ralph-loop "
1) ralph-loop 플러그인 설치
2) 명령어
터미널 멀티플렉서 for 세션유지
windows: wsl2를 통해 tmux 사용
macOS: 바로 사용 가능
Context 관리
context: claude의 단기 기억 용량입니다.
context 추가 설명
제한된 context에서 꼭 필요하고 유용한 정보만 저장해야 성능 최대한으로 끌어낼 수 있어요. context에는
- 대화기록
- 사용했던 skills
- CLAUDE.md
등이 저장되는데 context가 길어질수록 성능이 떨어지고 토큰도 많이 사용합니다.
관리방법
1. 새로운 작업을 시작할 때 /clear 사용하여 context 비우기(중요)
그 밖에 방법
2. /compact로 압축하기
: 압축할 때 살리고 싶은건 focus를 사용합니다. ex) /compact focus on the API change
3. Skills 수동 제어
: disable-model-invocation: true 를 통해 claude가 자율적으로 skill을 사용하는 권한을 끕니다.
4. subagents(서브 에이전트): 서브에이전트는 병렬처리 방법이라고 생각하면 되고, 주 대화와 완전 분리된 context를 갖습니다.
Claude의 모드
cmd에서 Shift + Tab 키로 모드를 전환할 수 있습니다.
Default (기본)
: Claude는 파일 편집 및 커맨드 사용 전에 요청.
Auto-accept edits(자동 수락 편집)
: Claude는 파일을 스스로 편집하지만 커맨드 사용은 여전히 요청.
*Plan mode (계획 모드)
: Claude는 읽기 전용 도구만 사용하여 실행 전에 승인할 수 있는 계획을 만듭니다.
복잡한 요청을 할 땐 Plan mode로 가닥을 잡아두고 Auto-accept edits로 진행하는 것이 좋습니다.
* 모든 작업의 시작을 플랜모드에서 하시길 권합니다.
메모리 관리
메모리는 한정되어있고, 성능과 토큰 절약을 위해 관리해줘야 합니다.
아래 두 파일은 claude가 작업을 시작할 때 참고하는 문서입니다. 이 문서에는 코드만 봐선 알 수 없는 내용을 보관하는게 바람직합니다.
CLAUDE.md
: 사용자가 적어두는 지침, /init으로 생성
MEMORY.md
: claude가 작업 중 자동 저장하는 학습 데이터, 세션을 종료해도 프로젝트에 남아있다.
편집방법
1. cmd에서 claude에게 명령
ex) CLAUDE.md 열어 > OOO 관련 메모리는 삭제해줘.
2. 직접 파일 수정
md 파일이라 vscode에서 직접수정합니다.
프로젝트 폴더가 아닌 claude를 설치한 경로에서 memory 폴더 안에 있습니다.
제 경우는 C드라이브 User\.claude\momory 에 있었습니다.
프롬프트 작성 요령
- Plan 모드로 작업 시작(Shift + Tab 두 번)
- 모호하지 않은 구체적인 묘사
- claude에게 내 요청에서 명확하지 않은 부분에 대한 질문 요구
- claude가 스스로 검증할 수 있도록 테스트 케이스를 포함하고, 레퍼런스를 줍니다.
- claude는 코딩의 전문가입니다. claude를 믿고 당연한 것을 명령하지 않기. 읽을 파일이나 실행할 명령어를 지정하지 않아도 Claude가 파악합니다.
모델 비교
성능
Haiku < Sonnet < Opus
subagent, skill = sonnet 추천


Plan모드 실전 워크플로우
기본 흐름
Plan 모드 (분석/설계) → 일반 모드 (구현) → 확인
1단계: Plan 모드로 분석
claude --permission-mode plan
"하트블록 시스템을 추가하려고 해. 현재 블록 시스템 구조를 파악하고 구현 계획을 세워줘"
Claude가 하는 일:
- 관련 스크립트 탐색 (Grep/Glob/Read)
- 기존 아키텍처 파악 (BoardManager, BlockData 등)
- ScriptableObject 구조 확인
- 구현 계획 제시 (수정할 파일, 순서, 주의사항)
2단계: 계획 확인 후 구현 전환
Shift + Tab → 일반 모드로 전환
"계획대로 구현해줘"
3단계: Unity MCP로 검증
"read_console로 컴파일 에러 확인해줘"
실전 시나리오별 워크플로우
A. 새 시스템 추가 (예: 업적 시스템)
- [Plan] "업적 시스템을 추가하려고 해. 현재 프로젝트 구조에 맞는 설계를 해줘"
- 기존 Manager 패턴 분석
- AchievementData, AchievementManager 설계
- GameSetupEditor 연동 계획
- [Shift+Tab → 구현] "계획대로 구현해줘. 끝나면 read_console로 확인"
B. 버그 수정
- [Plan] "블록 배치 시 겹침 버그가 있어. 원인을 분석해줘"
- DraggableBlock, BoardManager 분석
- 배치 로직 흐름 추적
- 원인 + 수정 방안 제시
- [Shift+Tab → 구현] "분석한 대로 수정해줘"
C. 리팩터링
- [Plan] "BoardManager가 너무 커. 분리 방안을 제안해줘"
- 메서드 그룹 분석
- 책임별 분리 계획 (LineClearManager, PlacementManager 등)
- 의존성/영향 범위 파악
- [Shift+Tab → 구현] "LineClearManager부터 분리해줘"
이 프로젝트에 특화된 팁
| 상황 | Plan에서 확인할 것 |
| 새 블록 타입 | BlockDatabase, GetWeightedRandomShape, GameSetupEditor |
| 새 증강 | AugmentData 풀, AugmentManager.ApplyEffect, 기존 패턴 |
| 새 디버프 | Day/Night 사이클, AugmentManager 디버프 흐름 |
| UI 추가 | GameSetupEditor 자동 생성 패턴, 앵커/레이아웃 규칙 |
| 새 Manager | 기존 Manager 패턴, GameManager 연결, Pause/Resume 처리 |
Plan 모드가 특히 유용한 경우
- GameSetupEditor 수정 전 — 자동 생성 코드가 복잡해서 먼저 구조 파악 필수
- 여러 Manager가 연결된 기능 — 의존성 먼저 파악
- ScriptableObject 변경 — 기존 에셋 호환성 확인
- [SerializeField] 관련 — 이 프로젝트의 직렬화 버그 패턴 사전 체크
권장 습관
- 새 기능 → 항상 Plan 먼저
- 버그 수정 → 재현 가능하면 바로 구현, 복잡하면 Plan
- 리팩터링 → 반드시 Plan 먼저
권한을 주는 방법
작업 중 수시로 승인을 누르기가 번거롭다면 claude에게 권한을 부여할 수 있습니다.
- 모든 권한을 부여하는 명령어: --dangerously-skip-permissions
- 특정 권한을 부여하는 방법: claude에게 대화로 ~기능 권한 부여해 라고하면 내장된 /update-config 스킬을 통해 스스로 권한을 부여합니다.
작업 중단 및 조정
언제든지 Claude를 중단할 수 있습니다. 잘못된 경로로 가고 있으면 수정 사항을 입력하고 Enter를 누르세요. Claude는 작업을 중지하고 입력을 바탕으로 접근 방식을 조정합니다. 완료될 때까지 기다리거나 다시 시작할 필요가 없습니다.
확장
개요
- CLAUDE.md는 Claude가 모든 세션에서 참고하는 지침서
- Skills는 재사용 가능한 지식과 호출 가능한 워크플로우( / 명령어 )를 추가합니다.
- MCP는 Claude를 외부 서비스 및 도구에 연결합니다. ex) Notion, Slack, Unity 등
- Subagents는 별도의 context를 갖는 agent가 자신의 루프를 실행하고 요약을 반환합니다.
- Agent teams는 Sub여러 agent를 관리하는 룰을 가진 agent가 존재하고 각 agent간 소통이 가능해집니다.
- Hooks는 특정 순간(작업 전 후 등)에 실행할 Hook(사용자 지정 코드)을 설정할 수 있음.
- Plugins 및 marketplaces는 이러한 기능을 패키징하고 배포합니다.


기본적으로 위 확장들은 해당 프로젝트에 귀속됩니다.
- Skills 위치: your-project/.claude/skills/
- Hooks 위치: your-project/.claude/hooks/
- 기타 설정: your-project/.claude/config.json (프로젝트별 개별 설정)
subagent 여러 개와 Agent teams의 차이점은 각 agent의 소통 가능 여부와 비용입니다.
subagent는 각 agent의 결과물을 모아서 하나의 결과물을 만들기 때문에 agent간 소통이 없습니다.
Agent teams는 agent간 소통이 이루어지기 때문에 성능이 좋고, 오류 발생을 예방할 수 있습니다.
단, teams의 비용은 같은 수의 subagents + a 입니다.
skills
: /로 사용할 수 있는 단축키를 만드는 기능입니다.
추가설명
: skills는 가장 유연한 확장입니다. Skill은 지식, 워크플로우 또는 지침을 포함하는 마크다운 파일입니다.
/deploy 처럼 명령어로 만들어 두고 호출 할 수 있고, Claude가 관련이 있을 때 자동로드 할 수 도 있습니다.
subagent도 skill을 사용할 수 있습니다.
claude에게 skills 사용 권한 제어
disable-model-invocation: true 를 통해 claude가 자율적으로 skill을 사용하는 권한을 끕니다.
추가하는 방법
1. skill-creator 플러그인 설치
/plugin > skill 검색 > skill-create 설치
2. claude에게 대화로 원하는 스킬 제작을 요청.
~하는 skill을 만들어줘라고 하면 자동으로 skill-creator를 사용해서 만들어줄겁니다.
내용이 궁금하다면 저장 경로를 claude에게 물어봐서 확인해보세요.
ex)
(1) 현재 브랜치에서 변경점을 commit, push하고 main에 pull request를 보내는 skill을 만들어줘.
commit을 할 때 제목과 설명을 작성해.
제목은 전체 내용을 포함하지만 간단하게 작성하고
설명은 최대 50자 이내로 작성해
내용이 단순하다면 설명은 생략할 수 있어
(2) 작업 시작 전 orgin에서 main과 현재 작업브랜치의 변경사항을 pull하는 skill을 만들어줘.
두 브랜치에서 pull을 실행하고 원래 작업하던 브랜치로 checkout해야해.
변경점이 있다면 요약해서 한글로 알려줘야해.
사용 방법
- /OOO 로 생성한 명령어를 사용합니다.
- claude가 자동으로 사용하기도 합니다.
Hooks
: 특정 상황에서 발동하는 자동화 시스템
추가 방법
: 대화로 ~할 때마다 ~ 하는 개인용 Hook을 만들어줘
ex) claude code가 plan이나 작업을 완료하면 내 Android 휴대폰으로 알림을 보내는 Hook을 만들어줘
이렇게 요청하니까 ntfy 앱을 통해 알림을 받는 방법을 제안하더군요.
사용방법: 자동
SubAgents
: 사람이 직접 작업중인 claude가 main agent라면 subagent는 그 main agent에게서 임무를 받아 수행하는 agent입니다.
작업을 병렬로 처리하기 위해 사용하고, 독립된 context를 갖기 때문에 main의 context를 오염시키지 않고 subagent에게서 받은 결과물을 종합하여 더 나은 성능의 결과를 만들 수 있습니다. 이렇게 만든 subagent는 재사용이 가능합니다.
비유하자면 main agent는 관리자/ subagent는 직원입니다.
subagents는 sonnet이나 haiku 모델 사용을 추천합니다.
활용: 코드 리뷰 에이전트 / 탐색 에이전트 등
추가하는 방법
1. /agents 입력 + Create new agent 엔터
2. 팀 or 개인용 agent 선택
: agent의 사용 범위 저장 위치에 따라 구분됩니다.
ex) 개인용
C:/User/.claude/agents/
ex) 프로젝트용
Project_Name/.claude/agents/
3. agent의 룰 설정
: 상세하게 어떤 agent를 만들 것인지 적습니다.
4. 이 agent가 사용할 수 있는 Tool 지정
5. 이 agent의 model 설정
: *Sonnet 이나 Haiku 추천
6. 색상 선택
: 여러 서브에이전트를 구분하기 위한 색
7. agent-memory 권한 부여
: Enable
사용 방법
- claude와 대화하며 OOO 에이전트를 사용해서 OOO 작업을 해줘.
- plan.md의 작업을 sub agent를 사용해 병렬로 수행해줘.
- 단순 main agent의 context를 더럽히지 않기 위해서 사용하기도 함.
Agent teams
:지휘자(Orchestrator)와 여러 agent가 팀으로서 작업함.
Ctrl + T : 진행중인 작업 확인
Shift + ↓: 다른 agent의 세션 확인
추가 설명
Teams와 Subagent와 차이점
Subagent: main(사용자 세션) agent가 subagent에 작업을 분해함. subagent끼리는 소통이 불가능함.
Agent Teams: subagent 중 하나가 leader가 되어 leader가 다른 sub에게 작업을 분배하고, 모든 agent가 소통가능함.
Split Pane (T-Mux): T-Mux를 사용하면 화면을 분할하여 여러 에이전트가 일하는 모습을 실시간으로 모니터링할 수 있습니다. 큰 모니터를 사용 중이라면 이 모드를 강력 추천합니다
In-Process 모드: 단일 터미널에서 리스트 형태로 에이전트를 관리하는 기본 모드입니다. Ctrl + T를 눌러 현재 진행 중인 작업 목록(Task List)을 확인할 수 있습니다
자동 종료: 에이전트가 일정 시간 유휴 상태(Idle)가 되면 자동으로 종료되어 자원을 아낍니다. 수동으로 끄고 싶다면 리더 에이전트에게 "정리해줘(clean up)"라고 시키는 것이 안전합니다.
3~5명의 팀원이 적당: 팀원이 너무 많으면 토큰 소모량이 급격히 늘어납니다. 보통 3명 정도가 가장 효율적입니다
파일 충돌 방지: 여러 에이전트가 동일한 파일을 동시에 수정하지 않도록 작업을 분리해 할당해야 합니다
컨텍스트 주입: 서브 에이전트는 리더의 대화 기록을 자동으로 가져오지 않습니다. "지금까지 파악한 코드 포인터들을 각 작업의 상세 내용에 포함시켜줘"라고 리더에게 시켜야 팀원들이 정확한 맥락을 파악합니다.
Unity 특이사항
: 병렬 작업 시 Unity는 .meta 파일, Scene (.unity), Prefab (.prefab) 이 특히 충돌 위험:
- Scene 파일: 한 번에 한 인스턴스만 편집
- Script 파일: 여러 인스턴스가 서로 다른 스크립트 편집은 안전
- ScriptableObject: 한 인스턴스만 수정
Unity 개발은 기존 코드나 여러 시스템이 얽힌 작업이 많기 때문에 Agent teams를 활용하기 부적합한 경우가 많다.
: 의존성 문제 때문에 Orchestrator가 인터페이스/API를 만들어야하는 상황이 불리함.
사용 방법
1) setting.json에 아래 코드 추가
{
"env": {
"CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS": "1"
}
}
2) N명의 팀원을 만들어서 OO, OO, OO 작업을 수행해.
고급 팁
멀티 인스턴스 운영
: 터미널 창을 여러 개 띄워놓고 각각 다른 작업을 시키기
ex) frontend / backend / DB / test 작업을 각각 다른 인스턴스에서 동시에 수행함.
- 훨씬 빠른 작업 + 더 많은 토큰 사용
- Git Worktree를 이용해 충돌을 방지
Unity 특이사항
: 병렬 작업 시 Unity는 .meta 파일, Scene (.unity), Prefab (.prefab) 이 특히 충돌 위험:
- Scene 파일: 한 번에 한 인스턴스만 편집
- Script 파일: 여러 인스턴스가 서로 다른 스크립트 편집은 안전
- ScriptableObject: 한 인스턴스만 수정
음성 입력
: /voice로 음성 입력 가능, space를 누르고 있는 동안 녹음 > 때면 녹음 종료
/config에서 언어 korean으로 변경 가능
커스텀 MCP 제작
: 외부 API와 연결하는 MCP를 제작합니다.
제작 방법
1) Plan 모드에서 원하는 mcp의 기능을 설명합니다.
2) claude가 mcp서버를 구축합니다.
3) 외부 api와 연결합니다
4) 테스트
'Claude Code' 카테고리의 다른 글
| claude 토큰 관리 (0) | 2026.04.05 |
|---|---|
| tmux 자주 쓰는 단축키 (0) | 2026.03.23 |