campaign 공지사항

긴급

이 사이트는 팬이 만든 커뮤니티 사이트입니다. 공식 저장소(github.com/qwibitai/nanoclaw)만을 신뢰할 수 있는 출처로 사용하세요.

중요

공식 모금/투자 프로그램은 시작되지 않았습니다. 사칭 시도와 비공식 주장을 무시하세요.

중요

Anthropic OAuth 약관이 변경되었습니다 (2026-02-19). 정책 리스크가 명확해질 때까지 Claude Code OAuth 연동을 일시적으로 피하세요.

info 소개

NanoClaw는 Anthropic Claude Agent SDK 기반의 가벼운 완전 자율 개인 AI 어시스턴트입니다. 에이전트는 격리된 Linux 컨테이너(macOS에서는 Apple Container, Linux/macOS에서는 Docker)에서 실행됩니다. WhatsApp 기본 내장, 다른 채널은 스킬로 추가. 영구 SQLite 메모리, 예약 작업, 웹 접근, 에이전트 스웜.

memory
가벼운 코어
~500줄 TypeScript, Claude Agent SDK
smart_toy
AI 에이전트
도구를 사용하고, 메모리를 회상하고, 자율적으로 작업을 실행
swap_horiz
에이전트 스웜
전문 서브 에이전트에게 작업을 병렬로 위임
shield
기본 보안
컨테이너 격리, .env 시크릿, 기본 거부 채널 정책
developer_board
어디든 배포
macOS, Linux, Windows — Node.js가 실행되는 곳이면 어디든

download 설치

NanoClaw는 TypeScript 프로젝트입니다. 저장소를 클론하고 npm으로 설치하세요.

사전 요구사항: Node.js 18+, Claude CLI (npm install -g @anthropic-ai/claude-code), Git, Anthropic API 키.

npm / Claude CLI

# macOS / Linux — clone and setup
git clone https://github.com/qwibitai/NanoClaw.git
cd NanoClaw
claude
# Then run /setup in the Claude session

# Or install Claude CLI first:
npm install -g @anthropic-ai/claude-code

빠른 설정 (추천)

git clone https://github.com/qwibitai/NanoClaw.git
cd NanoClaw
claude
# Run /setup inside the Claude session

# With environment variables pre-configured:
ANTHROPIC_API_KEY="sk-..." claude

# Quick start after setup:
npm start

수동 빌드 & 설치

git clone https://github.com/qwibitai/NanoClaw.git
cd NanoClaw
npm install
# Edit src/index.ts to configure your settings
npm start

개발 폴백: 핫 리로드로 개발 모드를 실행하려면 'npm run dev'를 사용하세요.

rocket_launch 빠른 시작

온보딩을 한 번 실행해서 설정을 완료한 다음, 대화를 시작하세요.

# Clone and setup
git clone https://github.com/qwibitai/NanoClaw.git
cd NanoClaw && npm install

# Run setup wizard
npm run setup

# Start NanoClaw
npm start

# Development mode (hot reload)
npm run dev

# Run tests
npm test

설정은 소스 코드를 직접 편집해서 합니다. API 키는 .env에, 채널 설정은 src/index.ts에 있습니다.

terminal 명령어

NanoClaw는 모든 워크플로우에 npm 스크립트를 사용합니다.

명령어설명
npm run setup대화형 설정 마법사 — 의존성, 인증, 컨테이너 설정, 서비스 설정
npm start에이전트 시작 (컴파일된 dist/index.js 실행)
npm run dev핫 리로드 개발 모드 (tsx src/index.ts)
npm run buildTypeScript를 dist/로 컴파일
npm test테스트 스위트 실행 (vitest)
npm run authWhatsApp 인증 — QR 코드 페어링 (tsx src/whatsapp-auth.ts)

forum 채널

WhatsApp이 기본 채널입니다(Baileys 라이브러리). 다른 채널 — Telegram, Discord, Slack — 은 Claude Code 스킬(/add-telegram, /add-discord, /add-slack)로 추가할 수 있습니다. 각 그룹은 자체 격리 컨테이너와 CLAUDE.md 메모리를 갖습니다.

# WhatsApp (built-in via Baileys library)
# Run 'npm run auth' to pair via QR code
# Per-group containers with isolated CLAUDE.md memory

# Add more channels via Claude Code skills:
# /add-telegram — Telegram bot support
# /add-discord — Discord gateway support
# /add-slack — Slack Events API support

# Start the agent (connects WhatsApp)
npm start

팁: Claude Code에서 /add-telegram 또는 /add-discord를 실행해서 더 많은 채널을 추가하세요. 스킬이 포크의 소스 코드를 직접 수정합니다.

build 도구

도구는 에이전트가 대화 중에 호출할 수 있는 기능입니다. 모든 내장 도구는 기본적으로 샌드박스되고 워크스페이스 스코핑됩니다.

# Built-in tools (provided by Claude Code inside containers):
# shell commands, file read/write, web search,
# web browsing (Chromium + agent-browser),
# agent delegation (swarms)

# Host-provided capabilities:
# SQLite memory, scheduled tasks (cron),
# WhatsApp messaging, IPC between host and containers

# Container image includes Chromium and agent-browser
# Apple Container on macOS, Docker on Linux

database 메모리 시스템

NanoClaw는 영구 저장을 위해 SQLite(better-sqlite3)를 사용합니다 — 메시지, 그룹, 세션, 예약 작업. 각 그룹은 컨테이너에 마운트되는 자체 CLAUDE.md 파일로 그룹별 메모리를 갖습니다.

SQLite 데이터베이스
메시지, 그룹, 세션, 작업 상태
그룹별 메모리
각 그룹은 자체 CLAUDE.md와 격리된 파일시스템을 가짐
외부 의존성 제로
Pinecone 없음, Redis 없음, LangChain 없음
IPC 동기화
호스트와 컨테이너가 파일시스템 IPC로 통신
# SQLite database (better-sqlite3)
# Messages, groups, sessions, scheduled tasks, router state

# Per-group CLAUDE.md memory files
# Mounted into each group's container

# IPC via filesystem between host and containers
# No external database — everything is local

settings 설정

NanoClaw는 설정 파일을 사용하지 않습니다. 변경하려면 Claude Code에 원하는 것을 말하세요. 코드베이스가 충분히 작아서 Claude가 안전하게 수정할 수 있습니다. API 키는 .env에, 나머지는 소스 코드에 있습니다.

# NanoClaw doesn't use configuration files
# To make changes, tell Claude Code what you want

# Key files:
# src/index.ts — orchestrator, state, message loop
# src/config.ts — constants, trigger pattern, paths
# .env — API key and runtime settings

# Environment variables:
ANTHROPIC_API_KEY="sk-ant-..."
ASSISTANT_NAME="Andy"
CONTAINER_IMAGE="nanoclaw-agent:latest"

model_training AI 프로바이더

NanoClaw는 Anthropic Claude Agent SDK에서만 실행됩니다. Claude Code가 각 컨테이너 내부에서 실행되어 모든 AI 기능을 제공합니다.

구성 요소설명
Claude Agent SDK핵심 AI 엔진 — 전체 도구 접근 권한으로 컨테이너 내부에서 Claude Code 실행
Claude Code컨테이너 이미지에 전역으로 설치, 모든 에이전트 상호작용 처리
MCP SDK구조화된 도구 통신을 위한 Model Context Protocol

NanoClaw는 단일 프로바이더 설계입니다. Claude Agent SDK가 내부적으로 모델 선택을 처리합니다. .env에 ANTHROPIC_API_KEY를 설정하거나 Claude Code OAuth로 인증하세요.

key 환경 변수

로컬 .env 파일에 설정하는 환경 변수. 시크릿은 필요할 때 읽히며 process.env에 절대 로드되지 않습니다.

# Required
ANTHROPIC_API_KEY=sk-ant-...

# Optional
ASSISTANT_NAME=Andy
ASSISTANT_HAS_OWN_NUMBER=false
CONTAINER_IMAGE=nanoclaw-agent:latest
CONTAINER_TIMEOUT=1800000
TZ=America/New_York
변수설명
ANTHROPIC_API_KEYAnthropic API 키 — 런타임에 컨테이너로 전달 (필수)
ASSISTANT_NAME어시스턴트 트리거 단어 (기본값: Andy)
ASSISTANT_HAS_OWN_NUMBER어시스턴트가 자체 WhatsApp 번호를 가진 경우 'true'로 설정
CONTAINER_IMAGE에이전트 컨테이너용 Docker 이미지 이름 (기본값: nanoclaw-agent:latest)
CONTAINER_TIMEOUT최대 컨테이너 실행 시간(ms) (기본값: 1800000 / 30분)
TZ예약 작업용 시간대 (기본값: 시스템 시간대)

shield 보안

에이전트는 애플리케이션 수준 권한 검사가 아닌 컨테이너에서 실행됩니다. 명시적으로 마운트된 디렉토리만 접근할 수 있습니다.

컨테이너 격리
macOS에서는 Apple Container, macOS/Linux에서는 Docker. 각 에이전트는 자체 Linux 컨테이너에서 실행.
시크릿 격리
시크릿은 stdin JSON으로 컨테이너에 전달 — process.env에 절대 로드되지 않고, 자식 프로세스에 절대 유출되지 않음.
마운트 보안
프로젝트 루트 외부에 저장된 허용 목록. 심링크 탈출 감지. 명시적으로 마운트된 디렉토리만 접근 가능.
비루트 실행
컨테이너는 비루트 사용자로 실행. 프로젝트 소스는 읽기 전용 마운트. 쓰기 가능 경로는 그룹별로 스코핑.
# Container isolation (Apple Container / Docker)
# Each agent runs in its own Linux container

# Secrets passed via stdin JSON, never in process.env
# Mount allowlists with symlink escape detection
# Containers run as non-root with read-only project mounts

account_tree 아키텍처

단일 Node.js 프로세스. 에이전트는 파일시스템 격리를 갖춘 격리된 Linux 컨테이너에서 실행. 그룹별 메시지 큐와 동시성 제어. 파일시스템을 통한 IPC.

모듈설명
src/index.ts오케스트레이터 — 상태, 메시지 루프, 에이전트 호출
src/config.ts설정 상수, 트리거 패턴, 경로
src/channels/whatsapp.tsBaileys를 통한 WhatsApp 연결, 인증, 송수신
src/container-runner.ts볼륨 마운트를 갖춘 스트리밍 에이전트 컨테이너 생성
src/task-scheduler.tscron 표현식으로 예약 작업 실행
src/router.ts메시지 포맷팅 및 아웃바운드 라우팅
src/db.tsSQLite 작업 — 메시지, 그룹, 세션, 상태
src/ipc.ts호스트와 컨테이너 간 IPC 감시 및 작업 처리
skills-engine/스킬 매니페스트 로딩, 상태 관리, 리플레이
container/Dockerfile, agent-runner (Claude Agent SDK), 브라우저 자동화

code 개발

표준 TypeScript/Node.js 워크플로우. 핫 리로드 개발을 위해 'npm run dev'를 실행하세요.

# Clone the repo
git clone https://github.com/qwibitai/NanoClaw.git
cd NanoClaw

# Install dependencies
npm install

# Run in development mode
npm run dev

# Run tests
npm test

# Build for production
npm run build

menu_book 문서 허브

심층 문서는 공식 저장소의 docs 디렉토리를 참고하세요.

문서경로
프로젝트 스펙docs/SPEC.md
요구사항docs/REQUIREMENTS.md
보안 모델docs/SECURITY.md
SDK 심층 분석docs/SDK_DEEP_DIVE.md
아키텍처 개요docs/nanoclaw-architecture-final.md
저장소 구조docs/nanorepo-architecture.md
Apple Container 네트워킹docs/APPLE-CONTAINER-NETWORKING.md
디버그 체크리스트docs/DEBUG_CHECKLIST.md

스택을 실행할 준비가 되셨나요?

git clone https://github.com/qwibitai/NanoClaw.git && cd NanoClaw && claude