Ranked landscape for the June–September 2026 window, with homelab fit and adoption best practices for a guard-chained Podman/Quadlet fleet.
The self-hosted AI stack in mid-2026 consolidated into a few very large, very active projects, and the center of gravity shifted hard toward agents over the last quarter. Star counts are exact (GitHub API, 2026-09-22); "trending" is evidenced by release activity dated June–September 2026, since GitHub does not expose star-growth rate.
1. Agents are the category of 2026. OpenClaw (390,235★, MIT) is the single most-starred self-hosted AI project and the fastest-growing repo on GitHub; it shipped a major 2.0 rewrite on 1 September 2026 (933 contributors, 16,000+ PRs). Nous Research's Hermes Agent (247,907★, MIT) is a close second and releases weekly. Both are model-agnostic orchestration layers that run on your own hardware and can point at local llama.cpp/vLLM/Ollama endpoints.
2. The inference + UI layer is mature and huge. Ollama (181,444★), llama.cpp (129,149★), and vLLM (92,405★) are the runtimes; Open WebUI (152,784★) is the dominant chat UI; ComfyUI (134,407★, GPL-3.0) is the dominant image/video-gen GUI. All release frequently in the window.
3. RAG/agent-platforms and the audio stack round out the field. Dify (156,835★), RAGFlow (91,138★), AnythingLLM (66,318★) for RAG/workflows; whisper.cpp (53,852★) + faster-whisper (25,512★) for STT; Chatterbox (26,515★), Piper (11,287★), Kokoro-82M (8,933★) for TTS; Unsloth (76,560★) for fine-tuning.
| # | App | Category | Stars | License | Latest in window |
|---|---|---|---|---|---|
| 1 | OpenClaw | Agents | 390,235 | MIT | v2026.9.5 (09-19); 2.0 (09-01) |
| 2 | Hermes Agent | Agents | 247,907 | MIT | v2026.9.21 (09-21) |
| 3 | Ollama | LLM runtime | 181,444 | MIT | active (pushed 09-21) |
| 4 | Dify | Agent platform / RAG | 156,835 | Modified Apache-2.0 | 1.17.1 (09-10) |
| 5 | Open WebUI | Chat UI | 152,784 | Open WebUI License (BSD-3) | v0.11.4 (09-21) |
| 6 | ComfyUI | Image / video gen | 134,407 | GPL-3.0 | v0.37.0 (09-21) |
| 7 | llama.cpp | LLM runtime | 129,149 | MIT | active (pushed 09-22) |
| 8 | vLLM | LLM inference engine | 92,405 | Apache-2.0 | active (pushed 09-22) |
| 9 | RAGFlow | RAG engine | 91,138 | Apache-2.0 | v0.27.2 (09-10) |
| 10 | LobeChat | Chat UI / agent ops | 82,748 | LobeHub Community License | active (pushed 09-22) |
| 11 | Unsloth | Fine-tuning | 76,560 | Apache-2.0 | active (pushed 09-22) |
| 12 | AnythingLLM | RAG / local agent | 66,318 | MIT | active (pushed 09-21) |
| 13 | whisper.cpp | Speech-to-text | 53,852 | MIT | active (pushed 09-22) |
| 14 | LibreChat | Chat UI | 44,608 | MIT | active (pushed 09-22) |
| 15 | Tabby | AI coding assistant | 33,889 | Apache-2.0 (ee/ separate) | last push 2026-06-30 |
Self-hosted personal AI agent / orchestration layer (not a model). Connects to cloud APIs, subscriptions, API providers, and local models; drives files, browser, terminal/shell, and messaging channels. 2.0 rebuilt the browser app as the primary interface, added shared cloud sessions, simplified onboarding. Node 24 (22.14+) + Docker; minimal footprint for API-based LLMs (2 vCPU / 2–4 GB RAM). Caveat: community reaction to 2.0 was mixed — migration problems, broken gateways, lost automations, model-auth issues (InfoQ). Tool/shell-access agent → strongest isolation.
Nous Research's personal agent, centered on persistent memory and cross-platform messaging (Mac, iOS, web, voice, email, Telegram, Slack). Model-agnostic; Docker/Podman; config in ~/.hermes/config.yaml. Releases weekly. Tool-access agent → isolate. Already on this fleet (see [[Hermes]] in the vault).
The de-facto standard local LLM runtime; OpenAI-compatible API (default :11434) that nearly every app in this list consumes. The default provider for JobSync, Resume Matcher, AnythingLLM, and more. The easiest way to expose local models to other containers.
Full LLMOps/agent platform: prompt IDE, RAG pipeline, agent/workflow builder, model management. docker compose full stack. Modified Apache-2.0: commercial use allowed, but multi-tenant operation requires a commercial license (one tenant = one workspace) — fine for a single-workspace homelab.
The dominant ChatGPT-style chat UI: multi-user auth, model switching, tools, pipelines, RAG, image gen (ComfyUI as engine), agents. Single container; connect to Ollama / llama.cpp / vLLM via base-URL. Already this fleet's chat frontend, wired to ComfyUI for image gen.
Node-based image and video generation (SD/SDXL/Flux/LLaDA/Qwen-Image). The most popular local image-gen frontend in 2026. Repo moved to the Comfy-Org org. Already running on this fleet (Qwen-Image 2.1 GGUF) and wired as the Open WebUI image engine.
The reference GGUF inference engine; llama-server exposes an OpenAI-compatible endpoint. Backbone of this fleet's frank-zealot/frank-dragoon endpoints. Runs on CPU, CUDA, ROCm, Vulkan, Metal.
High-throughput PagedAttention serving with an OpenAI-compatible API; the multi-GPU option (frank-medium runs vLLM tensor-parallel across two R9700s).
RAG engine with deep document understanding (PDFs, spreadsheets, scans) and source citations. docker compose full stack; runs fully against local models (Ollama). Budget disk for the document index.
Polished chat UI grown into an agent-operations layer (plugins, agents, scheduled tasks). LobeHub Community License: commercial use allowed, but distributing a derivative requires a commercial license.
The leading open-source fine-tuning library (LoRA/QLoRA/SFT) + GGUF quantization + a local run/train UI. GPU required; a batch job, not a long-running service. Run transiently on a GPU server, then serve the resulting GGUF via llama.cpp.
Local-first RAG + agent workspace: document ingestion, chat over your data, agent mode, multi-user. Ollama first-class. Single container, low footprint — a good local RAG entry point.
OpenAI Whisper in C/C++; lightweight fully-local STT on CPU / Metal / CUDA; whisper-server for an HTTP API. No cloud, no telemetry. Put it behind Caddy for a LAN transcription API.
Multi-provider, multi-user chat UI with agents, MCP, and actions. docker compose (app + MongoDB + Redis).
Self-hosted AI coding assistant (Copilot-style) against your own models. Apache-2.0 core; ee/ directory under a separate enterprise license. Last push 2026-06-30 (quieter since).
| App | Category | Stars | License |
|---|---|---|---|
| Chatterbox | TTS | 26,515 | MIT |
| faster-whisper | STT | 25,512 | MIT |
| Piper TTS | TTS | 11,287 | MIT |
| Kokoro-82M | TTS | 8,933 | Apache-2.0 |
| MisoTTS | TTS | 3,239 | Modified MIT |
| App | Fit | Notes for this fleet |
|---|---|---|
| Open WebUI | EXCELLENT | Single container; point at existing llama.cpp/vLLM/Ollama via base-URL. Already the fleet's chat frontend. |
| ComfyUI | EXCELLENT | GPU container (already running for Qwen-Image 2.1 GGUF). Serves the Open WebUI image-gen path. |
| Ollama | EXCELLENT | Easiest OpenAI-compatible runtime for the other apps; expose on LAN / host.containers.internal. |
| Dify | GOOD | compose → Quadlet. Multi-tenant restriction moot for single-workspace. Heavier stack (DB + Redis + vector store). |
| RAGFlow | GOOD | compose → Quadlet. Runs fully against local models. Budget disk for the document index. |
| AnythingLLM | GOOD | Single container, Ollama-first, low footprint. Good local RAG entry point. |
| LibreChat | GOOD | compose (app + Mongo + Redis) → Quadlet. Multi-user, MCP/agents. |
| LobeChat | GOOD | Single Postgres-backed container. Watch the Community License if redistributing a derivative. |
| whisper.cpp / faster-whisper | GOOD | Lightweight STT; whisper-server behind Caddy for a LAN transcription API. CPU-fine. |
| Piper / Kokoro / Chatterbox | GOOD | Local TTS; pair with whisper.cpp for a fully-local voice loop. Chatterbox wants a GPU; Piper/Kokoro run on CPU. |
| Tabby | GOOD | compose → Quadlet; self-hosted coding assistant against local models. |
| Unsloth | ONE-OFF | Fine-tuning is a batch job, not a service. Run transiently, then serve the GGUF via llama.cpp. |
| OpenClaw / Hermes | ISOLATE | Node.js / container agent pointing at local LLMs. Highest buzz, but tool/shell access — non-root, restricted network, vetted skills, behind the guard chain. |
Restart=on-failure).host.containers.internal, not localhost.docker run to Quadlet units. Remember the anonymous-volume trap — use named volumes for all app data.ee/ directory. Fine for a single-workspace, non-redistributed homelab, but note them before derivative work.