스킬캠퍼스

오늘 끝나면

코딩 에이전트의 원리

  • 코딩 에이전트의 원리의 핵심 문제를 한 문장으로 설명한다
  • 오른쪽 실습에서 코딩이 어떻게 움직이는지 관찰한다
  • 다음 강의와 이어지는 한계를 말할 수 있다

실습 미션

LLM + 도구(읽기·쓰기·실행) 루프가 전부임 이 문장이 실제로 무슨 뜻인지 실습에서 한 번 손으로 확인한다.

성공 조건

  • 실습의 기본값을 먼저 관찰
  • 입력값이나 모드를 한 번 이상 바꿔 결과 비교
  • 왜 결과가 바뀌었는지 한 문장으로 설명

바이브코딩 · 02

코딩 에이전트의
원리

에이전트는 LLM에 도구 루프를 붙인 것이다.
생각하고, 도구를 호출하고, 결과를 보고, 다시 반복한다.
이 한 바퀴가 코딩 에이전트의 전부다.

P.01바이브코딩 · 02

LLM은 다음 토큰 예측기다

에이전트의 뇌는 LLM이다. LLM이 하는 일은 딱 하나다.
지금까지의 글을 보고 다음 토큰을 예측한다.

토큰은 글자 조각이다. 단어보다 작은 단위로 글을 쪼갠 것이다.
LLM은 “포트를 8080으로” 다음에 뭐가 올지 확률로 고른다. 그걸 한 토큰씩 이어 붙여 문장을 만든다.

그래서 LLM 혼자서는 파일을 읽지도 못하고 코드를 돌리지도 못한다. 글만 이어 쓴다.
파일을 진짜 만지려면 손이 필요하다. 그 손이 다음 칸에서 다룰 도구다.

입력 글 → 다음에 올 토큰 한 개
다음 토큰 예측기
지금까지의 글 (입력)

포트를 8080으로

다음 토큰 후보 (확률)
8080
71%
바꿈
14%
설정
9%
서버
6%

가장 확률 높은 토큰 1개를 골라 이어 붙인다. 이걸 반복한다.

P.02바이브코딩 · 02

에이전트 = LLM + 도구 루프

LLM에 손을 달면 에이전트가 된다. 그 손이 도구(tool)다.
파일 읽기, 파일 쓰기, 셸 실행 같은 기능이다.

작동은 한 바퀴를 계속 돈다.
먼저 생각하고(think), 도구를 호출하고(act), 결과를 보고(observe), 다시 생각한다.

이 루프가 핵심이다. 한 번에 끝내는 게 아니라, 결과를 보고 다음 행동을 정한다.
틀리면 다시 읽고 고친다. 다 됐다 싶으면 루프를 멈추고 답을 적는다.
채팅 LLM과 코딩 에이전트의 차이가 바로 이 도구 루프다.

think → act → observe · 반복
도구 루프 · think → act → observe
THINK다음에 뭘 할지 정한다

포트를 보려면 파일을 읽자

ACT도구를 호출한다

read(config.json)

OBSERVE결과를 관찰한다

port: 3000

다 될 때까지 이 바퀴를 반복한다
P.03바이브코딩 · 02

루프를 직접 돌려보자

시킨 일은 “config.json 포트를 8080으로”다.

에이전트는 곧장 답을 적지 못한다. 지금 파일이 어떤 상태인지 모르기 때문이다.
그래서 먼저 read로 읽고, write로 고치고,run으로 확인한다.

한 박자씩 진행하면 도구를 부른 결과(observe)가 다음 생각의 재료가 된다.
할 일을 다 하면 루프가 DONE으로 멈춘다.

한 박자씩 think·act·observe
에이전트 루프 · 한 스텝씩 돌려보기
시킨 일

config.json의 포트를 8080으로 바꿔줘

THINACTOBSE
THINK
생각
ACT
도구 호출
OBSERVE
결과 관찰
STEP, 시작 전

에이전트는 곧장 답을 못 적는다. 파일을 읽고·고치고·확인하는 도구 루프를 돌아야 한다. 아래 → 다음을 눌러 한 박자씩 돌려 보자.

누적 도구 호출 · 0

아직 호출 없다

P.04바이브코딩 · 02

컨텍스트 창에 다 담아 추론한다

에이전트는 컨텍스트 창에 쌓인 글을 보고 다음 토큰을 고른다.

컨텍스트 창은 모델이 한 번에 읽을 수 있는 글의 공간이다.
시킨 일과 읽은 코드, 방금 도구가 돌려준 결과가 전부 여기에 글로 쌓인다.

그래서 도구로 파일을 읽으면, 그 내용이 컨텍스트에 들어가 추론의 재료가 된다.
창은 무한하지 않다. 너무 많이 쌓이면 넘친다. 그래서 무엇을 담느냐가 품질을 정한다.
이 맥락 관리가 다음 강(컨텍스트와 프롬프트)의 주제다.

시킨 일 · 코드 · 도구 결과 → 한 창
컨텍스트 창, 모델이 한 번에 읽는 글
시킨 일

포트를 8080으로 바꿔줘

읽은 코드

{ "port": 3000 }

도구 결과

write → 1 line changed

도구 결과

run grep → "port": 8080

이 글 전체를 보고 다음 토큰 추론

창엔 한계가 있어 너무 쌓이면 넘친다. 그래서 무엇을 담을지가 품질을 정한다.

P.05바이브코딩 · 02

스킬 · 하네스 · 멀티에이전트

기본 루프는 하나다. 여기에 장치를 더하면 에이전트가 더 멀리 간다.

스킬(skill)은 자주 쓰는 절차를 패키지로 묶어 재사용한다. 매번 설명하지 않아도 된다.
하네스(harness)는 에이전트를 감싸는 실행 환경이다. 어떤 도구를 줄지, 권한을 어디까지 줄지 정한다.

멀티에이전트는 큰 일을 쪼개 여러 서브에이전트에 나눠 돌린다. 각자 자기 루프를 돈다.
전부 다음 강들에서 하나씩 다룬다. 지금은 한 가지만 챙기면 된다. 바닥엔 늘 think와 act와 observe 루프가 있다.

Q. LLM은 글만 이어 쓰는데, 에이전트는 어떻게 파일 수정과 코드 실행까지 하나?정답은 도구(셸·파일)를 호출하는 루프를 돌기 때문이다.
LLM 혼자서는 다음 토큰만 예측할 뿐 실제 동작은 못 한다.
에이전트는 think로 행동을 정하고, act로 read·write·run 같은 도구를 호출한다.
그 결과를 observe로 받아 다시 생각한다. 이 루프가 글을 실제 행동으로 바꾼다.
루프를 키우는 세 가지 장치
기본 루프를 키우는 장치
think · act · observe 루프바닥엔 늘 이게 있다
스킬자주 쓰는 절차를 패키지로
재사용
하네스도구·권한을 정하는 실행 환경
감싸기
멀티에이전트일을 쪼개 서브에이전트로
팬아웃

전부 다음 강에서 하나씩 다룬다

3줄 요약

  1. 1LLM + 도구(읽기·쓰기·실행) 루프가 전부임
  2. 2코딩 에이전트의 원리은 에이전트 원리 → 도구·권한 → 스킬·하네스 → 멀티에이전트 → 실전 흐름 안의 한 칸이다.
  3. 3개념을 외우는 것보다 입력을 바꾸면 무엇이 달라지는지 보는 것이 우선이다.

완료 전 점검

복습 카드

코딩

LLM + 도구(읽기·쓰기·실행) 루프가 전부임

에이전트

스스로 도구를 써가며 일하는 LLM 프로그램

도구

에이전트가 호출하는 기능(파일·실행·검색)