memoryJedna statická binárka — nad vaším coding CLI

mcptask runner – AI vývojár na vašom stroji. Dotiahne úlohy až do zlúčeného PR.

mcptask_runner premení vaše coding CLI — Claude Code, Codex CLI alebo OpenCode — na samostatného člena tímu. Funguje s Claude, Kimi, DeepSeek, lokálnou ollamou alebo akýmkoľvek modelom — bez viazanosti na jedného dodávateľa. Vyberie úlohu, napíše kód aj testy a otvorí PR. V režimoch auto-squash ho po zelenom CI zlúči; v manuálnych režimoch nechá PR otvorené na vašu kontrolu. Zadáte dobre špecifikovanú prácu, dostanete zelené PR.

mcptask_runner nenahrádza váš tím — násobí ho.

Úlohy si runner berie z mcptask.online — to je jeho jediný zdroj. Jiru, Linear ani GitHub Issues priamo nečíta.

Inštalácia jedným príkazom:

curl -fsSL https://github.com/jchsoft/mcptask-releases/releases/latest/download/install.sh | sh

Na macOS aj cez Homebrew:brew install jchsoft/tap/mcptask_runner

Mac počas úlohy zaspáva? Nechajte ho bdieť len počas behu programovacieho CLI: nastavtelauncher.command: [caffeinate, -i, claude]v config/mcptask_runner.yml.Ako sa nastavuje naplánovaná úloha

verified_user30 dní zadarmo. Bez kreditnej karty. Kedykoľvek zrušíte.

terminal
mcptask_runnermcptask_runner run today_auto_squash
→ Triage: difficulty=13, model=opus, complexity=high
→ Picking next task#142 (Export faktur do CSV)
→ Snapshotstarting → triage → processing
→ Branchfeature/142-invoice-csv-export
→ CI✓ green
→ PR auto-merged✓
→ Quota: 18% of daily budget used
1 príkazna štart
payments

Runner platíte ako každého ďalšieho používateľa

mcptask_runner je v účte používateľ a tarif ho počíta úplne rovnako ako kohokoľvek z tímu — žiadna zvláštna položka, žiadna zľava ani prirážka.

Tokeny modelu platíte zo svojho vlastného predplatného Claude, Codex alebo OpenCode. mcptask.online za ne nič neúčtuje.

Cenník a tarifyarrow_forward
storageVaše reálne prostredie

Na vašom stroji, proti realite

Cloud agenti bežia v očistených sandboxoch. Runner beží vo vašom reálnom projekte.

storage

Reálna databáza

Hovorí s databázou, ktorú váš projekt už používa — schému, seed dáta aj migračnú históriu, ktorá ju formovala. (PostgreSQL je jeden konkrétny príklad; runner riadi to, čo beží vo vašom projekte.)

fact_check

Reálne system testy

Bežia vstupné body testov vášho projektu, end-to-end — Capybara/Selenium proti vašej reálnej aplikácii ako jeden konkrétny príklad, so screenshotmi a prehliadačovými kontrolami, ktoré dokazujú, že sa zmena naozaj dostala do produkcie.

code

Reálne commity a PR

Vetvy, commity a pull requesty žijú vo vašom repu, s vaším CI, pod vašou Git históriou — na GitHube, na Bitbucket Cloude, alebo na GitLabe, a na všetkých ich otvára `mcptask_runner pr`. Runner spúšťa to, čo spúšťa váš `bin/ci`.

infoČo to je

Plný autonómny harness nad vaším coding CLI

mcptask_runner je jedna statická binárka bez runtime závislostí — riadi coding CLI na vašom stroji a beží celý agentný cyklus: nájde úlohu → posúdi zložitosť → zvolí model → spustí coding CLI → stráži beh watchdogom → dodrží dennú kvótu → (voliteľne) po CI zlúči PR. Funguje s akýmkoľvek projektom, ktorý používa git, na GitHube, na Bitbucket Cloude, alebo na GitLabe — nič v ceste vykonávania nevyžaduje Ruby, bundler ani Gemfile, metadáta projektu sa berú z CLAUDE.md a `bin/ci` je konvencia (žiadny `bin/ci` → preskočí sa). Žiadny prompt, ktorý runner skladá, už nemenuje príkaz konkrétneho frameworku: projekt, ktorý sa pred browser testami potrebuje pripraviť, si to povie sám — vo svojom CLAUDE.md, alebo v príkaze, ktorý odovzdá `/test-runner`.

Šesť buildov na vydanie – macOS, Linux a Windows, každý pre amd64 aj arm64. Nainštalujete ho inštalačným skriptom, cez Homebrew (macOS), scoop (Windows) alebo npm (npx @mcptask/cli); gem mcptask-rails-runner je len ďalší kanál pre Rails projekty, nie podmienka.

auto_awesome

Nie je to len „tupý spúšťač" coding CLI. Pridáva orchestráciu, dohľad, zotavenie a riadenie kvality, ktoré holé CLI nemá.

tuneVaše coding CLI

Vyberte CLI, ktoré bude riadiť váš projekt

Harness je coding CLI, ktoré runner riadi. V binárke sú tri profily — Claude Code, Codex CLI a OpenCode — a vlastný profil žije buď pre celý stroj v ~/.mcptask/harnesses/, alebo pre jeden projekt v config/harnesses/. Voľba sa robí raz pre každý stroj a projekt, urobí ju init a zapíše harness: do config/mcptask_runner.yml. Ten súbor patrí jednému stroju, je v .gitignore, takže dvaja vývojári nad rovnakým repozitárom môžu riadiť rozdielne CLI.

terminalJeden príkaz
mcptask_runner init --cli codex

layersTri pribalené profily

auto_awesome

Claude Code

mcptask_runner init --cli claude
Skills
12 v .claude/skills
MCP konfigurácia
.mcp.json
Instrukcie
CLAUDE.md
Modely
aliasy opus / sonnet / haiku
Oprávnenia
.claude/settings.local.json
terminal

Codex CLI

mcptask_runner init --cli codex
Skills
9 v .agents/skills
MCP konfigurácia
.codex/config.toml
Instrukcie
ukazovateľ v AGENTS.md
Modely
gpt-6-astra, gpt-5.6-terra, gpt-5.6-luna
Preflight
codex login status musí prejsť
code

OpenCode

mcptask_runner init --cli opencode
Skills
9 v .claude/skills
MCP konfigurácia
opencode.json
Instrukcie
CLAUDE.md
Modely
provider/model
Oprávnenia
permission mapu vloží runner

loginPrihlásené raz, vami

CLI musí byť nainštalované, a kde prihlásenie potrebuje, aj prihlásené tým, komu stroj patrí. Runner nikdy nič neprihlasuje — credential, ktorý by si vymyslel, by autentizoval ako niekto iný — a každé CLI má vlastné jednorazové prihlásenie.

Claude Code
vlastný login Claude CodeNedeklaruje žiadnu sondu — žiadnu nepotrebuje.
Codex CLI
codex logincodex login status musí skončiť nulou, než beh začne; preflight beh radšej odmietne, než aby ho spustil.
OpenCode
predvolené modely bez prihláseniaPredvolené modely OpenCode sú bezplatná vrstva, ktorá prihlásenie nepotrebuje. Hostiteľ, ktorý sa cez opencode auth login prihlási k inému poskytovateľovi, musí modely tohto poskytovateľa uviesť aj v models: v config/mcptask_runner.yml.

Kde profil deklaruje sondu, runner ju overí pri štarte a bez nej odmietne bežať, takže neprihlásené CLI odmietne menom, namiesto toho, aby ho nechal spadnúť pri prvom volaní.

report_problemŽiadny default neexistuje

Projekt, ktorý CLI nikdy nepomenoval, runner odmietne menom — nepredpokladá ticho Claude Code. launcher.command zostáva override samotného argv a je krížovo kontrolovaný proti harness: — nemôže pretlačiť iné CLI, než aké projekt deklaroval.

hubČo je na všetkých troch rovnaké

Profil drží binárku, argv, resume flag, literály zlyhania, mená nástrojov a skillov a to, čo zapisuje init. Všetko, čo robí runner runnerom, je nad profilom a s voľbou CLI sa nemení: karta na dashboarde, záznam effortov, run log aj bug úloha vyzerajú rovnako, nech beží ktorýkoľvek harness.

enginewatchdogpracovná smyčkakarta na dashboardezáznam effortovbug úloharun log

ruleLimity, povedané naplno

call_split

Fork skills sú len na Claude Code

discover, memory-search a mcptask-read forkujú lacného subagenta, aby sa surový výstup nikdy nedostal do rodičovského kontextu. To vie iba Claude Code, takže profily Codex a OpenCode majú deväť skillov namiesto dvanástich. Deväť helper skriptov je na všetkých troch rovnakých.

login

Codex potrebuje funkčný login

codex login status musí prejsť, než beh začne. Preflight radšej odmietne, než aby spotreboval kvótu na CLI, ktoré spadne pri prvom volaní.

lock_open

OpenCode nemá read-only flag

Nie je čo predať, takže runner namiesto toho vloží permission mapu. Read-only garancia je rovnaká; mechanizmus nie.

verifiedOverené, nie len tvrdené

Conformance suita beží v CI proti všetkým trom dialektom, chaos stress day beží v lokálnej bráne (bin/ci) pred každým mergom a profily nie sú funkcia na papieri: reálny beh na Codexe dokončil úlohu 9. 9. 2026 a OpenCode má za sebou vlastné reálne behy.

merge_typePull requesty

Pull requesty na GitHube, na Bitbuckete alebo na GitLabe

Runner pracuje s repozitárom na GitHube, na Bitbucket Cloude alebo na GitLabe (gitlab.com aj self-managed) a pull request na všetkých otvára jeden príkaz: mcptask_runner pr. Žiadny prompt ani pribalený skill už nemenuje CLI konkrétneho hosta — binárka sa hosta spýta sama, takže rovnaké instrukcie fungujú bez ohľadu na to, kde váš repozitár žije.

terminalPR neotvorí nič iné než mcptask_runner pr

Je to piaty verejný subcommand. Každý subcommand vypíše na stdout jeden JSON objekt, chyby idú na stderr s nenulovým exit kódom a --git-host prepíše hosta pre jedno zavolanie. Samotné git_host: je nepovinné — runner ho odvodí z git remote get-url origin a init --git-host bitbucket|gitlab je tu pre aliasy, mirrory a self-managed inštancie.

list_altŠesť subcommandov

pr create

Otvorí pull request pre aktuálnu vetvu.

pr list

Vypíše pull requesty, filtrované cez --task, --branch, --open alebo --state.

pr view

Prečíta jeden pull request ako JSON.

pr reviews

Prečíta review, ktoré na pull requeste zostali.

pr merge

Zlúči ho — --squash a --delete-branch sú default, pretože práve to auto-squash znamená.

pr checks

Spýta sa hosta, čo jeho checky hovoria o head commite.

keyTraja hostia, tri modely prihlásenia

hub

GitHub

Autentizácia cez gh a jeho vlastný login. Šablóna pull requestu sa číta z .github/pull_request_template.md, čo je cesta, ktorú pozná len GitHub.

cloud

Bitbucket Cloud

REST API 2.0, s jedným z dvoch prihlásení a nikdy s oboma: BITBUCKET_ACCESS_TOKEN pre stroj (Bearer), alebo BITBUCKET_EMAIL a BITBUCKET_API_TOKEN pre človeka (Basic). App passwords sú odmietnuté — Atlassian ich 9. 6. 2026 ukončil. init zapíše ~/.mcptask_env.d/bitbucket_credentials s právami 0600 (kontrola práv sa na Windows preskakuje), nikdy neprepíše existujúcu hodnotu ničím a nikdy prihlasovací údaj nevypíše. Mimo GitHubu sa šablóna deklaruje ako pr_template: path:.

account_tree

GitLab

Riadi ho CLI glab, ktoré si drží vlastné prihlásenie — glab auth login, a runner si žiadny GitLab credential neukladá. Funguje gitlab.com aj self-managed inštancie: self-managed projekt deklaruje git_host: gitlab (mcptask_runner init --git-host gitlab), pretože jeho origin URL nie je gitlab.com, a runner od vás URL inštancie nikdy nepýta — glab už vie, kam je prihlásený. To, čo tam pr create otvorí, je merge request.

fact_checkAuto-squash sa pred zlúčením spýta hosta

Zlúčenie nie je nádej, že CI bolo zelené. Runner si najprv prečíta checky hosta pre head commit: FAILED ukončí beh ako ci_failed a PR nechá otvorené, IN_PROGRESS skúsi desaťkrát po dvoch minútach a NONE — repozitár, ktorý u hosta žiadne checky nemá — spadne na lokálnu gate: zelené bin/ci zlúčenie pustí a projekt bez bin/ci skončí ako merge_skipped_no_ci, s PR otvoreným, aby ho zlúčil človek. GitLab hlási jeden stav pipeline na merge request, takže výpis checkov je tam jeden riadok, nie zoznam.

report_problemGitHub Enterprise nie je github.com — pokiaľ to sami nepoviete

Keď sa host odvodzuje z URL originu, rozpoznáva sa podľa presného hostname, takže inštanciu GitHub Enterprise runner odmietne so správou, ktorá to hovorí, namiesto toho, aby ju považoval za github.com. Explicitné git_host: github toto odvodenie preskočí a runner vám uverí. PR otvorené proti nesprávnemu API hosta je horšie než beh, ktorý odmietne začať.

info

Kde končí runner a začína mcptask.online

Tu ide o runner pracujúci s repozitárom na Bitbucket Cloude — nie o Bitbucket integráciu na úrovni mcptask.online. Párovanie commitov a pull requestov späť na pieces beží na webhookoch a tie zostávajú GitHub a GitLab.

loopSlučka + cieľ

Slučka berie úlohy, cieľ ich dokončuje

mcptask_runner spája pracovnú slučku (berie úlohu za úlohou z fronty) s cieľom (dokončí každú úlohu až do zeleného PR, nielen k „nejakým úpravám"). Zvoľte režim podľa toho, ako dlho má bežať:

Tvar slučkyRežimAuto-squash vs manuálPovinný prepínač
play_circleSpustí jedného vykonávateľa a skončíoncemanuál—
once_drymanuál—
once_auto_squashauto-squash—
reviewmanuál—
repeatIteruje, kým nenastane stop-statustodaymanuál—
today_auto_squashauto-squash—
queue_manual
aliasy: queue
manuál—
queue_auto_squashauto-squash—
workflowmanuál—
reviewsmanuál—
account_treePrejde podúlohy storystory_manual
aliasy: story
manuál--story-id
story_auto_squashauto-squash--story-id
task_manual
aliasy: task
manuál--task-id
task_auto_squashauto-squash--task-id
todayRobí to celý deň, každý deňdailymanuál—

infoNiektoré režimy sa správajú inak, než napovedá tvar, v ktorom sú zaradené

  • boltonce_dry, review a reviews úplne preskočia triage. once_dry len ukáže ďalšiu úlohu a skončí; oba revízne režimy idú rovno na pull requesty, ktoré revíziu potrebujú.
  • layersworkflow má dve fázy: najprv revízie (PR blokuje človeka), potom dnešné úlohy.
  • scheduledaily nekončí s koncom dňa — slučku ukončí len pád, signál, nepodarené odovzdanie, požiadavka na zastavenie, odmietnutie zo strany účtu alebo odmietnuté hlásenie chyby. Cestou do nočnej pauzy sa navyše môže odovzdať novšej binárke, ktorú už má na disku (pozri samoaktualizácia nižšie); slučka, ktorá sa zajtra zobudí, je stále tá istá slučka, len beží na novšom kóde.
  • all_inclusivequeue_manual a queue_auto_squash nemajú časovú bránu; bežia, kým prichádzajú úlohy.

Technické FAQ

Krátke odpovede na otázky, ktoré stránka otvára, ale na ktoré priamo neodpovedá. Každá odpoveď odkazuje na vlastnícku sekciu a duplicitne ju neopakuje.

help_outline

Potrebuje runner Ruby, bundler alebo Gemfile?

Nie. Metadáta projektu číta z CLAUDE.md a konfiguráciu z config/mcptask_runner.yml — ani jeden z nich neprechádza cez Ruby. Žiadny prompt nemenuje ani príkaz konkrétneho frameworku: projekt, ktorý pred browser testami potrebuje build krok, si ho deklaruje vo vlastnom CLAUDE.md.

Pozri Plný autonómny harness nad vaším coding CLI

help_outline

Funguje na ne-Rails projekte?

Áno — ľubovoľný projekt pod gitom, na GitHube, na Bitbucket Cloude, alebo na GitLabe (gitlab.com aj self-managed), s jedným z troch podporovaných coding CLI nainštalovaným a prihláseným na hostiteľovi a s CLAUDE.md, ktorá deklaruje account_code a project_relative_id. Žiadne predvolené CLI neexistuje: vyberá ho init --cli claude|codex|opencode, launcher.command prepisuje len argv a je krížovo kontrolovaný proti harness:.

Pozri Vyberte CLI, ktoré bude riadiť váš projekt

help_outline

Môžu dva runnery zdieľať jeden checkout?

Nie. Druhý runner odmietne naštartovať; lock.go (AcquireInstanceLock) vynucuje jeden runner na checkout.

Pozri Prečo to nie je kúzlo

help_outline

Čo sa stane, keď denná kvóta dôjde uprostred úlohy?

Runner zabije potomka, pokus skončí so statusom quota_exceeded_mid_task bez retry (bug úloha sa nezakladá) a slučka končí. Sám sa vráti len režim daily: počká do ďalšieho dňa a začne znovu triážou. Ostatné režimy pokračujú až ďalším naplánovaným spustením.

Pozri Jedno číslo, tri miesta, kde sa overuje

help_outline

Čo po páde zostane a kto sa to dozvie?

Tvrdý pád (status error, status crash alebo status anomaly — vlastná poistka runneru, ktorá v behu neplatila, a beh napriek tomu pokračoval) založí vlastnú bug úlohu s pripojeným run logom a otlačkom; rovnaký pád sa nahlási najviac raz za šesť hodín. Reportér nemôže nahlásiť bug, ktorý hovorí, že chýba jeho vlastný token — ten sa prejaví exit kódom a logom.

Pozri Čo je viditeľné počas behu, Keď nastane tvrdý pád, bug úloha sa založí sama

help_outline

Aktualizuje sa sám bez dozoru?

Nie, zámerne. `update` sa v predvolenom stave dotýka len skills a helpers; `update --self` aktualizuje binárku v termináli používateľa, nie v background slučke.

Pozri update --self a zámerne chýbajúca automatika

help_outline

Na ktorých OS beží a čo nepokryje zelený lokálny test run?

macOS (launchd), Linux (systemd user timer) a Windows (Task Scheduler) majú každý vlastnú naplánovanú úlohu. Zelený lokálny test run pokryje unit a system testy na hosťovej verzii Go; nepokryje troj-OS × dvoch-Go verzií maticu ani conformance scenáre, ktoré bránia release.

Pozri Konformančné scenáre a CI matrix

rocket_launch

Ráno zapnite stroj

Jeden statický binárny súbor, jeden inštalačný riadok, a runner začne brať úlohy z vašej fronty.

verified_user30 dní zadarmo. Bez kreditnej karty. Kedykoľvek zrušíte.