ESP32에서 888KB 이하로 구동되는 개인용 AI 비서 ‘zclaw’

4 hours ago 2

  • ESP32 보드에서 동작하는 초경량 AI 비서로, 전체 펌웨어 크기가 888KiB 이하로 제한된 구조
  • C 언어로 작성되었으며, GPIO 제어·스케줄링(cron)·지속 메모리·사용자 정의 도구를 자연어로 조합 가능
  • Wi-Fi, TLS/암호화, 인증서 번들까지 포함된 전체 이미지가 888KiB 내에 수용되며, 앱 코드 자체는 약 25KB 수준
  • Telegram 및 웹 릴레이 채팅, Anthropic·OpenAI·OpenRouter 등 주요 LLM 제공자와 연동 지원
  • ESP32-C3/S3/C6 보드에서 테스트 완료, 오픈소스(MIT 라이선스)로 공개되어 임베디드 AI 실험 및 확장성 확보

프로젝트 개요

  • zclaw는 ESP32용 개인 AI 비서로, 전체 펌웨어 크기를 888KiB 이하로 유지하는 것을 목표로 설계
    • 펌웨어에는 zclaw 로직, ESP-IDF/FreeRTOS 런타임, Wi-Fi·TLS·인증서 번들이 모두 포함
    • 앱 코드 자체는 약 25KB 수준으로, 전체 이미지의 약 4%만 차지
  • C 언어 기반으로 작성되어 있으며, 자연어 명령을 통한 도구 조합GPIO 제어, 스케줄링 기능을 지원
  • “Fun to use, fun to hack on”이라는 문구로, 개발자 실험과 확장성을 강조

주요 기능

  • Telegram 또는 웹 릴레이를 통한 채팅 인터페이스 제공
  • 시간대 인식 스케줄링 지원: daily, periodic, once 등 반복·단일 작업 설정 가능
  • 내장 및 사용자 정의 도구를 통한 기능 확장
  • GPIO 읽기/쓰기 제어 및 gpio_read_all 등 보호 장치 내장
  • 재부팅 후에도 유지되는 메모리 기능 제공
  • 페르소나 선택 가능: neutral, friendly, technical, witty
  • LLM 제공자 연동: Anthropic, OpenAI, OpenRouter

하드웨어 지원

  • 테스트 완료 대상: ESP32-C3, ESP32-S3, ESP32-C6
    • 다른 ESP32 변형도 수동 설정 시 동작 가능
  • 권장 보드: Seeed XIAO ESP32-C3
  • 로컬 개발 및 해킹 루프를 위한 스크립트 제공
    • build.sh, flash.sh, provision-dev.sh, monitor.sh 등

설치 및 설정

  • macOS/Linux용 원라인 부트스트랩 명령 제공
    • bootstrap.sh가 저장소를 클론 후 install.sh 실행
    • SHA256 무결성 검사 포함
  • 보안 모드 플래시(--flash-mode secure)로 암호화된 자격 증명 저장 가능
  • Wi-Fi 및 LLM 자격 증명은 provision.sh로 설정
  • 기본 LLM 호출 제한: 시간당 100회, 하루 1000회 (컴파일 시 변경 가능)
  • 테스트 스크립트(web-relay.sh)로 장치 응답 검증 가능

스크립트 및 개발 도구

  • flash-secure.sh: 암호화 플래시
  • provision.sh: 자격 증명 등록
  • telegram-clear-backlog.sh: Telegram 큐 초기화
  • erase.sh: NVS 또는 전체 플래시 삭제
  • monitor.sh: 시리얼 모니터
  • emulate.sh: QEMU 에뮬레이션
  • benchmark.sh: 릴레이/시리얼 지연 시간 측정
  • test.sh: 테스트 플로우 실행

펌웨어 크기 구성

  • ESP32-S3 기준 빌드 결과 (총 869,838바이트)
    • zclaw 앱 로직: 34.9KiB (4.1%)
    • Wi-Fi/네트워킹 스택: 388.0KiB (45.7%)
    • TLS/암호화 스택: 110.3KiB (13.0%)
    • 인증서 번들 및 메타데이터: 97.4KiB (11.5%)
    • 기타 런타임/드라이버/libc: 218.8KiB (25.8%)
  • 전체 이미지 크기 849.6KiB로, 목표치 888KiB 이하 유지

성능 측정

  • 릴레이 경로 벤치마크: 웹 릴레이 처리 및 장치 왕복 포함
  • 직접 시리얼 벤치마크: 호스트 왕복 및 첫 응답 시간 측정
    • 펌웨어 로그에 METRIC request ...가 포함되면 장치 측 시간도 보고

라이선스 및 저장소 정보

  • MIT 라이선스
  • GitHub Stars: 861, Forks: 40
  • 주요 언어 구성: C (44.7%), Shell (23.1%), Python (19.4%), HTML (9.0%)
  • 공식 문서 사이트: zclaw.dev

요약

  • zclaw는 ESP32 환경에서 동작하는 초소형 AI 비서 펌웨어로, 888KiB 이하의 전체 크기 내에서 완전한 AI 상호작용 기능을 제공
  • 자연어 기반 도구 조합, GPIO 제어, 스케줄링, 보안 플래시, LLM 연동 등 다양한 기능을 내장
  • 오픈소스(MIT) 로 공개되어, 임베디드 AI 및 IoT 개발자에게 실험적 플랫폼으로 활용 가능

Read Entire Article