WARNING twitter_cli.auth: Twitter cookie extraction failed
ok: false
이 메시지를 보는 순간, Agent Reach가 광고하는 "한 번의 설치로 끝"이라는 문구가 약간 낭만적이었구나 싶었다. 물론 도구 자체는 훌륭하다. 문제는 내 환경이었다. WSL에서는 브라우저 쿠키를 자동으로 읽어올 수 없다. Windows Chrome과 WSL Linux는 파일시스템이 분리되어 있으니까. 그래서 수동으로 쿠키를 추출해서 환경변수로 넣어야 했다. 이 과정에서 몇 가지를 배웠다.
Agent Reach가 푸는 문제
PyTorchKR 커뮤니티에서 Agent Reach 문서를 처음 봤다. AI 에이전트가 인터넷에 접근할 수 있게 해주는 통합 도구라고 했다. 읽으면서 든 생각은, 이게 풀려는 문제가 명확하다는 거였다. AI 에이전트는 이미 웹을 검색할 수 있다. 하지만 Twitter API는 월 215달러고, Reddit은 서버 IP를 차단하고, XiaoHongShu는 로그인이 필요하다. 가장 가치 있는 정보가 있는 곳에 접근하기가 가장 어렵게 설계되어 있다.
Agent Reach는 이 진입장벽을 하나로 묶어서 해결한다. Twitter는 twitter-cli로 쿠키 기반 인증을, Reddit은 rdt-cli로 같은 방식을, YouTube는 yt-dlp로 자막을, 웹 페이지는 Jina Reader로 깨끗한 마크다운을 뽑아낸다. 16개 플랫폼을 한 번의 pip install로 설치한다. 프레임워크가 아니라 스캐폴딩 도구라고 강조하는데, 중간에 래퍼 계층을 두지 않고 업스트림 도구를 직접 호출하는 구조다. 마음에 안 들면 각 채널 파일을 교체하면 된다.
OpenClaw와도 호환된다. 설치하면 자동으로 ~/.openclaw/skills/agent-reach/에 스킬이 등록된다. 내가 매일 쓰는 OpenClaw 에이전트가 Twitter 검색, Reddit 읽기, YouTube 자막 추출을 바로 할 수 있게 된다.
WSL에서 설치하기 — 예상보다 손이 많이 갔다
설치 자체는 깔끔했다. Agent Reach 저장소를 clone하고 pip install을 실행한다. 그런데 WSL 환경이라 externally-managed-environment 에러가 났다. Debian 기반 시스템에서 시스템 Python을 보호하려는 정책이다. 해결책은 가상환경을 만드는 것. python3 -m venv .venv 하나면 끝나지만, 이걸 모르면 막힌다.
가상환경 안에서 설치를 마치고 agent-reach install --env=auto를 실행하니 yt-dlp, feedparser, Jina Reader가 정상 설정됐다. GitHub 채널은 gh CLI가 이미 설치되어 있어서 바로 인식했다. YouTube 자막 추출, RSS 피드 읽기, 웹 페이지 마크다운 변환은 설치 즉시 작동했다. 이 부분은 문서대로 잘 된다.
문제는 Twitter와 Reddit이었다. 두 채널 모두 쿠키 기반 인증이 필요한데, WSL에는 Windows Chrome의 쿠키 파일이 보이지 않는다. twitter status를 실행하면 "No Twitter cookies found"가 나온다. rdt login을 실행하면 "No Reddit cookies found"가 나온다. 둘 다 브라우저에서 쿠키를 자동 추출하려다 실패하는 구조다.
수동으로 해야 했다. 이게 귀찮다고 느낄 수도 있지만, 내가 배운 게 하나 있다. CLI 도구가 브라우저 쿠키를 자동 추출하지 못하는 환경에서는, 개발자 도구에서 쿠키 값을 직접 복사해서 환경변수로 넣으면 된다. 이 사실을 몰랐다. Twitter는 Chrome 개발자 도구에서 auth_token과 ct0 두 개의 쿠키 값을 찾아 환경변수로 설정했다. TWITTER_AUTH_TOKEN과 TWITTER_CT0를 export하니 바로 작동했다. twitter search "AI agent" -n 3을 실행하니 실제 트윗 데이터가 YAML 형식으로 쏟아졌다. 검색, 타임라인 읽기, 트윗 상세 보기 전부 된다. API 월 215달러를 내지 않고도 Twitter 데이터에 접근할 수 있게 된 것이다.
이때 깨달은 건, 세션 값이나 쿠키 값으로 내 계정을 연동해서 유지할 수 있다는 사실을 나는 몰랐다는 거다. 브라우저 쿠키가 결국 인증 토큰이라는 건 알고 있었지만, 그걸 직접 환경변수로 넣어서 CLI 도구를 인증시킬 수 있다는 건 새로운 배움이었다.
Reddit은 조금 더 까다로웠다. reddit_session이라는 JWT 토큰 하나가 필요한데, 텔레그램 메시지로 보내다 보니 토큰이 잘렸다. JWT 토큰이 엄청 긴데 텔레그램의 메시지 처리 특성상 끝부분이 잘린 것이다. 두 번째 시도에서 전체 값을 보내주니 rdt popular가 정상 작동했다. ~/.config/rdt-cli/credential.json에 쿠키를 직접 저장하는 방식이라, 브라우저와 무관하게 인증이 유지된다.
설치 후 agent-reach doctor를 돌려보면 현재 상태가 한눈에 보인다. 내 환경에서는 5개 채널이 바로 작동하고, Twitter와 Reddit은 쿠키 설정 후 작동한다. B站은 서버 IP 차단 때문에 프록시가 필요한데, 로컬 WSL 환경에서는 이것도 잘 된다.
리서처의 관점 — 사람들의 생각을 듣는 도구
나는 리서치 회사에서 일한다. 내 직업의 핵심은 people understanding이다. 사람들이 무엇을 생각하고, 어떤 브랜드를 어떻게 평가하고, 제품에 대해 뭐라고 말하는지를 수집하고 분석하는 일이다. 그래서 Agent Reach 같은 도구가 나오면 무조건 테스트해봐야 한다고 생각한다.
소셜 미디어는 people understanding의 보고다. Twitter에서는 실시간 반응이, Reddit에서는 깊이 있는 토론이, YouTube 댓글에서는 대중적 감성이 흐른다. 이걸 에이전트가 직접 읽고 요약하고 분석할 수 있다면, 리서치 워크플로우가 근본적으로 바뀐다. 지금도 study-clipper로 아티클을 수집하고 daily-digest로 뉴스를 모으지만, 소셜 미디어 데이터는 web_fetch로 잘 잡히지 않았다. JavaScript 렌더링, 로그인 벽, API 유료화가 하나씩 걸림돌이었다.
Agent Reach가 이 걸림돌을 제거해준다. 이제 에이전트에게 "이 제품에 대해 Twitter에서 사람들이 뭐라고 하는지 찾아봐"라고 말할 수 있다. Reddit의 특정 서브레딧에서 논의되는 주제를 수집해서 요약해달라고 할 수도 있다. 이건 내 리서치 업무와 직결된다. 클라이언트가 브랜드 평가를 의뢰하면, 소셜 리스닝 데이터를 에이전트가 수집하고 1차 분석하는 워크플로우를 구상할 수 있다.
구체적으로 세 가지를 당장 해보고 싶다. 브랜드 언급량 추적, 제품 출시 반응 분석, 경쟁사 소셜 리스닝이다. 이 세 가지는 리서치 프로젝트에서 반복적으로 의뢰되는 작업이다. 지금까지는 소셜 리스닝 툴에 의존했는데, 비싸고, 한국어 처리가 약하고, 내가 원하는 대로 쿼리를 세밀하게 조정하기 어렵다. 반면 에이전트에게 "이 브랜드에 대해 Twitter에서 최근 일주일간 사람들이 뭐라고 했는지 수집해줘"라고 말하면, twitter-cli가 검색을 돌리고 결과를 구조화된 데이터로 가져온다. 그걸 에이전트가 감정 분류로 나누고, 빈도를 세고, 이슈를 클러스터링한다. Reddit에서도 같은 일이 가능하다. 특정 서브레딧에서 경쟁사 제품이 언급된 스레드를 찾아서, 긍정적 반응과 부정적 반응을 나누고, 핵심 불만 사항을 추출한다.
이런 도구가 앞으로 더 많이 나올 수록 좋다. 내가 잘하는 일은 사람들의 생각을 읽어내는 거고, 도구가 그 데이터에 접근하는 통로를 넓혀주니까. Agent Reach 하나로 당장 모든 것이 해결되는 건 아니다. 쿠키는 만료되고, 플랫폼은 정책을 바꾸고, 새로운 인증 방식이 생긴다. 하지만 방향은 맞다. 에이전트가 인터넷 전체를 읽을 수 있게 되면, 리서처가 하는 일의 상당 부분이 자동화된다. 남은 건 그 데이터를 해석하고 인사이트를 도출하는 일이다. 그게 내가 가장 잘하는 부분이고, 클라이언트가 돈을 주는 이유다.