OpenSquilla — Token-Efficient AI Agent with same budget, higher intelligence density
OpenSquilla is a Python-based microkernel AI agent that routes each conversation turn to the least expensive model capable of handling it using SquillaRouter, an on-device ONNX model router that selects from over 20 LLM providers including Anthropic, OpenRouter, Ollama, DeepSeek, Gemini, and Qwen/DashScope. The same shared turn loop drives a Web UI, CLI, and chat channels, so tool dispatch, retries, and decision logging behave identically across all entry points. It connects to Claude through the Anthropic provider layer alongside those other backends, making it one selectable target in a multi-provider setup rather than a Claude-exclusive tool. Persistent memory, on-device embeddings, a layered sandbox, and built-in web search are bundled into every deployment. A Windows portable zip ships with a bundled CPython runtime requiring no separate Python installation, while the recommended cross-platform path uses the uv package manager. Developers, power users, and teams trying to reduce token costs across mixed-model workflows are the primary audience.
- ✓Open-source license (Apache-2.0)
- ✓Actively maintained (<30d)
- ✓Healthy fork ratio
- ✓Clear description
- ✓Topics declared
- ✓Documented (README)
git clone https://github.com/opensquilla/opensquilla && cp opensquilla/*.md ~/.claude/agents/24 items in this repository
Submit audio or video for multilingual dubbing, poll status, and download dubbed audio. Use when the user asks for dubbing, 多语言配音, 视频翻译配音, 译制片, or wants a source clip dubbed into another language.
Generate a structured short-video shooting script from a topic. Emits a strict, machine-parseable shot list (3 shots by default) with image prompt + video prompt + voiceover + on-screen text per shot. Trigger when the user asks for a video script, 分镜, 短视频文案, AI视频, 短剧脚本, or wants visual prompts ready for image/video generation.
Use when the user asks to schedule recurring tasks, one-off reminders, timers, or cron-style jobs through the OpenSquilla cron tool.
Multi-round research with explicit methodology, evidence tracking, and citation-tagged synthesis. Trigger on 'deep dive', 'research report', 'literature review', 'investigate X across sources', 'multi-round investigation'. Distinct from the `summarize` skill, which is a single-pass condensation; this skill maintains a state file across iterations, tracks coverage, and produces a long-form report with per-claim citations. Three execution stages: plan (scope into sub-questions), iterate (record evidence per round), compile (synthesize report). The skill itself does not fetch the web — it tells the host agent which fetches to perform via OpenSquilla's existing web tools, and records what comes back.
Read, edit, or create Microsoft Word `.docx` files. Trigger this skill whenever the user mentions a Word document, .docx file, contract, report, brief, memo, or asks to extract text, modify an existing doc, generate one from a brief, or audit tracked changes. Three execution paths: text-and-structure extraction, in-place edit-by-run (preserves styles), and create-from-scratch with python-docx. Falls back to OOXML unzip-and-patch for layout work python-docx cannot reach.
Capture the current git diff (staged, working-tree, or staged file list) as text. Direct shell call for workflows that need repository diffs without an LLM agent loop.
GitHub operations via `gh` CLI: issues, PRs, CI runs, code review, API queries. Use when: (1) checking PR status or CI, (2) creating/commenting on issues, (3) listing/filtering PRs or issues, (4) viewing run logs. NOT for: complex web UI interactions requiring manual browser flows (use browser tooling when available), bulk operations across many repos (script with gh api), or when gh auth is not configured.
Query the per-turn DecisionEntry log for skill co-occurrence patterns, meta-skill usage stats, and the router fixture corpus. Returns a JSON summary suitable for downstream LLM consumption. Used by meta-skill-creator's harvest step but also useful standalone for 'which skills did I use most this week?'
Render HTML (with CSS) to a PDF file. Trigger when the user wants to export a styled report, invoice, label, or any HTML/Jinja-rendered page to PDF. Uses WeasyPrint, which supports a meaningful subset of CSS Paged Media (page size, margins, headers/footers, page-break-before/after). Optional dependency — install via `pip install opensquilla[document-extras]` or `uv add weasyprint` because WeasyPrint pulls in native libraries (Pango, Cairo, fontconfig) that need OS-level packages.
Fetch a URL via HTTP/HTTPS and return the response body as text. Lightweight entrypoint replacement for `sub-agent` steps whose only job is a single GET/POST. Supports GET (default), POST/PUT/DELETE with a stdin-piped body, configurable timeout, and a max-bytes cap — no LLM agent loop, no custom-header injection (request goes out with urllib defaults). Use for simple data-fetch steps in meta-skill DAGs; for crawling, JS-rendered pages, or complex auth chains use sub-agent + scrapling instead.
Compile a LaTeX project (xelatex × bibtex × xelatex × xelatex) and report the log tail. Demo-only.
Use when the user asks to remember, recall, forget, update, search, or inspect durable OpenSquilla memory, including profile facts in USER.md and long-term notes in MEMORY.md or memory/**/*.md.
Use this meta-skill instead of answering directly when the current user asks for competitive-intel monitoring over named competitors, market rivals, account sets, prospects, or partners with a time window, comparative baseline, or sales/BD/strategy follow-up. It is for current competitive movement briefs: pricing/product changes, go-to-market signals, partnership moves, account signals, baseline diff, and recommended follow-ups. Do not use it for generic daily plans, generic research reports, product comparison without named target companies, or pasted old competitive-intel examples.
Use this meta-skill instead of answering directly when the current user asks for a practical today/tomorrow operating brief, morning plan, daily priority list, or day schedule that combines pasted calendar/task context, weather, memory, open loops, or optional reminders. Do not use it for account monitoring, family-only logistics, generic productivity advice, setting one reminder, moving one meeting, or isolated scheduling requests that a single tool can handle.
Use this meta-skill instead of answering directly when the current user provides or references a document, contract, quote, spreadsheet, notice, or paperwork and asks for a decision-ready analysis: sign/reject/negotiate, renewal risk, evidence table, questions to ask, or concrete next action. It may inspect PDF/DOCX/XLSX/pasted excerpts. Do not use it for generic summarization, generic report writing, standalone sales emails, generic contract-term explanations, or document text that is merely quoted as historical context.
Use this meta-skill instead of answering directly when the current user is doing a concrete job-search workflow: tailoring a resume to a pasted JD, building an application pack, preparing for a named interview, comparing roles, or digesting an application tracker. It produces reviewable text/artifacts and never auto-applies. Do not use it for generic career advice, generic resume comments without a target role/JD, or pasted historical job-search examples.
Use this meta-skill instead of answering directly when a child or their guardian wants to plan a school project, science fair entry, hobby kit, or kid-sized creative venture (volcano model, bug-watching YouTube channel, magnet maze, model rocket). The skill assesses feasibility against the child's age band, builds an age-appropriate step plan, lists materials with budget substitutes, surfaces safety considerations, and produces a parent-facing learning-objective summary so the guardian can supervise meaningfully. Do not use it for adult craft projects, generic art prompts, generic school-project explanations, or unsafe projects. Refuses inappropriate or unsafe projects.
Use this meta-skill instead of answering directly when the current user asks to draft, repair, compile, or produce an academic/research paper or LaTeX manuscript. It uses multi-skill orchestration for manuscript workflows that need source search, citation planning, experiment or figure/table placeholders, drafting, length checks, citation integrity, and LaTeX/PDF compilation. Ordinary paper requests use a compact draft path; explicit full/PDF/long-form research-paper requests use the full manuscript path. Do not use it for web research reports, blog posts, paper summaries, literature-search-only requests, slide decks, document decisions, or generic plotting.
Use this meta-skill instead of answering directly when the current user asks to generate an AI short-drama, shot-list-to-video workflow, or final MP4/成片 from a topic. The workflow infers render style, character identity, and shot count (1-10, default 5) from the request (filling in conservative defaults when missing), drafts a strict shot-by-shot shooting script, pauses for one free-form review (the user can approve, adjust render style / character / shot count / shot details, or cancel in plain language), optionally re-drafts the script with the user's adjustments, generates one universal full-cast identity-reference image plus per-shot composition images, then per-shot video clips (each video anchored to BOTH the universal reference image and its own composition image so the character identity AND scene layout stay consistent), bookends them with a title card and an ending card, burns subtitles in the user's language, and saves the script alongside the final MP4. Do not use it for slide decks, document-decision analysis, single-image generation, isolated script writing, storyboard-only requests, video ideas without generation, or pasted historical short-drama examples.
Use this meta-skill instead of answering directly only when the current user explicitly asks to create, compose, synthesize, or propose a new meta-skill that orchestrates multiple existing skills. It uses multi-skill orchestration for intent clarification, optional history mining, trigger-collision checks, linting, smoke/runtime gates, preview, and optional proposal persistence. Do not use it for creating a normal standalone skill, asking how meta-skills work, analyzing pasted skill lists, or discussing existing meta-skills.
Use this meta-skill instead of answering directly when the current user asks for a source-backed web research deliverable: cited research report, market or technical briefing, source-backed decision memo, or a researched writeup after current-source lookup. It uses multi-skill orchestration for preference inference, search/research, drafting, review, and optional export. Do not use it for generic summarization, ordinary writing from supplied notes, academic manuscript writing, document-decision analysis, or isolated fact lookup that does not require a cited report.
Query the web through multiple search engines (Brave, Tavily, SerpAPI, DuckDuckGo, Bing, Baidu, Sogou, 360) with a single CLI surface. Trigger when the user asks for a research search, fact lookup, source discovery, or wants to compare engines for coverage. The skill aggregates per-engine result lists and normalizes them into a uniform JSON shape for downstream skills (deep-research is the primary consumer). API-key engines gate themselves on the relevant environment variable; engines requiring no key always run.
Generate instrumental music, background beds, jingles, or sung songs with lyrics through OpenSquilla audio tools. Use when the user asks for BGM, music generation, 唱歌, 生成歌曲, lyrics to song, or a playable music audio artifact.
Generate or edit a single image via OpenRouter (google/gemini-3.1-flash-image-preview by default). Accepts a text prompt and optional --input-image for image-to-image editing. Trigger when the user asks for an AI image, illustration, concept art, product render, or wants to modify an existing image.
Subagents overview
# OpenSquilla — Token-Efficient AI Agent <p align="center"> <img src="assets/opensquilla-long-logo.png" alt="OpenSquilla logo" width="500"> </p> <p align="center"> <b>Same budget, more capability, better results.</b><br> A microkernel AI agent for your CLI, Web UI, and chat channels. </p> <p align="center"> <a href="https://github.com/opensquilla/opensquilla/actions/workflows/ci.yml"><img src="https://img.shields.io/github/actions/workflow/status/opensquilla/opensquilla/ci.yml?style=for-the-badge" alt="CI"></a> <a href="https://opensquilla.ai/"><img src="https://img.shields.io/badge/website-opensquilla.ai-blue?style=for-the-badge" alt="Website"></a> <a href="https://github.com/opensquilla/opensquilla/releases"><img src="https://img.shields.io/github/v/release/opensquilla/opensquilla?include_prereleases&style=for-the-badge" alt="GitHub release"></a> <a href="https://www.python.org/downloads/"><img src="https://img.shields.io/badge/python-3.12%2B-blue?style=for-the-badge" alt="Python 3.12+"></a> <a href="LICENSE"><img src="https://img.shields.io/badge/license-Apache%202.0-blue?style=for-the-badge" alt="Apache 2.0 License"></a> </p> <p align="center"> <b>English</b> · <a href="README.zh-Hans.md">中文</a> · <a href="README.ja.md">日本語</a> · <a href="README.fr.md">Français</a> · <a href="README.de.md">Deutsch</a> · <a href="README.es.md">Español</a> </p> --- ## News - 📢 **2026-07-14** — Our technical report **[Agentic Routing: The Harness-Native Data Flywheel](https://arxiv.org/abs/2607.11399)** is now on arXiv. It shows how the harness-native router turns everyday agent traffic into a self-improving data flywheel, and how **multi-model ensemble routing surpasses Fable 5**. --- ## Overview OpenSquilla is a token-efficient, microkernel AI agent. A local model router sends each turn to the cheapest model that can handle it, while persistent memory, a layered sandbox, built-in web search, and on-device embeddings round out a single shared turn loop. Every entry point — Web UI, CLI, and chat channels — runs through that same loop, so tool dispatch, retries, and decision logging behave identically everywhere. A pluggable provider layer speaks to TokenRhythm, OpenRouter, OpenAI, Anthropic, Ollama, DeepSeek, Gemini, Qwen/DashScope, and 20+ other LLM providers with no change to your code or config schema. OpenSquilla 0.5.0 is the current stable release. For task-oriented product documentation, start with the [OpenSquilla Product Guide](README.product.md) or the [documentation index](docs/README.md). --- ## Installation OpenSquilla runs on Windows, macOS, and Linux. Pick the path that matches your use case. Desktop installers and Quick terminal install give you a prebuilt **release** — no Git required. The other two — Install from source and Develop from source — build **from a Git checkout** (`git clone` + Git LFS), including the Vue control console. Release wheels and Desktop installers already contain that console, so their users do **not** need Node.js or npm. Release install commands use published GitHub release assets. Python wheel installs use versioned wheel filenames because installers validate the version embedded in the wheel filename. For 0.5.0 desktop use, prefer the packaged desktop installers from the GitHub Release: `OpenSquilla-0.5.0-mac-arm64.dmg` on macOS and `OpenSquilla-0.5.0-win-x64.exe` on Windows. | Path | Audience | When to use | | --- | --- | --- | | [Desktop installers](#desktop-installers) **(recommended desktop)** | macOS and Windows users | Packaged desktop app | | [Quick terminal install](#quick-terminal-install) **(recommended)** | End users on any OS | Release wheel from a terminal | | [Install from source](#install-from-source) | Users tracking `main` | Run from a checkout, not edit it | | [Develop from source](#develop-from-source) | Contributors | Edit, test, or debug the source | ### Prerequisites | Requirement | Quick terminal install | Install from source | Develop from source | | --- | :---: | :---: | :---: | | Python 3.12+ | via `uv` | via `uv` or system | via `uv` | | Git + Git LFS | — | required | required | | Node.js 22.12+ + npm | — | required to build the Web UI | required for Web UI and wheels | | `uv` | installed if missing | recommended | required | The default `recommended` profile installs **SquillaRouter** — OpenSquilla's on-device model router — and its model assets; `OPENSQUILLA_INSTALL_PROFILE=core` omits those dependencies. The separate `--router disabled` onboarding flag keeps the dependencies installed but turns the router off at runtime. On Windows, SquillaRouter's bundled ONNX runtime also needs the Visual C++ runtime. The from-source PowerShell installer installs it automatically via `winget`; the **Quick terminal install** (`uv tool install`) path does not — if startup logs a `DLL load failed` error, install it manually (see [Troubleshooting](#troubleshooting)). OpenSquilla keeps running with direct single-model routing until it is installed. On macOS terminal installs, SquillaRouter's LightGBM runtime may also need the system OpenMP library. The desktop app bundles the runtime it needs, but **Quick terminal install** does not install Homebrew/system libraries. If startup logs `Library not loaded: @rpath/libomp.dylib`, run `brew install libomp`, then restart the gateway. OpenSquilla keeps running with direct single-model routing until it is installed. Install links: [Git](https://git-scm.com/downloads) · [Git LFS](https://git-lfs.com/) · [Node.js](https://nodejs.org/en/download) · [uv](https://docs.astral.sh/uv/getting-started/installation/). ### Desktop installers The 0.5.0 desktop installers package the Vue control console and gateway runtime in an Electron shell. - macOS Apple Silicon: <https://github.com/opensquilla/opensquilla/releases/download/v0.5.0/OpenSquilla-0.5.0-mac-arm64.dmg> - Windows x64: <https://github.com/opensquilla/opensquilla/releases/download/v0.5.0/OpenSquilla-0.5.0-win-x64.exe> For faster Mainland China downloads, use the OSS direct-download aliases: - macOS Apple Silicon: <https://opensquilla-releases.oss-cn-beijing.aliyuncs.com/releases/latest/OpenSquilla-mac-arm64.dmg> - Windows x64: <https://opensquilla-releases.oss-cn-beijing.aliyuncs.com/releases/latest/OpenSquilla-win-x64.exe> These fixed links advance only after a newer eligible release passes mirror verification. Use the versioned GitHub Release links above when you need a specific release. Quit any running OpenSquilla desktop app before upgrading. On macOS, drag the app from the DMG into Applications for installation or updates, eject the DMG, then open the Applications copy. The existing Desktop profile in the platform application-data directory is reused. A terminal installation's `~/.opensquilla` is a separate profile; transfer it explicitly from Settings only if needed. When upgrading the Windows Desktop from RC3 to RC4 or later, run the new installer directly over the existing installation. Do **not** uninstall RC3 first: its uninstaller may remove Desktop user data. Back up `%APPDATA%\OpenSquilla` before upgrading. RC4 and later installers preserve profile data during a normal uninstall. Code signing policy: [`docs/code-signing-policy.md`](docs/code-signing-policy.md). > [!NOTE] > Windows builds are currently unsigned. If SmartScreen appears, choose > **More info** → **Run anyway**. If Smart App Control or enterprise policy > blocks the unsigned app, use [Quick terminal install](#quick-terminal-install) > instead. ### Quick terminal install The recommended path on Windows, macOS, and Linux. `uv` installs OpenSquilla into its own isolated environment and manages its own Python — no system Python required. This path installs published releases only; for `main`, development branches, or local checkouts use [Install from source](#install-from-source). **1. Install `uv`** — skip if `uv --version` already works. Linux / macOS: ```sh curl -LsSf https://astral.sh/uv/install.sh | sh . "$HOME/.local/bin/env" ``` Windows PowerShell: ```powershell powershell -c "irm https://astral.sh/uv/install.ps1 | iex" $env:Path = "$env:USERPROFILE\.local\bin;" + $env:Path ``` **2. Install OpenSquilla** — the same command on every platform. ```sh uv tool install --python 3.12 "opensquilla[recommended] @ https://github.com/opensquilla/opensquilla/releases/download/v0.5.0/opensquilla-0.5.0-py3-none-any.whl" ``` This installs the OpenSquilla wheel from the release URL, then lets `uv` download the dependencies declared by the selected extras. The default `recommended` extra includes SquillaRouter runtime dependencies such as ONNX Runtime, LightGBM, NumPy, and tokenizers, so a first install needs network access unless those wheels are already cached. `uv` does not install system native runtimes such as macOS `libomp` or the Windows Visual C++ Redistributable; see [Troubleshooting](#troubleshooting) if the router runtime reports a native-library load error. **3. Configure and run.** ```sh opensquilla onboard opensquilla gateway run ``` > [!NOTE] > If `opensquilla` is not found right after a fresh `uv` install, open > a new terminal, or re-run the PATH line from step 1. For a fully pinned install, use the versioned wheel URL: `https://github.com/opensquilla/opensquilla/releases/download/v0.5.0/opensquilla-0.5.0-py3-none-any.whl`. ### Install from source Use this path to run OpenSquilla from a checkout without editing it. The clone is only the package source for the installer; after install, use the `opensquilla` command — do not run `uv run`. Choose [Develop from source](#develop-from-source) instead if you intend to modify the code. 1. **Clone with LFS assets** ```sh git lfs install git clone https://github.com/opensquilla/opensquilla.git cd opensquilla git lfs pull --include="src/opensquilla/squilla_router/models/**" ``` 2. **Run the installer** **macOS / Linux** ```sh bash scripts/install_source.sh ```
What people ask about opensquilla
What is opensquilla/opensquilla?
+
opensquilla/opensquilla is subagents for the Claude AI ecosystem. OpenSquilla — Token-Efficient AI Agent with same budget, higher intelligence density It has 6.4k GitHub stars and was last updated today.
How do I install opensquilla?
+
You can install opensquilla by cloning the repository (https://github.com/opensquilla/opensquilla) or following the README instructions on GitHub. ClaudeWave also provides quick install blocks on this page.
Is opensquilla/opensquilla safe to use?
+
Our security agent has analyzed opensquilla/opensquilla and assigned a Trust Score of 100/100 (tier: Verified). See the full breakdown of passed checks and flags on this page.
Who maintains opensquilla/opensquilla?
+
opensquilla/opensquilla is maintained by opensquilla. The last recorded GitHub activity is from today, with 109 open issues.
Are there alternatives to opensquilla?
+
Yes. On ClaudeWave you can browse similar subagents at /categories/agents, sorted by popularity or recent activity.
Deploy opensquilla to your cloud
Ship this repo to production in minutes. Each platform spins up its own environment with editable env vars.
Maintain this repo? Add a badge to your README
Drop the badge into your GitHub README to show it's tracked on ClaudeWave. Each badge links back to this page and reflects the live Trust Score.
[](https://claudewave.com/repo/opensquilla-opensquilla)<a href="https://claudewave.com/repo/opensquilla-opensquilla"><img src="https://claudewave.com/api/badge/opensquilla-opensquilla" alt="Featured on ClaudeWave: opensquilla/opensquilla" width="320" height="64" /></a>More Subagents
The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.
The agent that grows with you
Java 面试 & 后端通用面试指南,覆盖计算机基础、数据库、分布式、高并发、系统设计与 AI 应用开发
Build Agentic workflows, RAG pipelines, with rich AI model and tool support on one collaborative workspace. Deploy on cloud, VPC, or self-hosted, so teams move from prototype to production without rebuilding the stack.
The agent engineering platform.
Turn any codebase, with its docs, SQL schemas, configs, and PDFs, into a queryable knowledge graph. A /graphify skill for Claude Code, Cursor, Codex, and Gemini CLI: local deterministic AST parsing, every edge explained, no vector store.