An open API service indexing awesome lists of open source software.

https://github.com/hiddenpath/zerospider

Protocol-driven autonomous AI agent runtime with intelligent model selection and multi-model negotiation
https://github.com/hiddenpath/zerospider

Last synced: 3 months ago
JSON representation

Protocol-driven autonomous AI agent runtime with intelligent model selection and multi-model negotiation

Awesome Lists containing this project

README

          


ZeroClaw

ZeroClaw 🩀


Zéro surcharge. Zéro compromis. 100% Rust. 100% Agnostique.

âšĄïž Fonctionne sur du matĂ©riel Ă  10$ avec <5 Mo de RAM : C'est 99% de mĂ©moire en moins qu'OpenClaw et 98% moins cher qu'un Mac mini !


Licence : MIT
Contributeurs
Offrez-moi un café
X : @zeroclawlabs
Xiaohongshu : Officiel
Telegram : @zeroclawlabs
Telegram CN : @zeroclawlabs_cn
Telegram RU : @zeroclawlabs_ru
Reddit : r/zeroclawlabs



Construit par des étudiants et membres des communautés Harvard, MIT et Sundai.Club.


🌐 Langues : English · çź€äœ“äž­æ–‡ · æ—„æœŹèȘž · РуссĐșĐžĐč · Français


Démarrage |
Configuration en un clic |
Hub Documentation |
Table des matiĂšres Documentation


AccĂšs rapides :
Référence ·
Opérations ·
Dépannage ·
Sécurité ·
Matériel ·
Contribuer


Infrastructure d'assistant IA rapide, légÚre et entiÚrement autonome

DĂ©ployez n'importe oĂč. Échangez n'importe quoi.

Architecture pilotée par traits · runtime sécurisé par défaut · fournisseur/canal/outil interchangeables · tout est pluggable

### 📱 Annonces

Utilisez ce tableau pour les avis importants (changements incompatibles, avis de sĂ©curitĂ©, fenĂȘtres de maintenance et bloqueurs de version).

| Date (UTC) | Niveau | Avis | Action |
| ---------- | ----------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 2026-02-19 | _Critique_ | Nous ne sommes **pas affiliés** à `openagen/zeroclaw` ou `zeroclaw.org`. Le domaine `zeroclaw.org` pointe actuellement vers le fork `openagen/zeroclaw`, et ce domaine/dépÎt usurpe l'identité de notre site web/projet officiel. | Ne faites pas confiance aux informations, binaires, levées de fonds ou annonces provenant de ces sources. Utilisez uniquement ce dépÎt et nos comptes sociaux vérifiés. |
| 2026-02-19 | _Important_ | Nous n'avons **pas encore** lancé de site web officiel, et nous constatons des tentatives d'usurpation d'identité. Ne participez **pas** à des activités d'investissement ou de levée de fonds revendiquant le nom ZeroClaw. | Utilisez ce dépÎt comme source unique de vérité. Suivez [X (@zeroclawlabs)](https://x.com/zeroclawlabs?s=21), [Reddit (r/zeroclawlabs)](https://www.reddit.com/r/zeroclawlabs/), [Telegram (@zeroclawlabs)](https://t.me/zeroclawlabs), [Telegram CN (@zeroclawlabs_cn)](https://t.me/zeroclawlabs_cn), [Telegram RU (@zeroclawlabs_ru)](https://t.me/zeroclawlabs_ru), et [Xiaohongshu](https://www.xiaohongshu.com/user/profile/67cbfc43000000000d008307?xsec_token=AB73VnYnGNx5y36EtnnZfGmAmS-6Wzv8WMuGpfwfkg6Yc%3D&xsec_source=pc_search) pour les mises à jour officielles. |
| 2026-02-19 | _Important_ | Anthropic a mis à jour les conditions d'utilisation de l'authentification et des identifiants le 2026-02-19. L'authentification OAuth (Free, Pro, Max) est exclusivement destinée à Claude Code et Claude.ai ; l'utilisation de tokens OAuth de Claude Free/Pro/Max dans tout autre produit, outil ou service (y compris Agent SDK) n'est pas autorisée et peut violer les Conditions d'utilisation grand public. | Veuillez temporairement éviter les intégrations OAuth de Claude Code pour prévenir toute perte potentielle. Clause originale : [Authentication and Credential Use](https://code.claude.com/docs/en/legal-and-compliance#authentication-and-credential-use). |

### ✹ FonctionnalitĂ©s

- đŸŽïž **Runtime LĂ©ger par DĂ©faut :** Les workflows CLI courants et de statut s'exĂ©cutent dans une enveloppe mĂ©moire de quelques mĂ©gaoctets sur les builds de production.
- 💰 **DĂ©ploiement Économique :** Conçu pour les cartes Ă  faible coĂ»t et les petites instances cloud sans dĂ©pendances runtime lourdes.
- ⚡ **DĂ©marrages Ă  Froid Rapides :** Le runtime Rust mono-binaire maintient le dĂ©marrage des commandes et dĂ©mons quasi instantanĂ© pour les opĂ©rations quotidiennes.
- 🌍 **Architecture Portable :** Un workflow binaire unique sur ARM, x86 et RISC-V avec fournisseurs/canaux/outils interchangeables.

### Pourquoi les équipes choisissent ZeroClaw

- **Léger par défaut :** petit binaire Rust, démarrage rapide, empreinte mémoire faible.
- **Sécurisé par conception :** appairage, sandboxing strict, listes d'autorisation explicites, portée de workspace.
- **EntiÚrement interchangeable :** les systÚmes centraux sont des traits (fournisseurs, canaux, outils, mémoire, tunnels).
- **Aucun verrouillage :** support de fournisseur compatible OpenAI + endpoints personnalisés pluggables.

## Instantané de Benchmark (ZeroClaw vs OpenClaw, Reproductible)

Benchmark rapide sur machine locale (macOS arm64, fév. 2026) normalisé pour matériel edge 0.8 GHz.

| | OpenClaw | NanoBot | PicoClaw | ZeroClaw 🩀 |
| ---------------------------- | ------------- | -------------- | --------------- | --------------------- |
| **Langage** | TypeScript | Python | Go | **Rust** |
| **RAM** | > 1 Go | > 100 Mo | < 10 Mo | **< 5 Mo** |
| **DĂ©marrage (cƓur 0.8 GHz)** | > 500s | > 30s | < 1s | **< 10ms** |
| **Taille Binaire** | ~28 Mo (dist) | N/A (Scripts) | ~8 Mo | **3.4 Mo** |
| **Coût** | Mac Mini 599$ | Linux SBC ~50$ | Carte Linux 10$ | **Tout matériel 10$** |

> Notes : Les résultats ZeroClaw sont mesurés sur des builds de production utilisant `/usr/bin/time -l`. OpenClaw nécessite le runtime Node.js (typiquement ~390 Mo de surcharge mémoire supplémentaire), tandis que NanoBot nécessite le runtime Python. PicoClaw et ZeroClaw sont des binaires statiques. Les chiffres RAM ci-dessus sont la mémoire runtime ; les exigences de compilation build-time sont plus élevées.


Comparaison ZeroClaw vs OpenClaw

### Mesure locale reproductible

Les affirmations de benchmark peuvent dériver au fil de l'évolution du code et des toolchains, donc mesurez toujours votre build actuel localement :

```bash
cargo build --release
ls -lh target/release/zeroclaw

/usr/bin/time -l target/release/zeroclaw --help
/usr/bin/time -l target/release/zeroclaw status
```

Exemple d'échantillon (macOS arm64, mesuré le 18 février 2026) :

- Taille binaire release : `8.8M`
- `zeroclaw --help` : environ `0.02s` de temps réel, ~`3.9 Mo` d'empreinte mémoire maximale
- `zeroclaw status` : environ `0.01s` de temps réel, ~`4.1 Mo` d'empreinte mémoire maximale

## Prérequis

Windows

### Windows — Requis

1. **Visual Studio Build Tools** (fournit le linker MSVC et le Windows SDK) :

```powershell
winget install Microsoft.VisualStudio.2022.BuildTools
```

Pendant l'installation (ou via le Visual Studio Installer), sélectionnez la charge de travail **"Développement Desktop en C++"**.

2. **Toolchain Rust :**

```powershell
winget install Rustlang.Rustup
```

AprÚs l'installation, ouvrez un nouveau terminal et exécutez `rustup default stable` pour vous assurer que la toolchain stable est active.

3. **Vérifiez** que les deux fonctionnent :
```powershell
rustc --version
cargo --version
```

### Windows — Optionnel

- **Docker Desktop** — requis seulement si vous utilisez le [runtime sandboxĂ© Docker](#support-runtime-actuel) (`runtime.kind = "docker"`). Installez via `winget install Docker.DockerDesktop`.

Linux / macOS

### Linux / macOS — Requis

1. **Outils de build essentiels :**
- **Linux (Debian/Ubuntu) :** `sudo apt install build-essential pkg-config`
- **Linux (Fedora/RHEL) :** `sudo dnf group install development-tools && sudo dnf install pkg-config`
- **macOS :** Installez les Outils de Ligne de Commande Xcode : `xcode-select --install`

2. **Toolchain Rust :**

```bash
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
```

Voir [rustup.rs](https://rustup.rs) pour les détails.

3. **Vérifiez :**
```bash
rustc --version
cargo --version
```

### Linux / macOS — Optionnel

- **Docker** — requis seulement si vous utilisez le [runtime sandboxĂ© Docker](#support-runtime-actuel) (`runtime.kind = "docker"`).
- **Linux (Debian/Ubuntu) :** voir [docs.docker.com](https://docs.docker.com/engine/install/ubuntu/)
- **Linux (Fedora/RHEL) :** voir [docs.docker.com](https://docs.docker.com/engine/install/fedora/)
- **macOS :** installez Docker Desktop via [docker.com/products/docker-desktop](https://www.docker.com/products/docker-desktop/)

## Démarrage Rapide

### Option 1 : Configuration automatisée (recommandée)

Le script `bootstrap.sh` installe Rust, clone ZeroClaw, le compile, et configure votre environnement de développement initial :

```bash
curl -fsSL https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/main/bootstrap.sh | bash
```

Ceci va :

1. Installer Rust (si absent)
2. Cloner le dépÎt ZeroClaw
3. Compiler ZeroClaw en mode release
4. Installer `zeroclaw` dans `~/.cargo/bin/`
5. Créer la structure de workspace par défaut dans `~/.zeroclaw/workspace/`
6. Générer un fichier de configuration `~/.zeroclaw/workspace/config.toml` de démarrage

AprÚs le bootstrap, relancez votre shell ou exécutez `source ~/.cargo/env` pour utiliser la commande `zeroclaw` globalement.

### Option 2 : Installation manuelle

Cliquez pour voir les étapes d'installation manuelle

```bash
# 1. Clonez le dépÎt
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw

# 2. Compilez en release
cargo build --release --locked

# 3. Installez le binaire
cargo install --path . --locked

# 4. Initialisez le workspace
zeroclaw init

# 5. Vérifiez l'installation
zeroclaw --version
zeroclaw status
```

### AprĂšs l'installation

Une fois installé (via bootstrap ou manuellement), vous devriez voir :

```
~/.zeroclaw/workspace/
├── config.toml # Configuration principale
├── .pairing # Secrets de pairing (gĂ©nĂ©rĂ© au premier lancement)
├── logs/ # Journaux de daemon/agent
├── skills/ # CompĂ©tences personnalisĂ©es
└── memory/ # Stockage de contexte conversationnel
```

**Prochaines étapes :**

1. Configurez vos fournisseurs d'IA dans `~/.zeroclaw/workspace/config.toml`
2. Consultez la [référence de configuration](docs/config-reference.md) pour les options avancées
3. Lancez l'agent : `zeroclaw agent start`
4. Testez via votre canal préféré (voir [référence des canaux](docs/channels-reference.md))

## Configuration

Éditez `~/.zeroclaw/workspace/config.toml` pour configurer les fournisseurs, canaux et comportement du systùme.

### Référence de Configuration Rapide

```toml
[providers.anthropic]
api_key = "sk-ant-..."
model = "claude-sonnet-4-20250514"

[providers.openai]
api_key = "sk-..."
model = "gpt-4o"

[channels.telegram]
enabled = true
bot_token = "123456:ABC-DEF..."

[channels.matrix]
enabled = true
homeserver_url = "https://matrix.org"
username = "@bot:matrix.org"
password = "..."

[memory]
kind = "markdown" # ou "sqlite" ou "none"

[runtime]
kind = "native" # ou "docker" (nécessite Docker)
```

**Documents de référence complets :**

- [RĂ©fĂ©rence de Configuration](docs/config-reference.md) — tous les paramĂštres, validations, valeurs par dĂ©faut
- [RĂ©fĂ©rence des Fournisseurs](docs/providers-reference.md) — configurations spĂ©cifiques aux fournisseurs d'IA
- [RĂ©fĂ©rence des Canaux](docs/channels-reference.md) — Telegram, Matrix, Slack, Discord et plus
- [OpĂ©rations](docs/operations-runbook.md) — surveillance en production, rotation des secrets, mise Ă  l'Ă©chelle

### Support Runtime (actuel)

ZeroClaw prend en charge deux backends d'exécution de code :

- **`native`** (par dĂ©faut) — exĂ©cution de processus directe, chemin le plus rapide, idĂ©al pour les environnements de confiance
- **`docker`** — isolation complĂšte du conteneur, politiques de sĂ©curitĂ© renforcĂ©es, nĂ©cessite Docker

Utilisez `runtime.kind = "docker"` si vous avez besoin d'un sandboxing strict ou de l'isolation réseau. Voir [référence de configuration](docs/config-reference.md#runtime) pour les détails complets.

## Commandes

```bash
# Gestion du workspace
zeroclaw init # Initialise un nouveau workspace
zeroclaw status # Affiche l'état du daemon/agent
zeroclaw config validate # Vérifie la syntaxe et les valeurs de config.toml

# Gestion du daemon
zeroclaw daemon start # Démarre le daemon en arriÚre-plan
zeroclaw daemon stop # ArrĂȘte le daemon en cours d'exĂ©cution
zeroclaw daemon restart # Redémarre le daemon (rechargement de config)
zeroclaw daemon logs # Affiche les journaux du daemon

# Gestion de l'agent
zeroclaw agent start # Démarre l'agent (nécessite daemon en cours d'exécution)
zeroclaw agent stop # ArrĂȘte l'agent
zeroclaw agent restart # Redémarre l'agent (rechargement de config)

# Opérations de pairing
zeroclaw pairing init # GénÚre un nouveau secret de pairing
zeroclaw pairing rotate # Fait tourner le secret de pairing existant

# Tunneling (pour exposition publique)
zeroclaw tunnel start # Démarre un tunnel vers le daemon local
zeroclaw tunnel stop # ArrĂȘte le tunnel actif

# Diagnostic
zeroclaw doctor # Exécute les vérifications de santé du systÚme
zeroclaw version # Affiche la version et les informations de build
```

Voir [Référence des Commandes](docs/commands-reference.md) pour les options et exemples complets.

## Architecture

```
┌─────────────────────────────────────────────────────────────────┐
│ Canaux (trait) │
│ Telegram │ Matrix │ Slack │ Discord │ Web │ CLI │ Custom │
└─────────────────────────┬───────────────────────────────────────┘
│
▌
┌─────────────────────────────────────────────────────────────────┐
│ Orchestrateur Agent │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ Routage │ │ Contexte │ │ ExĂ©cution │ │
│ │ Message │ │ MĂ©moire │ │ Outil │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ │
└─────────────────────────┬───────────────────────────────────────┘
│
┌───────────────┌───────────────┐
▌ ▌ ▌
┌──────────────┐ ┌──────────────┐ ┌──────────────┐
│ Fournisseurs │ │ MĂ©moire │ │ Outils │
│ (trait) │ │ (trait) │ │ (trait) │
├─────────────── ├─────────────── ├───────────────
│ Anthropic │ │ Markdown │ │ Filesystem │
│ OpenAI │ │ SQLite │ │ Bash │
│ Gemini │ │ None │ │ Web Fetch │
│ Ollama │ │ Custom │ │ Custom │
│ Custom │ └──────────────┘ └──────────────┘
└──────────────┘
│
▌
┌─────────────────────────────────────────────────────────────────┐
│ Runtime (trait) │
│ Native │ Docker │
└─────────────────────────────────────────────────────────────────┘
```

**Principes clés :**

- Tout est un **trait** — fournisseurs, canaux, outils, mĂ©moire, tunnels
- Les canaux appellent l'orchestrateur ; l'orchestrateur appelle les fournisseurs + outils
- Le systÚme mémoire gÚre le contexte conversationnel (markdown, SQLite, ou aucun)
- Le runtime abstrait l'exécution de code (natif ou Docker)
- Aucun verrouillage de fournisseur — Ă©changez Anthropic ↔ OpenAI ↔ Gemini ↔ Ollama sans changement de code

Voir [documentation architecture](docs/architecture.md) pour les diagrammes détaillés et les détails d'implémentation.

## Exemples

### Telegram Bot

```toml
[channels.telegram]
enabled = true
bot_token = "123456:ABC-DEF..."
allowed_users = [987654321] # Votre Telegram user ID
```

Démarrez le daemon + agent, puis envoyez un message à votre bot sur Telegram :

```
/start
Bonjour ! Pouvez-vous m'aider à écrire un script Python ?
```

Le bot répond avec le code généré par l'IA, exécute les outils si demandé, et conserve le contexte de conversation.

### Matrix (chiffré de bout en bout)

```toml
[channels.matrix]
enabled = true
homeserver_url = "https://matrix.org"
username = "@zeroclaw:matrix.org"
password = "..."
device_name = "zeroclaw-prod"
e2ee_enabled = true
```

Invitez `@zeroclaw:matrix.org` dans une salle chiffrée, et le bot répondra avec le chiffrement complet. Voir [Guide Matrix E2EE](docs/matrix-e2ee-guide.md) pour la configuration de vérification de dispositif.

### Multi-Fournisseur

```toml
[providers.anthropic]
enabled = true
api_key = "sk-ant-..."
model = "claude-sonnet-4-20250514"

[providers.openai]
enabled = true
api_key = "sk-..."
model = "gpt-4o"

[orchestrator]
default_provider = "anthropic"
fallback_providers = ["openai"] # Bascule en cas d'erreur du fournisseur
```

Si Anthropic échoue ou rate-limit, l'orchestrateur bascule automatiquement vers OpenAI.

### Mémoire Personnalisée

```toml
[memory]
kind = "sqlite"
path = "~/.zeroclaw/workspace/memory/conversations.db"
retention_days = 90 # Purge automatique aprĂšs 90 jours
```

Ou utilisez Markdown pour un stockage lisible par l'humain :

```toml
[memory]
kind = "markdown"
path = "~/.zeroclaw/workspace/memory/"
```

Voir [Référence de Configuration](docs/config-reference.md#memory) pour toutes les options mémoire.

## Support de Fournisseur

| Fournisseur | Statut | Clé API | ModÚles Exemple |
| ----------------- | ----------- | ------------------- | ---------------------------------------------------- |
| **Anthropic** | ✅ Stable | `ANTHROPIC_API_KEY` | `claude-sonnet-4-20250514`, `claude-opus-4-20250514` |
| **OpenAI** | ✅ Stable | `OPENAI_API_KEY` | `gpt-4o`, `gpt-4o-mini`, `o1`, `o1-mini` |
| **Google Gemini** | ✅ Stable | `GOOGLE_API_KEY` | `gemini-2.0-flash-exp`, `gemini-exp-1206` |
| **Ollama** | ✅ Stable | N/A (local) | `llama3.3`, `qwen2.5`, `phi4` |
| **Cerebras** | ✅ Stable | `CEREBRAS_API_KEY` | `llama-3.3-70b` |
| **Groq** | ✅ Stable | `GROQ_API_KEY` | `llama-3.3-70b-versatile` |
| **Mistral** | 🚧 PlanifiĂ© | `MISTRAL_API_KEY` | TBD |
| **Cohere** | 🚧 PlanifiĂ© | `COHERE_API_KEY` | TBD |

### Endpoints Personnalisés

ZeroClaw prend en charge les endpoints compatibles OpenAI :

```toml
[providers.custom]
enabled = true
api_key = "..."
base_url = "https://api.your-llm-provider.com/v1"
model = "your-model-name"
```

Exemple : utilisez [LiteLLM](https://github.com/BerriAI/litellm) comme proxy pour accéder à n'importe quel LLM via l'interface OpenAI.

Voir [Référence des Fournisseurs](docs/providers-reference.md) pour les détails de configuration complets.

## Support de Canal

| Canal | Statut | Authentification | Notes |
| ------------ | ----------- | ------------------------ | --------------------------------------------------------- |
| **Telegram** | ✅ Stable | Bot Token | Support complet incluant fichiers, images, boutons inline |
| **Matrix** | ✅ Stable | Mot de passe ou Token | Support E2EE avec vĂ©rification de dispositif |
| **Slack** | 🚧 PlanifiĂ© | OAuth ou Bot Token | AccĂšs workspace requis |
| **Discord** | 🚧 PlanifiĂ© | Bot Token | Permissions guild requises |
| **WhatsApp** | 🚧 PlanifiĂ© | Twilio ou API officielle | Compte business requis |
| **CLI** | ✅ Stable | Aucun | Interface conversationnelle directe |
| **Web** | 🚧 PlanifiĂ© | ClĂ© API ou OAuth | Interface de chat basĂ©e navigateur |

Voir [Référence des Canaux](docs/channels-reference.md) pour les instructions de configuration complÚtes.

## Support d'Outil

ZeroClaw fournit des outils intégrés pour l'exécution de code, l'accÚs au systÚme de fichiers et la récupération web :

| Outil | Description | Runtime Requis |
| -------------------- | --------------------------- | ----------------------------- |
| **bash** | Exécute des commandes shell | Native ou Docker |
| **python** | Exécute des scripts Python | Python 3.8+ (natif) ou Docker |
| **javascript** | Exécute du code Node.js | Node.js 18+ (natif) ou Docker |
| **filesystem_read** | Lit des fichiers | Native ou Docker |
| **filesystem_write** | Écrit des fichiers | Native ou Docker |
| **web_fetch** | RécupÚre du contenu web | Native ou Docker |

### Sécurité de l'Exécution

- **Runtime Natif** — s'exĂ©cute en tant que processus utilisateur du daemon, accĂšs complet au systĂšme de fichiers
- **Runtime Docker** — isolation complĂšte du conteneur, systĂšmes de fichiers et rĂ©seaux sĂ©parĂ©s

Configurez la politique d'exécution dans `config.toml` :

```toml
[runtime]
kind = "docker"
allowed_tools = ["bash", "python", "filesystem_read"] # Liste d'autorisation explicite
```

Voir [Référence de Configuration](docs/config-reference.md#runtime) pour les options de sécurité complÚtes.

## Déploiement

### Déploiement Local (Développement)

```bash
zeroclaw daemon start
zeroclaw agent start
```

### Déploiement Serveur (Production)

Utilisez systemd pour gérer le daemon et l'agent en tant que services :

```bash
# Installez le binaire
cargo install --path . --locked

# Configurez le workspace
zeroclaw init

# Créez les fichiers de service systemd
sudo cp deployment/systemd/zeroclaw-daemon.service /etc/systemd/system/
sudo cp deployment/systemd/zeroclaw-agent.service /etc/systemd/system/

# Activez et démarrez les services
sudo systemctl enable zeroclaw-daemon zeroclaw-agent
sudo systemctl start zeroclaw-daemon zeroclaw-agent

# Vérifiez le statut
sudo systemctl status zeroclaw-daemon
sudo systemctl status zeroclaw-agent
```

Voir [Guide de Déploiement Réseau](docs/network-deployment.md) pour les instructions de déploiement en production complÚtes.

### Docker

```bash
# Compilez l'image
docker build -t zeroclaw:latest .

# Exécutez le conteneur
docker run -d \
--name zeroclaw \
-v ~/.zeroclaw/workspace:/workspace \
-e ANTHROPIC_API_KEY=sk-ant-... \
zeroclaw:latest
```

Voir [`Dockerfile`](Dockerfile) pour les détails de construction et les options de configuration.

### Matériel Edge

ZeroClaw est conçu pour fonctionner sur du matériel à faible consommation d'énergie :

- **Raspberry Pi Zero 2 W** — ~512 Mo RAM, cƓur ARMv8 simple, <5$ coĂ»t matĂ©riel
- **Raspberry Pi 4/5** — 1 Go+ RAM, multi-cƓur, idĂ©al pour les charges de travail concurrentes
- **Orange Pi Zero 2** — ~512 Mo RAM, quad-core ARMv8, coĂ»t ultra-faible
- **SBCs x86 (Intel N100)** — 4-8 Go RAM, builds rapides, support Docker natif

Voir [Guide du Matériel](docs/hardware/README.md) pour les instructions de configuration spécifiques aux dispositifs.

## Tunneling (Exposition Publique)

Exposez votre daemon ZeroClaw local au réseau public via des tunnels sécurisés :

```bash
zeroclaw tunnel start --provider cloudflare
```

Fournisseurs de tunnel supportés :

- **Cloudflare Tunnel** — HTTPS gratuit, aucune exposition de port, support multi-domaine
- **Ngrok** — configuration rapide, domaines personnalisĂ©s (plan payant)
- **Tailscale** — rĂ©seau maillĂ© privĂ©, pas de port public

Voir [Référence de Configuration](docs/config-reference.md#tunnel) pour les options de configuration complÚtes.

## Sécurité

ZeroClaw implémente plusieurs couches de sécurité :

### Pairing

Le daemon génÚre un secret de pairing au premier lancement stocké dans `~/.zeroclaw/workspace/.pairing`. Les clients (agent, CLI) doivent présenter ce secret pour se connecter.

```bash
zeroclaw pairing rotate # GénÚre un nouveau secret et invalide l'ancien
```

### Sandboxing

- **Runtime Docker** — isolation complĂšte du conteneur avec systĂšmes de fichiers et rĂ©seaux sĂ©parĂ©s
- **Runtime Natif** — exĂ©cute en tant que processus utilisateur, scoped au workspace par dĂ©faut

### Listes d'Autorisation

Les canaux peuvent restreindre l'accĂšs par ID utilisateur :

```toml
[channels.telegram]
enabled = true
allowed_users = [123456789, 987654321] # Liste d'autorisation explicite
```

### Chiffrement

- **Matrix E2EE** — chiffrement de bout en bout complet avec vĂ©rification de dispositif
- **Transport TLS** — tout le trafic API et tunnel utilise HTTPS/TLS

Voir [Documentation Sécurité](docs/security/README.md) pour les politiques et pratiques complÚtes.

## Observabilité

ZeroClaw journalise vers `~/.zeroclaw/workspace/logs/` par défaut. Les journaux sont stockés par composant :

```
~/.zeroclaw/workspace/logs/
├── daemon.log # Journaux du daemon (startup, requĂȘtes API, erreurs)
├── agent.log # Journaux de l'agent (routage message, exĂ©cution outil)
├── telegram.log # Journaux spĂ©cifiques au canal (si activĂ©)
└── matrix.log # Journaux spĂ©cifiques au canal (si activĂ©)
```

### Configuration de Journalisation

```toml
[logging]
level = "info" # debug, info, warn, error
path = "~/.zeroclaw/workspace/logs/"
rotation = "daily" # daily, hourly, size
max_size_mb = 100 # Pour rotation basée sur la taille
retention_days = 30 # Purge automatique aprĂšs N jours
```

Voir [Référence de Configuration](docs/config-reference.md#logging) pour toutes les options de journalisation.

### Métriques (Planifié)

Support de métriques Prometheus pour la surveillance en production à venir. Suivi dans [#234](https://github.com/zeroclaw-labs/zeroclaw/issues/234).

## Compétences (Skills)

ZeroClaw prend en charge les compĂ©tences personnalisĂ©es — des modules rĂ©utilisables qui Ă©tendent les capacitĂ©s du systĂšme.

### Définition de Compétence

Les compétences sont stockées dans `~/.zeroclaw/workspace/skills//` avec cette structure :

```
skills/
└── ma-compĂ©tence/
├── skill.toml # MĂ©tadonnĂ©es de compĂ©tence (nom, description, dĂ©pendances)
├── prompt.md # Prompt systùme pour l'IA
└── tools/ # Outils personnalisĂ©s optionnels
└── mon_outil.py
```

### Exemple de Compétence

```toml
# skills/recherche-web/skill.toml
[skill]
name = "recherche-web"
description = "Recherche sur le web et résume les résultats"
version = "1.0.0"

[dependencies]
tools = ["web_fetch", "bash"]
```

```markdown

Tu es un assistant de recherche. Lorsqu'on te demande de rechercher quelque chose :

1. Utilise web_fetch pour récupérer le contenu
2. Résume les résultats dans un format facile à lire
3. Cite les sources avec des URLs
```

### Utilisation de Compétences

Les compétences sont chargées automatiquement au démarrage de l'agent. Référencez-les par nom dans les conversations :

```
Utilisateur : Utilise la compétence recherche-web pour trouver les derniÚres actualités IA
Bot : [charge la compétence recherche-web, exécute web_fetch, résume les résultats]
```

Voir [Guide des Compétences](docs/skills-guide.md) pour les instructions de création de compétences complÚtes.

## Open Skills

ZeroClaw prend en charge les [Open Skills](https://github.com/openagents-com/open-skills) — un systĂšme modulaire et agnostique des fournisseurs pour Ă©tendre les capacitĂ©s des agents IA.

### Activer Open Skills

```toml
[skills]
open_skills_enabled = true
# open_skills_dir = "/path/to/open-skills" # optionnel
```

Vous pouvez également surcharger au runtime avec `ZEROCLAW_OPEN_SKILLS_ENABLED` et `ZEROCLAW_OPEN_SKILLS_DIR`.

## Développement

```bash
cargo build # Build de développement
cargo build --release # Build release (codegen-units=1, fonctionne sur tous les dispositifs incluant Raspberry Pi)
cargo build --profile release-fast # Build plus rapide (codegen-units=8, nécessite 16 Go+ RAM)
cargo test # Exécute la suite de tests complÚte
cargo clippy --locked --all-targets -- -D clippy::correctness
cargo fmt # Format

# Exécute le benchmark de comparaison SQLite vs Markdown
cargo test --test memory_comparison -- --nocapture
```

### Hook pre-push

Un hook git exécute `cargo fmt --check`, `cargo clippy -- -D warnings`, et `cargo test` avant chaque push. Activez-le une fois :

```bash
git config core.hooksPath .githooks
```

### Dépannage de Build (erreurs OpenSSL sur Linux)

Si vous rencontrez une erreur de build `openssl-sys`, synchronisez les dépendances et recompilez avec le lockfile du dépÎt :

```bash
git pull
cargo build --release --locked
cargo install --path . --force --locked
```

ZeroClaw est configuré pour utiliser `rustls` pour les dépendances HTTP/TLS ; `--locked` maintient le graphe transitif déterministe sur les environnements vierges.

Pour sauter le hook lorsque vous avez besoin d'un push rapide pendant le développement :

```bash
git push --no-verify
```

## Collaboration & Docs

Commencez par le hub de documentation pour une carte basée sur les tùches :

- Hub de documentation : [`docs/README.md`](docs/README.md)
- Table des matiÚres unifiée docs : [`docs/SUMMARY.md`](docs/SUMMARY.md)
- Référence des commandes : [`docs/commands-reference.md`](docs/commands-reference.md)
- Référence de configuration : [`docs/config-reference.md`](docs/config-reference.md)
- Référence des fournisseurs : [`docs/providers-reference.md`](docs/providers-reference.md)
- Référence des canaux : [`docs/channels-reference.md`](docs/channels-reference.md)
- Runbook des opérations : [`docs/operations-runbook.md`](docs/operations-runbook.md)
- Dépannage : [`docs/troubleshooting.md`](docs/troubleshooting.md)
- Inventaire/classification docs : [`docs/docs-inventory.md`](docs/docs-inventory.md)
- Instantané triage PR/Issue (au 18 février 2026) : [`docs/project-triage-snapshot-2026-02-18.md`](docs/project-triage-snapshot-2026-02-18.md)

Références de collaboration principales :

- Hub de documentation : [docs/README.md](docs/README.md)
- ModĂšle de documentation : [docs/doc-template.md](docs/doc-template.md)
- Checklist de modification de documentation : [docs/README.md#4-documentation-change-checklist](docs/README.md#4-documentation-change-checklist)
- Référence de configuration des canaux : [docs/channels-reference.md](docs/channels-reference.md)
- Opérations de salles chiffrées Matrix : [docs/matrix-e2ee-guide.md](docs/matrix-e2ee-guide.md)
- Guide de contribution : [CONTRIBUTING.md](CONTRIBUTING.md)
- Politique de workflow PR : [docs/pr-workflow.md](docs/pr-workflow.md)
- Playbook du relecteur (triage + revue approfondie) : [docs/reviewer-playbook.md](docs/reviewer-playbook.md)
- Carte de propriété et triage CI : [docs/ci-map.md](docs/ci-map.md)
- Politique de divulgation de sécurité : [SECURITY.md](SECURITY.md)

Pour le déploiement et les opérations runtime :

- Guide de déploiement réseau : [docs/network-deployment.md](docs/network-deployment.md)
- Playbook d'agent proxy : [docs/proxy-agent-playbook.md](docs/proxy-agent-playbook.md)

## Soutenir ZeroClaw

Si ZeroClaw aide votre travail et que vous souhaitez soutenir le développement continu, vous pouvez faire un don ici :

Offrez-moi un café

### 🙏 Remerciements SpĂ©ciaux

Un remerciement sincÚre aux communautés et institutions qui inspirent et alimentent ce travail open-source :

- **Harvard University** — pour favoriser la curiositĂ© intellectuelle et repousser les limites du possible.
- **MIT** — pour dĂ©fendre la connaissance ouverte, l'open source, et la conviction que la technologie devrait ĂȘtre accessible Ă  tous.
- **Sundai Club** — pour la communautĂ©, l'Ă©nergie, et la volontĂ© incessante de construire des choses qui comptent.
- **Le Monde & Au-DelĂ ** 🌍✹ — Ă  chaque contributeur, rĂȘveur, et constructeur lĂ -bas qui fait de l'open source une force pour le bien. C'est pour vous.

Nous construisons en open source parce que les meilleures idĂ©es viennent de partout. Si vous lisez ceci, vous en faites partie. Bienvenue. đŸŠ€â€ïž

## ⚠ DĂ©pĂŽt Officiel & Avertissement d'Usurpation d'IdentitĂ©

**Ceci est le seul dépÎt officiel ZeroClaw :**

>

Tout autre dĂ©pĂŽt, organisation, domaine ou package prĂ©tendant ĂȘtre "ZeroClaw" ou impliquant une affiliation avec ZeroClaw Labs est **non autorisĂ© et non affiliĂ© Ă  ce projet**. Les forks non autorisĂ©s connus seront listĂ©s dans [TRADEMARK.md](TRADEMARK.md).

Si vous rencontrez une usurpation d'identité ou une utilisation abusive de marque, veuillez [ouvrir une issue](https://github.com/zeroclaw-labs/zeroclaw/issues).

---

## Licence

ZeroClaw est sous double licence pour une ouverture maximale et la protection des contributeurs :

| Licence | Cas d'utilisation |
| ---------------------------- | ------------------------------------------------------------ |
| [MIT](LICENSE) | Open-source, recherche, académique, usage personnel |
| [Apache 2.0](LICENSE-APACHE) | Protection de brevet, institutionnel, déploiement commercial |

Vous pouvez choisir l'une ou l'autre licence. **Les contributeurs accordent automatiquement des droits sous les deux** — voir [CLA.md](CLA.md) pour l'accord de contributeur complet.

### Marque

Le nom **ZeroClaw** et le logo sont des marques déposées de ZeroClaw Labs. Cette licence n'accorde pas la permission de les utiliser pour impliquer une approbation ou une affiliation. Voir [TRADEMARK.md](TRADEMARK.md) pour les utilisations permises et interdites.

### Protections des Contributeurs

- Vous **conservez les droits d'auteur** de vos contributions
- **Concession de brevet** (Apache 2.0) vous protÚge contre les réclamations de brevet par d'autres contributeurs
- Vos contributions sont **attribuées de maniÚre permanente** dans l'historique des commits et [NOTICE](NOTICE)
- Aucun droit de marque n'est transféré en contribuant

## Contribuer

Voir [CONTRIBUTING.md](CONTRIBUTING.md) et [CLA.md](CLA.md). Implémentez un trait, soumettez une PR :

- Guide de workflow CI : [docs/ci-map.md](docs/ci-map.md)
- Nouveau `Provider` → `src/providers/`
- Nouveau `Channel` → `src/channels/`
- Nouveau `Observer` → `src/observability/`
- Nouveau `Tool` → `src/tools/`
- Nouvelle `Memory` → `src/memory/`
- Nouveau `Tunnel` → `src/tunnel/`
- Nouvelle `Skill` → `~/.zeroclaw/workspace/skills//`

---

**ZeroClaw** — ZĂ©ro surcharge. ZĂ©ro compromis. DĂ©ployez n'importe oĂč. Échangez n'importe quoi. 🩀

## Historique des Étoiles






Graphique Historique des Étoiles