ODS is a free, open source automation project written in Python and released under Apache-2.0. It has 6,553 GitHub stars, 943 forks and 2,618 open issues, and was last pushed 5 hours ago. On this registry it ranks #24 of 54 tracked projects in Automation, with 5 head-to-head comparisons available. It gained 22 stars over the last 3 tracked days.

What is ODS?

What it is

ODS (Osmantic Deployment System) is a Python-based, Apache-2.0 licensed installer and runtime that turns a personal computer running Linux, macOS, or Windows into a private AI server. It lives in the self-hosted local-AI ecosystem alongside the components it wires together: Ollama, Open WebUI, n8n, ComfyUI, and a set of privacy tools. Rather than asking an operator to assemble those projects by hand, ODS installs the stack, selects a model suited to the detected hardware, starts the services, and exposes a local web interface. The repository root holds the public README, installers, security policy, and coordination documents, while the ods/ directory contains the product runtime: services, installer phases, compose overlays, dashboard, CLI, tests, and operator documentation.

The concrete problem it solves is setup friction. Running open models locally normally means reconciling separate inference engines, chat front ends, automation runners, image pipelines, and secret management, each with its own configuration surface and upgrade path. ODS collapses that into a single bootstrap that produces a working stack with service authentication, secrets, observability, and diagnostics in one local place. Prompts and data stay on the machine unless the operator opts into the optional cloud or hybrid API modes. The project targets hardware from both NVIDIA and AMD, and it treats release validation as a first-class concern, checking operational changes against a fleet and distro lab that covers zero-prerequisite bootstrap, fresh installs, product flows, full-model capabilities, and lifecycle recovery.

Key capabilities

  • Local model inference on the operator's own hardware, with hardware-aware model selection during install.
  • A ChatGPT-style web UI reachable from any browser on the network.
  • A control dashboard for managing models, services, setup, GPU status, and extensions from one place.
  • Voice, agents, and workflows, including automations that can listen, speak, and call tools.
  • Retrieval-augmented generation and search over local documents and private search workflows.
  • Local image generation through ComfyUI integration, without sending prompts to a hosted API.
  • Privacy and operations tooling that keeps service auth, secrets, observability, and diagnostics inside one local stack.

Who uses it and how

  • Homelab operators who want a private AI server on a single PC, Mac, or Linux box without hand-assembling Ollama, Open WebUI, n8n, and ComfyUI.
  • Users who need document question answering and private search over their own files through the RAG and retrieval workflows.
  • Builders who construct agents and automations in n8n that listen, speak, and call tools against locally served models.
  • Teams running production-like installs, appliances, or labs, who pin a tagged release or audited commit and keep their own validation receipt.
  • Forks and downstream distributions that rely on the documented forkability and release-channel guidance to track stable patches on release/2.6.x.

Getting started

On Linux or macOS, the documented path is curl -fsSL https://install.osmantic.com/ods.sh | bash; on Windows, a PowerShell block downloads the source ZIP and runs install.ps1. Docker must be installed and

project readme (upstream, from github) — read inline

ODS

Osmantic Deployment System

Turn your PC, Mac, or Linux box into a private AI server.

AI server and homelab setup is rapidly becoming a solved problem. It should feel that way for everyone.

License: Apache 2.0 GitHub Stars Release

Watch the demo

ODS installs and wires together everything you need to run AI locally, so you do not have to assemble Ollama, Open WebUI, n8n, ComfyUI, and privacy tools by hand:

  • Local model inference — run open models on your own hardware
  • ChatGPT-style web UI — talk to your models from any browser
  • Control dashboard — manage models, services, setup, GPU status, and extensions from one place
  • Voice, agents, and workflows — build automations that can listen, speak, call tools, and get work done
  • RAG and search — connect local documents, private search, and retrieval workflows
  • Image generation — run local image tools without sending prompts to a hosted API
  • Privacy and ops — keep service auth, secrets, observability, and diagnostics in one local stack

No cloud required. No subscriptions required. Your prompts and data stay on your machine unless you choose otherwise. Cloud and hybrid API modes are optional when you want them.

Release validation: Operational changes are checked with a release-grade fleet and distro lab: zero-prereq bootstrap, fresh installs, product flows, full-model capabilities, lifecycle recovery, and the final User Green gate. See Release Validation for what a green run proves.

Repo layout: the repository root holds the public README, installers, security policy, GitHub workflows, and project coordination docs. The ods/ directory is the product runtime: services, installer phases, compose overlays, dashboard, CLI, tests, and operator docs.

Stable consumption: v2.6.0 is the current stable release. main moves quickly; use it for active development and validation candidates. For forks, appliances, labs, or production-like installs, pin a tagged release or audited commit and keep your own validation receipt. Stable patch fixes land on release/2.6.x before being merged forward. See Release Channels, Installer Trust, and Forkability.

Get Started

Choose your system, copy the block, run it in a normal terminal. ODS installs the stack, picks a model for your hardware, starts the services, and gives you the local web UI.

Linux or macOS

curl -fsSL https://install.osmantic.com/ods.sh | bash

Windows PowerShell

$ProgressPreference = "SilentlyContinue"
$odsSrc = Join-Path $env:TEMP ("ods-install-" + [guid]::NewGuid().ToString("N"))
$odsZip = Join-Path $odsSrc "ods-main.zip"
New-Item -ItemType Directory -Path $odsSrc | Out-Null
Invoke-WebRequest "https://github.com/Osmantic/ODS/archive/refs/heads/main.zip" -OutFile $odsZip
Expand-Archive -LiteralPath $odsZip -DestinationPath $odsSrc -Force
cd (Get-ChildItem -LiteralPath $odsSrc -Directory | Select-Object -First 1).FullName
Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass
.\install.ps1

Prerequisites: Docker must be installed and running. On Windows, use Docker Desktop with the WSL2 backend enabled and run the block in a normal, non-Administrator PowerShell window.

The hosted Linux/macOS endpoint proxies the current bootstrap from repository main. Reviewed merges reach it automatically after edge-cache refresh. ODS_REF selects a compatible repository checkout. See Installer Trust to inspect the script or install a stable release or audited commit manually.

Windows users should not run the curl ... | bash command from PowerShell. The PowerShell block above downloads the source ZIP and runs the same Windows installer used by the clone-based workflow. For more detail, see the Windows Quickstart.

After install, open http://localhost:3000 and start chatting.

Uninstall later with the matching platform command:

cd ~/ods
./ods-uninstall.sh --force
$installDir = "$env:USERPROFILE\ods"
cd $installDir
.\ods.ps1 uninstall --force

Windows recovery note: if the runtime folder is partial and .\ods.ps1 is missing, run the same command from a source checkout as .\ods\installers\windows\ods.ps1 uninstall --force. It removes Docker resources labelled as the ODS compose project before removing the runtime directory.

API endpoint: Linux Docker installs expose llama-server on http://localhost:11434 by default (OLLAMA_PORT) while containers use llama-server:8080. macOS native Metal and Windows native/Lemonade paths use http://localhost:8080 unless overridden. Open WebUI stays on http://localhost:3000.

No GPU? ODS also runs in cloud mode — same full stack, powered by OpenAI/Anthropic/Together APIs instead of local inference:

./install.sh --cloud

Port conflicts? Every port is configurable via environment variables. See .env.example for the full list, or override at install time:

WEBUI_PORT=9090 ./install.sh

New here? Read the Friendly Guide or listen to the audio version — a complete walkthrough of what ODS is, how it works, and how to make it your own. No technical background needed.


At A Glance

Question Answer
What is it? A local AI server stack for your own hardware, with a one-command Linux/macOS installer and a PowerShell installer for Windows.
Who is it for? People who want private AI at home, in a lab, or on a workstation without hand-wiring a dozen services.
What do I get? Local inference, Open WebUI chat, a control dashboard, voice, agents, workflows, RAG, search, image generation, privacy tools, observability, and developer tools.
What does it run on? Linux, Windows with WSL2/Docker Desktop, and macOS Apple Silicon.
Is cloud required? No. Local mode is the default; cloud and hybrid API modes are optional.
If you know... ODS adds...
Ollama / llama.cpp The surrounding server stack: chat, dashboard, voice, RAG, workflows, agents, privacy, and service management.
Open WebUI A full installer and control plane around Open WebUI, plus pre-wired local services.
AnythingLLM Broader local AI appliance behavior beyond RAG: inference, chat, voice, workflows, image generation, and ops.
n8n self-hosted AI starter kits Workflow automation as one part of a larger private AI server.

Current Platform Support

Platform Status
Linux (NVIDIA + AMD + Intel Arc) Supported — install and run today
Windows (NVIDIA + AMD) Supported — install and run today
macOS (Apple Silicon) Supported — install and run today

Tested Linux distros: Ubuntu 24.04/22.04, Debian 12, Linux Mint 21.3, Fedora 41+, Rocky Linux 9, Arch Linux, Manjaro, CachyOS, and openSUSE Tumbleweed. Other distros using apt, dnf, pacman, or zypper should also work — open an issue if yours doesn't.

Release validation: Operational changes run through a release-grade gate that covers zero-prereq bootstrap, clean installs, product behavior, full-model capabilities, lifecycle recovery, and User Green. See Release Validation and the Validation Matrix.

Windows: Requires Docker Desktop with WSL2 backend. NVIDIA GPUs use Docker GPU passthrough; AMD Strix Halo runs through the platform-specific accelerated path documented in the Windows installer and support matrix.

macOS: Requires Apple Silicon (M1+) and Docker Desktop. llama-server runs natively with Metal GPU acceleration; all other services run in Docker.

See the Support Matrix for supported platform claims and the Validation Matrix for the layered test surface used to test those claims.


Why ODS?

A handful of companies control the vast majority of gl

readme truncated — read the full docs on github

Frequently asked questions

Is ODS free to use?

ODS is open source under the Apache-2.0 licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does ODS do?

Turn your PC, Mac, or Linux box into an AI server. LLM inference, chat UI, voice, agents, workflows, RAG, and image generation.

What is ODS written in?

ODS is primarily written in Python. Its source is publicly available at https://github.com/Osmantic/ODS, and it has 6,553 GitHub stars.