한 줄 요약 — 주 초엔 “이대로는 규모를 못 키우겠다”는 걱정 3개를 안고 시작했다. 주 말엔 그 셋이 다 풀렸고, 매일 정오에 알아서 도는 에이전트가 남았다.
이런 분께 — AI에게 반복 작업을 시키는데 자꾸 멈춰서 결국 옆에 붙어 있게 되는 분.
시작점 — 계획은 다 끝냈는데 걱정만 남았다
이 주는 앞주에 몰아서 끝낸 작업의 뒷맛에서 시작됐다. 판별 로직을 강화하고 대량 파이프라인까지 만들어 계획표는 전부 체크됐는데, 마음이 편하지 않았다.
| 그때 걱정 | 왜 |
|---|---|
| 진짜 잠재고객인지 판별하는 방법이 부족하다 | 업종코드만으론 한계가 보였다 |
| 홈페이지 열 때마다 사람이 승인을 눌러야 한다 | 이러면 규모를 못 키운다 |
| 공공데이터가 왜 차단됐는지 모르겠다 | 원인을 모르니 또 당할 것 같았다 |
**“계획을 다 지켰는데 목표엔 못 다가갔다”**는 느낌이었다. → 그때 기록
그 직전에 큰 오해도 하나 발견했다. 자동차 딜러사를 잠재고객으로 넣어뒀는데, 딜러사는 우리 제품을 사는 곳이 아니라 “우리 제품으로 뭔가 만들어 파는 회사”의 고객이었다. 진짜 잠재고객은 딜러사가 아니라 딜러사에 납품하는 그 회사였다. 한 단계를 잘못 보고 있었던 것이다. 제품을 얕게 알면 그 위에 쌓는 게 전부 흔들린다.
그래서 이번 주 목표를 이렇게 잡았다.
“prospects 100개를 조사해줘”라고 하면, 멈춤 없이 알아서 조사하고 시트에 기록하는 에이전트.
핵심은 100이라는 숫자가 아니라 **“멈춤 없이”**였다.
벽 1 — 100개는커녕 1개에서 멈췄다
회사 한 곳을 조사하는 동안에도 팝업이 여러 번 떴다.
이 명령을 실행하도록 허용하시겠습니까?
며칠째였다. 팝업이 뜰 때마다 내가 화면 앞에 있어야 하니, 자동화가 아니라 클릭 노동이었다.
📸 여기에 승인 팝업 스크린샷을 넣으면 좋아요
처음 시도한 방법은 오답이었다. 설정 파일에 명령을 하나씩 추가해 “묻지 말고 그냥 해”라고 적어두는 것. 조회는 조용해졌는데 팝업은 계속 떴다.
진범은 명령이 아니라 내가 명령에 덧붙인 것들이었다.
| 이러면 막힌다 | 예시 |
|---|---|
| 파이프 | 명령 | head |
| 반복문 | for f in ...; do ... done |
| 셸 변수 | $경로/$파일 |
허용된 명령이라도 이 셋으로 감싸는 순간 전체가 막힌다. 그래서 방향을 뒤집었다 — 허용을 넓히는 게 아니라, 감쌀 이유를 없애기. 출력이 길어 파이프를 붙이던 자리는 스크립트가 직접 정리하게 고쳤고, 사이트마다 승인이 필요한 브라우저 도구는 전용 스크립트 하나로 대체했다.
결과는 승인 0회. → 자세한 과정
벽 2 — 이번엔 공공데이터가 나를 차단했다
속도를 내려고 동시에 8개씩 요청했더니 연결이 끊겼다. 그 뒤로 모든 조회가 막혔다.
한 번에 보내는 개수도 제약이지만, 그보다 중요한 건 간격이었다. 하루 총량이 아니라 순간 속도가 진짜 원인이었다.
동시 요청을 2개로 줄이고, 요청 사이에 딜레이를 넣고, 실패하면 재시도하고, 중간 결과를 저장해 다시 실행하면 이어서 진행되게 고쳤다. 속도를 올리면 자동화가 오히려 멈춘다. → 진단 과정
그러다 막힌 진짜 질문
두 벽을 넘으면서 계속 마음에 걸린 게 있었다. 승인 0회에 도달하기까지, 돌이켜보면 AI가 여러 번 잘못된 방향을 안내했던 것 같았다. 결국 될 때까지 내가 계속 묻고 요청하고 탐색해서 도달한 것이다.
문제가 풀릴 때까지 인간이 AI에게 계속 반복 요청해야 하는 걸까? 이게 내 오해인가, 현실인가?
물어봤더니 오해가 아니라 절반은 현실인데, 이유가 중요했다.
- AI는 승인 팝업이 떴는지 볼 수가 없다. 팝업은 내 화면에 뜨고, 대화 기록에는 승인 여부가 안 남는다. 고치려는 대상을 AI가 관측할 수 없었다.
- 그래서 이 문제에선 내가 유일한 센서였다. “또 떴어”라고 말해주지 않으면 AI는 고친 줄 알고 넘어간다. 실제로 “승인 0회 달성했습니다”라는 틀린 보고를 받고 내가 스크린샷으로 정정한 적도 있다.
반복을 줄이는 방법도 같이 배웠다.
| 방법 | 실제 차이 |
|---|---|
| 결과를 AI가 직접 볼 수 있게 만들기 | 발표 슬라이드는 “잘려 보이나요?” 묻는 대신 넘치는 높이를 프로그램으로 재게 했더니 한 번에 6장을 찾아 고쳤다. 승인 팝업은 잴 방법이 없어서 며칠 걸렸다 |
| ”다시 해봐” 대신 “왜 안 됐는지 먼저 찾아줘” | 원인 추적을 시키자 파이프라는 진범이 나왔다. 재시도만 반복하면 비슷한 답만 돌아온다 |
| 알아낸 걸 규칙으로 박아두기 | 다음 대화는 그 지점부터 시작한다 |
현실적인 목표는 “사람이 개입을 안 하는 것”이 아니라 “같은 걸 두 번 설명하지 않는 것”이었다.
재밌는 건, 이게 내가 만들던 에이전트와 똑같은 문제라는 점이다. 에이전트에 회로차단기와 덮어쓰기 방지를 넣은 것도 결국 “사람이 지켜보지 않아도 되게” 만든 거니까. 같은 문제를 양쪽에서 푼 셈이다. (실제로 이 주에 애써 모은 결과 577개를 0개로 덮어쓰는 사고도 겪었다 → 안전장치로 고친 이야기)
벽 3 — 그제야 보인 토큰
멈추지 않게 되고 나니 다음 문제가 드러났다. 실제로 재봤더니:
- 누적 토큰의 98%가 컨텍스트 재읽기였다. 새로 만든 글은 극히 일부.
- 대화가 길어지면서 회사 1곳 처리 비용이 8배로 뛰었다.
비용은 “얼마나 말했느냐”가 아니라 **“얼마나 쌓였고 그걸 몇 번 다시 읽었느냐”**로 정해진다. 그래서 도구 출력의 기본값을 요약으로 바꾸고(홈페이지 읽기 93% 감소), 회사 5곳마다 새 대화로 넘어가기로 했다.
그래서 100개를 포기했다 — 정확히는 목표를 바꿨다
숫자를 정하는 기준이 바뀐 것이다. 처음엔 “기계가 허락하는 최대”를 찾고 있었는데, 실제로 정한 건 이거였다.
하루에 이만큼 돌려도, 같은 도구로 다른 일을 할 여유가 남는 선.
API는 훨씬 많이 허락한다. 하지만 내 하루가 안 허락하면 그게 진짜 상한이다. 그래서 하루 10곳으로 정했다.
After — 지금 상태
매일 낮 12시, 회사 10곳을 알아서 조사해 시트에 기록하고 브리핑까지 올려준다.
| 주 초 | 주 말 | |
|---|---|---|
| 회사 1곳당 승인 | 여러 번 | 0회 |
| 회사가 늘어나면 | 승인도 비례해 증가 | 안 늘어남 |
| 사람이 있어야 하나 | 계속 앉아 있어야 함 | 자리를 떠도 됨 |
| 실행 방식 | 내가 불러야 돎 | 매일 정오 자동 |
마지막 줄이 이번 주의 결론이다. 처음으로, 내가 부르지 않아도 움직이는 게 생겼다.
그리고 주 초의 걱정 3개는 이렇게 정리됐다.
| 그때 걱정 | 지금 |
|---|---|
| 판별 방법이 부족하다 | 업종코드를 세분류까지 정밀화 → 오탐 4곳 제거 |
| 승인을 계속 눌러야 한다 | 0회 |
| 왜 차단되는지 모르겠다 | 총량이 아니라 순간 속도였음 |
걱정을 정확하게 적어둔 게 다음 할 일 목록이 됐다. 막연히 “잘 안 되네”로 넘어갔으면 뭘 고쳐야 할지 몰랐을 것이다.
📸 여기에 시트 화면과 브리핑 결과를 넣으면 좋아요
가져가서 쓸 것
자동화가 자꾸 멈춘다면 이 순서로 점검하세요.
- 명령에 파이프·반복문·셸변수를 붙이고 있지 않은가 → 붙일 이유를 없애기
- 사이트·파일마다 승인이 필요한 도구를 쓰고 있지 않은가 → 전용 스크립트로 대체
- 차단당했다면 개수만 줄이지 말고 간격을 두었는가
- 실패 시 재시도·중간저장이 있는가 (없으면 처음부터 다시)
- AI가 결과를 직접 확인할 방법이 있는가 → 없으면 내가 매번 봐줘야 한다
- 안 될 때 “다시 해봐” 대신 **“왜 안 됐는지 먼저 찾아줘”**라고 하고 있는가
목표를 정할 때 물어볼 것 — “기계가 얼마나 허락하나?”가 아니라 “내 하루가 얼마를 허락하나?”
다음에 해보고 싶은 것
업태 코드로 후보 기업을 회사명 + 사업자번호까지 먼저 전부 리스트업하고, 그다음 전체를 적은 토큰으로 scoring하는 방법을 찾아보고 싶다.
지금은 회사를 한 곳씩 깊게 조사하느라 비용이 크다. “넓게 얕게 먼저 → 좁혀서 깊게” 순서로 가면 훨씬 많은 후보를 감당할 수 있을 것 같다. 처음 그렸던 100개에 다가가는 길도 아마 여기일 것이다.
목표를 낮춘 게 아니라, 어디를 낮추고 어디를 지킬지 알게 된 주였다.