에이전틱 엔지니어링 다섯 단계
무엇을 만들었는지가 아니라, 만드는 방식이 어떻게 바뀌었는지의 기록. 2024-11 첫 커밋부터 오늘까지, 7개 저장소 실측으로만 그린다.
프롬프트를 잘 쓰는 것에서 시작해, 지금은 열세 개의 작업 공간이 동시에 돈다. 그 사이에 다섯 번의 단계 전환이 있었고, 전환마다 저장소에 흔적이 남았다.
이 문서는 그 흔적만으로 쓴다. 커밋 수, 파일이 처음 들어온 날짜, 브랜치 구조 —
전부 git으로 다시 확인할 수 있는 값이다.
단계는 교체되지 않는다GitHub에서 피드백 남기기
다섯 단계의 정의는 Contract Loop Graph Harness v1에서 확정한 문장을 그대로 쓴다.
| 하는 일 | |
|---|---|
| Prompt | 이번 행동을 지시한다 |
| Context | 판단에 필요한 정보만 제공한다 |
| Harness | 도구, 상태, 권한, 테스트, 기록을 묶는다 |
| Loop | 관찰 결과를 다음 행동에 반영한다 |
| Graph | 여러 행동의 의존성, 분기, 병렬성을 명시한다 |
각 용어는 앞 단계를 없애지 않는다. 뒤 단계가 생겨도 앞 단계는 계속 필요하다. 그래서 아래 그림은 타임라인이 아니라 지층이다 — 한 번 시작된 띠는 끝까지 남는다.
같은 내용을 표로 보기
| 단계 | 시작 | 정의 |
|---|---|---|
| Prompt | 2024-11 | 이번 행동을 지시한다 |
| Context | 2026-03 | 판단에 필요한 정보만 제공한다 |
| Harness | 2026-04 | 도구·상태·권한·테스트·기록을 묶는다 |
| Loop | 2026-06 | 관찰 결과를 다음 행동에 반영한다 |
| Graph | 2026-07 | 의존성·분기·병렬성을 명시한다 |
1 · Prompt — 지시가 기록에 남지 않던 때이 단계 경험 기록GitHub에서 피드백 남기기
2024년 11월 9일 첫 커밋부터 2026년 3월까지, 17개월. 저장소에는 에이전트 규칙 파일이 하나도 없다. 지시는 전부 대화창에 있었고, 닫으면 사라졌다.
| 확인한 값 | |
|---|---|
| 기간 | 2024-11-09 ~ 2026-03 (17개월) |
| 월 커밋 | 2 ~ 39건, 평균 약 25건 |
| 저장소 내 규칙 파일 | 0개 |
같은 설명을 매번 다시 했다. 어제 내린 판단의 근거를 오늘 찾지 못했다. 문제는 모델의 성능이 아니라 지시가 휘발된다는 것이었다.
내 기록
아직 기록이 없습니다. 이 단계에서 겪은 일을 남기려면 위 「이 단계 경험 기록」을 누르세요.
2 · Context — 지시를 저장소에 남기기 시작이 단계 경험 기록GitHub에서 피드백 남기기
2026년 3월 27일, .agent 디렉터리가 처음 커밋됐다. 규칙이 대화가 아니라 저장소에 놓인 첫 순간이다.
이후 규칙 파일이 순서대로 늘었다.
| 날짜 | 들어온 것 |
|---|---|
| 2026-03-27 | .agent |
| 2026-06-25 | implementation_plan.md |
| 2026-06-28 | CLAUDE.md |
| 2026-07-22 | 에이전트 설정 디렉터리 |
| 2026-07-26 | AGENTS.md |
2026년 7월 16일에는 지식 저장소 자체를 따로 팠다. 지금 이 문서가 사는 곳이다. 검색이 안 맞는 원인을 실측해 질의 전처리를 고쳤고, 그 과정은 지식 플라이휠에 있다.
핵심은 전체를 주는 게 아니라 필요한 것만 주는 것이었다. 저장소 전부를 컨텍스트에 싣지 않고 목표·규칙·근거·현재 상태만 싣는다.
내 기록
아직 기록이 없습니다. 이 단계에서 겪은 일을 남기려면 위 「이 단계 경험 기록」을 누르세요.
3 · Harness — 도구를 만드는 도구이 단계 경험 기록GitHub에서 피드백 남기기
2026년 4월 16일, 새 저장소가 열린다. 첫 커밋 메시지는
initial commit: harnesless — LLM-first browser control via CDP.
그 뒤 35일 동안 벌어진 일이 이 단계의 전부다.
| 확인한 값 | |
|---|---|
| 기간 | 2026-04-16 ~ 2026-05-20 (35일) |
| 커밋 | 391건 |
| 활동한 날 | 30일 / 35일 |
| 최다 하루 | 59건 (2026-04-17) |
같은 시기 본 저장소의 월 커밋도 함께 뛴다 — 3월 33건에서 4월 87건, 5월 191건. 도구를 만들자 만들 수 있는 것이 늘었다.
이 단계에서 묶인 것은 도구만이 아니다. 상태(어디까지 됐나), 권한(무엇을 만질 수 있나), 테스트(맞게 됐나), 기록(왜 그렇게 했나)이 함께 묶였다. 사람이 승인해야 넘어가는 경계도 이때 생겼다.
내 기록
아직 기록이 없습니다. 이 단계에서 겪은 일을 남기려면 위 「이 단계 경험 기록」을 누르세요.
4 · Loop — 실패가 다음 행동으로 돌아오게이 단계 경험 기록GitHub에서 피드백 남기기
만드는 속도가 붙자 다른 문제가 왔다. 실행에 성공한 것과 실제로 맞게 된 것이 달랐다.
그래서 네 개의 루프를 분리했다 — 실행, 검증, 사건, 학습. 실행 성공과 검증 성공을 다른 상태로 기록하고, 검증에 실패하면 사람이 할 일 목록으로 돌아온다.
| 확인한 값 | |
|---|---|
| 정본화 | 2026-08-18 |
| 당시 집중 테스트 | 22건 중 21건 통과, 1건 실패 |
| 최근 회귀 검증 | 3건 고의 훼손 → 3건 모두 실패로 검출 (2026-08-26) |
마지막 줄이 이 단계의 핵심이다. 통과만 하는 테스트는 아무것도 지키지 못한다. 일부러 망가뜨렸을 때 잡히는지를 확인해야 그때부터 검증이다.
내 기록
아직 기록이 없습니다. 이 단계에서 겪은 일을 남기려면 위 「이 단계 경험 기록」을 누르세요.
5 · Graph — 열세 개가 동시에 돈다이 단계 경험 기록GitHub에서 피드백 남기기
지금은 하나의 저장소 위에서 열세 개의 작업 공간이 병렬로 돈다.
main 하나, 부서 다섯, 기능 브랜치 일곱. 부서는 고정 dept/* 브랜치에 물리 워크트리가 붙는다.
같은 내용을 표로 보기
| 브랜치 | 커밋 | 마지막 활동 |
|---|---|---|
| main | 1185 | 2026-08-25 |
| dept · 플랫폼·운영 | 48 | 2026-08-25 |
| dept · 고객·마케팅·성장 | 12 | 2026-08-18 |
| dept · 지식·PM | 10 | 2026-07-28 |
| dept · 전략·재무 | 7 | 2026-07-28 |
| dept · 제품·출시 | 0 | 2026-08-19 |
| codex/agent-harness-activation | 2 | 2026-08-18 |
| codex/agent-harness-relay-recovery | 2 | 2026-08-18 |
| codex/agent-harness-enable | 1 | 2026-08-18 |
| codex/payment-system-v1 | 1 | 2026-08-11 |
| codex/intake-proposal-hardening | 1 | 2026-08-02 |
| codex/harness-pilot-20260818 | 0 | 2026-08-18 |
| codex/product-portfolio-v1 | 0 | 2026-07-29 |
부서 제도를 어떻게 설계했는지는 멀티에이전트 5부서에 있다.
병렬은 숫자에서 먼저 보인다
커밋을 세는 방법이 두 가지다. main만 세면 1,185건, 브랜치까지 세면 1,326건.
차이 141건이 아직 병합되지 않은 채 열두 개 레인에 흩어져 있다.
같은 내용을 표로 보기
| 월 | main 기준 | 전체 브랜치 기준 |
|---|---|---|
| 2024-11 | 13 | 13 |
| 2024-12 | 2 | 2 |
| 2025-01 | 15 | 15 |
| 2025-02 | 7 | 7 |
| 2025-03 | 16 | 16 |
| 2025-04 | 32 | 32 |
| 2025-05 | 29 | 29 |
| 2025-06 | 24 | 24 |
| 2025-07 | 27 | 27 |
| 2025-08 | 25 | 25 |
| 2025-09 | 22 | 22 |
| 2025-10 | 31 | 31 |
| 2025-11 | 31 | 31 |
| 2025-12 | 39 | 39 |
| 2026-01 | 37 | 37 |
| 2026-02 | 33 | 33 |
| 2026-03 | 33 | 33 |
| 2026-04 | 87 | 87 |
| 2026-05 | 191 | 191 |
| 2026-06 | 181 | 185 |
| 2026-07 | 213 | 298 |
| 2026-08 | 97 | 149 |
두 선은 2026년 5월까지 완전히 겹친다. 6월부터 벌어진다. 그때가 작업이 여러 갈래로 갈라지기 시작한 시점이고, 벌어진 폭이 곧 병렬 작업량이다.
이 문서의 다른 수치는 main 기준이다. 두 기준을 섞지 않기 위해 명시한다.
내 기록
아직 기록이 없습니다. 이 단계에서 겪은 일을 남기려면 위 「이 단계 경험 기록」을 누르세요.
전체 규모GitHub에서 피드백 남기기
| 저장소 | main 기준 | 전체 브랜치 |
|---|---|---|
| Solve-for-X | 1,185 | 1,326 |
| browser-harness | 391 | 505 |
| sfx-web-services | 193 | 194 |
| llm-wiki | 85 | 85 |
| sfx-ai-apps | 35 | 36 |
| sfx-personal-apps | 27 | 28 |
| sfx-shared-apps | 23 | 24 |
| 합계 | 1,939 | 2,198 |
2024-11-09 첫 커밋부터 2026-08-26까지 21.5개월. 모든 값은 git log 실측이다.
다음 단계는 무엇인가GitHub에서 피드백 남기기
다섯 단계가 끝은 아니다. 지금 남은 문제는 병렬이 늘수록 사람이 판단해야 할 지점도 같이 는다는 것이다. 열세 개 레인 중 어느 것이 지금 사람을 기다리는지, 그걸 매번 찾아다니고 있다.
Open Questions
- 병렬 레인이 늘 때 사람 승인 지점을 어떻게 한 화면에 모을 것인가?
- 미병합 141건 중 버릴 것과 병합할 것을 어떤 기준으로 가를 것인가?
- 다음 단계를 부를 이름이 있는가, 아니면 다섯으로 충분한가?