루비로 만드는 출시급 AI 에이전트
앤트로픽 공식 SDK로 본 에이전트 설계 — 핵심은 '도구'와 '절제'
AI 에이전트가 '데모'에서 '실제 출시 가능한 제품'으로 넘어가려면 무엇이 필요할까. 개발자 니키타 시넨코(Nikita Sinenko)가 앤트로픽(Anthropic) 공식 루비(Ruby) SDK로 레일스(Rails) 환경에서 안전한 AI 에이전트를 만드는 법을 정리한 긴 글을 내놨다. 핵심 메시지는 역설적이다. "당신에게 필요한 건 생각보다 적은 에이전트"라는 것이다.
무슨 일인가
에이전트란 '실제로 행동하는 언어 모델'이다. 목표와 도구(호출 가능한 함수들)를 주면, 모델이 어떤 도구를 쓸지 정하고 실행한 뒤 결과를 읽고 작업이 끝날 때까지 반복한다. 앤트로픽의 정의를 빌리면 "에이전트는 보통 환경 피드백을 받아 루프 안에서 도구를 쓰는 언어 모델"이다. 글쓴이는 여기에 중요한 구분을 더한다. 정해진 코드 경로로 움직이는 '워크플로'는 예측 가능하고 일관되며, 모델이 스스로 과정을 지휘하는 '에이전트'는 유연하지만 지연·비용·오류 누적이 크다는 것이다.
핵심 짚어보기
앤트로픽 공식 루비 SDK는 스트리밍, 커넥션 풀링, 그리고 에이전트 루프를 대신 돌려주는 도구 러너를 갖췄다. 클라이언트는 스레드 안전하므로 한 번 만들어 재사용하면 된다. 에이전트 루프 자체는 '대화를 모델에 보내고 → 도구 요청이 있으면 실행하고 → 결과를 대화에 덧붙여 → 도구 요청이 멈출 때까지 반복'하는 십수 줄짜리 단순 구조다. 진짜 어려운 건 도구 설계다. 앤트로픽조차 자사 코딩 에이전트를 만들 때 프롬프트보다 도구 최적화에 더 많은 시간을 썼다. 글쓴이는 도구 정의를 '맥락이 전혀 없는 신입 엔지니어를 위한 설명서'처럼 써야 한다고 조언한다. 무엇을 하는지, 언제 쓰는지, 각 인자가 무슨 뜻인지를 명확히 하라는 것이다.
1인기업 실전 적용 포인트
- 새 기능을 만들 때 무조건 '자율 에이전트'부터 떠올리지 마라. 단계를 미리 예측할 수 있다면, 맥락 좋은 단일 모델 호출 하나가 더 싸고 빠르고 디버깅하기 쉽다.
- 진짜 루프(에이전트)는 '단계를 사전에 도저히 예측할 수 없는 개방형 작업'에만 써라. 그래야 비용과 오류 누적을 통제할 수 있다.
- 프롬프트보다 도구 설명에 공을 들여라. 도구 이름·인자·설명이 모호하면 모델도 헷갈린다. 인간 인터페이스(HCI)만큼 에이전트 인터페이스(ACI)에 투자하라.
- 사람 승인 게이트(human approval gating)를 넣어, 결제·삭제 같은 위험 동작은 에이전트가 단독 실행하지 못하게 막아라.
전망 / 주의점
루비·레일스 생태계는 그동안 AI 에이전트 논의에서 파이썬에 밀려 있었으나, 공식 SDK가 안정화되며 선택지가 넓어졌다. 다만 '에이전트를 쓸 수 있다'와 '에이전트를 써야 한다'는 다르다. 가장 단순한 해법에서 출발해 꼭 필요할 때만 복잡도를 올리라는 원칙은 어떤 언어에서든 유효하다.
출처: Nikita Sinenko (https://nsinenko.com/rails/ai-agents/architecture/2026/06/09/building-ai-agents-ruby-anthropic-sdk/)