로컬 Qwen 모델이 단계별 계획과 간결한 DOM으로 브라우저 자동화 달성

단계별 계획이 사전 계획 실패를 극복하다
개발자는 실제 페이지 상태를 보기 전에 모델에게 완전한 다단계 계획을 수립하도록 요청하는 방식이 익숙한 사이트에서는 작동하지만 예상치 못한 요소에서는 빠르게 실패한다는 사실을 발견했습니다. 더 효과적인 방법은 각 단계에서 현재 DOM 스냅샷을 기반으로 모델이 재계획하는 단계별 계획이었습니다.
Ace Hardware에서의 예시 흐름
Qwen 8B를 플래너로, 4B를 실행자로 사용하여 Ace Hardware(모델이 사전 작업 경험이 없는 사이트)에서 테스트한 흐름은 비전 모델을 전혀 사용하지 않고 전체 장바구니 흐름을 완료했습니다. 단계별 접근 방식은 다음과 같았습니다:
- 단계 1: 검색창 확인 → "잔디 깎는 기계" 입력
- 단계 2: 결과 확인 → 장바구니 추가 클릭
- 단계 3: 서랍 등장 → 닫기
- 단계 4: 장바구니 표시 → 장바구니 보기 클릭
- 단계 5: 완료
컴팩트 DOM 표현으로 소규모 모델 가능해지다
모델은 원시 HTML이나 스크린샷을 보지 않습니다. 단지 의미론적 테이블 표현만을 봅니다:
id|role|text|importance|bg|clickable|nearby_text
665|button|Proceed to checkout|675|orange|1|
761|button|Add to cart|720|yellow|1|$299.99
1488|link|ThinkPad E16|478|none|1|Laptop 16"
이를 통해 4B 실행자는 짧은 목록에서 요소 ID를 선택할 수 있습니다. 비전 접근 방식은 스크린샷당 2-3K 토큰을 소모하여 전체 흐름에 쉽게 50-100K+를 사용하는 반면, 컴팩트 스냅샷은 동일한 작업에 총 ~15K만 사용합니다.
성공을 위한 모달 처리의 중요성
각 클릭 후 DOM이 갑자기 증가하면 에이전트는 다시 계획하기 전에 해제 패턴(닫기, ×, 아니요 등)을 검색합니다. 이는 "나쁜 추론"으로 보였지만 실제로는 숨겨진 오버레이였던 많은 실패를 수정했습니다.
개발자는 다른 사람들도 사이트가 익숙하지 않아질 때 단계별 계획이 사전 계획을 능가하는 현상을 관찰하고 있는지 궁금해하고 있습니다.
📖 Read the full source: r/LocalLLaMA
👀 See Also
mcp-memory: SQLite FTS5 + Google의 OKF를 이용한 빠른 에이전트 메모리
mcp-memory는 Google의 OKF 형식과 SQLite FTS5를 사용하여 하위 20ms 조회를 제공하는 AI 에이전트용 영구 메모리 MCP 서버입니다. memory_store, memory_retrieve, memory_search, memory_get_last의 네 가지 도구를 포함합니다.

릴레이: 클로드 코드 세션을 다른 AI 에이전트로 넘겨주는 도구
Relay는 Claude Code의 세션 컨텍스트(대화 기록, 도구 호출, 오류, git 상태 포함)를 추출하여 속도 제한에 도달했을 때 Codex나 Gemini 같은 다른 AI 에이전트로 전송하는 Rust 바이너리입니다. 8개의 에이전트를 지원하며 GitHub나 npm을 통해 설치할 수 있습니다.

Qhatu: 클로드와 함께 GitHub 저장소를 사용량 기반 요금제 마이크로 SaaS로 변환하는 플랫폼
Qhatu는 GitHub 저장소를 가져와 생성된 프론트엔드와 통합 결제 처리 기능을 갖춘 사용량 기반 결제 마이크로 SaaS로 배포하는 플랫폼입니다. 이 시스템은 Anthropic API를 사용하여 코드를 분석하고 Dockerfile을 생성하며 스토어프론트 UI를 만듭니다.

에이전트 안전가옥: 로컬 AI 코딩 에이전트를 위한 macOS 네이티브 샌드박싱
Agent Safehouse는 macOS 네이티브 샌드박싱 도구로, 커널 수준의 강제 실행을 통해 로컬 AI 에이전트가 프로젝트 디렉토리 외부의 파일에 접근하는 것을 방지합니다. 이는 단일 셸 스크립트로 의존성이 없으며 Claude Code, Codex, OpenCode, Amp, Gemini CLI, Aider, Goose, Auggie, Pi, Cursor Agent, Cline, Kilo, Code Droid 및 기타 에이전트와 함께 작동합니다.