NanoClaw 설치 사례 개인 비서로 만들기 [ openclaw X ]

소개

시도하고자 했던 것과 그 이유

기존에 OpenClaw를 사용하고 있었습니다. 그러다 박정기 스디장님의 AI 토크 — NanoClaw와 OpenClaw 선택 가이드 — 를 듣고 생각이 바뀌었습니다. NanoClaw가 더 가볍고 개인화에 유리하다는 점, 특히 보완에 대해선 더 신뢰할 수 있다고 생각이 들어서 셋업하게 되었습니다.

목표는 단순했습니다.

"텔레그램에서 메시지를 보내면 nanoclaw가 자동으로 응답한다."

또한 OpenClaw 대비 NanoClaw는 구조가 단순해 커스터마이징이 쉽고, Docker 기반이라 환경을 가리지 않는다는 점도 선택 이유 중 하나였습니다. 이미 로컬에서 Claude Code를 써본 경험이 있어, CLI 기반 설치 자동화가 낯설지 않았던 것도 도움이 됐습니다.


진행 방법

사용한 도구

도구

역할

NanoClaw

오픈소스 Claude 개인 비서 프레임워크

Claude Code CLI

/setup 명령으로 설치 전 과정 자동화

GitHub CLI (gh)

레포 fork & clone을 한 줄로 처리

Docker Desktop

NanoClaw 컨테이너 실행 환경

Telegram BotFather

봇 생성 및 토큰 발급


설치 과정

Claude Code의 /setup 명령 하나가 대부분을 알아서 처리합니다. 직접 설정 파일을 건드릴 일이 거의 없다는 게 NanoClaw의 강점입니다.

bash

gh repo fork qwibitai/nanoclaw --clone
cd nanoclaw
claude

Claude Code 진입 후, /setup 스킬이 단계별로 안내합니다:

  1. Node.js 및 의존성 설치 확인 및 자동 설치

  2. Docker Desktop 설치 (미설치 시 링크 안내 포함)

  3. NanoClaw 컨테이너 빌드 — 첫 빌드는 이미지 다운로드로 시간이 걸림

  4. OneCLI로 Claude API 토큰 등록

  5. Telegram BotFather 봇 연동 — 봇 토큰 입력으로 완료

각 단계에서 Claude Code가 대화형으로 선택지를 제시하기 때문에, 터미널이 익숙하지 않아도 흐름을 따라가기만 하면 됩니다.


사용한 프롬프트

별도 프롬프트는 필요 없었습니다. /setup 입력 후 Claude Code의 질문에 답하고, API 토큰과 봇 정보만 입력하면 끝납니다.

커스터마이징을 원한다면 두 가지 파일만 수정하면 됩니다:

  • groups/telegram_main/CLAUDE.md — AI의 페르소나, 말투, 역할 정의

  • .envASSISTANT_NAME 등 환경변수 설정


결과와 배운 점

결과

텔레그램에서 메시지를 보내면 AI가 응답합니다. 트리거 키워드 없이 모든 메시지에 반응하도록 설정했고, 현재 24시간 Docker 컨테이너 위에서 상시 구동 중입니다.

OpenClaw를 쓸 때와 비교하면 보완이 확실히 문제없다는 점에서 보안 문제에 걱정이 없어 편해졌습니다.


배운 점

  • Docker는 VM이다 — 인터넷 속도와 무관하게 로컬에서 환경을 격리해 실행하기 때문에, 첫 이미지 빌드가 느린 건 정상입니다.

  • 크로스플랫폼 일관성 — Mac, Windows, Linux 어디서든 NanoClaw가 동일하게 동작합니다. 폰은 그냥 텔레그램으로 접근하면 됩니다.

  • Claude Code의 /setup 스킬 구조 — 명령 하나로 복잡한 설치를 자동화하는 설계 방식이 인상적이었습니다. 나중에 내 프로젝트에도 이런 자동화 스크립트를 붙여보고 싶다는 생각이 들었습니다.


시행착오

② Docker 잔여 파일 충돌 이전 Docker 설치 흔적(/usr/local/bin/docker, docker-credential-desktop 등)이 남아 재설치가 막혔습니다. sudo rm으로 수동 삭제 후 재설치로 해결했습니다.

③ Rosetta 미설치로 Docker Engine 미실행 (Apple Silicon) 설치 중 Rosetta 설치를 취소했더니 Docker Engine 자체가 뜨지 않았습니다. 아래 명령으로 별도 설치해 해결했습니다:

bash

softwareupdate --install-rosetta --agree-to-license

앞으로의 계획

  • OpenClaw 설정 마이그레이션/migrate-from-openclaw 명령으로 기존 설정 이전

  • 외부 디렉토리 마운트 — 로컬 파일을 컨테이너와 연결해 파일 작업 자동화

  • 스케줄 태스크 등록 — 특정 시간에 알림을 보내거나 정보를 요약해주는 자동화 루틴 구성

  • 웹훅 연동 확장 — 캘린더, 날씨, 뉴스 등 외부 API를 붙여 비서 기능 강화


도움 받은 글

  • 박정기 스디장님 AI 토크 — NanoClaw와 OpenClaw 선택 가이드

  • NanoClaw GitHub

뉴스레터 무료 구독

👉 이 게시글도 읽어보세요