A local-first agent and CLI that routes each phase of an AI workflow to the most suitable model using deterministic, configurable policies.
In 2026 most developers no longer use a single model or a single provider. Switching between CLIs, web apps and providers — copying context around and remembering which model to use for each task — is slow and error-prone.
smista.ai keeps one coherent workflow while letting different models handle different phases. Its main differentiator is deterministic multi-model routing: routing never depends on an LLM's judgment, and every decision is explainable through a trace.
It is not a clone of Claude Code or Codex. It provides the core primitives of a modern coding/text agent — prompt templates, plan mode, skills, tool permissions, context management, diff and review, traceability — on top of deterministic routing.
| Component | Description | License |
|---|---|---|
smista-mock-web-server |
Unpublished test helper for mocking the router HTTP API. | MIT |
smista-cli |
The smista command-line interface for developers. |
Elastic-2.0 |
smista-core |
Shared domain types, config, routing policy and validation. | MIT |
smista-providers |
Model abstraction and provider adapters (OpenAI, Anthropic, Gemini). | Elastic-2.0 |
smista-router |
Routing and orchestration service exposing a local HTTP JSON API; embedded and run by the CLI. | Elastic-2.0 |
smista-router-client |
Async Rust client for the router HTTP JSON API. | MIT |
smista-sdk |
Rust SDK facade re-exporting the domain types (and the client). | MIT |
smista-storage |
Storage traits, entities and the SurrealDB-backed persistence layer. | Elastic-2.0 |
@smista-ai/sdk |
TypeScript SDK for building clients on top of the router. | MIT |
smista "refactor the auth middleware"smista shows the detected task, the selected model, the matched routing rule, the included and excluded context, the estimated cost and the required permissions. Before any write, it presents a diff and asks for confirmation.
Preview a route without executing it:
smista route "review this PR"Inspect the full routing decision afterwards:
smista tracesmista.ai is under active development. Work is tracked through milestones and issues; see the issues.
Read the documentation at https://docs.smista.ai.
Contributions are welcome. Please read CONTRIBUTING.md and the Code of Conduct.
smista.ai is source available, dual-licensed per component:
- The consumer-facing libraries —
smista-core,smista-router-client,smista-sdkand the TypeScript@smista-ai/sdk— are licensed under the MIT License. Build on them freely. - Everything else — the
smistaCLI, the router, its web API, providers and storage — is licensed under the Elastic License 2.0 (ELv2). You may use, self-host, modify and embed it freely; you may not offer it to third parties as a hosted or managed service.
The per-component license is listed in the Components table above. ELv2 is not an OSI-approved open-source license, so the project is described as "source available" rather than "open source".
