%%{init: {"flowchart": {"curve": "basis", "nodeSpacing": 34, "rankSpacing": 48}}}%%
flowchart TB
TV["soltiHQ/taskvisor<br/>'in-process supervision'"]
SDK["soltiHQ/sdk<br/>'agent runtime libraries'"]
AGENT(["Your agent binaries"])
TASKS["Tasks<br/>'subprocess|containerd|embedded|custom'"]
SERVICE(["Your Tokio service"])
PODIUM["soltiHQ/podium<br/>'control plane'"]
TV -->|"use directly"| SERVICE
TV -->|"supervision core"| SDK
SDK -->|"compose"| AGENT
AGENT -->|"run"| TASKS
PODIUM <-->|"manage agents"| AGENT
classDef component fill:#141a21,color:#e6edf3,stroke:#3fb950,stroke-width:2px;
classDef application fill:#1f6f3f,color:#ffffff,stroke:#3fb950,stroke-width:3px;
classDef neutral fill:#30363d,color:#e6edf3,stroke:#8c959f,stroke-width:1.5px;
class TV,SDK,PODIUM component;
class AGENT,SERVICE application;
class TASKS neutral;
linkStyle 1,2,3 stroke:#2f9e58,stroke-width:2px;
linkStyle 0 stroke:#8c959f,stroke-width:1.5px;
linkStyle 4 stroke:#3fb950,stroke-width:2px,stroke-dasharray:7 5;
Solti is a modular task-execution stack for supervising long-running workers and keyed jobs inside Tokio services, building agents for subprocess, container, or custom workloads, and operating those agents centrally when needed.
- [Taskvisor] Start in your application.
Run and supervise background work with retries, cancellation, clean shutdown, and clear results.
Examples: queue consumers, pollers, connection keepers, data sync, repeating tasks, CPU-heavy jobs - [SDK] Build an agent when you need one.
Use the SDK libraries to create an agent for the workloads you need to run.
Examples: CI runners, build workers, server automation, container jobs, custom runners - [Podium] Add central control when you need it.
Use ControlPlane to connect agents, send tasks, track rollouts, and see their status.
Examples: agent groups, server groups, task rollouts, central status and logs
- [Dashboards] A Grafana dashboard for visualizing agent health, task execution, and runtime metrics.