Files
2026-07-13 13:12:33 +08:00

34 KiB
Raw Permalink Blame History

OpenSquilla — Token-effizienter AI Agent

OpenSquilla logo

Gleiches Budget lass deinen Agent mehr und Besseres leisten.
Mikrokernel-AI-Agent intelligentes Routing, persistentes Gedächtnis, sichere Sandbox, integrierte Suche und lokale Embeddings.

CI Website GitHub release Python 3.12+ Apache 2.0 License

English · 中文 · 日本語 · Français · Deutsch · Español

Dieses Dokument wurde aus dem englischen README.md übersetzt; bei Abweichungen ist die englische Fassung maßgeblich.


Neuigkeiten

  • 📢 2026-07-03 — Unser technischer Bericht Agentic Routing: The Harness-Native Data Flywheel (Vorschau) ist erschienen und wurde zusammen mit OpenSquilla 0.5.0 Preview 1 veröffentlicht. Er beschreibt, wie der harness-native Router alltäglichen Agent-Traffic in ein sich selbst verbesserndes Daten-Schwungrad verwandelt.

Überblick

OpenSquilla ist ein Token-effizienter Mikrokernel-AI-Agent. Ein lokaler Modell-Router schickt jeden Turn an das günstigste Modell, das ihn bewältigen kann; dauerhaftes Gedächtnis, eine geschichtete Sandbox, integrierte Websuche und Embeddings auf dem Gerät ergänzen eine einzige gemeinsame Turn-Schleife.

Jeder Einstiegspunkt — Web UI, CLI und Chat-Kanäle — läuft durch dieselbe Schleife, sodass sich Tool-Dispatch, Wiederholungsversuche und Entscheidungs-Logging überall identisch verhalten. Eine modulare Provider-Schicht spricht mit TokenRhythm, OpenRouter, OpenAI, Anthropic, Ollama, DeepSeek, Gemini, Qwen/DashScope und über 20 weiteren LLM-Providern — ohne Änderung an deinem Code oder deinem Konfigurationsschema.

OpenSquilla 0.5.0 Preview 3 ist die aktuelle Preview-Version.

Für aufgabenorientierte Produktdokumentation beginnst du am besten mit dem OpenSquilla-Produktleitfaden oder dem Dokumentationsindex.


Installation

OpenSquilla läuft unter Windows, macOS und Linux. Wähle den Weg, der zu deinem Einsatzzweck passt.

Desktop-Installationsprogramme und die schnelle Terminal-Installation liefern dir ein vorgefertigtes Release — kein Git erforderlich. Die beiden anderen — Aus Quellcode installieren und Aus Quellcode entwickeln — bauen aus einem Git-Checkout (git clone

  • Git LFS).

Release-Installationsbefehle verwenden veröffentlichte GitHub-Release-Assets. Python-Wheel-Installationen verwenden versionsbehaftete Wheel-Dateinamen, weil die Installationsprogramme die im Wheel-Dateinamen eingebettete Version prüfen.

Für den Desktop-Einsatz von 0.5.0 Preview 3 bevorzugst du die gepackten Desktop-Installationsprogramme aus dem GitHub-Release: OpenSquilla-0.5.0-rc3-mac-arm64.dmg unter macOS und OpenSquilla-0.5.0-rc3-win-x64.exe unter Windows.

Weg Zielgruppe Wann verwenden
Desktop-Installationsprogramme (empfohlen für Desktop) macOS- und Windows-Nutzer Gepackte Desktop-App
Schnelle Terminal-Installation (empfohlen) Endnutzer auf jedem Betriebssystem Release-Wheel aus dem Terminal
Aus Quellcode installieren Nutzer, die main verfolgen Aus einem Checkout ausführen, nicht bearbeiten
Aus Quellcode entwickeln Mitwirkende Quellcode bearbeiten, testen oder debuggen

Voraussetzungen

Anforderung Schnelle Terminal-Installation Aus Quellcode installieren Aus Quellcode entwickeln
Python 3.12+ über uv über uv oder System über uv
Git + Git LFS erforderlich erforderlich
uv wird bei Bedarf installiert empfohlen erforderlich

Das Standardprofil recommended installiert SquillaRouter — OpenSquillas Modell-Router auf dem Gerät — und seine Modell-Assets; OPENSQUILLA_INSTALL_PROFILE=core lässt diese Abhängigkeiten weg. Das separate Onboarding-Flag --router disabled behält die installierten Abhängigkeiten bei, schaltet den Router aber zur Laufzeit ab.

Unter Windows benötigt die mit SquillaRouter gebündelte ONNX-Runtime zusätzlich die Visual-C++-Runtime. Das PowerShell-Installationsprogramm für die Quellcode-Installation installiert sie automatisch über winget; der Weg über die schnelle Terminal-Installation (uv tool install) tut das nicht — falls beim Start ein DLL load failed-Fehler protokolliert wird, installiere sie manuell (siehe Fehlerbehebung). OpenSquilla läuft mit direktem Single-Model-Routing weiter, bis sie installiert ist.

Bei Terminal-Installationen unter macOS benötigt die LightGBM-Runtime von SquillaRouter möglicherweise zusätzlich die OpenMP-Systembibliothek. Die Desktop-App bringt die benötigte Runtime mit, aber die schnelle Terminal-Installation installiert keine Homebrew-/Systembibliotheken. Falls beim Start Library not loaded: @rpath/libomp.dylib protokolliert wird, führe brew install libomp aus und starte dann das Gateway neu. OpenSquilla läuft mit direktem Single-Model-Routing weiter, bis sie installiert ist.

Installationslinks: Git · Git LFS · uv.

Desktop-Installationsprogramme

Die 0.5.0-Preview-3-Desktop-Installationsprogramme bündeln die Vue-Steuerkonsole und die Gateway-Runtime in einer Electron-Hülle.

Beende vor dem Upgrade jede laufende OpenSquilla-Desktop-App. Vorhandene ~/.opensquilla/config.toml und Sitzungsdaten werden weiterverwendet.

Führe beim Upgrade der Windows-Desktop-App von RC3 auf RC4 oder neuer das neue Installationsprogramm direkt über der vorhandenen Installation aus. Deinstalliere RC3 nicht zuerst: Das RC3-Deinstallationsprogramm kann Desktop-Benutzerdaten löschen. Sichere vor dem Upgrade %APPDATA%\OpenSquilla. Installationsprogramme ab RC4 behalten Profildaten bei einer normalen Deinstallation bei.

Schnelle Terminal-Installation

Der empfohlene Weg unter Windows, macOS und Linux. uv installiert OpenSquilla in eine eigene, isolierte Umgebung und verwaltet sein eigenes Python — kein System-Python erforderlich. Dieser Weg installiert nur veröffentlichte Releases; für main, Entwicklungs-Branches oder lokale Checkouts nutze Aus Quellcode installieren.

1. uv installieren — überspringen, falls uv --version bereits funktioniert.

Linux / macOS:

curl -LsSf https://astral.sh/uv/install.sh | sh
. "$HOME/.local/bin/env"

Windows PowerShell:

powershell -c "irm https://astral.sh/uv/install.ps1 | iex"
$env:Path = "$env:USERPROFILE\.local\bin;" + $env:Path

2. OpenSquilla installieren — derselbe Befehl auf jeder Plattform.

uv tool install --python 3.12 "opensquilla[recommended] @ https://github.com/opensquilla/opensquilla/releases/download/v0.5.0rc3/opensquilla-0.5.0rc3-py3-none-any.whl"

Damit wird das OpenSquilla-Wheel von der Release-URL installiert; anschließend lässt uv die von den gewählten Extras deklarierten Abhängigkeiten herunterladen. Das Standard-Extra recommended enthält SquillaRouter-Runtime-Abhängigkeiten wie ONNX Runtime, LightGBM, NumPy und tokenizers, sodass eine Erstinstallation Netzwerkzugriff benötigt, sofern diese Wheels nicht bereits zwischengespeichert sind. uv installiert keine nativen Systemruntimes wie macOS libomp oder das Windows Visual C++ Redistributable; siehe Fehlerbehebung, falls die Router-Runtime einen Ladefehler einer nativen Bibliothek meldet.

3. Konfigurieren und ausführen.

opensquilla onboard
opensquilla gateway run

Note

Wird opensquilla direkt nach einer frischen uv-Installation nicht gefunden, öffne ein neues Terminal oder führe die PATH-Zeile aus Schritt 1 erneut aus.

Für eine vollständig festgelegte Installation verwende die versionsbehaftete Wheel-URL: https://github.com/opensquilla/opensquilla/releases/download/v0.5.0rc3/opensquilla-0.5.0rc3-py3-none-any.whl.

Aus Quellcode installieren

Nutze diesen Weg, um OpenSquilla aus einem Checkout auszuführen, ohne ihn zu bearbeiten. Der Klon dient dem Installationsprogramm nur als Paketquelle; verwende nach der Installation den opensquilla-Befehl — führe nicht uv run aus. Wähle stattdessen Aus Quellcode entwickeln, wenn du den Code ändern möchtest.

  1. Mit LFS-Assets klonen

    git lfs install
    git clone https://github.com/opensquilla/opensquilla.git
    cd opensquilla
    git lfs pull --include="src/opensquilla/squilla_router/models/**"
    
  2. Installationsprogramm ausführen

    macOS / Linux

    bash scripts/install_source.sh
    

    Windows PowerShell

    powershell -ExecutionPolicy Bypass -File ./scripts/install_source.ps1
    

    Das Skript installiert .[recommended] (SquillaRouter + Gedächtnis + lokale Modelle) über uv tool install in eine dedizierte Benutzerumgebung und fällt auf python -m pip install --user zurück, wenn uv nicht verfügbar ist. Öffne ein neues Terminal, falls opensquilla nach der Installation nicht im PATH liegt.

  3. (optional) Fortgeschrittene Extras installieren. Die meisten Kanäle — Feishu, Telegram, DingTalk, QQ, WeCom, Slack und Discord — funktionieren mit der Basisinstallation. Die optionalen Extras sind:

    • matrix — Matrix-Kanal (zieht matrix-nio mit ein)
    • matrix-e2e — Matrix-Kanal mit Ende-zu-Ende-Verschlüsselung (erfordert libolm)
    • document-extras — PDF-Erzeugung über WeasyPrint
    OPENSQUILLA_INSTALL_EXTRAS=matrix bash scripts/install_source.sh        # macOS / Linux
    
    powershell -ExecutionPolicy Bypass -File ./scripts/install_source.ps1 -Extras matrix   # Windows
    
  4. Konfigurieren und ausführen — siehe Konfiguration.

Aus Quellcode installieren — Terminal-Voraussetzungen und Installationsoptionen

Voraussetzungen (Git, Git LFS, uv) aus einem Terminal installieren

Windows PowerShell:

winget install --id Git.Git -e
winget install --id GitHub.GitLFS -e
powershell -ExecutionPolicy Bypass -c "irm https://astral.sh/uv/install.ps1 | iex"
git lfs install

macOS (Homebrew):

brew install git git-lfs uv
git lfs install

Debian / Ubuntu:

sudo apt update && sudo apt install -y git git-lfs
curl -LsSf https://astral.sh/uv/install.sh | sh
git lfs install

Unter Fedora verwende sudo dnf install -y git git-lfs; unter Arch sudo pacman -S --needed git git-lfs; installiere uv anschließend mit dem obigen curl-Befehl. PATH-Änderungen dieser Installationsprogramme gelten für neue Terminal-Sitzungen.

Umgebungsvariablen des Installationsprogramms und PATH-Prüfungen

OPENSQUILLA_INSTALL_PROFILE=core   bash scripts/install_source.sh   # minimale Runtime, kein SquillaRouter
OPENSQUILLA_INSTALL_DRY_RUN=1      bash scripts/install_source.sh   # nur den Plan ausgeben

Prüfe mit command -v opensquilla (macOS/Linux) oder where.exe opensquilla (Windows), welches opensquilla deine Shell tatsächlich ausführt. Liegt es nicht im PATH, führe uv tool update-shell aus. Starte das Gateway nach einer Neuinstallation aus einem lokalen Checkout neu, damit es das aktualisierte Paket lädt.

Aus Quellcode entwickeln

Nutze diesen Weg, wenn du am Quellcode von OpenSquilla arbeitest: Änderungen vornehmen, Tests ausführen oder Verhalten gegen diesen Checkout debuggen. Es ist nicht der normale Installationsweg. Anders als Aus Quellcode installieren erfordert dieser Weg uv: uv sync legt ein repository-lokales .venv an, und uv run führt Befehle gegen die Dateien in diesem Checkout aus.

uv sync --extra recommended --extra dev
uv run opensquilla --help

Das Extra recommended enthält SquillaRouter auch für die Entwicklung; das Extra dev installiert die Test-, Lint- und Typecheck-Werkzeuge. Installiere zusätzliche Extras in dieselbe Umgebung, die du ausführst:

uv sync --extra recommended --extra dev --extra matrix
uv run opensquilla channels status matrix --json

Setze in diesem Modus jedem opensquilla-Befehl in der Konfiguration ein uv run voran. Debugge einen Entwicklungs-Checkout nicht über einen benutzerlokalen opensquilla-Befehl — dieser Befehl läuft in einer anderen Python-Umgebung.

Deinstallieren

Entferne OpenSquilla mit opensquilla uninstall. Standardmäßig bleiben deine Daten erhalten und nur das Programm wird entfernt:

opensquilla uninstall --dry-run   # vorab anzeigen, was entfernt und behalten würde
opensquilla uninstall             # Programm entfernen, Daten behalten

Um auch Daten zu löschen, entscheide dich ausdrücklich dafür:

opensquilla uninstall --purge-state    # Sitzungen, Logs, Cache, Scheduler, Gedächtnis
opensquilla uninstall --purge-config   # config.toml und Geheimnisse (.env)
opensquilla uninstall --purge-all      # alles (verlangt eine Eingabe zur Bestätigung)

Das laufende Gateway wird zuerst geleert und gestoppt, das Löschen bleibt innerhalb des OpenSquilla-Stammverzeichnisses, und für Docker-/Desktop-Installationen werden stattdessen geführte Entfernungsschritte angeboten. Die vollständige Referenz findest du in docs/cli.md.


Installationsdatenschutz

OpenSquilla verwendet anonyme Installationstelemetrie, um Installationszahlen, Versionsverbreitung und Laufzeitkompatibilität abzuschätzen. Die Daten werden beim ersten Gateway-Start und einmal pro OpenSquilla-Version gesendet. Uploads verwenden ein kurzes Timeout und blockieren den Start nie.

Was gesendet wird:

  • Schemaversion
  • lokal erzeugter, stabiler install_id-Digest
  • OpenSquilla-Version
  • Ereignistyp (install oder version_seen)
  • Installationsmethode (pip, source, docker, desktop oder unknown)
  • Betriebssystem, Betriebssystemversion, CPU-Architektur sowie Python-Haupt-/Nebenversion
  • Zeitstempel des ersten Auftretens und des Versands
  • CI-/Testumgebungs-Marker (ci_environment)

Die install_id ist ein lokaler, einseitiger SHA-256-Digest, abgeleitet aus nutzbaren MAC-Adressen, dann aus lokalen IP-Adressen, wenn keine MAC verfügbar ist, mit einem zufälligen, dauerhaft gespeicherten Fallback. Rohe MAC-/IP-Werte werden nicht hochgeladen.

Was nicht gesendet wird: Benutzernamen, Hostnamen, Pfade, API-Keys, Provider-Konfiguration, Chat-/Sitzungs-/Gedächtnis-/Agent-Inhalte, Dateinamen oder Dateiinhalte. Die Quell-IP kann für HTTP-Server auf der Transportschicht sichtbar sein, ist aber nicht Teil der Nutzlast.

Zum Deaktivieren:

OPENSQUILLA_TELEMETRY_DISABLED=true

Fortgeschrittene Deployments können einen eigenen Endpunkt verwenden:

OPENSQUILLA_TELEMETRY_ENDPOINT=https://example.com/v1/install

Konfiguration

Ersteinrichtung

opensquilla onboard ist der interaktive Assistent für die Ersteinrichtung. Er schreibt die aktive Konfigurationsdatei und behält Provider-Geheimnisse in Umgebungsvariablen, wenn du --api-key-env angibst. Der Router ist standardmäßig auf recommended gesetzt (SquillaRouter auf unterstützten Providern); gib --router disabled an für direktes Single-Model-Routing.

opensquilla onboard                # vollständiger interaktiver Assistent
opensquilla onboard --if-needed    # idempotent: sicher für Skripte und Neuinstallationen
opensquilla onboard --minimal      # nur Provider; Kanäle und Suche überspringen
opensquilla onboard status         # jeden Einrichtungsabschnitt prüfen, ohne zu schreiben

Verwende in SSH, CI oder jeder Umgebung ohne TTY die nicht-interaktive Form — behalte das Geheimnis in der Umgebung und übergib seinen Namen, nicht seinen Wert:

Linux / macOS

export OPENROUTER_API_KEY="sk-..."
opensquilla onboard --provider openrouter --api-key-env OPENROUTER_API_KEY

Windows PowerShell

$env:OPENROUTER_API_KEY="sk-..."
opensquilla onboard --provider openrouter --api-key-env OPENROUTER_API_KEY

OpenRouter ist nur ein Beispiel — ersetze es durch einen beliebigen unterstützten Provider und dessen API-Key-Variable.

Konfiguriere später einen einzelnen Abschnitt neu, ohne den gesamten Assistenten zu wiederholen (diese Beispiele setzen voraus, dass der betreffende API-Key bereits in der Umgebung vorhanden ist):

opensquilla configure provider --provider openai --model gpt-4o --api-key-env OPENAI_API_KEY
opensquilla configure router --router recommended
opensquilla configure search   --search-provider duckduckgo
opensquilla configure search   --search-provider exa --api-key-env EXA_API_KEY
opensquilla configure channels

Abschnitte: provider, router, channels, search, image-generation, memory-embedding. Die Web UI stellt denselben Katalog und dasselbe Statusmodell unter /control/setup bereit: Provider und Router sind der schnelle Weg, während Channels, Search, Image generation und Memory embedding im Capability Center liegen und später konfiguriert werden können. Leere Kanäle gelten als bewusstes Auslassen, nicht als fehlgeschlagene Einrichtung.

Ladereihenfolge der Konfiguration: OPENSQUILLA_GATEWAY_CONFIG_PATH./opensquilla.toml~/.opensquilla/config.toml → eingebaute Standardwerte. Umgebungswerte einzelner Geheimnisse haben stets Vorrang vor Dateiwerten.

Von OpenClaw oder Hermes Agent migrieren

Falls du bereits Zustandsdaten unter ~/.openclaw oder ~/.hermes hast, führe zuerst einen Probelauf aus, um den Migrationsbericht zu prüfen, und wende ihn dann ausdrücklich an:

opensquilla migrate openclaw --json
opensquilla migrate openclaw --apply

opensquilla migrate hermes --json
opensquilla migrate hermes --apply

Verwende opensquilla migrate --source openclaw,hermes --apply, um beide Standard-Stammverzeichnisse zu importieren. Füge --migrate-secrets erst hinzu, nachdem du den Probelaufbericht geprüft hast. Für benutzerdefinierte Pfade und Konfliktbehandlung siehe MIGRATION.md.

Ausführen

opensquilla gateway run                # Vordergrund, 127.0.0.1:18791
opensquilla gateway start --json       # Hintergrund + Warten auf Health
opensquilla chat                       # interaktive REPL
opensquilla agent -m "dein Prompt"     # einmalig, automatisierungsfreundlich

Öffne die Web UI unter http://127.0.0.1:18791/control/. Die Ansicht Health zeigt, ob OpenSquilla bereit ist, was nicht bereit ist und die nächsten Schritte zur Wiederherstellung. Führe in der CLI aus:

opensquilla doctor
opensquilla doctor --json
opensquilla doctor --config ./opensquilla.toml --json

/health und /healthz sind leichtgewichtige Liveness-Endpunkte für Prozessprüfungen. opensquilla doctor und die Health-Ansicht der Web UI sind die Readiness-Oberflächen für Provider-Konfiguration, Gedächtnis, Logs, Suche, Kanäle, Sandbox-Haltung, Router, Bildgenerierung und Wiederherstellungshinweise. Drücke Ctrl+C, um ein Vordergrund-Gateway zu stoppen.

Weitere Befehlsgruppen sind unter anderem sessions, skills, memory, migrate, cron, channels, providers, models und cost. Führe opensquilla --help oder opensquilla <gruppe> --help für Details aus.

Fortgeschrittene Konfiguration — einen Kanal verifizieren, Bindung ans öffentliche Netz, Docker

Einen Messaging-Kanal verbinden und verifizieren

Das Speichern eines Kanals ist eine Konfigurationsänderung, kein Beleg für die Konnektivität zur Laufzeit. Starte das Gateway nach Kanal-Änderungen neu und verifiziere dann den aktiven Kanal:

opensquilla gateway restart
opensquilla channels status <name> --json

Betrachte einen Kanal nur dann als verbunden, wenn die Status-Nutzlast enabled=true, configured=true und connected=true meldet. Feishu verwendet standardmäßig den Websocket-Modus, Telegram Polling, und Slack kann den Socket Mode nutzen — keiner dieser Modi benötigt eine öffentliche URL. Der Feishu-Webhook-Modus, der Telegram-Webhook-Modus, der Slack-Webhook-Modus und WeCom erfordern eine öffentliche, vom Provider erreichbare URL.

Bindung ans öffentliche Netz

Um die Web UI von einer anderen Maschine zu erreichen, binde das Gateway an alle Schnittstellen und verwende die öffentliche IP des Hosts:

opensquilla gateway run --listen 0.0.0.0 --port 18791

Öffentlicher Zugriff erfordert außerdem, dass die Host-Firewall oder die Cloud-Sicherheitsgruppe eingehendes TCP auf diesem Port erlaubt. Mache das Gateway nicht mit [auth] mode = "none" öffentlich zugänglich — konfiguriere Token-Authentifizierung, bevor du an 0.0.0.0 bindest.

Docker

Vorgebaute Multi-Arch-Images (amd64/arm64) werden mit jedem Release-Tag auf ghcr.io/opensquilla/opensquilla veröffentlicht — docs/docker.md ist der vollständige Container-Leitfaden (Heimserver und NAS, LAN-Zugriff mit Token-Authentifizierung, Upgrades):

OPENSQUILLA_GATEWAY_IMAGE=ghcr.io/opensquilla/opensquilla:latest docker compose up -d

Ohne OPENSQUILLA_GATEWAY_IMAGE führt der Compose-Weg ein opensquilla:local-Image aus, das du selbst baust. Baue es aus einem Quellcode-Checkout mit den per Git LFS geholten Router-Assets (Klon und git lfs pull siehe Aus Quellcode installieren):

docker build -t opensquilla:local .

./start.sh (oder start.ps1 unter Windows) führt dann docker compose up -d aus und folgt den Gateway-Logs. Docker erspart eine Python-Toolchain auf dem Host — nicht den lokalen Image-Build.

Provider-Tiers, Sandbox-Feinabstimmung, Bildgenerierung und Nebenläufigkeitseinstellungen liegen in opensquilla.toml.example.


Neuerungen in 0.4.1

OpenSquilla 0.4.1 ist ein Wartungsrelease für die Desktop- und Control-UI-Linie:

  • Desktop-Zuverlässigkeit die Prüfungen des gepackten Gateways decken nun den Coding-Modus, code-task und den SquillaRouter-Start ab, und das Handling von Desktop-Fenstern/Artefakten ist stabiler.
  • Sechssprachige Client-Unterstützung die Control UI und der Desktop-Client unterstützen Englisch, vereinfachtes Chinesisch, Japanisch, Französisch, Deutsch und Spanisch über First-Paint- und Einstellungsoberflächen hinweg.
  • Coding-Modus und Router-Paketierung Desktop-Builds schlagen schnell fehl, wenn Router-Assets fehlen oder noch Git-LFS-Pointer sind, und verhindern so beeinträchtigte Release-Pakete.
  • Telemetrie und Windows-Feinschliff die Installationstelemetrie überspringt CI- und Testumgebungen, und Windows-Desktop-Assets verwenden das OpenSquilla-Logo.
  • Mainline-Governance gewöhnliche Pull Requests und die Release-Integration sind um main herum ausgerichtet, während Maintainer-Branches für Release-, Hotfix-, Staging-, Integrations- und Sandbox-Arbeit reserviert sind.

Vollständige Hinweise: CHANGELOG.md · docs/releases/0.4.1.md.

Neuerungen in 0.2.1

OpenSquilla 0.2.1 ist ein Wartungsrelease mit Fokus auf den Start von Release-Paketen und die Zuverlässigkeit langlaufender Agents:

  • Windows-Portable-Start der Portable-Launcher erkennt und bootet die vom gebündelten ONNX-Router benötigte Visual-C++-Runtime besser.
  • Langlaufende Agent-Turns tool-intensive WebUI-Sitzungen erholen sich sauberer von überdimensionierten Tool-Ergebnissen, fehlerhaften Tool-Aufrufen, Übergaben bei der Artefaktauslieferung und beeinträchtigten finalen Antworten.
  • Sauberere WebUI-Ausgabe generierte Artefaktmarker werden aus dem normalen Chat-Replay herausgehalten, während ausgelieferte Dateien sichtbar bleiben.
  • Bewertung des Gedächtnisabrufs lokale und OpenAI-kompatible Embedding-Vektoren werden vor der semantischen Suche normalisiert, und starke Stichwort-Treffer bleiben nutzbar, wenn Vektorwerte niedrig sind.

Vollständige Hinweise: CHANGELOG.md · Release-Notizen.

Neuerungen in 0.2.0

Dieses Release erweitert OpenSquilla über Migration, CLI-Chat, Kanäle, Scheduling und langlaufende Tool-Arbeit hinweg:

  • Migrationsweg aus bestehenden Agent-Stammverzeichnissen opensquilla migrate zeigt Importe aus bestehenden OpenClaw-/Hermes-Stammverzeichnissen in der Vorschau und führt sie aus, einschließlich Gedächtnis, Persona-Dateien, Skills, MCP-/Kanal-Konfiguration, Konfliktbehandlung und Migrationsberichten.
  • Nutzbare Chat-CLI opensquilla chat hat eine stabile Terminal-UI, Streaming-Ausgabe, Eingabe-Queue, Slash-Modus-Discovery, Tool-/Status-Leisten und ein deterministischeres Verhalten der Live-Eingabeaufforderung.
  • Oberflächenübergreifende Cron-Automatisierung Cron-Jobs decken nun strukturierte Zeitpläne, zeitzonenbewusste Exact-/Every-/Cron-Läufe, Kanal- oder Webhook-Auslieferung, Fehlerziele, manuelle Läufe und WebUI-/CLI-/RPC-Parität ab.
  • Bessere Feishu- und Discord-Kanäle Kanal-Adapter legen klarere Capability-Metadaten, sichereres DM-/Gruppen-Handling, native Datei- und Artefaktpfade sowie verbessertes Anhang-/Thread-Verhalten offen, während privilegierte Aktionen abgegrenzt bleiben.
  • Robustere langlaufende Turns fehlgeschlagene Turns werden aus dem Provider-Replay herausgehalten, fehlerhafte Tool-Aufrufe werden sicherer behandelt, und freigabepflichtige Wiederholungen warten auf die Entscheidung der Operatoren.
  • Intelligenteres Kontext- und Tool-Budgeting Provider-Budget-Kompaktierung, Bewahrung des Prompt-Caches, begrenzte Tool-Ergebnisse und nebenwirkungsbewusste Nebenläufigkeit machen große, tool-intensive Sitzungen vorhersehbarer.
  • Feinschliff bei Web UI und Release Aktualitätssortierung, Tabellenlayout, mobile Steuerelemente, doppelte Benachrichtigungen, Einrichtungsformulare, Release-URLs und Installationswege wurden für 0.2.0 nachgeschärft.

Vollständige Hinweise: CHANGELOG.md · Release-Notizen.


Hauptfunktionen

Fähigkeit Was sie leistet
Token-effizientes Routing SquillaRouter — ein lokaler LightGBM-+-ONNX-Klassifizierer im Extra recommended — bewertet jeden Turn nach Länge, Sprache, Code, Stichwörtern und semantischen Embeddings und routet ihn dann über vier Tiers (C0C3; die alten Namen T0T3 sind Aliase) zum günstigsten leistungsfähigen Modell. Die Klassifizierung läuft auf dem Gerät; dein Prompt verlässt die Maschine für diese Entscheidung nie.
Adaptives Reasoning und Prompts OpenSquilla fordert erweitertes Reasoning nur für Turns an, die der Router als komplex bewertet, und der System-Prompt skaliert mit der Aufgabenkomplexität — schlank für triviale Turns, vollständige Anweisungen für komplexe.
Über 20 LLM-Provider Die Provider-Registry zielt auf über 20 LLM-Backends — TokenRhythm, OpenRouter, OpenAI, Anthropic, Ollama, DeepSeek, Gemini, DashScope/Qwen, Moonshot, Mistral, Groq, Zhipu, SiliconFlow, vLLM, LM Studio und mehr — mit Primär-plus-Fallback-Auswahl; das Erst-Onboarding legt die verifizierte Teilmenge offen.
Bedarfsgesteuerte Skills und MCP 15 gebündelte Skills (Coding, GitHub, Cron, pptx/docx/xlsx/pdf, Zusammenfassung, tmux, Wetter und mehr) werden nur geladen, wenn die Aufgabe sie braucht. OpenSquilla ist ein MCP-Client und kann auch als MCP-Server laufen — opensquilla mcp-server run benötigt das Extra mcp (installiere opensquilla[recommended,mcp]). Skills lassen sich über die CLI erstellen, installieren und veröffentlichen.
Dauerhaftes lokales Gedächtnis Eine kuratierte MEMORY.md plus datierte Markdown-Notizen, durchsucht mit SQLite-Volltext-Stichwortsuche und sqlite-vec-Semantikabruf. Embeddings laufen über gebündeltes ONNX auf dem Gerät oder wechseln zu OpenAI/Ollama. Optionaler exponentieller Decay und eine aktivierbare „Dream“-Konsolidierung sind verfügbar.
Geschichtete Sicherheits-Sandbox Drei Richtlinien-Tiers (Standard / Strict / Locked) auf einer Berechtigungsmatrix. Bubblewrap isoliert die Codeausführung unter Linux; das macOS-Seatbelt-Backend rendert derzeit nur Profile (Ausführung ausstehend), und unter Windows gibt es noch kein Sandbox-Backend. Ein Denial-Ledger pausiert autonome Läufe nach wiederholten Ablehnungen automatisch, abgelehnte Ausgaben werden verworfen, und Skill-Metadaten sowie Tool-Ergebnisse werden gegen Prompt-Injection XML-escaped.
Integrierte Tools Datei lesen/schreiben/bearbeiten, Shell- und Hintergrundprozesse, Git, Websuche (DuckDuckGo, Bocha, Brave, Tavily oder Exa) und Fetch hinter einem SSRF-Schutz, Tabellen-/PPTX-/PDF-Erstellung, Bildgenerierung und Text-to-Speech.
Einheitliches Gateway Ein Starlette-ASGI-Server unter 127.0.0.1:18791 mit WebSocket-RPC und einer eingebetteten Steuerkonsole (/control/). Web UI, CLI und Kanäle für Terminal, WebSocket, Slack, Telegram, Discord, Feishu, DingTalk, WeCom, Matrix und QQ teilen sich alle einen TurnRunner.
Dauerhafte Sitzungen, Subagents und Scheduling SQLite-gestützte Speicherung von Sitzungen, Transkripten und Replays mit Arbeitsbereichen pro Agent. Agents starten tiefenbegrenzte Subagents, und eine SchedulerEngine mit einem in den Code integrierten Cron-Parser führt wiederkehrende Jobs über opensquilla cron aus.
Operator-Steuerung Human-in-the-Loop-Freigaben können sensible Tool-Aufrufe für eine Entscheidung pausieren; Token- und Kostenaufstellungen pro Turn und pro Sitzung (opensquilla cost) sowie Diagnosen sind über CLI und Web UI verfügbar.

MetaSkill-Doku: docs/features/meta-skills.md, docs/features/meta-skill-user-guide.md und docs/authoring/meta-skills.md.


Benchmark-Ergebnisse

PinchBench-1.2.1-Durchschnittsergebnisse über 25 Aufgaben:

Agent Basismodell Ø-Score Eingabe-Tokens gesamt Ausgabe-Tokens gesamt Gesamtkosten
OpenSquilla Modell-Router (Opus4.7, GLM5.1, DS4 Flash) 0.9251 1,721,328 61,475 $0.688
OpenClaw Claude Opus 4.7 0.9255 3,066,243 50,890 $6.233

Der Score ist der Mittelwert über die 25 Aufgaben; Token-Zahlen und Kosten sind Summen für den gesamten Lauf.


Fehlerbehebung

macOS: Library not loaded: @rpath/libomp.dylib

Wenn beim Start Library not loaded: @rpath/libomp.dylib aus lightgbm/lib/lib_lightgbm.dylib protokolliert wird, läuft OpenSquilla mit direktem Single-Model-Routing weiter, aber die gebündelte SquillaRouter-Runtime bleibt inaktiv, bis die macOS-OpenMP-Runtime installiert ist.

Die Desktop-App bringt die benötigte native Runtime mit. Wenn du die schnelle Terminal-Installation oder eine Quellcode-Installation aus einer Shell verwendet hast, installiere libomp mit Homebrew und starte das Gateway neu:

brew install libomp
opensquilla gateway restart
Windows: DLL load failed / Visual-C++-Runtime

Wenn beim Start DLL load failed while importing onnxruntime_pybind11_state protokolliert wird, läuft OpenSquilla mit direktem Single-Model-Routing weiter, aber die gebündelte SquillaRouter-Runtime bleibt inaktiv, bis das Visual C++ Redistributable für Visual Studio 20152022 (x64) installiert ist.

Das PowerShell-Installationsprogramm für die Quellcode-Installation versucht, das Redistributable über winget zu installieren. Wenn du die schnelle Terminal-Installation verwendet hast oder winget nicht verfügbar ist, installiere es manuell und starte PowerShell neu: https://aka.ms/vs/17/release/vc_redist.x64.exe. Stelle anschließend den empfohlenen Router wieder her:

opensquilla onboard --provider openrouter --api-key-env OPENROUTER_API_KEY --router recommended
opensquilla gateway restart

Danksagungen

OpenSquilla ist inspiriert von OpenClaw. Gebündelte Drittanbieter-Inhalte sind in THIRD_PARTY_NOTICES.md ausgewiesen.

Community-Mitwirkende werden in CONTRIBUTORS.md gewürdigt, einschließlich release-spezifischer Attributionshinweise für squash-gemergte oder wiedergespielte Arbeit.


Mitwirkende

Dank an alle, die zu OpenSquilla beitragen.

OpenSquilla contributors


Mitwirken

Beiträge jeder Art sind willkommen — Fehlerberichte, Funktionsideen, Dokumentation, neue Provider- oder Kanal-Adapter, Skills und Arbeit an der Kern-Runtime. Siehe CONTRIBUTING.md und eröffne dann ein Issue oder einen Pull Request auf GitHub.

Verhaltenskodex · Sicherheit · Support · Lizenz (Apache-2.0)