호출방식
AI와 어떻게 대화하고, 어떻게 연결하는가 — 지미가 어디 있고 어떻게 과금되는가.
API (Application Programming Interface)
HTTPS로 모델 서버에 요청을 보내고 응답을 받는 방식.
음식 배달 앱과 비슷하다 — 내가 메뉴(프롬프트)를 주문하면, 주방(모델 서버)에서 요리해서 보내준다. 주방이 어디 있는지, 셰프가 몇 명인지 신경 쓸 필요 없다. 음식(응답)만 받는다.
- 모델은 본사 서버에 있고, 내 컴퓨터엔 없다
- 요청 1회에 응답 1회 (일반 API 기준)
- 토큰 수 기준으로 과금 (종량제)
후니님 시스템에서: 품아이가 Gemini를 호출하는 방식. engine.py가 Gemini API에 요청을 보낸다.
CLI (Command Line Interface)
API 위에 도구·파일·메모리·컨텍스트·Hook을 얹은 에이전트 실행 환경.
API가 “식재료 배달 서비스”라면, CLI는 “셰프가 주방을 차린 것”이다. 셰프(에이전트)는 재료(API)를 쓰지만, 냉장고(파일 시스템)도 열고, 레시피(메모리/컨텍스트)도 읽고, 손님 주문 변경(Hook)에도 반응한다.
- Claude Code가 이 방식
- GCP에 있는 건 모델이 아니라 CLI 프로세스
- CLI가 Anthropic 서버의 Claude 모델에 API를 호출
후니님 시스템에서: 지미 = Claude Code CLI 프로세스. GCP /home/haeory/poomasi/에서 실행 중. 이 위키, 드라이브, Supabase, 텔레그램을 직접 다루는 게 CLI이기 때문에 가능하다.
OAuth / Max 플랜 인증
구독제로 Claude에 접근하는 방식. 토큰 수가 아니라 월정액으로 과금.
- $200/월 Max 플랜
- claude.ai 웹 채팅 + Claude Code CLI가 동일 한도를 공유
- 별도 API 키 없이 브라우저 로그인으로 인증
- 한도 초과 시 둘 다 느려짐 (claude.ai 쓰면 지미 한도도 줄어듦)
후니님 시스템에서: 후니님 지미 인증 방식이 이것. sk-ant-... API 키는 쓰지 않는다.
API 키
종량제로 Claude에 접근하는 방식.
sk-ant-api03-...형태- 호출 횟수·토큰 수에 따라 직접 과금
- Max 플랜과 달리 한도가 없는 대신 비용이 통제 불가
- 서버 사이드 자동화, 외부 앱 연동에 사용
후니님 시스템에서: 후니님은 API 키 방식을 쓰지 않는다. Max 플랜 OAuth 방식 사용 중. 키 값 대화 노출 금지 원칙 적용.