campaign Annonces

Critique

Nous ne sommes pas affiliés à openagen/zeroclaw ni à zeroclaw.org. Utilisez uniquement le dépôt officiel et les comptes sociaux ZeroClaw vérifiés comme source de vérité.

Important

Aucun programme officiel de levée de fonds ou d'investissement n'a été lancé. Ignorez les tentatives d'usurpation et les déclarations non officielles.

Important

Les conditions OAuth d'Anthropic ont changé (19/02/2026). Évitez temporairement les intégrations OAuth Claude Code jusqu'à clarification du risque lié aux conditions.

info Introduction

ZeroClaw est une infrastructure d'assistant IA autonome rapide, compacte et entièrement autonome, construite en Rust. Un seul binaire statique tourne sur du matériel à 10 $ avec <5 Mo de RAM — 99 % de mémoire en moins que les alternatives basées sur Node. Chaque sous-système est un trait : changez de providers, canaux, outils, backends mémoire et tunnels via la configuration.

memory
Binaire unique
3,4 Mo en release, démarrage à froid <10 ms sur 0,8 GHz
swap_horiz
Piloté par les traits
Provider, Channel, Tool, Memory, Tunnel — tous interchangeables
shield
Sécurisé par défaut
Gateway localhost uniquement, OTP d'appairage, portée workspace
developer_board
Déployez partout
ARM, x86, RISC-V — du Raspberry Pi au cloud

download Installation

ZeroClaw est distribué sous forme d'un seul binaire Rust. Installation via Homebrew, script bootstrap ou compilation manuelle depuis les sources.

Prérequis : Toolchain Rust stable (rustup), Git, une clé API de fournisseur IA (OpenRouter, Anthropic, OpenAI, Ollama, etc.)

Homebrew (macOS / Linuxbrew)

# macOS / Linuxbrew
brew install zeroclaw

Bootstrap en un clic (recommandé)

git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
./bootstrap.sh

# With system deps + Rust install on fresh machines
./bootstrap.sh --install-system-deps --install-rust

# With onboarding in the same flow
./bootstrap.sh --onboard --api-key "sk-..." --provider openrouter

# Remote one-liner
curl -fsSL https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/main/scripts/bootstrap.sh | bash

Compilation et installation manuelles

git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
cargo build --release --locked
cargo install --path . --force --locked

# Ensure ~/.cargo/bin is in PATH
export PATH="$HOME/.cargo/bin:$PATH"

Fallback dev : préfixez les commandes avec cargo run --release -- pour éviter l'installation globale.

rocket_launch Démarrage rapide

Lancez l'onboarding une fois pour configurer votre config, puis commencez à discuter.

# Interactive onboarding wizard
zeroclaw onboard --interactive

# Or quick setup (no prompts)
zeroclaw onboard --api-key sk-... --provider openrouter --model "openrouter/auto"

# Quickly repair channels/allowlists only
zeroclaw onboard --channels-only

# Chat with the agent
zeroclaw agent -m "Hello, ZeroClaw!"

# Interactive mode
zeroclaw agent

# Start gateway + daemon
zeroclaw gateway
zeroclaw daemon

# Check status
zeroclaw status
zeroclaw doctor
zeroclaw channel doctor

# Bind Telegram identity into allowlist
zeroclaw channel bind-telegram 123456789

# Service + migration helpers
zeroclaw service install
zeroclaw config schema
zeroclaw migrate openclaw --dry-run
zeroclaw migrate openclaw

Emplacement de la configuration : ~/.zeroclaw/config.toml — créé automatiquement par zeroclaw onboard.

terminal Commandes

ZeroClaw est un binaire unique avec des sous-commandes pour chaque workflow.

CommandeDescription
zeroclaw onboardConfiguration interactive ou rapide — crée la config, définit la clé API
zeroclaw onboard --channels-onlyReconfigure uniquement les identifiants et listes d'autorisation des canaux
zeroclaw agentMode chat (REPL interactif ou message unique avec -m)
zeroclaw gatewayDémarre le serveur webhook (par défaut 127.0.0.1:3000)
zeroclaw daemonDémarre le runtime autonome complet en continu
zeroclaw statusAffiche l'état complet du système
zeroclaw auth statusInspecte le profil d'authentification actif et l'état du token
zeroclaw doctorDiagnostique le daemon, le planificateur et la fraîcheur des canaux
zeroclaw channel listListe les canaux configurés et leur état
zeroclaw channel doctorVérifie l'état de santé et la disponibilité des canaux
zeroclaw channel bind-telegram <id>Autorise un ID utilisateur Telegram dans la liste d'autorisation
zeroclaw service installInstalle le service en arrière-plan au niveau utilisateur
zeroclaw service start/stop/statusGère le cycle de vie du service en arrière-plan
zeroclaw cronGère les tâches planifiées (list/add/remove/pause/resume)
zeroclaw providersListe les providers supportés et leurs alias
zeroclaw modelsRafraîchit les catalogues de modèles des providers
zeroclaw auth loginConnexion avec les profils d'authentification par abonnement
zeroclaw skillsListe/installe/supprime des skills
zeroclaw config schemaAffiche le JSON Schema complet du contrat de configuration
zeroclaw migrate openclawImporte les données depuis le runtime OpenClaw
zeroclaw integrations info <name>Obtient des conseils de configuration d'intégration
zeroclaw hardwareCommandes USB discover/introspect/info
zeroclaw peripheralGère et flashe les périphériques matériels

smart_toy Mode agent

La commande zeroclaw agent lance un assistant IA capable d'utiliser des outils, de rappeler la mémoire et d'exécuter des tâches.

# Single message
zeroclaw agent -m "List files in the current directory"

# Interactive REPL
zeroclaw agent

# Use a specific provider/model
zeroclaw agent --provider anthropic --model claude-sonnet-4-6 -m "Hello"

# Use a subscription auth profile
zeroclaw agent --provider openai-codex --auth-profile openai-codex:work -m "Hello"

dns Gateway et daemon

La gateway expose un serveur webhook pour les intégrations de canaux. Le daemon exécute le runtime autonome complet incluant heartbeat, cron et canaux.

# Start the gateway (webhook server, default 127.0.0.1:3000)
zeroclaw gateway
zeroclaw gateway --port 0        # random port (security hardened)

# Start full autonomous runtime
zeroclaw daemon

# Manage as a background service
zeroclaw service install
zeroclaw service status
Security: La gateway écoute sur 127.0.0.1 par défaut. Utilisez un tunnel (Cloudflare, Tailscale, ngrok) pour l'exposer à l'extérieur.

forum Canaux

Les canaux permettent à ZeroClaw de recevoir et répondre aux messages depuis Telegram, Discord, Slack, Mattermost, iMessage, Matrix, Signal, WhatsApp, Email, IRC, Lark, DingTalk et plus. Tous les canaux utilisent une liste d'autorisation deny-by-default.

# Telegram
[channels_config.telegram]
bot_token = "123456:ABC..."
allowed_users = ["your_username"]   # or ["*"] for all

# Discord
[channels_config.discord]
bot_token = "..."
allowed_users = ["your-discord-id"]

# Slack
[channels_config.slack]
bot_token = "xoxb-..."
allowed_users = ["UMEMBERID"]

# Start channels via daemon
zeroclaw daemon

Astuce : lancez zeroclaw onboard --channels-only pour reconfigurer les canaux sans toucher aux autres paramètres.

build Outils

Les outils sont des capacités que l'agent peut invoquer pendant une conversation. Tous les outils intégrés sont sandboxés et limités au workspace par défaut.

# Built-in tools:
# shell, file_read, file_write, memory, cron,
# git, http_request, browser (opt-in), composio (opt-in),
# delegate, hardware, screenshot, pushover

# Enable browser tools
[browser]
enabled = true
allowed_domains = ["docs.rs", "github.com"]

# Enable Composio (1000+ OAuth integrations)
[composio]
enabled = true
api_key = "cmp_..."

database Système de mémoire

Moteur de recherche complet sans aucune dépendance externe — pas de Pinecone, pas d'Elasticsearch, pas de LangChain.

Base vectorielle
SQLite BLOB + similarité cosinus
Recherche par mots-clés
FTS5 + scoring BM25
Fusion hybride
Fusion pondérée personnalisée
Cache
Politique d'éviction LRU
[memory]
backend = "sqlite"             # sqlite | lucid | postgres | markdown | none
auto_save = true
embedding_provider = "none"    # none | openai | custom:https://...
vector_weight = 0.7
keyword_weight = 0.3

# PostgreSQL remote backend
# [storage.provider.config]
# provider = "postgres"
# db_url = "postgres://user:pass@host:5432/zeroclaw"

settings Fichier de configuration

La configuration se trouve dans ~/.zeroclaw/config.toml — créé par zeroclaw onboard.

api_key = "sk-..."
default_provider = "openrouter"
default_model = "anthropic/claude-sonnet-4-6"
default_temperature = 0.7

[memory]
backend = "sqlite"
auto_save = true

[gateway]
port = 3000
host = "127.0.0.1"
require_pairing = true
allow_public_bind = false

[autonomy]
level = "supervised"
workspace_only = true
allowed_commands = ["git", "npm", "cargo", "ls", "cat", "grep"]

[runtime]
kind = "native"

[tunnel]
provider = "none"

[secrets]
encrypt = true

model_training Fournisseurs IA

ZeroClaw supporte 28+ providers intégrés plus tout endpoint personnalisé compatible OpenAI ou Anthropic.

FournisseurDescription
openrouterRouteur multi-modèles (recommandé)
anthropicModèles Claude
openaiModèles GPT
ollamaOllama local ou distant
geminiGoogle Gemini
custom:https://...Tout endpoint compatible OpenAI

Lancez zeroclaw providers pour lister tous les providers et alias disponibles.

key Variables d'environnement

Clés API des providers et surcharges optionnelles.

# Provider API keys
OPENROUTER_API_KEY=sk-or-v1-...
ANTHROPIC_API_KEY=sk-ant-...
OPENAI_API_KEY=sk-...

# Lucid memory backend
ZEROCLAW_LUCID_CMD=/usr/local/bin/lucid
ZEROCLAW_LUCID_BUDGET=200

# Ollama remote endpoint
OLLAMA_API_KEY=your-key
VariableDescription
OPENROUTER_API_KEYClé API OpenRouter
ANTHROPIC_API_KEYClé API Anthropic
OPENAI_API_KEYClé API OpenAI
OLLAMA_API_KEYClé endpoint distant Ollama
ZEROCLAW_LUCID_CMDChemin vers le binaire lucid
ZEROCLAW_LUCID_BUDGETBudget mémoire Lucid (défaut 200)

shield Sécurité

ZeroClaw applique la sécurité à chaque couche et passe tous les éléments de la checklist de sécurité communautaire.

Gateway localhost uniquement
Écoute sur 127.0.0.1. Refuse 0.0.0.0 sans tunnel ou allow_public_bind
Appairage requis
OTP à 6 chiffres au démarrage. Échange via POST /pair pour un token bearer
Portée filesystem
workspace_only par défaut. 14 répertoires système + 4 dotfiles sensibles bloqués
Détection d'échappement par symlink
Canonicalisation + vérifications de chemin résolu dans le workspace
Secrets chiffrés
Clés API chiffrées au repos avec fichier de clé local
Canaux deny-by-default
Liste d'autorisation vide = tout refuser. "*" = tout autoriser (opt-in explicite)
[gateway]
require_pairing = true
allow_public_bind = false   # refuse 0.0.0.0 without tunnel

[autonomy]
workspace_only = true       # scoped to workspace by default

account_tree Architecture

Chaque sous-système est un trait Rust — changez d'implémentation via la configuration, sans modifier le code.

Sous-systèmeTraitInclut
Modèles IAProvider28 intégrés + endpoints personnalisés
CanauxChannelCLI, Telegram, Discord, Slack, WhatsApp, iMessage, Matrix, Signal, Email, IRC, Lark, DingTalk, QQ, Webhook
Système de mémoireMemorySQLite hybride, PostgreSQL, Lucid, Markdown, aucun
OutilsToolshell, file, memory, cron, git, browser, http, composio, delegate, hardware
ObservabilitéObserverNoop, Log, Multi
RuntimeRuntimeAdapterNatif, Docker (sandboxé)
SécuritéSecurityPolicyAppairage, sandbox, listes d'autorisation, limites de débit, portée filesystem
IdentitéIdentityConfigOpenClaw (markdown), AIEOS v1.1 (JSON)
TunnelTunnelAucun, Cloudflare, Tailscale, ngrok, Personnalisé
HeartbeatEngineTâches périodiques HEARTBEAT.md
Liste/installe/supprime des skillsLoaderManifestes TOML + instructions SKILL.md
IntégrationsRegistry70+ intégrations dans 9 catégories

runtime.kind = "native" et "docker" sont supportés aujourd'hui. Les runtimes WASM/edge sont prévus.

api API Gateway

API HTTP minimale pour les intégrations de canaux et les vérifications de santé.

MéthodeEndpointDescription
GET/healthVérification de santé (toujours publique, aucun secret exposé)
POST/pairÉchange de l'OTP (en-tête X-Pairing-Code) contre un token bearer
POST/webhookEnvoi de message à l'agent (Authorization: Bearer)
GET/POST/whatsappVérification webhook WhatsApp + messages entrants
# Health check (no auth required)
curl http://127.0.0.1:3000/health

# Exchange pairing code for bearer token
curl -X POST http://127.0.0.1:3000/pair \
  -H "X-Pairing-Code: 847291"

# Send a message (requires bearer token)
curl -X POST http://127.0.0.1:3000/webhook \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{"message": "Hello, ZeroClaw!"}'

lock Authentification et appairage

Profils d'authentification natifs par abonnement (multi-comptes, chiffrés au repos) pour OpenAI Codex et Anthropic.

# OpenAI Codex (device code — recommended for servers)
zeroclaw auth login --provider openai-codex --device-code

# Browser/callback flow
zeroclaw auth login --provider openai-codex --profile default

# Anthropic setup token
zeroclaw auth paste-token --provider anthropic --profile default

# Check / refresh / switch profile
zeroclaw auth status
zeroclaw auth refresh --provider openai-codex --profile default
zeroclaw auth use --provider openai-codex --profile work

code Développement

Workflow Rust standard. Un hook git pre-push exécute automatiquement fmt + clippy + test.

# Dev build
cargo build

# Release build (works on all devices including Raspberry Pi)
cargo build --release

# Run tests
cargo test

# Lint
cargo clippy --locked --all-targets -- -D clippy::correctness

# Format
cargo fmt

# Enable pre-push hook (fmt + clippy + test)
git config core.hooksPath .githooks

menu_book Hub documentation

Pour la documentation orientée tâches, commencez par le hub de documentation dans le dépôt officiel.

DocumentChemin
Hub de documentationdocs/README.md
Table des matières unifiéedocs/SUMMARY.md
Référence des commandesdocs/commands-reference.md
Référence de configurationdocs/config-reference.md
Référence des providersdocs/providers-reference.md
Référence des canauxdocs/channels-reference.md
Runbook opérationneldocs/operations-runbook.md
Dépannagedocs/troubleshooting.md

Prêt à lancer la stack ?

brew install zeroclaw && zeroclaw onboard --interactive