Pomiń do treści

01 / 05

Profile harnessów — 20 najlepszych i reszta stawki

Plik źródłowy
Lekcje
  1. 00Harnessy agentowe dla lokalnych modeli — przegląd
  2. 01Profile harnessów — 20 najlepszych i reszta stawki
  3. 02Klocki — wszystko, czego harness nie daje sam
  4. 03Architektura: Opus planuje, lokalni agenci wykonują
  5. —Źródła — na czym stoi ten przegląd

Stan na 11 października 2026. Liczby z GitHuba (gwiazdki, wydania) pobrane z API tego dnia. Wszystkie fakty pochodzą z dokumentacji, kodu, notatek wydań i zgłoszeń — źródła przy każdym profilu i w ZRODLA.md. Żadnego z tych harnessów nie testowałem na swojej maszynie — to przegląd dokumentacji, nie pomiar. Ranking i wagi: README.md.

Legenda wyniku: A — wielu agentów i hybryda (25%), B — jakość obsługi lokalnego modelu (20%), C — pokrycie pięciu zastosowań (20%), D — dojrzałość (15%), E — wartość do nauki (10%), F — bezpieczeństwo i kontrola (10%). Każde kryterium 1–5, wynik 0–100.


Spis treści


Siedem pułapek wspólnych dla wszystkich

Te same problemy wracają w niemal każdym harnessie podłączonym do llama.cpp / llama-swap. Sprawdź je, zanim uznasz, że „harness X nie działa z lokalnym modelem".

# Pułapka Objaw Co zrobić
H1 Responses API zamiast Chat Completions. Coraz więcej narzędzi domyślnie woła /v1/responses (OpenAI Agents SDK, Microsoft Agent Framework — OpenAIChatClient, n8n — przełącznik w węźle, Windmill — dostawca OpenAI). Codex CLI od lutego 2026 obsługuje tylko Responses API. błąd 400/404, „type must be output_text" wybierz tryb chat_completions / dostawcę „OpenAI-compatible"; dla Codex CLI — inny harness
H2 reasoning_content DeepSeeka przy wywołaniach narzędzi. W trybie myślenia DeepSeek V4 wymaga odesłania treści rozumowania w turach z narzędziami. Gubiły ją LangChain (#40219, otwarte), Microsoft Agent Framework (naprawione 09.2026), Pydantic AI (naprawione w v2). błąd 400 przy drugiej turze z narzędziem aktualna wersja frameworka; w LibreChat includeReasoningContent: true; albo wyłącz myślenie dla wykonawców
H3 Okno kontekstu zgadywane z nazwy modelu. Harness bierze limit z katalogu chmurowego albo domyślne 128K/200K zamiast z serwera (z llama.cpp: QwenPaw #7979, LibreChat #14228; z własnym dostawcą OpenAI-compatible: Goose #12048; z Ollamą: Strands #4620; domyślne 128K w Hermesie). kompakcja nie odpala albo odpala za wcześnie, ucięte odpowiedzi ustaw jawnie 131072 (Twój slot) w konfiguracji modelu
H4 Zmienny początek promptu zabija prompt cache. Znacznik czasu albo losowa kolejność narzędzi w prompcie systemowym unieważnia cache serwera w każdej turze (z llama.cpp: OpenClaw, LibreChat #16877; z Ollamą i innymi lokalnymi serwerami: nanobot #4867). każda tura czyta cały kontekst od nowa — przy około 1 200 tok/s czytania promptu to dziesiątki sekund na turę stały prefiks: data w wiadomości użytkownika, nie w systemie; sprawdzaj cache_n w logach llama-server
H5 Za dużo narzędzi naraz. Lokalne modele tracą jakość przy długich listach narzędzi i schematów MCP. wybór złego narzędzia, pętle 5–15 narzędzi na wykonawcę; 2–3 serwery MCP, nie dziesięć
H6 Brak limitu współbieżności na endpoint. Masz 4 sloty. Prawie wszystkie frameworki limitują równoległość w obrębie jednego uruchomienia, nie globalnie (wyjątek: Pydantic AI). kolejka w llama-server rośnie, timeouty jeden limit 4 w jednym miejscu, z kolejką: bramka (Bifrost), ConcurrencyLimiter albo kolejka zadań. Uwaga: concurrencyLimit w llama-swap nie kolejkuje — nadmiarowe zapytanie dostaje od razu 429
H7 Schematy narzędzi, których gramatyka llama.cpp nie przyjmuje. Np. pattern bez ^…$ (Kilo #12773, llama-server), regresje schematów w Qwen Code (#10435 i kolejne). Pokrewny przypadek z Ollamą: zmiana składni narzędzi w Cline 4.1 (#13008). „Unable to generate parser for this template" (Kilo #12408) przypinaj wersje harnessu, testuj po aktualizacji (promptfoo — patrz 02-KLOCKI.md)

1. LangGraph

Kategoria: framework Python (graf stanów) · Licencja: MIT · ⭐ 43,1k · Wydanie: langgraph 1.2.14 (6.10.2026) · Wynik: 86 (A5 B4 C4 D5 E3 F4)

Czym jest. Środowisko uruchomieniowe, w którym agent to graf: węzły to funkcje albo agenci, krawędzie to logika przejść, a każdy krok można zapisać (checkpoint), przerwać, wznowić i odtworzyć. Na nim stoją create_agent z LangChain v1 i Deep Agents (nr 6).

Przewaga. Najdojrzalszy w Pythonie model trwałości: checkpointy per wątek, trzy tryby zapisu (exit / async / sync), cofanie w czasie, interrupt() dla człowieka w pętli, które przeżywa restart procesu, rozgałęzianie Send i podgrafy.

Lokalny model.

from langchain.chat_models import init_chat_model
local = init_chat_model("deepseek-v4-flash", model_provider="openai",
                        base_url="http://localhost:8080/v1", api_key="none")   # adres Twojego llama-swap

llama-server musi działać z szablonem obsługującym narzędzia (--jinja).

Wielu agentów i hybryda. Dokumentacja opisuje pięć wzorców: subagenci jako narzędzia, przekazania, umiejętności, router, własny graf. Każdy węzeł ma własny model, więc planista na anthropic:claude-opus-5-5 i wykonawcy na llama-swap to zwykła konfiguracja. max_concurrency limituje równoległość w obrębie jednego uruchomienia — globalny limit 4 zapytań trzeba dodać samemu (pułapka H6).

Głos i obraz. Brak głosu w czasie rzeczywistym; oficjalny przewodnik proponuje „kanapkę" STT → agent → TTS. Obrazy przechodzą jako bloki multimodalne do modelu z wizją.

Bezpieczeństwo. Brak wbudowanej piaskownicy (dają ją Deep Agents). Middleware z limitami wywołań modelu i narzędzi, wykrywaniem PII i człowiekiem w pętli; otwarte zgłoszenia o brakujących hakach przed wykonaniem narzędzia (#8817, #8818).

Słabe strony. Warstwy LangChain to miejsce, gdzie psują się lokalne modele: gubienie reasoning_content (#40219, otwarte), rozbite argumenty narzędzi w strumieniu (#35514). Serwer z cronem w wersji self-hosted to płatny dodatek LangSmith. langgraph-supervisor zarchiwizowano w 2026 — zamiast niego wzorzec „supervisor przez wywołania narzędzi".

Co warto ukraść. Checkpointy na thread_id z wybieralną trwałością; interrupt() + Command(resume=…) jako mechanizm pytania człowieka; mały słownik decyzji człowieka (zatwierdź / edytuj / odrzuć / odpowiedz); lista wbudowanych middleware (retry, fallback modelu, limity wywołań, wykrywanie PII) jako checklista tego, co każdy harness musi mieć.

Źródła: repozytorium · modele · trwałe wykonanie · wzorce wieloagentowe · #40219


2. Goose

Kategoria: agent ogólnego przeznaczenia (CLI, desktop, serwer) · Licencja: Apache-2.0 · ⭐ 55,1k · Wydanie: v1.54.0 (8.10.2026) · Wynik: 84 (A5 B4 C4 D5 E3 F3)

Czym jest. Agent w Ruście stworzony przez Block, od 7.04.2026 pod Agentic AI Foundation (Linux Foundation), obok MCP i AGENTS.md. Ma CLI, aplikację desktop i serwer ACP; repozytorium przeniesiono do aaif-goose/goose.

Przewaga. Najszerszy zestaw „poza kodowaniem": receptury YAML (recipes) jako jednostka powtarzalnej pracy, wbudowany harmonogram cron, subagenci z własnym dostawcą i modelem, tool shim dla modeli, które słabo wołają narzędzia (eksperymentalny: osobny model-tłumacz działa domyślnie przez Ollamę albo przez wbudowany llama.cpp Goose'a, więc z samym llama-swap go nie użyjesz — DeepSeek i tak ma natywne wywołania narzędzi), bramka Telegram, dyktowanie głosem (także lokalnym Whisperem), tryb Adversary — osobny model recenzuje każde wywołanie narzędzia. Neutralne zarządzanie przez fundację.

Lokalny model. Plik dostawcy w ~/.config/goose/custom_providers/ z "engine": "openai", "base_url": "http://localhost:8080/v1/chat/completions" i context_limit per model. Dokumentacja uczciwie pisze, że Goose „najlepiej działa z modelami Claude". Znane błędy: modele rozumujące zwracają pustą treść, bo max_tokens jest dzielone między rozumowanie i odpowiedź (#11142); ignorowane okno kontekstu (#12048).

Wielu agentów i hybryda. GOOSE_SUBAGENT_PROVIDER / GOOSE_SUBAGENT_MODEL ustawiają model wykonawców, a receptura może go nadpisać (settings.goose_provider / goose_model). Główna sesja na Anthropic, wykonawcy na llama-swap — wspierane. Subagenci działają tylko w trybie autonomicznym.

Głos i obraz. Dyktowanie w aplikacji desktop (dostawcy chmurowi albo lokalny Whisper), bez syntezy mowy. Obrazy, gdy model ma wizję; dla własnego endpointu trzeba włączyć supports_vision per model (#11998).

Bezpieczeństwo. Tryby GOOSE_MODE (auto, approve, smart_approve, chat), uprawnienia per narzędzie, wykrywanie prompt injection, tryb Adversary, haki przed wywołaniem narzędzia.

Harmonogram i tryb bezgłowy. goose schedule add --cron … --recipe-source …, goose run -t "…", goose serve (serwer ACP z TLS).

Słabe strony. Eksperymentalną piaskownicę macOS usunięto — narzędzia działają z Twoimi uprawnieniami. Tryb Adversary jest fail-open (gdy recenzent zawiedzie, akcja przechodzi). Architektura w przebudowie (2.0, ACP).

Co warto ukraść. Receptura jako jednostka pracy z parametrami, rozszerzeniami i modelem; tool shim — tani model tłumaczy tekstowe wywołania narzędzi na strukturalne; recenzent-LLM bramkujący wywołania; parowanie Telegrama jednorazowym kodem.

Źródła: zmienne środowiskowe · subagenci · tool shim · Adversary · przeniesienie do AAIF


3. OpenHands

Kategoria: platforma agentów kodujących + SDK · Licencja: MIT · ⭐ 90,5k · Wydanie: v1.26.0 (8.10.2026) · Wynik: 84 (A5 B4 C3 D5 E3 F5)

Czym jest. Platforma, której front „Agent Canvas" (2026) uruchamia OpenHands — albo Claude Code, Codex, Pi, OpenCode przez ACP — lokalnie, w Dockerze, na VM albo w Kubernetesie. Pod spodem Software Agent SDK (Python) i Agent Server (REST / WebSocket).

Przewaga. Najpełniejszy stos do osadzenia we własnej aplikacji: SDK + serwer z OpenAPI, kontener na każdą rozmowę, subagenci z plików Markdown z polem model:, routery modeli, OpenTelemetry, automatyzacje (cron, webhook, zdarzenia) i bramka OpenAI-compatible, która wystawia całego agenta jako „model".

Lokalny model. Przez LiteLLM: model openai/deepseek-v4-flash + base_url llama-swap. W 2026 naprawiono dwa błędy ważne dla Ciebie: globalna blokada serializowała wszystkie wywołania LLM między rozmowami — marnując równoległe sloty (#16459), a błędne wywołanie narzędzia w historii blokowało llama-server (sdk#2887).

Wielu agentów i hybryda. Agenci z plików mają model: inherit albo nazwany profil LLM — orkiestrator na Claude, subagenci na profilu lokalnym. route_task_to_model przełącza profil w trakcie rozmowy, MultimodalRouter wysyła obrazy do modelu z wizją, a tekst do tańszego.

Głos i obraz. Canvas v1.25.0 (6.10.2026) dodał wejście głosowe: rozpoznawanie w przeglądarce albo dowolny endpoint transkrypcji OpenAI-compatible (np. lokalny Whisper). Obrazy na wejściu i zrzuty ekranu z przeglądarki.

Bezpieczeństwo. Kontener na rozmowę, backendy VM / K8s, polityki potwierdzeń i analizator ryzyka. Uwaga: tryb bezgłowy CLI zawsze zatwierdza wszystko, a instalacja bez Dockera ma pełny dostęp do dysku.

Słabe strony. Ciężki i szybko zmieniający się (V0 → SDK V1 → Agent Canvas; samodzielne CLI zepchnięte na bok).

Co warto ukraść. Agent jako „model" za bramką OpenAI — każdy klient, także platforma głosowa, może zawołać całego agenta; subagenci w Markdown z model: inherit | <profil>; kontener na rozmowę; specyfikacja automatyzacji (wyzwalacz, harmonogram, model, powiadomienia) jako plik JSON w repozytorium.

Źródła: lokalne modele · agenci z plików · bramka OpenAI · #16459


4. Hermes Agent

Kategoria: osobisty agent zawsze włączony · Licencja: MIT · ⭐ 252,7k · Wydanie: v0.21.6 (8.10.2026) · Wynik: 81 (A5 B4 C4 D4 E2 F4)

Czym jest. Agent Nous Research z pętlą uczenia: sam pisze i poprawia swoje umiejętności (skills), dba o pamięć i przeszukuje dawne sesje. Działa na terminalu lokalnym, w Dockerze, przez SSH albo w chmurowej piaskownicy; odpowiada z 25+ komunikatorów (Telegram, Signal, WhatsApp, Discord, e-mail, Matrix i inne).

Przewaga. Wzorzec „planista z czołówki, tani wykonawcy" jest wpisany w konfigurację; najmocniejszy cron w swojej kategorii (strażnicy bez agenta, ciągłość między uruchomieniami, deduplikacja incydentów); głos w CLI i komunikatorach.

Lokalny model.

model:
  provider: custom
  base_url: http://localhost:8080/v1
  default: deepseek-v4-flash
  context_length: 131072      # ustaw jawnie — autodetekcja spada do 128K

Wbudowany runtime na AMD wybiera Vulkan — na R9700 zostań przy własnym llama-swap.

Wielu agentów i hybryda. Model główny na Anthropic (Opus 5.5 jest w katalogu), wykonawcy przez delegation: {provider, model, base_url}. delegation.max_concurrent_children ma domyślnie 10 — zmniejsz do 4. Zadania poboczne (wizja, kompresja, recenzja w tle) mają osobne modele; recenzję w tle przekieruj, bo inaczej podwaja obciążenie slotów.

Głos i obraz. Push-to-talk w CLI, odpowiedzi głosowe na Telegramie i Discordzie. STT: lokalny faster-whisper (język: stt.local.language). TTS: domyślnie Edge TTS — darmowa usługa w chmurze Microsoftu, z polskimi głosami; do tego ElevenLabs, OpenAI albo lokalny NeuTTS (polski niepotwierdzony w dokumentacji). Czyli: rozpoznawanie mowy lokalnie, synteza domyślnie w chmurze. Od v0.20 strumieniowanie z przerywaniem w pół zdania. Obrazy trafiają natywnie do modelu z wizją; dla tekstowego DeepSeeka opis robi narzędzie vision_analyze z osobnym modelem wizyjnym.

Bezpieczeństwo. „Smart approvals" (pomocniczy LLM ocenia oznaczone komendy) plus twarda lista zakazów, Docker bez uprawnień, usuwanie sekretów ze środowiska narzędzi, parowanie rozmów jednorazowym kodem.

Słabe strony. Ogromne tempo zmian (około 2100 PR między dwiema kolejnymi wersjami) — przypinaj wersje. Repozytorium ma około 18 tys. plików, więc do nauki się nie nadaje. Uszkodzenia bazy stanu wymagały osobnego wydania naprawczego. Płatny portal Nous promowany przy instalacji.

Co warto ukraść. Delegacja z output_schema i jedną turą naprawy; wykrywanie zawieszenia po braku postępu, nie po zegarze; zamrożona migawka pamięci na sesję (stały prefiks = działający prompt cache); strażnicy cron „bez agenta", którzy alarmują tylko przy niepustym wyniku; filtr halucynacji Whispera.

Źródła: delegacja · dostawcy · głos · cron · wydania


5. Pydantic AI

Kategoria: framework Python (typowany) · Licencja: MIT · ⭐ 20,5k · Wydanie: v2.55.0 (9.10.2026) · Wynik: 81 (A5 B4 C4 D4 E3 F3)

Czym jest. Framework od twórców Pydantic. Agent prowadzi walidowaną pętlę narzędzi i wyników; od v2 (23.06.2026) „capabilities" łączą narzędzia, haki i ustawienia w moduły: subagenci, planowanie, pamięć, kompakcja, code mode, głos w czasie rzeczywistym, trwałe wykonanie.

Przewaga. Najlepsze wyjście strukturalne (tryby tool / native / prompted z walidacją i ponowieniami) i — jako jedyny sprawdzony framework — współdzielony limiter współbieżności na model. To dokładnie Twoje 4 sloty. Trwałe wykonanie przez Temporal, DBOS, Prefect albo Restate.

Lokalny model i limit 4 slotów.

from pydantic_ai import Agent, ConcurrencyLimitedModel, ConcurrencyLimiter
from pydantic_ai.models.openai import OpenAIChatModel
from pydantic_ai.providers.openai import OpenAIProvider

local = OpenAIProvider(base_url="http://localhost:8080/v1", api_key="none")
pool = ConcurrencyLimiter(max_running=4, name="llama-swap")          # 4 sloty, wspólne dla modeli
ds = ConcurrencyLimitedModel(OpenAIChatModel("deepseek-v4-flash", provider=local), limiter=pool)
worker = Agent(ds, name="worker")
planner = Agent("anthropic:claude-opus-5-5")

Uwaga: agent zagnieżdżony w narzędziu też zajmuje slot — licz pulę dla rodzica i dziecka.

Wielu agentów i hybryda. Delegacja przez narzędzia, przekazania w kodzie, grafy (pydantic_graph); moduł subagentów daje orkiestratorowi menu modeli (SubAgents(models={…})), budżety, timeouty i max_depth.

Głos i obraz. agent.realtime(...) działa tylko z chmurowymi modelami (OpenAI Realtime, Gemini Live, xAI); lokalnie zostaje kaskada STT → agent → TTS, którą składasz sam. Obrazy i dokumenty na wejściu.

Bezpieczeństwo. Narzędzia wymagające zatwierdzenia (deferred tools), limity użycia i budżety per delegacja. Powłoka w module Coder jest nieograniczona — piaskownicę dodajesz sam.

Słabe strony. Heurystyki dla serwerów OpenAI-compatible (włączanie myślenia po pierwszym znaku nazwy modelu, #4878); bardzo szybkie wydania i łamiąca migracja v2; ogromne pliki rdzenia.

Co warto ukraść. Opakowanie modelu wymuszające nazwaną, współdzieloną pulę — z głębokością kolejki widoczną w śladach; tryby wyjścia wybierane według profilu modelu; budżety per delegacja z miękką i twardą porażką.

Źródła: PR #4149 — limit współbieżności · API zgodne z OpenAI · subagenci · #4878


6. Deep Agents

Kategoria: harness na LangGraph (w stylu Claude Code) · Licencja: MIT · ⭐ 30,1k · Wydanie: deepagents 0.7.23 (7.10.2026) · Wynik: 81 (A5 B4 C3 D4 E4 F4)

Czym jest. „Agent harness z bateriami" od LangChain: create_deep_agent() daje planowanie (lista zadań), system plików (wirtualny albo prawdziwy), subagentów z izolowanym kontekstem, kompakcję i odkładanie dużych wyników do plików, umiejętności, pamięć w AGENTS.md i człowieka w pętli. Do tego terminalowy agent dcode. Następca zarchiwizowanego (08.2026) Open Deep Research.

Przewaga. Gotowy przepis na „głębokiego agenta" postawiony na trwałości LangGraph, z wymiennymi backendami (stan, lokalny system plików, magazyn LangGraph, zdalne piaskownice).

Lokalny model. Dowolny model LangChain, np. ChatOpenAI(base_url="http://localhost:8080/v1", api_key="none"). Dziedziczy błędy LangChain z modelami lokalnymi (pułapka H2).

Wielu agentów i hybryda. Główny agent model=ChatAnthropic(...), subagenci {"name": "researcher", "model": ChatOpenAI(base_url=...)}. Kilka wywołań task w jednej turze to równoległość; asynchroniczni subagenci (start / check / update / cancel) działają w tle na serwerze.

Głos i obraz. Brak głosu; obrazy jako wiadomości multimodalne LangChain.

Bezpieczeństwo. Backendy piaskownic (Modal, Runloop, własne), reguły uprawnień do plików, interrupt_on per narzędzie.

Słabe strony. Wersje 0.x z dziesiątkami wydań; brak limitu współbieżności dla równoległych task; bez głosu.

Co warto ukraść. System plików jako notatnik agenta i odkładanie dużych wyników narzędzi do plików zamiast do kontekstu; narzędzie task ze świeżym kontekstem; zestaw narzędzi do sterowania subagentami w tle.

Źródła: przegląd · subagenci · subagenci asynchroniczni · repozytorium


7. Strands Agents

Kategoria: SDK Python/TS + gotowy harness (AWS) · Licencja: Apache-2.0 · ⭐ 8,8k · Wydanie: harness 0.2.0 (8.10.2026) · Wynik: 80 (A4 B5 C4 D4 E3 F3)

Czym jest. SDK od AWS, w którym model prowadzi prostą pętlę (narzędzia, haki, przerwania, sterowanie, sesje, wzorce wieloagentowe), plus create_harness() — złożony agent z domyślnymi narzędziami (powłoka, pliki, sieć, lista zadań, subagenci, checkpointy, pamięć). Repozytorium przemianowano na harness-sdk.

Przewaga. Natywny dostawca LlamaCppModel, który wykorzystuje funkcje llama.cpp (gramatyki, zaawansowane próbkowanie, cache_prompt), zamiast traktować serwer jak „kolejne OpenAI". Do tego routing modeli (klasyfikator, fallback) i OpenTelemetry domyślnie.

Lokalny model. LlamaCppModel(base_url="http://localhost:8080", model_id="deepseek-v4-flash"). Znane: modele bez wpisu w tabeli okien kontekstu dostają domyślnie 200k (#4620, pułapka H3).

Wielu agentów i hybryda. Agent(model=AnthropicModel(model_id="claude-opus-5-5"), tools=[worker_tool]) orkiestruje wykonawców na LlamaCppModel; wzorce agents-as-tools, Swarm, Graph, A2A.

Głos i obraz. BidiAgent (GA 5.10.2026) — tylko modele chmurowe (Nova Sonic, OpenAI Realtime, Gemini Live). Obrazy jako bloki treści.

Bezpieczeństwo. Moduł sandbox, guardrails, interwencje i sterowanie (steering) w pętli.

Słabe strony. Domyślne ustawienia pod AWS / Bedrock; limit współbieżności w Pythonie dopiero w PR (#3156); około 40 wydań w 2026.

Co warto ukraść. Dostawca wykorzystujący gramatyki i cache_prompt llama.cpp; routing tanie / drogie klasyfikatorem; śledzenie każdej decyzji pętli domyślnie.

Źródła: dostawca llama.cpp · harness · wzorce wieloagentowe · #4620


8. OpenCode

Kategoria: agent kodujący (TUI, desktop, serwer HTTP) · Licencja: MIT · ⭐ 212,6k · Wydanie: v1.19.0 (11.10.2026) · Wynik: 80 (A5 B4 C3 D5 E3 F3)

Czym jest. Agent kodujący od byłego zespołu SST (Anomaly Innovations); repozytorium przeniesiono z sst/opencode do anomalyco/opencode. TUI jest tylko jednym z klientów serwera opencode serve.

Przewaga. Architektura klient–serwer (OpenAPI 3.1 + zdarzenia SSE, SDK w JS) i pierwszorzędni agenci oraz subagenci z własnym modelem i uprawnieniami. Podłączenie llama-server jest proste i opisane w dokumentacji.

Lokalny model (opencode.json):

"provider": {
  "llama": {
    "npm": "@ai-sdk/openai-compatible",
    "options": { "baseURL": "http://localhost:8080/v1" },
    "models": { "deepseek-v4-flash": { "limit": { "context": 131072, "output": 16384 } } }
  }
}

Znany błąd: dołączona biblioteka przerywa turę, gdy strumień niesie function.name: null (#52462).

Wielu agentów i hybryda. Agent plan / build na anthropic/claude-opus-5-5, subagenci na llama/deepseek-v4-flash — model ustawiany per agent. Od 9.01.2026 Anthropic blokuje logowanie subskrypcją Pro/Max w narzędziach firm trzecich — potrzebny klucz API.

Głos i obraz. Brak własnego głosu (prośba #33300; tylko wtyczki społeczności). Załączniki obrazów są skalowane przed wysłaniem i działają z modelem, który ma wizję.

Bezpieczeństwo. Reguły allow / ask / deny z wzorcami, np. "bash": {"kubectl get *": "allow", "rm *": "deny"}. Brak piaskownicy systemowej; zgłoszono obejścia reguły external_directory.

Słabe strony. Szybkie zmiany i łamiące API serwera V2 (źle dla osadzania teraz); wycieki pamięci w trybie serwera; brak głosu.

Co warto ukraść. Bezgłowy serwer z OpenAPI jako rdzeń, a każde UI jako klient; agenci jako pliki Markdown z model / permission / steps; permission.task — które subagenty wolno wołać; hak przepisujący opisy narzędzi per model (obejście problemów z gramatyką llama.cpp).

Źródła: dostawcy · agenci · serwer · #52462


9. DeerFlow

Kategoria: „super-agent" do długich zadań (badania, kod, treści) · Licencja: MIT · ⭐ 83,7k · Wydanie: v2.1.0 (24.09.2026) · Wynik: 79 (A5 B4 C3 D4 E3 F4)

Czym jest. Platforma ByteDance na LangGraph: agent prowadzący deleguje do subagentów działających w piaskownicach (lokalnie, Docker, Kubernetes); pamięć długoterminowa, umiejętności, MCP, zadania planowane, kanały komunikatorów. Wersja 2.0 (28.02.2026) to przepisanie od zera.

Przewaga. Rodowód deep research plus dojrzały runtime wieloagentowy; jawne nadpisanie modelu per subagent, w przykładowej konfiguracji opisane wprost jako „lokalny model dla oszczędności".

Lokalny model (config.yaml):

models:
  - name: deepseek-local
    use: langchain_openai:ChatOpenAI
    model: deepseek-v4-flash
    api_key: no-key
    base_url: http://localhost:8080/v1
    request_timeout: 600.0
    supports_vision: false

Wielu agentów i hybryda. Agent prowadzący na langchain_anthropic:ChatAnthropic, subagenci z model: deepseek-local. Limity: liczba subagentów na uruchomienie i sufity tokenów.

Głos i obraz. Brak głosu w wersji 2.0. supports_vision: true włącza narzędzie view_image; przeglądarka Playwright robi zrzuty ekranu.

Bezpieczeństwo. Piaskownica lokalna, Docker albo Kubernetes; domyślnie nasłuch tylko na loopback; README ostrzega, że administrator bramki to w praktyce wykonanie kodu.

Harmonogram. Zadania once / cron / interval z celem, warunkiem stopu i limitem uruchomień; Telegram (long polling) i Slack.

Słabe strony. Trudne wdrożenie (Postgres i Redis przy wielu workerach); na lokalnych modelach wolny i podatny na pętle (#1055); kanały nastawione na chińskie platformy; historia ucieczek z piaskownicy; brak głosu.

Co warto ukraść. Izolowany albo „migawkowy" kontekst przekazywany subagentowi; sufity tokenów per subagent; zadania planowane z oceną celu i warunkiem stopu; komunikatory przez long polling, bez publicznego webhooka.

Źródła: repozytorium · config.example.yaml · #1055


10. ZeroClaw

Kategoria: osobisty agent (jeden plik binarny Rust) · Licencja: MIT lub Apache-2.0 · ⭐ 33,0k · Wydanie: v0.8.5 (5.09.2026) · Wynik: 78 (A4 B4 C4 D4 E2 F5)

Czym jest. Runtime agenta w jednym pliku binarnym: 20+ dostawców LLM, 30+ kanałów, narzędzia powłoki, przeglądarki, HTTP i MCP pod polityką bezpieczeństwa. Z rodziny „Claw" (alternatywy dla OpenClaw). Uwaga na podróbki — oficjalne jest tylko zeroclaw-labs/zeroclaw.

Przewaga. Najgłębszy konfigurowalny model bezpieczeństwa: profile ryzyka, poziomy autonomii ReadOnly / Supervised / Full (domyślnie supervised), automatyczny wybór piaskownicy (Landlock → Bubblewrap → Firejail → Docker), podpisane HMAC potwierdzenia wywołań narzędzi, silnik procedur (SOP) z bramkami zatwierdzeń.

Lokalny model. Sekcja [providers.models.llamacpp.<alias>] z uri, chat_template_kwargs, vision. Ustaw native_tools = true — domyślnie lokalne endpointy dostają narzędzia w trybie tekstowym.

Wielu agentów i hybryda. Każdy [agents.<alias>] ma własny profil dostawcy, więc koordynator na Claude może delegate do agentów na slocie llamacpp. Delegacja jest domyślnie zabroniona — trzeba ją świadomie włączyć.

Głos i obraz. Piper jako lokalny TTS, rozmowy telefoniczne przez operatorów SIP. Obrazy dla tekstowego modelu przekierowywane do osobnego dostawcy wizji.

Bezpieczeństwo. Domyślnie supervised: działania średniego ryzyka wymagają zatwierdzenia, wysokiego są blokowane; zatwierdzenia kworum; tryb YOLO tylko na maszyny deweloperskie.

Słabe strony. Duża złożoność konfiguracji (cztery sekcje TOML), wiele otwartych zgłoszeń, rozdmuchiwanie kontekstu przez powtarzanie rozumowania (#10396).

Co warto ukraść. Profile ryzyka oddzielone od agentów i delegacja domyślnie zabroniona; wspólne budżety akcji i kosztów, których subagent nie obejdzie; przekierowanie obrazów do dedykowanego modelu.

Źródła: konfiguracja dostawców · delegacja · wiele modeli


11. Microsoft Agent Framework

Kategoria: SDK Python / .NET / Go z silnikiem workflow · Licencja: MIT · ⭐ 14,1k · Wydanie: python-1.21.0 (8.10.2026) · Wynik: 77 (A5 B3 C3 D4 E3 F5)

Czym jest. Następca AutoGen i Semantic Kernel (AutoGen jest w trybie utrzymania; Python 1.0 GA 2.04.2026). Agenci, klienci czatu dla wielu dostawców, middleware, sesje i typowany WorkflowBuilder z checkpointem po każdym kroku.

Przewaga. Stabilne API 1.x z obietnicą długiego wsparcia; gotowe orkiestracje Sequential, Concurrent, Handoff, Group Chat i Magentic (menedżer koordynujący specjalistów); najmocniejsza historia bezpieczeństwa: etykiety przepływu informacji FIDES przeciw prompt injection i CodeAct w mikro-VM Hyperlight.

Lokalny model. OpenAIChatCompletionClient(model="deepseek-v4-flash", base_url="http://localhost:8080/v1", api_key="none"). Pułapka H1: w Pythonie OpenAIChatClient oznacza teraz Responses API. Gubienie reasoning_content naprawiono dopiero we wrześniu 2026 (#8382).

Wielu agentów i hybryda. Menedżer Magentic albo planista na AnthropicClient, wykonawcy na kliencie lokalnym — każdy agent ma własnego klienta.

Głos i obraz. Wejście audio do modeli, które je obsługują, ale bez agentów głosowych w czasie rzeczywistym w Pythonie; obrazy jako treść wiadomości.

Bezpieczeństwo. FIDES (etykiety poufności i integralności, SecureMCPToolProxy) i CodeAct w mikro-VM Hyperlight. FIDES nie działa wewnątrz zagnieżdżonych wywołań CodeAct (#9251).

Słabe strony. Przykłady nastawione na Azure / Foundry; zmiany łamiące nawet po GA; brak głosu w czasie rzeczywistym w Pythonie.

Co warto ukraść. Checkpoint po każdym kroku z bezpiecznym deserializerem (lista dozwolonych typów); haki response_parser / message_preparer na dziwactwa dostawców — idealne na pola rozumowania llama.cpp; menedżer z rejestrem zadań (Magentic).

Źródła: dostawca OpenAI · checkpointy · orkiestracje · #8382


12. DeepSeek Harness

Kategoria: harness od DeepSeek (Web UI, tryb bezgłowy, SDK) · Licencja: MIT · ⭐ 247,3k · Wydanie: dsh-v0.2.1-alpha.2 (9.10.2026, przedpremierowe) · Wynik: 76 (A5 B4 C3 D3 E3 F4)

Czym jest. Oficjalny harness DeepSeek (opublikowany 13.08.2026) zbudowany z wtyczek Cordis: adaptery modeli, narzędzia, piaskownica, subagenci, harmonogram, UI, a nawet sama pętla agenta to wymienne wtyczki składane w „profile". Warstwę LLM bierze z Pi (nr 13).

Przewaga. Strojenie pod DeepSeek V4 od producenta modelu (format myślenia, wysiłek rozumowania) i subagenci, którymi mogą być inne harnessy: Claude Code, Codex, dowolny agent ACP albo kolejna instancja dsh.

Lokalny model. Settings → Models → „Custom model API": base URL i protokół openai-completions. Dla llama-server zwykle supportsDeveloperRole: false i maxTokensField: max_tokens, a dla DeepSeek V4 compat.thinkingFormat: deepseek. Znany błąd: obrazy WebP psują sesję llama.cpp (#7406).

Wielu agentów i hybryda. W obie strony: lokalny DeepSeek jako rodzic deleguje do dziecka Claude Code (z ustalonym permissionMode), albo rodzic na Anthropic, a dzieci dsh na lokalnym modelu. maxActiveSubagents ma domyślnie 8 — ustaw 4. To nie jest gotowy preset „Claude planuje, lokalni wykonują" — układ składasz z wtyczek w profilu.

Głos i obraz. Eksperymentalne STT; lokalny SenseVoice nie obsługuje polskiego. Obrazy włączane per model (input: [text, image]).

Bezpieczeństwo. Domyślna piaskownica read-only, zestawy uprawnień (piaskownica + polityka zatwierdzeń), oczyszczone środowisko procesów potomnych.

Słabe strony. Wersja przedpremierowa — README ostrzega wielkimi literami przed zmianami łamiącymi zgodność. Brak zakładki Issues (błędy trafiają do Discussions); słaba dokumentacja konfiguracji poza UI.

Co warto ukraść. Profil compat per model (rola developer, nazwa pola max_tokens, format myślenia) zamiast zgadywania po adresie URL; subagent-dostawca opakowujący inne harnessy; bezpieczny domyślny tryb tylko do odczytu.

Źródła: README · dostawcy · SAFETY.md


13. Pi

Kategoria: minimalny harness kodujący + biblioteki TS · Licencja: MIT · ⭐ 114,2k · Wydanie: v1.1.0 (7.10.2026) · Wynik: 76 (A4 B5 C3 D4 E5 F1)

Czym jest. „Minimalny, rozszerzalny harness, który możesz uczynić swoim" (Mario Zechner, od 2026 w Earendil): terminalowy agent pi i biblioteki, na których stoi (pi-ai — warstwa wielu dostawców, pi-agent-core, pi-durable). Jego warstwy używają inne projekty, np. DeepSeek Harness.

Przewaga. Mały rdzeń z wyjątkowo głębokim API rozszerzeń: własne narzędzia, bramki uprawnień, przekierowanie narzędzi przez SSH albo do mikro-VM, „wirtualne modele" kierujące każde zapytanie do innego fizycznego modelu. Pierwszorzędna obsługa llama.cpp i cztery poziomy osadzania: TUI, --print / --mode json, --mode rpc, SDK.

Lokalny model. Dla llama-swap użyj ogólnej ścieżki ~/.pi/agent/models.json (baseUrl, "api": "openai-completions") — wbudowane /llama zakłada llama-server w trybie routera.

Wielu agentów i hybryda. Subagenci (oficjalne rozszerzenie-przykład) w osobnych procesach, opisani w Markdown z polem model: — jeden na Anthropic, drugi lokalnie. Wirtualne modele: łatwe tury lokalnie, trudne do Claude, z kosztem per model w podsumowaniu sesji.

Głos i obraz. Brak głosu. Obrazy wklejane do terminala, @obraz w prompcie, narzędzie read czyta obrazy.

Bezpieczeństwo. Brak zatwierdzeń i piaskownicy — z założenia. Uruchamiaj w kontenerze albo piaskownicy (patrz 02-KLOCKI.md).

Słabe strony. Subagenci to przykład, nie rdzeń; zgłoszenia nowych osób są automatycznie zamykane.

Co warto ukraść. Jeden rdzeń, wiele trybów osadzenia; wirtualne modele z zapisem fizycznego modelu przy każdej wiadomości; codemode — model pisze JS, który woła narzędzia równolegle i filtruje wyniki, zanim trafią do kontekstu (oszczędza tokeny na wolnym modelu lokalnym). Obok mini-swe-agent — najlepszy kod do nauki z całej listy.

Źródła: README agenta · llama.cpp · modele · bezpieczeństwo


14. gptme

Kategoria: agent terminalowy + agenci autonomiczni · Licencja: MIT · ⭐ 4,4k · Wydanie: v0.34.0 (18.09.2026) · Wynik: 75 (A4 B4 C4 D3 E4 F3)

Czym jest. „Osobisty agent AI, który działa wszędzie tam, gdzie terminal" — rozwijany od 2023, lokalny w pierwszej kolejności: powłoka, Python, pliki, przeglądarka, wizja, subagenci, MCP.

Przewaga. Wymienny format narzędzi: domyślnie bloki kodu Markdown, do tego XML i natywny — działa więc tam, gdzie parsowanie wywołań narzędzi w llama.cpp zawodzi. gptme service init generuje usługę i timer systemd dla agenta działającego stale.

Lokalny model. OPENAI_BASE_URL=http://localhost:8080/v1 gptme -m local/deepseek-v4-flash; przy zapętlaniu: --tool-format xml.

Wielu agentów i hybryda. Rodzic na anthropic/claude-…, subagenci na local/…; subagentem może być też inny harness przez ACP (np. Claude Code). Izolacja w git worktree.

Głos i obraz. Rozmowa w czasie rzeczywistym tylko przez chmurowe API (OpenAI, xAI); lokalny TTS Kokoro (bez polskiego). Wizja, zrzuty ekranu, sterowanie pulpitem, przeglądarka Playwright.

Bezpieczeństwo. Potwierdzenia domyślnie włączone; trzystopniowa polityka powłoki: komendy tylko do odczytu przechodzą same, lista zakazów (np. git push -f, | bash) blokuje, reszta pyta. Piaskownica systemowa jest niedojrzała.

Słabe strony. Heurystyczne parsowanie Markdown; mała społeczność; dużo zmian pisze jego własny agent autonomiczny, więc tempo i rotacja kodu są wysokie.

Co warto ukraść. Format narzędzi jako parametr, z rankingiem model × format; trzy tryby izolacji subagenta (wątek, podproces, ACP); szkielet usługi systemd z promptem i dziennikiem dla agenta stałego.

Źródła: dostawcy · formaty narzędzi · subagenci


15. Moltis

Kategoria: osobisty serwer agenta (jeden plik binarny Rust) · Licencja: MIT · ⭐ 2,9k · Wydanie: 20260913.02 (14.09.2026) · Wynik: 74 (A4 B4 C4 D2 E3 F5)

Czym jest. Jeden plik binarny z UI webowym, aplikacją PWA na telefon i bramką komunikatorów: pętla agenta, pamięć, głos, harmonogram, MCP i piaskownice. Importuje konfigurację i umiejętności OpenClaw.

Przewaga. Najbardziej kompletny „jeden plik": wbudowane lokalne STT i TTS, wybór piaskownicy (Podman, Docker, WASM, host z ograniczeniami), Prometheus / OTLP / Langfuse, podpisane wydania i brak marketplace'u wtyczek („nie ma przez co zostać zaatakowanym").

Lokalny model. [providers.custom-llamaswap] z base_url = "http://localhost:8080/v1" i tool_mode = "auto" | "native" | "text". Wbudowany backend GGUF nie ma ścieżki ROCm — użyj llama-swap.

Wielu agentów i hybryda. Koordynator na anthropic/…, presety wykonawców z model = "custom-llamaswap/deepseek-v4-flash" (dokładny format nazwy dla własnego dostawcy niezweryfikowany — sprawdź nazwy w /v1/models), własnymi narzędziami, piaskownicą i zakresem pamięci. Preset coordinator ma delegate_only = true. Heartbeat może działać na osobnym, lokalnym modelu.

Głos i obraz. Najmocniejszy lokalny stos w kategorii: STT lokalnie (Whisper, Sherpa-ONNX, Voxtral), TTS lokalnie (Piper z polskimi głosami, Coqui), odpowiedzi jako notatki głosowe na Telegramie. Obrazy przez dostawców z wizją; zrzuty ekranu i przeglądarka.

Bezpieczeństwo. backend = "auto" wybiera piaskownicę (Podman → Docker → host z ograniczeniami); approval_mode, zatwierdzanie zapisu i edycji, haki przed wywołaniem narzędzia, ochrona przed SSRF.

Słabe strony. Praktycznie jeden opiekun (około 3,6 tys. commitów lidera wobec <100 następnej osoby); status alfa; obawy o samomodyfikujące się umiejętności.

Co warto ukraść. Presety łączące model, narzędzia, piaskownicę i zakres pamięci + koordynator, który tylko deleguje — gotowy szablon „Opus planuje, lokalni wykonują"; znaczniki czasu poza promptem systemowym (pułapka H4); automatyczny checkpoint przed zmianą pamięci albo umiejętności.

Źródła: dostawcy · presety agentów · głos


16. QwenPaw

Kategoria: osobisty „Agent OS" (Alibaba AgentScope) · Licencja: Apache-2.0 · ⭐ 35,6k · Wydanie: v2.2.1 (11.09.2026) · Wynik: 74 (A4 B4 C3 D4 E3 F4)

Czym jest. Dawniej CoPaw: asystent z konsolą webową, TUI i aplikacją desktop, trójwarstwową pamięcią, umiejętnościami, MCP / A2A / ACP, wieloma agentami i kanałami komunikatorów.

Przewaga. Wielowarstwowe bezpieczeństwo: piaskownica jądra (Bubblewrap / Landlock), Tool Guard z poziomami zatwierdzeń, ochrona plików z sekretami, skaner umiejętności przed aktywacją. Routing modelu per agent od v2.2.1.

Lokalny model. Dostawca własny w trybie OpenAI chat.completions. Ustaw okno kontekstu ręcznie — katalog chmurowy bywa stosowany do lokalnego aliasu (#7979, pułapka H3).

Wielu agentów i hybryda. Niezależni agenci z własnym modelem i pamięcią; spawn_subagent z izolacją w git worktree.

Głos i obraz. Transkrypcja przez Whisper API albo lokalny Whisper (otwarte błędy, np. #8035); narzędzie view_media i obrazy z kanałów — potrzebny model z wizją.

Bezpieczeństwo. Opisane w przewadze: piaskownica jądra, Tool Guard z poziomami STRICT / SMART / AUTO / OFF, ochrona plików z sekretami, skaner umiejętności.

Słabe strony. Kanały nastawione na Chiny (DingTalk zalecany; brak WhatsAppa i Signala), ponad 1000 otwartych zgłoszeń i PR, otwarte błędy transkrypcji.

Co warto ukraść. Silnik reguł Tool Guard z poziomami; skaner umiejętności przed aktywacją; „Scroll Context" — indeksuj usunięte tury zamiast je stratnie streszczać; okno kontekstu brane z serwera, nigdy z katalogu nazw.

Źródła: modele · wielu agentów · #7979


17. OpenAI Agents SDK

Kategoria: lekkie SDK wieloagentowe (Python) · Licencja: MIT · ⭐ 30,0k · Wydanie: v0.23.1 (2.10.2026) · Wynik: 74 (A4 B3 C3 D4 E5 F4)

Czym jest. Mały zestaw prymitywów: Agent, Runner, narzędzia, przekazania (handoffs), agenci-jako-narzędzia, guardrails, sesje, RunState; do tego agenci w piaskownicy i potok głosowy.

Przewaga. Najprostszy model mentalny z listy; serializowalny RunState (wstrzymaj → zatwierdź → wznów nawet po godzinach); VoicePipeline z wymiennym STT i TTS.

Lokalny model. OpenAIChatCompletionsModel(model="deepseek-v4-flash", openai_client=AsyncOpenAI(base_url="http://localhost:8080/v1", api_key="none")) oraz set_tracing_disabled(True) — inaczej eksport śladów do OpenAI zwraca 401. Domyślne Responses API nie działa z llama-server (pułapka H1).

Wielu agentów i hybryda. Każdy Agent(model=...) osobno; Claude przez adapter LiteLLM albo any-llm (brak natywnego dostawcy Anthropic). Przy LiteLLM przypnij wersje — patrz 02-KLOCKI.md.

Głos. VoicePipeline = STT → Twój workflow → TTS; domyślnie modele OpenAI, ale interfejsy są wymienne, więc lokalny Whisper i Piper wchodzą przez własne adaptery.

Bezpieczeństwo. Agenci w piaskownicy (lokalnie dla zaufanego kodu albo w Dockerze), guardrails wejścia i wyjścia, redakcja błędów narzędzi (v0.23.0). Obrazy przechodzą jako części wiadomości.

Słabe strony. Domyślne ustawienia OpenAI do nadpisania; wyjście strukturalne tłumiło wywołania narzędzi na ścisłych serwerach (#3709, naprawione); wersje 0.x.

Co warto ukraść. RunState z listą przerwań i API zatwierdź / odrzuć; filtry wejścia przy przekazaniach; guardrails jako „bezpieczniki" działające równolegle z agentem.

Źródła: modele · repozytorium · wydanie v0.23.0


18. n8n

Kategoria: platforma automatyzacji (wizualna, fair-code) · Licencja: Sustainable Use License · ⭐ 207,0k · Wydanie: n8n@2.42.6 (9.10.2026) · Wynik: 73 (A4 B3 C4 D5 E3 F2)

Czym jest. Wizualny edytor przepływów z węzłami agentów, samodzielnie hostowany, z ogromnym katalogiem integracji.

Przewaga. Najszerszy zestaw wyzwalaczy i integracji (cron, webhooki, RSS z deduplikacją, e-mail, Telegram, Google Sheets…) i zatwierdzanie przez człowieka per narzędzie, wysyłane na Telegram, Slack albo e-mail. Najszybsza droga od pomysłu do działającego alertu.

Lokalny model. Poświadczenie OpenAI ma pole „Base URL" → http://localhost:8080/v1. W węźle OpenAI Chat Model wyłącz „Use Responses API" — z llama.cpp kończyło się błędem 400 (#26639, pułapka H1).

Wielu agentów i hybryda. Agent-orkiestrator z węzłem Anthropic Chat Model, agenci-narzędzia (AI Agent Tool) z modelem lokalnym — model wybierany per węzeł.

⚠️ Licencja. Sustainable Use License to nie open source w rozumieniu OSI: wolno używać wewnętrznie i we własnych procesach, nie wolno oferować n8n jako usługi; pliki .ee. są na licencji komercyjnej.

⚠️ Bezpieczeństwo. Krytyczna luka CVE-2026-21858 (7.01.2026): nieuwierzytelniony dostęp do plików przez obsługę webhooków, który według ostrzeżenia australijskiego CERT-u (ACSC) pozwala na zdalne wykonanie kodu bez logowania. Nie wystawiaj instancji do internetu bez aktualizacji. Limit współbieżności produkcyjnej nie obejmuje podprzepływów.

Głos i obraz. Brak pętli głosowej (do zbudowania: notatka głosowa z Telegrama → lokalny Whisper → agent → TTS); obrazy trafiają do modelu opcją „Automatically Passthrough Binary Images".

Co warto ukraść. Zatwierdzenie per narzędzie wysyłane na komunikator; wyzwalacze odpytujące z zapamiętanym stanem (RSS odpala tylko nowe pozycje); osobna kolejka FIFO dla wykonań produkcyjnych.

Źródła: licencja · AI Agent Tool · człowiek w pętli · porady bezpieczeństwa


19. LibreChat

Kategoria: wieloosobowa platforma czatu z agentami · Licencja: MIT · ⭐ 45,5k · Wydanie: v0.8.8 (1.10.2026) · Wynik: 73 (A5 B3 C3 D4 E2 F4)

Czym jest. Platforma w stylu ChatGPT łącząca dostawców chmurowych i własne endpointy OpenAI-compatible: agenci z narzędziami, MCP, kodem i pamięcią, zespoły subagentów i Agents API. Przejęta przez ClickHouse; repozytorium przeniesiono do LibreChat-AI.

Przewaga. Prawdziwy wybór dostawcy i modelu per agent, zapisane zespoły subagentów jako małe grafy (DAG), otwartoźródłowy interpreter kodu (NsJail albo mikro-VM libkrun), reguły zatwierdzeń, Prometheus / OpenTelemetry / Langfuse.

Lokalny model. librechat.yaml → endpoints.custom[] z baseURL: "http://localhost:8080/v1". Dla DeepSeeka customParams.includeReasoningContent: true (pułapka H2); okno kontekstu ustaw jawnie (#14228).

Wielu agentów i hybryda. Agent-rodzic na Anthropic tworzy dzieci przypięte do endpointu llama.cpp (agent_ids albo graf zespołu); maxSubagents domyślnie 10.

Głos i harmonogram. STT i TTS konfigurowalne, także lokalne usługi zgodne z OpenAI; bez rozmów na żywo. „Scheduled Chats" — eksperymentalne, od v0.8.8.

Bezpieczeństwo i obraz. Reguły zatwierdzeń deny → ask → allow, egzekwowane też w uruchomieniach bezgłowych i planowanych; tryby zatwierdzania kodu; interpreter w NsJail albo mikro-VM libkrun. Natywne przesyłanie obrazów, OCR i generowanie obrazów.

Słabe strony. Ciężki stos (MongoDB, Meilisearch, pgvector); dużo funkcji w becie; powracające błędy schematów narzędzi z llama.cpp; regresja prompt cache (#16877); krytyczne CVE w obszarze MCP.

Co warto ukraść. Reguły zatwierdzeń w kolejności deny → ask → allow; zespoły subagentów jako DAG z agentem wejściowym i wynikowym; bezpieczniki harmonogramu (minIntervalMinutes, autoDisableAfterFailures).

Źródła: agenci · wydanie v0.8.8 · wydania


20. Kilo Code

Kategoria: agent kodujący (CLI, VS Code, JetBrains) · Licencja: MIT · ⭐ 27,6k · Wydanie: JetBrains 7.1.9 (8.10.2026) · Wynik: 73 (A5 B3 C3 D4 E3 F3)

Czym jest. Rozwidlenie OpenCode; od 2.04.2026 rozszerzenie VS Code działa na tym samym rdzeniu serwera. Naturalna ścieżka migracji dla użytkowników zarchiwizowanego Roo Code.

Przewaga. Rdzeń OpenCode + UI w VS Code i JetBrains, menedżer równoległych agentów w osobnych git worktree, osobny tani model do pamięci i kompakcji.

Lokalny model. Settings → Providers → „OpenAI Compatible" z Base URL; w CLI ~/.config/kilo/kilo.jsonc. Powtarzające się niezgodności schematów narzędzi z llama.cpp (#12773 — naprawione, #12408 — pułapka H7).

Wielu agentów i hybryda. Każdy agent i subagent przypina provider/model — główny na anthropic/claude-…, subagenci na llama-swap.

Głos i obraz. Eksperymentalne „Speech to Text" przez chmurowy Whisper OpenAI; obrazy w CLI prawdopodobnie jak w OpenCode (niezweryfikowane).

Bezpieczeństwo. Reguły uprawnień z wzorcami per agent, izolacja w git worktree, tryb prywatności maskujący dane osobowe; brak piaskownicy systemowej.

Słabe strony. Duża część funkcji „zawsze włączonych" (Cloud Agents, Slack) to płatna usługa; tryb Orchestrator wycofany w trakcie życia; ryzyko rozjazdu z upstreamem.

Co warto ukraść. Menedżer agentów w osobnych worktree; czytelne kody wyjścia w CI (124 = timeout).

Źródła: własni subagenci · CLI · #12773


Pozostali kandydaci (miejsca 21–64)

Przeszli kryteria wejścia (Paperclip i Hive — tylko pośrednio, przez adaptery), ale przegrali punktacją. Dla każdego jedno zdanie: dlaczego warto wiedzieć, że istnieje, i co go zatrzymało.

# Harness Kategoria Wynik Za Przeciw
21 Vercel AI SDK framework TS 72 standard warstwy modeli w TS, multimodalność agent to cienka warstwa; harmonogram i integracje DIY
22 Agent Zero osobisty 71 cały komputer w Dockerze na agenta, lokalny Whisper i Kokoro częste regresje wersji 2.x
23 nanobot osobisty 71 czytelny rdzeń Python do forkowania, API OpenAI-compatible subagenci dziedziczą model rodzica
24 Google ADK framework Py 70 najlepsze A2A, narzędzia ewaluacji, dev UI modele spoza Gemini przez LiteLLM — źródło błędów
25 Agno framework Py 70 kompletny runtime: harmonogram, kolejka, kanały, FinanceTools ogromny plik rdzenia, łamiąca v3
26 Qwen Code kodujący 70 mostek wizji dla modeli tekstowych, dyktowanie częste regresje schematów z llama.cpp
27 Haystack framework Py 70 najlepszy stos RAG i wyszukiwania limit współbieżności per potok, nie per model
28 OpenJarvis osobisty 70 lokalny w pierwszej kolejności, 15+ silników młody, badawczy kod
29 Open WebUI osobisty 69 najlepsze UI dla lokalnych modeli, głos subagenci zawsze na modelu rodzica; 158 porad bezpieczeństwa w 2026; licencja z klauzulą marki
30 Sim workflow 69 wizualne przepływy wieloagentowe, RSS co minutę, Apache-2.0 llama.cpp nieoficjalnie (#1637), pre-1.0
31 Codewhale kodujący 69 flota ról z modelami, lokalny /voice dryf w stronę konta i chmury, telemetria domyślnie
32 PicoClaw osobisty 69 lekki Go na słaby sprzęt brak piaskownicy systemowej, pre-1.0
33 Cline kodujący 68 świetny w IDE, podział Plan/Act na dwa modele zmiany formatu narzędzi psuły lokalne modele (#13008); dyktowanie płatne
34 CrewAI framework Py 68 najprostszy model ról i zadań błędy „pusta odpowiedź" z lokalnymi modelami; telemetria domyślnie
35 LlamaIndex Workflows framework Py 68 czytelny silnik zdarzeń, num_workers per krok firma skupia się na dokumentach
36 Reasonix kodujący 68 natywny tryb planista + wykonawca lokalne modele drugiej kategorii, jeden opiekun
37 Kestra workflow 68 YAML, limit współbieżności w OSS, pauza do zatwierdzenia Java, mniej wygodny do prototypów
38 Mastra framework TS 68 najpełniejszy stos TS atak na łańcuch dostaw npm (06.2026); komunikaty systemowe w środku rozmowy
39 Windmill workflow 68 najlepszy dla DevOps: skrypty, cron, webhooki limity współbieżności tylko w EE; AGPL + części zamknięte
40 OpenAI Agents SDK (JS) framework TS 67 najlepszy głos w czasie rzeczywistym w TS głos tylko z modelami OpenAI
41 Dify workflow 66 najlepsze RAG wśród narzędzi wizualnych licencja zabrania SaaS dla wielu klientów; ciężkie aktualizacje
42 LobeHub osobisty 66 najlepsze UI zespołów agentów licencja ogranicza dzieła pochodne
43 Langflow workflow 66 każdy projekt to serwer MCP brak harmonogramu, głos usunięty, seria porad bezpieczeństwa
44 VoltAgent framework TS 65 równoległe delegowanie do wielu subagentów wyzwalacze i konsola w płatnym SaaS
45 Crush kodujący 65 natywny typ dostawcy llama.cpp licencja FSL (nie OSI), brak piaskownicy
46 Omnigent meta-harness 65 łączy Claude Code, Codex i Pi w jednej sesji status alfa
47 OpenClaw osobisty 64 największy ekosystem, najwięcej kanałów, głos patrz README
48 BeeAI Framework framework Py 63 reguły użycia narzędzi pomagające słabym modelom mała społeczność
49 Cherry Studio osobisty 62 agent w stylu OpenClaw w aplikacji desktop ścieżka lokalnych agentów zabugowana; AGPL
50 NanoClaw osobisty 62 kontener na grupę agentów zbudowany wokół Claude; lokalnie tylko przez OpenCode
51 AG2 framework Py 62 wbudowany głos (kaskada i realtime) v1 niekompatybilne ze starym AutoGen
52 Open Interpreter kodujący 61 przepisany w Rust, „emulacja harnessu" per model wersje 0.0.x
53 Mistral Vibe kodujący 60 wbudowany głos głos chmurowy; brak Anthropic; błędy szablonów z llama.cpp
54 Paperclip meta-harness 60 „firma z agentów" z budżetami lokalny model tylko pośrednio (przez adaptery OpenCode albo Pi)
55 smolagents framework Py 60 najmniejszy czytelny rdzeń (CodeAgent) spowolnione utrzymanie, brak trwałości
56 mini-swe-agent kodujący 59 100 linii, tylko bash — świetny do nauki brak MCP i subagentów z założenia
57 CAMEL framework Py 58 szeroki katalog narzędzi od pół roku tylko wydania alfa
58 Jan osobisty 58 najlepsze UX lokalnych modeli na desktopie brak głosu; MCP z własnymi endpointami zepsute
59 Codex CLI kodujący 57 świetna piaskownica i CI od 02.2026 tylko Responses API; brak Anthropic
60 Letta Code framework TS 57 pamięć jako rdzeń teraz TypeScript, chmura domyślnie
61 IronClaw osobisty 55 narzędzia w WASM, ochrona sekretów przepisanie 1.0 zresetowało funkcje
62 Activepieces workflow 53 MIT i ogromna biblioteka integracji agenci wyłączeni w darmowej edycji Community
63 AnythingLLM osobisty 51 najprostsza instalacja brak wielu agentów (#2635)
64 Hive framework Py 50 „kolonie" agentów z odzyskiwaniem po awarii lokalny model tylko pośrednio (przez LiteLLM), bezpośrednie wsparcie to otwarte zgłoszenie (#7324)

Wykluczeni na wejściu

Nie spełnili któregoś z czterech warunków (licencja pozwalająca na self-hosting, udokumentowany lokalny endpoint OpenAI-compatible, aktywność: commit ≤ 3 miesiące i wydanie ≤ 6 miesięcy przed 11.10.2026, projekt nie jest oficjalnie zakończony).

Projekt Powód
Roo Code zarchiwizowany 15.05.2026 (kontynuacja społeczności: Zoo Code; migracja: Kilo Code)
Flowise wygaszony, zarchiwizowany 10.08.2026; niezałatane krytyczne luki zostaną niezałatane
Continue opiekunowie ogłosili koniec projektu (przejęcie przez Cursor; README: „no longer actively maintained"); ostatnie wydanie 2.0.0 z 19.06.2026
Plandex brak commitów od 3.10.2025
Aider ostatni commit 22.05.2026, ostatnie wydanie 9.08.2025 — w praktyce wstrzymany
Khoj ostatnie wydanie 26.03.2026, tryb utrzymania
Google ADK dla TypeScript brak dostawcy OpenAI-compatible (zgłoszenie #533 otwarte)
Grok Build brak wydań; pierwsze uruchomienie wymaga logowania do xAI (niezweryfikowane bez konta); w lipcu 2026 zgłoszono wysyłanie całych repozytoriów na serwer

Poza rankingiem

Świetne, ale to nie są harnessy — opisuję je w 02-KLOCKI.md:

  • DSPy — kompilacja programów LLM pod konkretny (także słaby, lokalny) model; Claude jako nauczyciel w GEPA.
  • forge — warstwa niezawodności wywołań narzędzi dla modeli lokalnych i kolejka slotów.
  • Trigger.dev — infrastruktura trwałych zadań z limitami współbieżności.