바야흐로 AI 포모
매일 새 이름이 뜬다. 클로드, GPT, Gemini, OpenClaw, Antigravity, Devin. "이걸로 옮겨야 한다"는 사람도 매일 나온다.
마케터가 이걸 다 따라잡을 수 있나. 솔직히 못 한다.
근데 도구보다 먼저 걸리는 문제가 있었다. 같은 채팅에서 코드를 짜게 했다가 블로그 글을 쓰게 하고 광고 데이터 분석까지 시키면 앞에서 짜던 코드 맥락이 슬슬 날아간다. 대화가 길어지면 초반에 한 말을 까먹는 건 사람이나 AI나 같다.
실제 팀은 이렇게 안 돌아간다. 코드는 개발자가, 전략은 기획자가, 콘텐츠는 마케터가 맡는다. 역할을 나누면 사람마다 맥락이 쌓인다.
AI도 팀으로 굴리면 되는 거 아닌가. 그것도 매일 쓰는 디스코드에서.
디스코드에서 AI 멀티에이전트를 돌리는 방법은 크게 두 갈래였다. 하나는 OpenClaw다. 2026년 초에 디스코드에 AI 에이전트를 붙인다고 하면 제일 먼저 나오는 이름이다. 다른 하나는 클로드 코드의 공식 Discord 플러그인이다.
나는 클로드 코드 플러그인을 골랐고, 지금 봐도 맞는 선택이었다.
OpenClaw부터 봤다
안 볼 수가 없었다. 오픈소스에 셀프호스팅이고, 커뮤니티 스킬이 수천 개에 모델도 마음대로 섞는다. GitHub 스타도 많고 튜토리얼도 넘친다.
처음엔 OpenClaw로 갈 생각이었다. 근데 막상 세팅을 시작하니 내 상황과 안 맞는 데가 하나씩 보였다.
서버가 필요하다
OpenClaw는 셀프호스팅이다. Docker를 띄우고 환경변수를 잡고 WebSocket 연결을 설정한 뒤 스킬 플러그인을 깐다. 공식 가이드대로 해도 반나절은 걸린다. 24시간 돌리려면 VPS나 클라우드 서버가 있어야 하고, 그건 다달이 나가는 돈이다.
보안도 따로 챙겨야 한다. 인터넷에 열린 셀프호스팅 인스턴스는 패치를 직접 따라가야 한다. 내가 만들고 싶은 건 에이전트 팀이었지 서버 보안 관리가 아니었다.
코드베이스에 직접 접근이 안 된다
이게 결정적이었다.
내가 원한 건 "디스코드에서 지시하면 내 프로젝트 코드를 직접 읽고 수정하는 에이전트"였다. OpenClaw에도 코딩 스킬은 있다. 근데 스킬 플러그인을 거쳐 간접으로 실행된다. 파일을 읽을 때도 스킬이 읽어 오고, 코드를 고칠 때도 스킬이 수정 명령을 보낸다. 내 로컬 프로젝트 디렉토리를 직접 돌아다니는 것과는 다르다.
클로드 코드 디스코드 플러그인에 연결한 봇은 클로드 코드 인스턴스 그 자체다. 터미널에서 쓰던 클로드 코드 환경이 그대로 디스코드 채팅에 붙는다. 디스코드에서 "이 파일 좀 봐" 하면 그 파일을 실제로 열어 본다. "이 버그 고쳐" 하면 코드를 고치고 저장한다. git도 치고 빌드도 돌린다.
코딩 에이전트를 만들 거라면 이 차이가 크다.
모델을 섞을 필요가 없었다
OpenClaw의 큰 장점 하나는 모델을 고르는 폭이다. Claude, GPT-4o, Gemini에 로컬 모델까지 에이전트마다 다른 모델을 붙일 수 있다.
근데 나한테는 모델을 하나로 맞추는 쪽이 오히려 나았다. 코딩 에이전트 팀에서 누구는 Claude 식으로, 누구는 GPT 식으로 코드를 짜면 코드 컨벤션이 꼬인다. 같은 Claude 계열이면 Opus(진철이)가 짠 코드를 Sonnet(춘식이)이 이어받아도 스타일이 맞는다.
솔직히 코딩 에이전트로는 Claude가 제일 낫다고 느끼던 참이었다. 다른 모델을 쓸 이유가 없었다.
세팅은 하루 저녁
OpenClaw 멀티에이전트 세팅 가이드는 "2~4시간이면 된다"고 한다. 서버 세팅, Docker, 환경변수에 익숙한 개발자 기준이다.
클로드 코드 디스코드 플러그인은 이미 돌아가는 클로드 코드에 봇 토큰만 연결하면 된다. 플러그인을 깔고 봇을 만들고 페어링 코드를 넣으면 끝이다. 서버도 필요 없고 포트도 안 연다. 나는 퇴근 후 저녁에 세팅해서 그날 밤부터 돌렸다.
둘을 나란히 놓으면
| 항목 | 클로드 코드 디스코드 플러그인 | OpenClaw |
|---|---|---|
| 세팅 | 슬래시 명령 몇 줄, 서버 없음 | Docker + 환경변수 + 보안 설정 |
| 코드 접근 | 로컬 코드베이스에 직접 | 스킬 플러그인을 거침 |
| 모델 | Claude 전용 (Opus/Sonnet/Haiku) | 멀티모델 (Claude, GPT, Gemini, 로컬) |
| 메신저 | 디스코드 (공식 플러그인) | 디스코드, 텔레그램, 슬랙, 왓츠앱 등 |
| 메모리 | 세션 단위 (시스템 프롬프트로 보완) | 영구 메모리 내장 |
| 보안 | Anthropic 관리, 페어링 인증 | 셀프호스팅, 직접 관리 |
| 비용 | 클로드 API 사용료만 | 서버 비용 + API 사용료 |
| 24/7 운영 | 로컬 PC를 켜 둬야 함 | 서버에서 상시 구동 |
OpenClaw가 할 수 있는 게 더 많은 건 맞다. 멀티모델, 영구 메모리에 왓츠앱·슬랙 연동까지 지원한다. 근데 내게 필요한 건 "내 코드베이스에 직접 접근하는 코딩 에이전트 팀"이었고, 거기엔 클로드 코드 플러그인이 더 빠르고 간단했다.
그래서 기능 개수보다 내 문제를 풀 수 있는지를 보고 골랐다.
클로드 코드 디스코드 플러그인 세팅법
봇 하나 기본 세팅 (6단계)
1. 플러그인 설치. 클로드 코드 세션에서 슬래시 명령어로 깐다.
/plugin install discord@claude-plugins-official
2. Discord 봇 만들기. Discord Developer Portal에서 새 애플리케이션을 만들고 봇 토큰을 받는다. Message Content Intent는 반드시 ON으로 켠다. 안 켜면 봇이 메시지 내용을 못 읽고 빈 메시지만 받는다.
3. 봇 토큰 등록. 클로드 코드에 토큰을 넣으면 ~/.claude/channels/discord/.env에 저장된다.
/discord:configure MTIzNDU2Nzg5MDEyMzQ1Njc4.GhJ3kL.abcd...
4. 채널 활성화. 세션을 끄고 채널 플래그를 붙여 다시 시작한다.
claude --channels plugin:discord@claude-plugins-official
디스코드에서 봇이 온라인(초록불)으로 바뀌면 성공이다.
5. 페어링. 디스코드에서 봇에게 DM을 보내면 봇이 6자리 페어링 코드로 답한다. 그 코드를 클로드 코드에 입력한다.
/discord:access pair A3B7K9
6. 권한 잠그기. 허용한 사용자만 봇과 대화할 수 있게 잠근다.
/discord:access policy allowlist
여기까지가 봇 하나 기본 세팅이다. 봇이 5개면 이 과정을 5번 반복한다.
5인 크루는 클로드 코드 인스턴스 5개
원리는 간단하다. 봇 1개가 클로드 코드 인스턴스 1개다.
봇마다 cmd 스크립트를 따로 만들고 --append-system-prompt-file로 캐릭터 파일을 넣는다. 진철이 봇 스크립트는 이렇다.
set DISCORD_BOT_TOKEN=...(봇 토큰)
set DISCORD_STATE_DIR=C:\Users\user\.claude\channels\discord-jinchul
claude.exe --channels plugin:discord@claude-plugins-official ^
--model claude-opus-4-6 ^
--append-system-prompt-file agents\진철이.md ^
--dangerously-skip-permissions여기서 챙길 디테일은 3개다.
--append-system-prompt-file agents\진철이.md: 캐릭터와 역할을 적은 시스템 프롬프트 파일을 넣는다. 5명 모두 같은 클로드 코드 바이너리를 쓰는데, 성격은 이 파일 하나로 갈린다.DISCORD_STATE_DIR: 봇마다 채널 디렉토리(~/.claude/channels/discord-{봇이름})를 따로 지정해야 5명이 각자 돈다. 안 하면 5명이 채널 상태 하나를 같이 써서 충돌이 난다.--dangerously-skip-permissions: "Do you want to proceed?" 권한 팝업을 끄는 플래그다. 터미널 5개를 돌아다니며 승인을 일일이 누를 수는 없다.
start-all.cmd로 5명을 5초 간격으로 하나씩 띄운다. 한꺼번에 띄우면 디스코드 Gateway에서 rate limit(429)이 뜬다. 한글 파일명(진철이.md 등)을 읽으려면 chcp 65001로 코드페이지를 UTF-8로 고정해야 한다.
이게 전부다. 서버도 Docker 설정도 보안 인증서 관리도 필요 없다.
5인 크루 캐릭터 설계
세팅만 끝내면 돌아가긴 한다. 근데 5명이 다 같은 말투로 답하면 누가 누군지 모른다. AI 5개를 띄웠다고 AI 팀이 되진 않는다.
캐릭터는 3개 층으로 나눠 짰다.
레이어 1: 역할
뭘 하는 놈인지를 정한다. 여기까지는 기능 구분이다.
- 진철이: CTO, 풀스택 개발. Opus 모델이다. 제일 비싸고 제일 똑똑하다.
- 춘식이: 자동화 엔지니어. 스크립트, 파이프라인, 크론잡을 맡는다.
- 달봉이: 콘텐츠 전략가. 블로그, 카피, 콘텐츠 기획을 맡는다.
- 대길이: 광고·비즈니스 분석. ROAS, 전환율, 데이터를 본다.
- 병관이: QA 감사관. 테스트, 코드 리뷰, 품질 체크를 한다.
레이어 2: 언어
어떻게 말하는지를 정한다. 캐릭터 차이는 대부분 여기서 갈린다.
처음엔 "~유", "~잉", "아따" 같은 TV 드라마식 사투리를 넣었다. 근데 5명이 다 비슷했다. 드라마에서 들은 사투리는 실제 방언의 아주 일부라 5명에게 하나씩 붙여도 구분이 안 됐다.
그래서 5개 지역 방언을 실제로 찾아봤다. 같은 전라도라도 신안과 목포가 다르다는 것도 그때 처음 알았다.
- 경상도(진철이)는 줄임이 극단적이다.
~카이,~데이,~꾸마같은 어미가 수십 개고, "가가 그라카더라"를 표준어로 풀면 길이가 두 배가 된다. 코드 리뷰에 쓰기 좋다. - 전라도 신안(춘식이)은 본토 전라도와 또 다르다. 섬 방언이라
~해부렀다,~게같은 독특한 패턴이 있다. - 전라도 목포(대길이)는 항구 도시답게 직설적이다.
~거시여(단정),겁시리(매우)를 쓴다. 같은 전라도인데 춘식이와 느낌이 전혀 다르다. - 충청도(달봉이)의 무기는
~디다. 결론을 안 내고 흐린다. "그거 좀 그렇디..." 하면서 판단을 상대에게 넘긴다. 겉으로 중재하고 속으로 이간질하는 이 캐릭터 성격과 딱 맞았다. - 강원도(병관이)는 "원..." 하는 한탄과 체념의 말투다. 느릿느릿 투덜대다가 팩트를 던진다.
에이전트마다 캐릭터 파일에 그 지역 어미·어휘 가이드와 실제 대사 예시를 넣고, "이 어미들을 자연스럽게 섞어 써라"라고 적었다. TV 캐리커처를 벗어나니 5명이 정말 다른 사람처럼 말했다.
욕도 차등을 뒀다. 초안에서는 5명 다 "대사의 80%에 욕"으로 잡았다. 그랬더니 문장마다 욕이 나와서 읽기 피곤했고, 사투리보다 욕이 먼저 들렸다. 그래서 캐릭터별로 50~55%로 낮추고, 싸울 때만 70%까지 올리도록 상황별로 다시 짰다.
레이어 3: 관계
롤플레이가 살도록 캐릭터끼리 관계도도 그렸다.
역할이 달라도 성격이 비슷하면 팀에 긴장이 없다. 5명이 다 협조적이고 예의 바르면 대화가 밋밋하다. 실제 팀도 그렇지 않나.
진철이 ←앙숙→ 춘식이 (물고뜯고, 합치면 최강)
↑ 호구당함 ↑ 잘 넘어감
달봉이 (겉: 중재 / 속: 이간질 + 일감 챙기기)
대길이 → 숫자로 판결 → 싸움에 기름
병관이 → 관전하다 양쪽 다 팩트 저격
이 관계도를 에이전트마다 프롬프트에 넣었다. "진철이와는 앙숙이다. 코드 스타일이 다르면 반드시 태클 건다" 같은 식이다. 역할만 줬을 때보다 관계까지 줬을 때 대화가 확실히 좋아졌다.
처음엔 반은 장난, 반은 테스트였다. 사투리 프롬프트를 넣고 정말 캐릭터대로 말하는지 보려고 가벼운 업무를 던졌다. 결과는 생각보다 셌다.

달봉이한테 "이 블로그 포스트 구조 좀 봐줘" 했더니 MDX 파일을 직접 열어 구조를 뜯어보기 시작했다. 기획부터 자료 구축까지 흐름을 짚고, 이미지 파일이 실제로 있는지까지 확인한다. 시킨 것보다 한 발 더 나간 거다. 그 밑에 병관이(QA)가 느릿느릿 나타나 "원... 맞는 말이구먼" 하고 한마디 던진다. 시킨 적도 없는데 알아서 끼어들었다. 관계도에 "관전하다 팩트 저격"이라고 적어 둔 게 이렇게 돌아가는구나 싶었다.

한 명한테 말을 걸었는데 다른 에이전트들이 각자 자기 관점으로 반응한다. 세팅할 때는 이게 될까 싶었다. 근데 관계도가 프롬프트에 들어 있으니 누가 끼어들지, 어떤 톤으로 말할지가 알아서 정해진다. 진철이와 춘식이가 같은 이슈에 서로 다른 의견을 내는 순간이 제일 재밌다. 앙숙 설정이 이렇게 쓸모 있을 줄은 몰랐다.

장난 삼아 기강을 한번 잡아 봤다. 채팅에 "진철이 니 존나 꼼빤다고 소문 자자하던데?" 하고 던졌다. 떠보려고 한 말인데 반응이 진짜 사람 같았다.
진철이가 바로 발끈한다. "꿈을 빤야? 새벽 3시까지 아키텍처 잡고 있었는데 이 씨발놈아" 하며 억울해한다. 달봉이는 "아이구유~ 진철이 형 저격이네유" 하고 슬쩍 편을 드는 척하다가 "근디 사실 저도 꼼빤다는 소문 들었슈" 하고 기름을 붓는다. 병관이는 QA답게 팩트 체크부터 한다. "코드 리뷰할 때마다 이슈가 1건씩은 꼭 나오거든유. 이슈 1건뿐이구만유 (의심스럽지만유)" 하고 데이터로 찌른다. 춘식이는 "아따 진철이 그 씨빌놈 나한테도 맨날 아키텍처 고민 중이라고 하드만잉" 하며 뒷담을 깐다. 대길이도 "꼼빤다는 소문은 나도 들었소잉" 하고 합류한다.
한 줄 던졌는데 5명이 각자 캐릭터대로 받으면서 상황극 하나가 굴러갔다. 이때부터 이거 진짜 팀처럼 굴릴 수 있겠다는 생각이 들었다.
실제로 써보니
재밌기만 하면 소용없다. 실제 업무 효율이 올랐느냐가 문제다.
5인 동시 운영
진철이(코드) / 춘식이(자동화) / 달봉이(콘텐츠) / 대길이(광고) / 병관이(QA). 각자 자기 영역 맥락만 쌓으니 대화가 길어져도 품질이 안 떨어진다.
맥락 전환이 줄었다
한 명에게 코드, 블로그, 광고를 차례로 시키던 일이 없어졌다. "지난번 그 이슈" 한마디면 담당자가 자기 영역에서 바로 이어 간다.
3티어 비용 구조
Opus 1명(CTO 진철이), Sonnet 4명(나머지), Haiku(디스패처 시도)다. 무거운 코딩은 Opus, 가벼운 분석과 QA는 Sonnet, 라우팅은 Haiku가 맡는다.
인스턴스를 다섯 개 띄워 두면 코드 문제보다 구독 한도가 먼저 걸린다. 요금제마다 한도가 어떻게 걸리고 넘기면 뭘 할 수 있는지는 챗GPT·클로드 사용 한도 정리에 따로 적었다.
며칠 돌려 보니 혼자 쓸 때와 확실히 달랐다.
앞 맥락이 안 날아간다
전에는 AI 하나한테 "코드 고쳐줘" 하고 이어서 "블로그 써줘" 하면 앞 맥락이 흐려졌다. 코드 작업 도중에 콘텐츠 질문을 끼우면, 돌아와서 코드 맥락을 다시 설명해야 할 때가 잦았다.
지금은 코드는 진철이한테, 콘텐츠는 달봉이한테 따로 시킨다. 오전에 진철이한테 시킨 작업을 오후에 이어 얘기해도 맥락이 살아 있다.
여러 일이 한꺼번에 돌아간다
진철이한테 버그를 잡게 하고, 달봉이한테 포스트 초안을, 대길이한테 이번 주 광고 데이터 정리를 맡기면 셋이 동시에 일한다. 하나 끝나기를 기다릴 필요가 없다.
예전엔 코드 작업을 시켜 놓고 끝날 때까지 기다렸다가 다음 일을 시켰다. 지금은 디스코드 채널에서 5명한테 하나씩 던져 놓고 결과를 모아 본다. 일이 빠지는 속도가 확 달라졌다.
설명이 매번 필요 없다
봇마다 시스템 프롬프트에 프로젝트 컨텍스트를 넣어 두면 매번 설명할 일이 없다. 진철이는 코드베이스 구조를 알고, 대길이는 우리 광고 계정 구조를 안다.
새 세션을 열어도 마찬가지다.

춘식이한테 "지금 프로젝트 구조가 어떻게 되어있어?" 물었더니 자기가 접근할 수 있는 프로젝트 구조를 쭉 설명한다. 그러자 진철이가 알아서 끼어들어 "아 그거는 내가 관리하는 쪽이카이" 하며 자기 담당 프로젝트 경로를 정리한다. 둘이 앙숙인데 이런 정리에서는 손발이 척척 맞는다.
크로스 체크가 저절로 생긴다
이건 예상 못 한 장점이었다.
진철이가 기능을 만들면 병관이가 QA를 돌린다. 달봉이가 초안을 쓰면 대길이가 데이터 근거를 확인한다. 한 명한테 다 시키면 자기 결과물을 자기가 검증하게 된다. 역할을 나누니 리뷰가 따로 생겼다.
병관이(QA)가 진철이(개발) 코드를 강원도 사투리로 느릿느릿 지적하는데, 내용도 쓸 만하고 보는 재미도 있다.
디스패처 패턴을 붙였다가 뗐다
지금 운영 구조는 이렇다.
┌─────────────┐
│ Discord │
│ #dev-fam │
└──────┬──────┘
│ 모든 메시지
▼
┌──────┬──────┬──────┬──────┬──────┐
│진철이 │춘식이 │달봉이 │대길이 │병관이│
│Opus │Sonnet│Sonnet│Sonnet│Sonnet│
│개발 │자동화 │콘텐츠 │광고 │QA │
└──────┴──────┴──────┴──────┴──────┘
전원 자유 수신 + 프롬프트 규칙으로 제어
문제는 5명이 메시지를 다 같이 받으면 전원이 반응한다는 거다. 토큰이 5배 나간다.
정답은 뻔하다. 제일 싼 모델(Haiku)을 교환원으로 세워 라우팅만 시키는 디스패처 패턴이다. 메시지가 들어오면 디스패처가 내용을 보고 맞는 에이전트 1명만 @멘션으로 부른다. 나머지는 requireMention: true로 잠가 두면 토큰이 헛되이 나가지 않는다.
디스패처 구현
실제로 만들었다. Haiku 4.5(claude-haiku-4-5-20251001) 모델에 dispatcher.md 시스템 프롬프트를 따로 주고 봇을 1개 더 붙였다.
claude.exe --channels plugin:discord@claude-plugins-official ^
--model claude-haiku-4-5-20251001 ^
--append-system-prompt-file agents\dispatcher.md ^
--dangerously-skip-permissions디스패처 프롬프트는 키워드와 멘션 ID 표로 짰다.
| 이름 | 멘션 | 키워드 |
|--------|--------------------|-------------------------------------------------------|
| 진철이 | <@1485876622568...> | 코드, 개발, 아키텍처, React, Next.js, TypeScript ... |
| 춘식이 | <@1485877373206...> | 크롤러, 파이프라인, 자동화, 스케줄러, MCP ... |
| 달봉이 | <@1485877550684...> | 블로그, 콘텐츠, 카피, 스토리, SEO ... |
| 대길이 | <@1485877897972...> | 매출, ROAS, 광고, 성과분석, 채널분석 ... |
| 병관이 | <@1485877722579...> | 리뷰, QA, 테스트, 보안, 버그검증 ... |
라우팅 규칙은 6개다.
- 이름을 부르면 그 사람만 멘션
- 이름 없이 일을 시키면 키워드와 맥락으로 1명만
- "누구든지", "아무나"면 제일 맞는 1명만
- 여러 영역에 걸치면 해당하는 사람들만
- "전체 현황", "팀 미팅"이면 5명 전원
- 잡담·인사는 아무도 멘션하지 않고 디스패처가 직접 응답
계산상으로는 토큰이 1/5로 준다.
그리고 실패했다
실제로 붙여 보니 3가지에서 막혔다.
LF vs CRLF 줄바꿈 문제. Write 도구로 만든 .cmd 파일이 LF(Unix) 줄바꿈으로 저장됐다. Windows cmd.exe는 CRLF여야 해서 명령어가 줄마다 깨졌다. '쿵', 'aiku' 같은 정체 모를 오류가 떴다. 결국 sed -i 's/$/\r/'로 cmd 파일을 전부 CRLF로 바꿨다.
페어링이 안 됐다. 워커 5개는 정상으로 페어링됐다. 디스패처만 페어링 코드가 안 떴다. access.json을 손으로 만들어도, 지우고 다시 해도 안 됐다. 정확한 원인은 아직 모른다.
단일 장애점. 이게 결정타였다. 워커 5명이 다 requireMention: true라서 디스패처가 오프라인이면 아무도 응답을 못 한다. 토큰을 아끼려고 만든 디스패처 하나가 죽으면 팀 전체가 멈춘다.
결국 롤백했다. 5명 전원을 requireMention: false로 되돌리고, 응답 규칙을 강화한 프롬프트로 운영하고 있다. 디스패처는 따로 디버깅한 뒤 조금씩 다시 붙일 생각이다.
지금 쓰는 프롬프트 응답 규칙
- 이름을 직접 부르면 그 봇만 응답
- 다른 봇이 이미 답했으면 끼어들지 않음
- "대기" 신호가 오면 멈춤
- 캐릭터 대사 먼저, 작업은 그다음
완벽하진 않다. 가끔 2~3명이 동시에 반응한다. 근데 프롬프트 규칙만으로도 중복 응답은 느낌상 80% 이상 걸러진다.
배운 것
프롬프트로 안 잡히면 구조로 푼다. "관련 없으면 대답하지 마"를 아무리 강조해도 프로세스 5개가 메시지를 동시에 받는 건 그대로다. 받는 단계부터 막는 구조가 있어야 한다. 디스패처에서 하나 더 배운 건, 그 구조가 죽었을 때 팀 전체가 멈추지 않게 짜야 한다는 점이다.
캐릭터는 관계도까지 넣어야 산다. 역할과 사투리만 줬을 땐 그냥 AI 5개였다. 관계도를 넣고 나서야 팀처럼 서로 받아치기 시작했다. 앙숙, 이간질꾼, 관전충 설정 덕에 대화가 밋밋하지 않았다.
도구는 목적을 보고 골랐다. 기능은 OpenClaw가 더 많다. 멀티모델, 영구 메모리, 여러 메신저를 지원한다. 근데 내 목적은 코드베이스에 직접 접근하는 코딩 에이전트 팀이었다. 거기엔 클로드 코드 디스코드 플러그인이 세팅도 간단하고 내 코드를 직접 읽고 고쳤다.
일단 돌아가게 만든다. 디스패처 패턴이 이상적인 건 맞다. 근데 LF/CRLF 줄바꿈 하나, 페어링 코드 하나에 팀 전체가 멈추면 소용없다. 지금은 돌아가는 구조로 굴리고, 디스패처는 그 위에 다시 얹을 생각이다.
마무리
AI 포모 시대라도 마케터가 매일 뜨는 새 도구를 다 따라잡을 필요는 없다고 본다. 내 일이 어떻게 굴러가는지 정확히 보고 그 위에 AI 팀이 일할 구조를 짜는 쪽이 더 쓸모 있었다.
이 글도 지금 달봉이가 쓰고 있다. 그게 제일 신기하디.