본문으로 건너뛰기
피드

Aslan Browser: AI 에이전트용 macOS 네이티브 브라우저 오픈소스 공개

open-source 약 4분
vote
0
댓글
북마크

WKWebView 기반 macOS 네이티브 브라우저로, 접근성 트리를 활용해 DOM 대비 10~100배 적은 토큰으로 페이지를 표현하며 Puppeteer 대비 전반적으로 수배 빠른 성능을 보여줌

  • 1

    접근성 트리 기반 페이지 표현으로 raw DOM 대비 10~100배 토큰 절감

  • 2

    JS eval ~0.5ms, 스크린샷 ~15ms, 탭당 메모리 ~40MB로 Puppeteer 대비 수배 빠르고 가벼움

  • 3

    Learn 모드로 사용자 시연을 플레이북으로 자동 변환하는 Skill 시스템 제공

  • 4

    Swift ~2800줄 + Python ~1900줄, 외부 의존성은 SwiftNIO 하나뿐

왜 만들었나

  • Puppeteer, Playwright, Selenium 등 기존 브라우저 자동화 도구는 AI 에이전트를 염두에 두고 설계되지 않았음 — Chrome 전체를 띄우고 전체 DOM을 넘겨주는 방식이라 토큰 낭비가 심함
  • Aslan은 macOS 내장 WKWebView를 감싸서 접근성 트리(Accessibility Tree)를 기본 페이지 표현으로 제공함 → 같은 페이지를 raw DOM 대비 10~100배 적은 토큰으로 전달 가능

성능 비교

  • JS eval 왕복: 0.5ms (Puppeteer 25ms)
  • 스크린샷: 15ms (Puppeteer 50150ms)
  • 탭당 메모리: 40MB (Puppeteer 80150MB)
  • 콜드 스타트: 500ms 미만 (Puppeteer 2~5초)
  • 500MB짜리 Chrome 다운로드가 필요 없음

아키텍처

  • 렌더링: WKWebView (macOS 네이티브, Chrome 의존성 없음)
  • 서버: SwiftNIO + Unix 소켓 — TCP 대비 약 30% 빠른 로컬 IPC, 포트 충돌 없음
  • 프로토콜: NDJSON JSON-RPC 2.0 — 언어 무관하게 클라이언트 구현 가능
  • 페이지 표현: 접근성 트리에서 인터랙티브 요소만 추출, 각 요소에 @eN 레퍼런스 부여 → click("@e3") 같은 방식으로 조작

💡

> Python SDK는 외부 의존성 제로(stdlib만 사용: socket, json, asyncio, base64)로, 300줄 미만의 코드로 전체 클라이언트가 구현되어 있음

주요 기능

  • Skill 시스템: AI 에이전트에게 브라우저 사용법을 가르치는 구조화된 명령 세트 — SKILL.md, SDK_REFERENCE.md, 사이트별 지식 파일 등으로 구성됨
  • Learn 모드: 사용자가 직접 브라우저에서 작업을 시연하면 클릭·입력·내비게이션을 기록해 플레이북으로 자동 변환함
  • 세션 격리: 에이전트별로 탭을 분리할 수 있고, 배치 작업(batch)으로 여러 요청을 한 번에 처리 가능
  • 쿠키 관리, 파일 업로드, 멀티탭 지원

코드 규모

  • Swift ~2,800줄 + Python ~1,900줄, 외부 의존성은 SwiftNIO 하나뿐
  • macOS 14.0+(Sonoma), Xcode 16+, Python 3.10+ 필요
  • Universal 빌드(arm64 + x86_64) 제공

AI 에이전트에게 필요한 것은 전체 DOM이 아니라 인터랙션 가능한 요소 목록이라는 관점에서, 접근성 트리를 1등 시민으로 채택한 설계가 인상적임

댓글

댓글

댓글을 불러오는 중...

open-source

NIPA, 260명 규모 오픈소스 컨트리뷰션 아카데미 시작

정보통신산업진흥원이 2026 오픈소스 컨트리뷰션 아카데미 발대식을 열고 13주간의 프로젝트 활동을 시작했음. 국내 개발자들이 GitHub 기반 글로벌 협업 환경에서 코드, 문서, 버그 수정, 풀 리퀘스트를 직접 경험하게 하는 프로그램임.

open-source

그누보드7, 디딤과 손잡고 멀티클라우드 도입 문턱 낮춘다

에스아이알소프트가 클라우드 전문기업 디딤과 협력해 그누보드7 기반 웹서비스 구축·운영 환경을 넓히기로 했다. 커뮤니티, 쇼핑몰, 예약, 구독형 서비스 같은 실무 프로젝트에서 서버 구성과 운영 부담을 줄이는 게 핵심이다.

open-source

오픈소스 컨트리뷰션 아카데미 출범, 국내 개발자 260여 명 참여

정보통신산업진흥원이 2026 오픈소스 컨트리뷰션 아카데미 발대식을 열고 13주간의 활동을 시작했다. 11개 프로젝트팀의 멘토와 멘티 260여 명이 글로벌 오픈소스 프로젝트 기여를 목표로 코드 개발, 문서화, 오류 수정 등을 진행한다.

open-source

NIPA, 국내 개발자 260명 규모 오픈소스 컨트리뷰션 아카데미 시작

정보통신산업진흥원이 2026 오픈소스 컨트리뷰션 아카데미 발대식을 열고 국내 개발자의 글로벌 오픈소스 프로젝트 참여를 지원한다. 11개 프로젝트팀, 멘토·멘티 260여 명이 13주 동안 깃허브 기반 협업, 코드 리뷰, 문서화, 오류 수정 등을 실제로 경험한다.

open-source

Ghostty 엔진을 Emacs 안으로 끌고 온 터미널, Ghostel.el

Ghostel.el은 Ghostty의 libghostty-vt를 기반으로 Emacs 안에서 동작하는 터미널 에뮬레이터다. eat 스타일의 여러 입력 모드, 안정적인 복사 모드, line mode, 자동 password prompt 처리, compile-mode 유사 실행 버퍼, Kitty graphics 지원, 높은 throughput을 앞세워 eat/vterm과 차별화함.