프로젝트 소개
wx-cli는 macOS에서 WeChat의 로컬 데이터베이스를 직접 읽어 사용자와 AI Agent 모두가 채팅 기록, 연락처, 그룹 채팅 및 미디어 메시지에 접근할 수 있게 합니다. 데이터는 기본적으로 로컬에 보관되며, 업로드나 클라우드 내보내기에 의존하지 않습니다.
핵심 기능:
1. 데이터베이스 복호화: LLDB hook을 통해 PBKDF2 호출을 캡처하여 원본 키를 추출하고, 전체 데이터베이스 복호화 및 증분 복호화를 지원하며, 모든 WeChat 데이터베이스를 커버합니다.
2. 메시지 조회 및 검색: 연락처, 그룹 채팅, 시간 범위, 메시지 유형별로 기록 메시지를 조회; 모든 대화에 걸친 전역 키워드 검색 지원; 시간 범위별로 모든 대화 메시지를 일괄 읽기(timeline) 가능, 메모리 보완 및 배치 처리에 적합.
3. 실시간 구독: 명령줄에서 새 메시지를 지속적으로 수신하거나, SSE(/api/v1/events)를 통해 새 메시지를 Agent 및 기타 프로그램에 실시간으로 푸시.
4. 내보내기 및 미디어 처리: 대화를 JSON 또는 텍스트로 내보내기; 이미지 복호화, 음성 추출(ffmpeg 필요), 비디오 채널(视频号) 비디오 복호화 지원.
5. Agent 통합: npx skills add로 설치 가능한 Agent Skill이 내장되어 있어, Claude Code, Codex, Cursor 등 도구에서 설치 후 wx-cli의 기능을 직접 이해하고 호출 가능.
6. REST API 서비스: 상주 서비스가 열려 있는 데이터베이스를 재사용하여 sessions, contacts, messages, timeline, search, media, events 등 엔드포인트를 제공하며, token 인증 및 원격 접속을 지원합니다. 쿼리 명령은 서비스 실행 중 API를 자동으로 재사용합니다.
7. 프라이버시 제어: 계정별로 지정된 연락처, 그룹 채팅 또는 특정 태그가 있는 연락처를 숨길 수 있으며, 조회 및 구독 시 자동으로 필터링합니다(전문 검색 제외).
플랫폼 요구사항은 macOS(arm64 / Apple Silicon), WeChat 버전 4.1.7 이상입니다. 키 추출을 위해서는 SIP(System Integrity Protection)를 비활성화하고, DevToolsSecurity 및 개발자 그룹 권한을 활성화해야 합니다. 프로젝트는 Rust로 작성되었으며, 사전 컴파일된 바이너리와 소스 컴파일 두 가지 설치 방법을 제공합니다.
프로젝트 구조에는 핵심 복호화 라이브러리, 키 추출 및 저장, CLI 진입점, 데이터베이스 쿼리, 미디어 복호화, 실시간 모니터링, 계정 컨텍스트 파싱 및 플랫폼 경로 관리 등의 독립 crate가 포함되어 있습니다.
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.