월 1,000달러 지출하며 알아온 Claude Code 길들여 혼자 만드는 AI 개발팀
아직 오픈 전인 콘텐츠예요. 오픈하면 제가 버튼 추가해둘게요.
CLAUDE CODE · HARNESS ENGINEERING
AI 에이전트는 매번 비결정적이고,
자기 선호 편향을 피해갈 수 없습니다
Claude Code(클로드 코드)는 ChatGPT처럼 답만 돌려주는 대화형 인공지능(AI)이 아니라, 파일을 고치고 명령을 실행하는 AI Agent입니다. 그래서 프롬프트로 부탁하지 않고, 모델 바깥의 하네스로 동작을 통제합니다. 현업에서 매달 1,000달러 넘게 Claude Code를 쓰며 다듬은 하네스를 처음부터 같이 직접 만듭니다. 다른 프로젝트로 옮겨 그대로 동작하는지도 확인합니다.
비결정성
같은 요청을 보내도 결과가 매번 다릅니다. 지침에 적어 둔 규칙도 어길 때가 있습니다.
자기 선호 편향
모델은 자기가 만든 결과를 더 후하게 평가합니다. 스스로 검토하게 두면 문제를 놓칩니다.
출처: Panickssery et al., “LLM Evaluators Recognize and Favor Their Own Generations”, NeurIPS 2024
TOKEN OPTIMIZATION
토큰 최적화: Context Window에 실리는 것부터 확인합니다
토큰 사용량은 한 번의 요청에 실리는 항목의 크기로 정해집니다. 항목마다 줄이는 방법이 다릅니다.
HARNESS ENGINEERING
하네스 엔지니어링: 부탁하지 않고 설정으로 막습니다
지침에 적은 규칙은 모델이 어길 수 있습니다. 설정 파일에 넣은 규칙은 모델이 어겨도 Claude Code가 실행 단계에서 막습니다.
일부러 실패시켜서 확인합니다
통과할 수 없는 검사, 폴더 밖 파일 쓰기, 숨은 지시가 든 글로 설정이 실제로 막는지 봅니다.
Prompt Injection을 재현하고 막습니다
같은 글을 규칙을 넣기 전과 넣은 뒤에 읽혀서 비교합니다. 이론 중심 보안 교육 대신, AI Agent를 직접 뚫어 보고 막습니다.
결과물을 검증합니다
실행해서 확인, 테스트 먼저 작성, 새 세션에서 검토, 출처와 대조.
SANDBOX
Sandbox: 터미널 명령이 프로젝트 폴더 밖에 파일을 쓰지 못하게 막습니다
Hook과 permissions.deny는 미리 등록해 둔 명령어만 막습니다. 등록하지 않은 명령어는 통과합니다. Sandbox는 어떤 명령어든 프로젝트 폴더 밖에 파일을 쓰려고 하면 막습니다.
설정 항목 하나로 켭니다
sandbox.enabled를 켜고, 같은 프롬프트를 켜기 전과 켠 뒤에 보내서 비교합니다.
우회 경로도 막습니다
막힌 명령을 Sandbox 밖에서 다시 시도하지 못하게 설정합니다.
Sandbox가 막지 않는 범위도 다룹니다
폴더 안의 파일은 저장과 되돌리기로, 파일 편집 도구는 권한 규칙으로 막습니다.
MULTI AGENT
Multi Agent(멀티 에이전트): 나누면 좋아지는 일과 비용만 늘어나는 일을 구분합니다
Subagent(서브에이전트)는 맡은 일을 자기 Context Window에서 따로 처리하고 결과만 돌려줍니다. 원래 대화가 길어지지 않는 대신, 일을 넘기고 돌려받는 데 토큰이 듭니다.
역할 여섯 개
plan, research, build, test, review, record. 역할마다 도구와 모델을 따로 정합니다.
위임 판단
직접 시킬 때와 맡길 때를 시간과 결과로 비교합니다.
용도별 팀
신규 기능 개발, 오류 수정, 조사·분석.
AGENT TEAMS
Agent Teams: Agent끼리 직접 통신합니다
Subagent는 결과를 Main Agent에게만 돌려줍니다. Agent Teams의 팀원은 각자 독립된 세션이고, 할 일 목록을 같이 보면서 서로 메시지를 주고받습니다. Anthropic이 실험 단계로 표시한 기능이라 기본으로 꺼져 있습니다.
켜는 방법
설정 파일에 CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS를 넣고 팀원 두 명을 띄웁니다.
할 일 분배
팀원이 공유된 할 일 목록에서 일을 직접 가져갑니다.
사용 기준
서로 논의가 필요한 일에만 씁니다. 결과만 받으면 되는 일은 Subagent가 비용이 적게 듭니다.
HEADLESS
Headless 실행: 사람이 없는 시각에도 정해진 작업을 실행합니다
claude -p는 대화창을 띄우지 않고 요청 하나를 처리한 뒤 끝납니다. 이 명령을 macOS 예약 실행 도구(launchd)에 등록하면 정해진 시각에 자동으로 실행됩니다. 퇴근 뒤에도 정리·점검 작업이 돌아가니 업무 생산성이 올라갑니다.
승인
승인 창을 눌러 줄 사람이 없으므로, 허용할 동작을 미리 정해서 등록합니다.
cron 대신 launchd
cron으로 등록하면 Claude Code가 로그인 정보를 읽지 못해 인증에 실패합니다.
비용
요청 범위를 좁게 잡고, /usage로 사용량을 확인합니다.
PREVIEW
실제로 돌려 본 화면을 그대로 보여 드립니다
반복 작업을 skills로 나누고, plugin 패키징까지 결합하기
반복하는 절차를 skill로 떼어 내고 plugin으로 묶어, 슬래시 명령 하나로 다시 부릅니다.테스트 선행 패턴을 통해서 결과물 퀄리티 검증하기
검사 스크립트를 먼저 넣어 실패를 확인하고, 통과할 때까지 고친 뒤 좁은 화면 폭까지 직접 재서 확인합니다.BFT(비잔틴 장군 문제)를 기반으로 한 병렬 검토 패턴
관점이 다른 조사 에이전트 셋을 동시에 돌리고, 둘 이상이 같은 결론을 낸 것만 결과에 남깁니다.Subagent를 순서대로 불러 신규 기능 개발하기
research, build, review 순서로 Subagent를 불러 조사부터 구현과 검토까지 기능 하나를 끝냅니다.INSTRUCTOR
누가 만들었나요
Hong — 판교 플랫폼 서버 개발자
실무에서 월마다 최소 1,000달러 가치의 토큰을 사용하며 배운 노하우를 여러분들에게 알려드립니다.
플랫폼 서버를 개발하며 Claude Code를 매일 씁니다. 같은 요청에도 결과가 달라지고 규칙을 어기는 문제를, 프롬프트가 아니라 설정과 절차로 막아 왔습니다. 그 과정에서 실제로 써 온 하네스를 그대로 옮겼습니다.
“Claude Code는 같은 요청에도 매번 조금씩 다르게 동작합니다. 그래서 이 강의는 좋은 프롬프트를 알려 드리는 대신, 모델이 어겨도 실행이 막히도록 규칙을 설정에 넣는 방법을 다룹니다.”
취업했다고,
이직했다고 연락이 올 때가 있어요
강의를 듣다 막히는 부분, 본인 프로젝트에 설정을 적용하면서 생기는 질문, 커리어와 현업 이야기까지 편하게 나누는 공간입니다.
Claude Code를 써 보셨다면,
다음은 하네스를 만들 차례입니다
강의가 끝나면 본인 프로젝트에 복사해서 쓸 수 있는 설정 한 세트가 남습니다. 하네스는 언어와 무관해서 Python이든 JavaScript든 프로젝트 폴더에 그대로 복사해 씁니다.