A Shopify CLI az appok, theme-ek és Hydrogen storefrontok fejlesztéséhez használt hivatalos parancssori eszköz. A 3.0-s generáció egységesítette a korábban különálló workflow-kat, és behozta a theme fejlesztést ugyanabba a CLI-ba. 2026-ban már ne egy régi 3.x verziót telepíts: használd a legfrissebb kiadást, mert a jelenlegi dokumentáció a 4.x ágat és annak automatikus frissítését is kezeli.

Ha Shopify fejlesztéssel kezdesz foglalkozni, hamar szembejön három hasonló parancs:

shopify app init
shopify theme init
shopify hydrogen init

Ugyanaz a shopify program indítja őket, mégis három külön fejlesztői világba visznek. Az egyik Shopify appot scaffoldol, a másik theme-repositoryt készít elő, a harmadik Hydrogen storefrontot hoz létre. A CLI közös belépési pont, de mindig a választott projekt típusához tartozó parancskészlettel dolgozol.

Ha előbb a teljes Shopify fejlesztői térképet szeretnéd látni, kezdd a Shopify fejlesztői roadmap cikkel. Itt most magára a CLI-ra koncentrálunk: mit old meg, hogyan épül fel, és melyik parancs mögött milyen művelet történik.

Mi az a Shopify CLI?

A Shopify CLI egy Node.js-alapú command-line interface, amellyel helyi projektet hozhatsz létre, Shopify-fiókhoz és store-hoz kapcsolódhatsz, fejlesztői előnézetet indíthatsz, extensiont generálhatsz, konfigurációt ellenőrizhetsz és bizonyos Shopify-erőforrásokat deployolhatsz. A teljes aktuális parancslista a hivatalos Shopify CLI referenciában található.

A CLI nyílt forráskódú, a kódja a Shopify/cli GitHub repositoryban érhető el. Itt találod a release-eket, a release note-okat, az upgrade guide-ot, a contribution dokumentációt és magát a TypeScript-alapú forráskódot. Ha egy frissítés után regresszióra gyanakszol, először hasonlítsd össze a telepített verziódat a release-ekkel, majd nézd meg az adott kiadás változásait. Hibajelentésnél kövesd a repository README-jében megadott support útvonalat; a Shopify jelenleg a fejlesztői community megfelelő kategóriájába irányítja a CLI bug reportokat és feature requesteket.

A CLI nem kódszerkesztő, hosting és Shopify admin. A forráskódodat továbbra is a saját editorodban írod, az app backendjét pedig a választott hostingon futtatod. A CLI a helyi projekt és a Shopify fejlesztői platformja közötti munkát fogja össze.

A parancsok egységes szerkezetet követnek:

shopify [témakör] [parancs] [opciók]

Például:

shopify app dev
shopify theme check
shopify hydrogen deploy

Az app, theme és hydrogen a témakör. A dev, check és deploy a konkrét művelet. Ha elakadsz, a shopify help, illetve az adott parancs --help opciója gyorsabb lehet, mint találomra keresni egy régi blogposztot.

Mit jelent valójában a Shopify CLI 3.0?

A Shopify CLI eredetileg appfejlesztői eszközként indult: a Shopify 2019-ben adta ki a Shopify App CLI bétáját. A korai verzió Rubyban készült, és olyan parancsokat használt, mint a shopify create, shopify serve vagy shopify populate. Ezekkel ma is találkozhatsz régi Shopify Partners cikkekben és videókban, de már történeti példák, nem használható 2026-os útmutatók.

A Shopify CLI 3.0 egy nagyobb generációváltás volt. 2022 októberében a theme fejlesztés is bekerült a 3.0-s CLI-ba, egységesebb lett az autentikáció és a store-választás, valamint közelebb került egymáshoz az app-, theme- és custom storefront workflow. A mai TypeScript-alapú CLI már ugyanazon parancsstruktúra alatt kezeli az app-, theme- és Hydrogen-feladatokat.

Régebbi útmutatókban még ilyen parancsokkal találkozhatsz:

shopify login
shopify switch
shopify theme serve

A 3.0-s workflow-ban a hitelesítés szükség esetén, az első kapcsolódó parancsnál történik, a store-t jellemzően --store opcióval választod ki, a theme helyi előnézetét pedig shopify theme dev indítja. A hivatalos 3.0-s migrációs útmutató ezeknek a változásoknak a hátterét is összefoglalja.

2026-ban a „CLI 3.0” inkább ennek az egységes architektúrának a neve. A CLI referencia már a 4.0-tól elérhető automatikus frissítést dokumentálja. Emiatt ne verziótörténeti cikkből másold ki a telepítőparancsot, és ne rögzíts új projektet egy korai 3.x kiadáshoz külön indok nélkül.

Telepítés és követelmények 2026-ban

A jelenlegi dokumentáció Node.js 22.12 vagy újabb verziót, npm/Yarn/pnpm csomagkezelőt és legalább Git 2.28-at kér. Ezek idővel változhatnak, ezért telepítés előtt nézd meg az aktuális requirements részt a CLI referenciában.

Az npm-es globális telepítés:

npm install -g @shopify/cli@latest

macOS-en Homebrew-val is telepítheted:

brew tap shopify/shopify
brew install shopify-cli

Utána ellenőrizd, hogy valóban azt a példányt futtatod, amelyiket frissen telepítetted:

shopify version
shopify help

Ez apróságnak tűnik, de korábbi RubyGems-, npm- vagy Homebrew-telepítés után több shopify bináris is maradhat a gépen. Ilyenkor a PATH sorrendje dönti el, melyik indul el. Ha a verziószám nem az, amire számítasz, előbb ezt tedd rendbe.

A 4.x CLI normál, globális telepítésnél képes automatikusan frissíteni magát. Major verzióváltásnál, CI-környezetben és projektlokális telepítésnél ez nem feltétlenül történik meg. Kézi frissítéshez használd:

shopify upgrade

Három fő workflow egyetlen CLI-ban

A Shopify CLI értékét az adja, hogy hasonló fejlesztői ritmust kapsz eltérő projekttípusoknál: inicializálás, helyi fejlesztés, ellenőrzés, majd publikálás vagy deploy. A konkrét parancs és a művelet hatása viszont projektenként eltér.

Projekt Inicializálás Helyi fejlesztés Kiadás vagy feltöltés
Shopify app shopify app init shopify app dev shopify app deploy
Shopify theme shopify theme init shopify theme dev shopify theme push, majd szükség esetén publish
Hydrogen storefront shopify hydrogen init shopify hydrogen dev shopify hydrogen deploy

Ez a táblázat csak a váz. Az azonosnak hangzó lépések nem ugyanazt jelentik. Az app deploy például nem tölti fel a saját backend szerveredet, a theme push pedig nem teszi automatikusan élővé a theme-et.

Shopify app fejlesztés a CLI-val

Az app parancscsoport a legösszetettebb. Új projektet hoz létre, összeköti az appot a Dev Dashboarddal, development store-on futó előnézetet indít, extensionöket generál, konfigurációt kezel, Functions kódot épít, webhookot tesztel és logokat is streamelhet.

Egy tipikus indulás:

shopify app init
cd sajat-app
shopify app dev

Az app dev fejlesztői előnézetet indít, összekapcsolja a helyi projektet egy dev store-ral, figyeli a változásokat, és az extensionök előnézetét is kezeli. Ez a development workflow, nem production kiadás.

Új extensiont így generálhatsz:

shopify app generate extension

Deploy előtt érdemes validálni a konfigurációt:

shopify app config validate
shopify app deploy

Az app deploy az app Shopify-oldali konfigurációját és extensionjeit építi, majd új appverziót hoz létre és ad ki. A saját webalkalmazásod backendjét ettől még külön kell deployolnod a saját hostingodra. Ezt könnyű félreérteni, főleg amikor egyetlen parancs sikeres kimenete után azt várod, hogy a teljes SaaS már productionben fusson.

Komolyabb projektnél külön development, staging és production appkonfigurációt használj. A shopify app config link és a --config opció segít ugyanazt a kódbázist több Shopify apphoz vagy környezethez kapcsolni. A production store-on végzett aktív fejlesztés továbbra is rossz ötlet, bármilyen kényelmes a CLI.

Theme fejlesztés a Shopify CLI-val

A theme parancscsoport helyi theme-kód és Shopify store között dolgozik. Új theme-et inicializálhatsz, meglévőt lehúzhatsz, development theme-ként előnézheted, Theme Checkkel ellenőrizheted, majd unpublished theme-ként feltöltheted vagy publikálhatod.

Új projekt és helyi előnézet:

shopify theme init
cd sajat-theme
shopify theme dev --store sajat-bolt

A theme init új theme-projekthez való. Ha egy meglévő bolt theme-jén dolgoznál, a természetes belépés a távoli theme lehúzása egy külön helyi projektmappába:

shopify theme pull --store sajat-bolt.myshopify.com

A CLI megmutatja az elérhető theme-eket, te pedig kiválaszthatod, melyikkel szeretnél dolgozni. Innentől a kódot saját editorban szerkeszted, teljes projektben kereshetsz, Gitet használhatsz, és a theme dev paranccsal valós időben előnézheted a változásokat. Ez a helyi workflow jóval több kontrollt ad, mint amikor közvetlenül a Shopify admin beépített kódszerkesztőjében módosítasz fájlokat.

A theme dev ideiglenes development theme-et hoz létre a kiválasztott store-ban, hot reloadot ad, és valós shopadatokkal mutat előnézetet. Ez biztonságosabb, mint közvetlenül az élő theme fájljait szerkeszteni.

Éles boltnál kezeld az aktív theme-et kiadási célpontként, ne közös munkamappaként. Tartsd a forráskódot Gitben, dolgozz külön ágon, és a feltöltés előtt nézd meg, változott-e közben a távoli theme. App telepítése, adminból végzett szerkesztés vagy egy másik fejlesztő munkája is módosíthat fájlokat. A theme pull ilyen helyzetben nem ártalmatlan frissítés: felülírhatja a helyi fájlokat a távoli változattal. Előtte készíts tiszta commitot vagy külön mentést, majd ellenőrizd a diffet, és csak ezután dönts az összevezetésről.

Mielőtt feltöltöd a módosítást, futtasd:

shopify theme check
shopify theme push --unpublished

A theme check Liquid- és JSON-hibákat, elavult tageket, ismeretlen objektumokat és bizonyos teljesítményproblémákat is jelezhet. A theme push --unpublished feltölti a theme-et a libraryba, de nem cseréli le automatikusan az élő storefrontot. A publikálás külön, tudatos lépés maradjon.

Egy biztonságos alapritmus ezért így néz ki: távoli változások felmérése, külön Git branch, kis és áttekinthető commitok, theme dev, theme check, majd feltöltés unpublished theme-ként. A preview és az elfogadás után jöhet a publikálás. A konkrét pull, push, theme ID és environment stratégiát a külön theme workflow cikkben érdemes majd részletesen végigvenni.

Ha több store-ral vagy development/staging/production környezettel dolgozol, shopify.theme.toml fájlban környezeteket is definiálhatsz. Így nem kell minden alkalommal store ID-t, theme ID-t és egyéb opciókat kézzel újra megadnod.

Hydrogen storefront a Shopify CLI-val

A hydrogen parancscsoport a Shopify React-alapú headless stackjéhez tartozik. Projektet scaffoldol, lokális Oxygen-szerű runtime-ot indít, GraphQL típusokat generálhat, környezeti változókat kezel, storefrontot kapcsol össze a Shopify-jal, és Oxygenre deployol.

Gyors indulás:

shopify hydrogen init --quickstart
cd hydrogen-quickstart
shopify hydrogen dev

Ha a projektet összekapcsoltad egy távoli Hydrogen storefronttal, az environment változókat is mozgathatod a CLI-val:

shopify hydrogen env pull
shopify hydrogen env push

Production build és Oxygen deploy:

shopify hydrogen build
shopify hydrogen deploy

Hydrogennél a deploy valóban a storefront futtatható buildjét juttatja el az Oxygen környezetbe. Ez eltér az app deploy működésétől, ezért a „deploy” szót mindig a parancscsoporttal együtt értelmezd.

A CLI és a Dev Dashboard kapcsolata

A Dev Dashboardban látod és kezeled az appokat, store-okat, jogosultságokat, credentialöket, logokat és health metricseket. A CLI ehhez a fejlesztői platformhoz kapcsolja a helyi projektet. A kettő nem konkurens felület: más feladatot oldanak meg.

Appnál a konfiguráció egyre nagyobb része kerül verziózható TOML fájlokba. Ez jó irány, mert a változás bekerülhet Gitbe, review-zható és környezetenként kezelhető. Ettől még a secret nem való repositoryba. Az access tokent, deployment tokent és valódi environment értékeket tartsd megfelelő secret store-ban vagy CI-változóban.

Theme-nél a CLI a store theme libraryjához kapcsolódik. Hydrogennél a Shopify storefront és az Oxygen environment a távoli párja. A közös gondolat ugyanaz: a forráskód helyben és Gitben él, a CLI pedig kontrolláltan szinkronizál a Shopify-oldali erőforrásokkal.

Öt gyakori félreértés a Shopify CLI körül

Az első, hogy a CLI minden projektet automatikusan productionbe deployol. Láttad, hogy ez nem igaz: appnál a backend hosting külön feladat, theme-nél a push és publish külön lépés, Hydrogennél pedig az Oxygen deploy tényleges futtatható kiadás.

A második, hogy minden parancs előtt kézzel be kell jelentkezni. A modern CLI szükség esetén maga indítja az autentikációt. Ha másik fiókra váltasz, az auth logout és a következő hitelesítést igénylő parancs ad tiszta útvonalat.

A harmadik, hogy a --force jó CI-megoldás. A Shopify 2026-ban kivezette az app deploy és release általános --force kapcsolóját, mert törléseket is megerősítés nélkül engedhetett. Automatizálásnál a szűkebb --allow-updates és csak indokolt esetben az --allow-deletes logika a biztonságosabb irány.

A negyedik, hogy a globális CLI-verzió önmagában garantálja a reprodukálható buildet. A projekt függőségei, Node-verziója, lockfile-ja és az extensionök API-verziói ugyanúgy számítanak. CI-ban rögzítsd a környezetet, és ne hagyd, hogy egy váratlan major frissítés az éles deploy előtt derüljön ki.

Az ötödik, hogy minden problémára a CLI újratelepítése a válasz. Előbb nézd meg a verziót, a kiválasztott store-t, a kapcsolt appkonfigurációt, a jogosultságokat, a Node-verziót és a parancs részletes kimenetét. A legtöbb hiba valamilyen környezeti eltérés, rossz target vagy lejárt hitelesítés körül bukkan fel.

Hogyan épülhet fel a Shopify CLI cikksorozat?

Ez a pillar cikk a közös térkép. A további részek egy-egy workflow-t tudnak majd végigvinni konkrét parancsokkal, fájlokkal és hibakereséssel:

  • Shopify CLI telepítése, frissítése és verzióütközések kezelése;
  • app indítás app init és app dev használatával;
  • app extension generálás, tesztelés és deploy;
  • theme workflow theme dev, check, pull, push és publish parancsokkal;
  • theme environmentek development, staging és production store-okhoz;
  • Hydrogen projektindítás, environment kezelés és Oxygen deploy;
  • CI/CD appokhoz és theme-ekhez;
  • Shopify CLI hibakeresés: auth, tunnel, store-kapcsolat és konfiguráció.

Ezeket nem érdemes egyetlen óriási parancsreferenciába zsúfolni. A CLI gyorsan változik, a konkrét workflow-k pedig más kockázatokat és ellenőrzési pontokat hoznak. A pillar oldal feladata az, hogy megmutassa, melyik parancscsoporthoz nyúlj; a cluster cikkek majd végigvisznek az adott munkán.

Ha egy gondolatot viszel tovább, ez legyen az: a Shopify CLI a helyi projekted és a Shopify fejlesztői platformja közötti kezelőréteg. Ha tudod, melyik parancs milyen távoli erőforrást módosít, gyorsítja és biztonságosabbá teszi a munkádat. Ha csak bemásolod a parancsokat, meglepetést legkésőbb a deploynál kapsz.

Gyuri

Gyuri

Hugyecz György – keresőoptimalizálási szakértő és a TotalStudio egyik tulajdonosa. Weboldalaknál és webáruházaknál elsősorban SEO-val, tartalomfejlesztéssel és technikai auditokkal foglalkozik, emellett fizetett hirdetésekkel (Google Ads, Meta), szövegírással és általános tanácsadással is; aktívan érdeklődik és használja a különböző AI-megoldásokat.

Profil