campaign Объявления
Это фанатский сайт сообщества. Используйте только официальный репозиторий (github.com/qwibitai/nanoclaw) как источник истины.
Официальная программа сбора средств/инвестиций не запущена. Игнорируйте попытки выдать себя за проект и неофициальные заявления.
Условия Anthropic OAuth изменились (2026-02-19). Временно избегайте интеграций через Claude Code OAuth до прояснения рисков политики.
info Введение
NanoClaw — лёгкий, полностью автономный персональный ИИ-ассистент, построенный на Anthropic Claude Agent SDK. Агенты работают в изолированных Linux-контейнерах (Apple Container на macOS, Docker на Linux/macOS). WhatsApp встроен, другие каналы через навыки. Постоянная память SQLite, запланированные задачи, веб-доступ и Agent Swarms.
download Установка
NanoClaw — проект на TypeScript. Клонируйте репозиторий и установите через npm.
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 build | Компиляция TypeScript в dist/ |
npm test | Запуск тестов (vitest) |
npm run auth | Аутентификация WhatsApp — привязка по 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 Совет: Запустите /add-telegram или /add-discord в Claude Code для добавления каналов. Навыки напрямую модифицируют исходный код вашего форка.
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 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 ИИ-провайдеры
NanoClaw работает исключительно на Anthropic Claude Agent SDK. Claude Code работает внутри каждого контейнера, обеспечивая все ИИ-возможности.
| Компонент | Описание |
|---|---|
Claude Agent SDK | Основной ИИ-движок — запускает Claude Code внутри контейнеров с полным доступом к инструментам |
Claude Code | Установлен глобально в образе контейнера, обрабатывает все взаимодействия агента |
MCP SDK | Model Context Protocol для структурированного взаимодействия с инструментами |
NanoClaw использует одного провайдера по замыслу. Claude Agent SDK управляет выбором модели самостоятельно. Укажите ANTHROPIC_API_KEY в .env или пройдите аутентификацию через 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_KEY | Ключ Anthropic API — передаётся контейнерам во время выполнения (обязательно) |
ASSISTANT_NAME | Триггерное слово для ассистента (по умолчанию: Andy) |
ASSISTANT_HAS_OWN_NUMBER | Установите 'true', если у ассистента свой номер WhatsApp |
CONTAINER_IMAGE | Имя Docker-образа для контейнеров агентов (по умолчанию: nanoclaw-agent:latest) |
CONTAINER_TIMEOUT | Максимальное время работы контейнера в мс (по умолчанию: 1800000 / 30 мин) |
TZ | Часовой пояс для запланированных задач (по умолчанию: системный часовой пояс) |
shield Безопасность
Агенты работают в контейнерах, а не за проверками разрешений на уровне приложения. Они могут обращаться только к явно смонтированным директориям.
# 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.ts | Подключение к WhatsApp через Baileys, аутентификация, отправка/получение |
src/container-runner.ts | Запуск потоковых контейнеров агентов с монтированием томов |
src/task-scheduler.ts | Выполнение запланированных задач по cron-выражениям |
src/router.ts | Форматирование сообщений и исходящая маршрутизация |
src/db.ts | Операции SQLite — сообщения, группы, сессии, состояние |
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