AI VIDEO BRIEFING
AI 코딩 에이전트 직접 만들기: 파이썬·Gemini로 배우는 도구 호출과 에이전트 루프
Cursor·Claude Code 같은 코딩 에이전트의 작동 원리를, 파이썬과 무료 Gemini Flash API로 직접 만들며 배운다. 네 가지 도구 호출과 에이전트 루프, 작업 디렉터리 가드레일까지 정리한다.

핵심 메시지
쉽게 이해하기
이 강의는 boot.dev의 레인 와그너가 프리코드캠프와 함께 제공하는 실습형 코스로, Cursor·Claude Code·OpenAI Codex 같은 코딩 에이전트의 '장난감 버전'을 파이썬과 무료 Gemini Flash API로 직접 만든다. 강사는 골드러시에서 직접 금을 캐기(바이브 코딩)보다 '삽을 파는' 쪽, 즉 도구의 원리를 이해하는 쪽이 낫다는 비유로 동기를 설명한다. 이진 트리를 배우는 이유와 같이, 매일 쓰는 도구가 내부에서 어떻게 작동하는지 알아야 더 효과적으로 쓸 수 있다는 것이다.
에이전트와 일반 챗봇의 차이는 분명하다. 브라우저 챗봇은 프로젝트 맥락이 없어 코드를 계속 복사·붙여넣기 해야 하지만, 에이전트는 프로젝트 디렉터리를 스캔하고 파일을 읽고 코드를 실행해 스스로 맥락을 모은다. 더 중요한 차이는 '루프'다. 한 번의 프롬프트에 한 번 답하는 대신, 도구 호출을 통해 스스로에게 반복적으로 프롬프트를 던지며 여러 번 시도할 수 있다.
에이전트에게 주어지는 도구는 네 가지다. 디렉터리의 파일 목록 보기, 파일 내용 읽기, 파일 내용 덮어쓰기, 그리고 파이썬 코드 실행이다. 강사는 '계산기 앱이 안 켜진다, 고쳐줘' 같은 요청을 받으면 에이전트가 파일 트리를 훑고, 문제가 있을 법한 파일을 읽고, 수정하고, 실행해 보고, 안 되면 다시 고치는 과정을 반복하는 흐름을 보여준다.
프로젝트는 파이썬 3.10 이상, 의존성 관리 도구 uv, 유닉스 계열 셸을 전제로 한다. uv로 프로젝트와 가상환경을 만들고 google-genai SDK와 python-dotenv를 추가한 뒤, Google AI Studio에서 발급한 API 키를 .env에 두고 git에서 제외한다. 그리고 client.models.generate_content로 Gemini Flash를 호출해 응답 텍스트와 토큰 사용량을 출력하며 기본기를 익힌다.
강의는 단발성 호출에서 출발해 대화 기록을 user·model 역할의 메시지 리스트로 관리하고, 개발자용 정보를 토글하는 --verbose 플래그를 추가하는 식으로 점진적으로 발전시킨다. 이어 functions 디렉터리에 get_files_info, get_file_content, write_file, run_python_file 함수를 하나씩 구현하는데, 모든 함수는 작업 디렉터리 밖 접근을 막는 가드레일과 LLM이 읽고 다음 시도에서 스스로 교정할 수 있는 좋은 오류 메시지를 갖추도록 강조한다.
주요 인사이트
- 에이전트의 본질은 학습 데이터에서 바로 답을 받는 것이 아니라, 백엔드 함수를 도구로 호출해 최신 정보나 외부 동작을 끌어와 응답에 반영하는 능력에 있다.
- 파일 경로를 직접 슬래시로 파싱하지 말고 os.path.abspath·join·dirname 같은 표준 라이브러리를 써야 운영체제 차이와 수많은 예외 상황을 안전하게 처리할 수 있다.
- 파일 읽기에 글자 수 상한(예: config.py의 MAX_CHARS)을 두고 초과 시 잘라내는 것은, 거대한 파일을 통째로 API에 올려 토큰을 낭비하지 않기 위한 실용적 장치다.
- LLM에게 임의의 파이썬 코드를 실행하게 하는 것은 위험하므로, 30초 타임아웃과 작업 디렉터리 제한을 두더라도 이 프로젝트는 교육용 장난감으로만 쓰고 일상 업무에는 Codex·Claude Code 같은 검증된 도구를 권한다.
- 에이전트를 직접 만들어 보면 LLM API의 동작, 토큰 관리, 도구 호출 기반 에이전트 루프를 깊이 이해하게 되어, AI 도구를 잘 다루는 개발자들과 경쟁하는 데 유리하다.
자주 묻는 질문
이 강의에서 LLM을 직접 학습시키는가?
아니다. 목표는 LLM을 처음부터 훈련하는 것이 아니라, 이미 강력한 기반 모델인 Gemini Flash 위에 에이전트를 얹어 만드는 것이다. 강의는 모델 학습이 아니라 도구 호출과 에이전트 루프의 작동 원리를 이해하는 데 초점을 둔다.
에이전트에게 주어지는 네 가지 도구는 무엇인가?
디렉터리의 파일 목록과 메타데이터 보기(get_files_info), 파일 내용 읽기(get_file_content), 파일 내용 덮어쓰기(write_file), 그리고 파이썬 코드 실행(run_python_file)이다. 이 네 가지만으로도 에이전트는 프로젝트를 탐색하고 수정하고 실행해 결과를 확인할 수 있다.
에이전트가 시스템 전체를 헤집지 않도록 어떻게 막는가?
각 함수에서 대상 경로의 절대 경로가 하드코딩된 작업 디렉터리로 시작하는지 검사하고, 벗어나면 오류 문자열을 돌려주는 가드레일을 둔다. 다만 임의의 파이썬 코드 실행을 허용하므로 완전히 안전하지는 않으며, 강사는 이를 교육용으로만 쓰라고 거듭 경고한다.
원문과 출처
이 글은 원본 영상의 자막을 바탕으로 한국어 독자를 위해 요약했습니다. 전체 맥락과 최신 정보는 원문에서 확인하세요.
YouTube 원본 영상 보기 ↗