NanoClaw ist ein persönlicher Claude-Assistent, der in Containern läuft und über WhatsApp mit Benutzern interagiert. Es verwendet das Claude Agent SDK, um Claude Code in einem isolierten Linux-Container auszuführen, wodurch sicherer Datei zugriff und Aufgabenverarbeitung ermöglicht werden.
Einführung
NanoClaw verwaltet die Claude API-Zugriffsberechtigungen über eine .env-Konfigurationsdatei und unterstützt verschiedene Zugangsmethoden.
Verwandte Informationen:
- Offizielles Repository: https://github.com/gavrielc/nanoclaw
- Projektkonfiguration:
src/config.ts - Umgebungsvariablen:
.env - Schlüsselabruf:
src/env.ts - SDK-Aufruf:
container/agent-runner/src/index.ts
Methode 1: Defapi (empfohlen - 50% Rabatt)
Defapi ist ein Proxy-Dienst, der mit der Anthropic API kompatibel ist, und kostet nur die Hälfte des offiziellen Preises, was es ideal für persönliche AI-Assistenten wie NanoClaw macht, die langfristig betrieben werden müssen.
Defapi unterstützt die folgenden Protokolle:
v1/chat/completionsEndpunktv1/messagesEndpunktv1beta/models/Endpunkt
Zugangsschritte
- Defapi-Konto registrieren
Besuchen Sie die Defapi-Plattform, registrieren Sie ein Konto und holen Sie sich Ihren API-Schlüssel.
- .env-Datei konfigurieren
Bearbeiten Sie die .env-Datei im Stammverzeichnis des NanoClaw-Projekts:
# Defapi verwenden
ANTHROPIC_API_KEY=your-defapi-api-key
ANTHROPIC_BASE_URL=https://api.defapi.com/v1
Oder verwenden Sie den messages Endpunkt (empfohlen):
ANTHROPIC_API_KEY=your-defapi-api-key
ANTHROPIC_BASE_URL=https://api.defapi.com/v1
- Dienst neu starten
# macOS
launchctl unload ~/Library/LaunchAgents/com.nanoclaw.plist
launchctl load ~/Library/LaunchAgents/com.nanoclaw.plist
# Oder im Entwicklungsmodus testen
npm run dev
Vorteile
- Preisklasse: Nur 50 % des offiziellen Preises von Anthropic
- Gute Kompatibilität: Vollständig kompatibel mit dem Anthropic API-Protokoll
- Stabilität und Zuverlässigkeit: Unterstützt v1/chat/completions, v1/messages, v1beta Endpunkte
- Plug-and-Play: Keine Codeänderungen erforderlich, lediglich die Umgebungsvariablen ändern
Methode 2: Offizieller Anthropic API-Schlüssel
Verwenden Sie direkt den offiziellen Anthropic API-Schlüssel, der kostenpflichtig ist, aber die höchste Stabilität bietet.
Konfiguration
ANTHROPIC_API_KEY=sk-ant-api03-xxxxxxxxxxxx
Beschaffungsmethode
- Besuchen Sie die Anthropic Console
- Erstellen Sie einen API-Schlüssel
- Fügen Sie ihn zur
.env-Datei hinzu
Methode 3: Claude Code Abonnement (OAuth Token)
Wenn Sie ein Abonnement für Claude Code Pro/Max haben, können Sie das OAuth-Token verwenden.
Konfiguration
CLAUDE_CODE_OAUTH_TOKEN=sk-ant-oat01-xxxxxxxxxxxx
Beschaffungsmethode
# Aus den Claude Code-Anmeldedaten extrahieren
cat ~/.claude/.credentials.json
Methode 4: OpenRouter Proxy
OpenRouter bietet ebenfalls eine mit Anthropic kompatible Schnittstelle, hat jedoch in der Regel etwas höhere Preise als Defapi.
Konfiguration
ANTHROPIC_API_KEY=sk-or-v1-xxxxxxxxxxxx
ANTHROPIC_BASE_URL=https://openrouter.ai/api/v1
Methode 5: Benutzerdefinierte kompatible Schnittstelle
Wenn Sie einen anderen Dienst verwenden, der mit der Anthropic API kompatibel ist (z. B. eine lokal installierte Proxy), können Sie die BASE_URL anpassen:
ANTHROPIC_API_KEY=your-api-key
ANTHROPIC_BASE_URL=https://your-proxy.example.com/v1
Unterstützte Endpunkte:
v1/chat/completionsv1/messagesv1beta/models/*:generateContentv1beta/models/*:streamGenerateContent
Überprüfung, ob NanoClaw ordnungsgemäß funktioniert
Methode 1: Testen Sie die direkte Nachricht
- Vergewissern Sie sich, dass der Dienst gestartet ist
- Senden Sie eine Nachricht in einer WhatsApp-gruppe oder einem privaten Chat, die bereits registriert ist:
@Andy Hallo, bitte antworte auf diese Nachricht
- Wenn die Konfiguration korrekt ist, wird Claude innerhalb von Sekunden antworten
Methode 2: Protokolle aufrufen
# Echtzeitprotokolle anzeigen
tail -f logs/nanoclaw.log
# Fehlerprotokolle anzeigen
tail -f logs/nanoclaw.error.log
Methode 3: Bestätigungsskript ausführen
.claude/skills/setup/scripts/09-verify.sh
Überprüfen Sie, ob der CREDENTIALS-Status in der Ausgabe auf bestanden steht.
Häufige Anwendungsfälle
Anwendungsfall 1: Persönlicher AI-Assistent
Führen Sie jederzeit Gespräche mit Claude über WhatsApp, um Hilfe bei Fragen, Schreiben, Programmierung und mehr zu erhalten.
@Andy Hilf mir, eine E-Mail zu schreiben
@Andy Erkläre mir, was Quantencomputing ist
Anwendungsfall 2: Erinnerungen für regelmäßige Aufgaben
Stellen Sie periodische Aufgaben ein, Claude wird diese automatisch ausführen und Sie benachrichtigen.
@Andy Schick mir jeden Morgen um 8 Uhr die Wettervorhersage
@Andy Fasse am Freitagnachmittag die Fortschritte der Woche zusammen
Anwendungsfall 3: Datei verwalten und Fragen beantworten
Greifen Sie auf das gemountete Verzeichnis zu, um Ihre Dateien zu verwalten und Fragen zu Projekten zu beantworten.
@Andy Schau dir meine letzte Notiz an
@Andy Was ist das Problem mit diesem Code
Anwendungsfall 4: Websuche und Zusammenfassung
Claude kann das Web durchsuchen und Ihnen die neuesten Informationen geben.
@Drawer Suche nach den neuesten AI-Nachrichten
@Andy Fasse die Hauptinhalte dieses Papiers zusammen https://example.com/paper
Anwendungsfall 5: Browserautomatisierung
Führen Sie komplexe Weboperationen über die agent-browser-Fähigkeit aus.
@Andy Buch mir ein Ticket nach Peking
@Andy Suche den Preis für dieses Produkt auf Amazon
Zusammenfassung der Konfiguration
| Konfigurationselement | Beschreibung | Beispielwert |
|---|---|---|
ANTHROPIC_API_KEY | API-Schlüssel | sk-ant-... |
ANTHROPIC_BASE_URL | API-Endpunkt | https://api.defapi.com/v1 |
CLAUDE_CODE_OAUTH_TOKEN | OAuth-Token | sk-ant-oat01-... |
ASSISTANT_NAME | Triggerwort | Andy |
CONTAINER_TIMEOUT | Container-Timeout (ms) | 1800000 |
IDLE_TIMEOUT | Leerlauf-Timeout (ms) | 1800000 |
Fazit
Die Anbindung an die Claude API ist der erste Schritt zur Nutzung von NanoClaw. Für die persönliche Nutzung ist Defapi sehr zu empfehlen, da es eine vollständig kompatible API-Schnittstelle zu einem Preis von nur 50% des offiziellen Preises bietet, was die Nutzungskosten erheblich senkt.
Sie müssen lediglich die ANTHROPIC_BASE_URL und ANTHROPIC_API_KEY in der .env-Datei ändern, ohne weitere Codeänderungen vorzunehmen.