Zinnector® CLI

--help မှ တိုက်ရိုက်ရယူသော အမိန့်တိုင်း

Zinnector® 0.1.2 builds a WordPress site on your own machine with nothing installed but Node, checks it against the hosting slot you are about to deploy to, and pushes. This page is generated from the CLI's own command definitions — the same objects zinnector --help prints from — so it cannot disagree with the tool you have installed.

Zinnector® 0.1.2 တွင် အမိန့်ပေးချက် 36 ခု။

ထည့်သွင်းပါ

Node 24 သို့မဟုတ် ပိုသစ်သောဗားရှင်းတွင် အမိန့်ပေးချက်တစ်ခုသာ လိုအပ်သည်။ အခမဲ့ဖြစ်ပြီး MIT လိုင်စင်ရရှိထားကာ၊ ဝဘ်ဆိုက်တစ်ခုကို တည်ဆောက်ခြင်းနှင့် ဒေသတွင်း၌ လည်ပတ်ခြင်းတို့အတွက် မည်သည့်အကောင့်မှ လုံးဝမလိုပါ။

npm install -g zinnector

Node {node} သို့မဟုတ် ထိုထက်စောသော

node --version ကို Run ပါ။ v24 သို့မဟုတ် ပိုမြင့်သည်ကို ပြသရပါမည်။ nodejs.org မှ လက်ရှိ LTS ကို ထည့်သွင်းပါ — Windows တွင် winget install OpenJS.NodeJS.LTS၊ macOS တွင် brew install node@24 ဖြစ်သည်။

EBADENGINE ကို တွေ့ပြီးပြီလား?

ဒါက သင့်ရဲ့ Node ဟာ 24 ထက် ပိုဟောင်းနေကြောင်း npm က ပြောပြနေတာ ဖြစ်ပါတယ်။ အင်စတောလုပ်ခြင်းက ဘာပဲဖြစ်ဖြစ် ပြီးဆုံးသွားမှာဖြစ်ပေမဲ့ CLI က အလုပ်လုပ်ဖို့ ငြင်းဆိုပြီး အဲဒီလိုပဲ ပြောပါလိမ့်မယ်။ Node ကို အဆင့်မြှင့်တင်ပြီး ပြန်လည်အင်စတောလုပ်ပါ။

Node ၂၆ သို့မဟုတ် ထိုထက်အသစ်ကို သုံးနေပါသလား။

CLI သည် ကောင်းစွာအလုပ်လုပ်ပါသည်။ ၎င်းဒေါင်းလုပ်လုပ်သော WordPress runtime တွင် Node 24 နှင့် 25 အတွက်သာ ကြိုတင်တည်ဆောက်ထားသော δυynaries (ဘိုင်နရီများ) ပါရှိသည့် native module တစ်ခု ပါဝင်သောကြောင့် ပထမအကြိမ်အသုံးပြုချိန်တွင် Zinnector® သည် runtime အတွက် သီးသန့် Node 24 ကိုပါ ထပ်မံရယူပေးပါသည် (ခန့်မှန်းခြေ 30 MB ရှိပြီး nodejs.org ၏ checksum များဖြင့် စစ်ဆေးအတည်ပြုထားပါသည်)။ Compiler လည်း မလိုအပ်ပါ၊ Visual Studio လည်း မလိုပါ၊ လက်ဖြင့်လုပ်ရမည့်အရာ တစ်စုံတစ်ရာ မရှိပါ။

အလုပ်လုပ်ကြောင်း စမ်းသပ်ပါ — ၂ မိနစ်သာကြာသည်၊ အကောင့်ဖွင့်ရန်မလိုပါ

ဤအရာများကို အစဉ်အတိုင်း လုပ်ဆောင်ပါ။ တစ်ခုချင်းစီ၏အောက်တွင် အောင်မြင်မှုပုံစံကို ဖော်ပြထားသောကြောင့် တစ်စုံတစ်ရာ မှားယွင်းနေသည့် အချိန်ကို သင်သိရှိနိုင်မည်ဖြစ်သည်။

  1. ထည့်သွင်းပါ

    npm install -g zinnector

    အောင်မြင်သည်- npm သည် EBADENGINE သတိပေးချက် မပါဘဲ ပြီးဆုံးသည်။

  2. ဗားရှင်းကို စစ်ဆေးပါ

    zinnector --version

    အောင်မြင်သည် - ဗားရှင်းနံပါတ်။ 24 ထက်ဟောင်းသော Node တွင် ၎င်းသည် Node 24 သို့မဟုတ် ပိုအသစ်တစ်ခု လိုအပ်ကြောင်း ဖော်ပြသည့် မက်ဆေ့ကို ထုတ်ပေးပြီး ယင်းအစား ထွက်သွားသည်။

    0.1.2
  3. အကူအညီကို ဖတ်ပါ

    zinnector --help

    အောင်မြင်သည်- ဖလိုး၏ အမိန့်ငါးခုကို ဖော်ပြထားသည့် ဘန်နာတစ်ခု၊ ထို့နောက် ရည်ရွယ်ချက် တစ်ကြောင်းစီပါရှိသော အမိန့်တစ်ခုချင်းစီ - ဤစာမျက်နှာရှိ စာရင်းဖြစ်သည်။

      new       scaffold a WordPress project you can run immediately
      dev       run this project locally — no Docker required
      login     sign in — with your own account in the browser, or with an API key
      logout    forget a stored sign-in
      whoami    show who this CLI is signed in as, and what it can reach
      …
  4. ဆိုက်ကို ပုံစံထုတ်ပါ

    zinnector new my-site

    အောင်မြင်မှု- "Created my-site" ခေါင်းစဉ်၊ ၎င်းရေးသားခဲ့သော ဖိုင်များနှင့် လုပ်ဆောင်ရန် နောက်ထပ် အမိန့်ခေါ်ဆိုမှုများ။

    Created my-site  ·  site
      + zinnector.json
      + wp-content/…
    → run it:
        cd my-site
        zinnector dev
  5. ယခု လုပ်ဆောင်ပါ

    cd my-site
    zinnector dev

    ပထမအကြိမ် လုပ်ဆောင်မှုတွင် WordPress runtime ကို တစ်ကြိမ် ဒေါင်းလုဒ်လုပ်ရန် တောင်းဆိုမည်ဖြစ်သည် (ခန့်မှန်းခြေ 570 MB ရှိပြီး Zinnector® ၏ ကိုယ်ပိုင် ကက်ရှ်တွင် သိမ်းဆည်းထားသည်)။ အောင်မြင်မှု - ဒေသတွင်း လိပ်စာတစ်ခုပါရှိသော “running at” လိုင်းတစ်ခု ပေါ်လာမည်ဖြစ်သည်။

    ✔ running at http://127.0.0.1:9400
      admin: http://127.0.0.1:9400/wp-admin  (already signed in)
  6. ဘရောက်ဆာတွင် ဖွင့်ပါ

    open http://127.0.0.1:9400

    အောင်မြင်မှု- “My WordPress Website” အမည်ပေးထားသော သန့်ရှင်းသည့် WordPress ဆိုက်တစ်ခုကို ရရှိမည်ဖြစ်ပြီး /wp-admin က လက်မှတ်ထိုးဝင်ပြီးသားဖြစ်သော ဒက်ရှ်ဘုတ်ကို ဖွင့်ပေးပါမည်။ wp-content/plugins ထဲသို့ ပလပ်အင်တစ်ခုကို ထည့်လိုက်ရုံဖြင့် နောက်တစ်ကြိမ် စာမျက်နှာပြန်ဖွင့်ချိန်တွင် ၎င်းကို တွေ့ရှိရပါမည်။

    အထက်ပါ လုပ်ဆောင်ချက်များ အားလုံးသည် အကောင့်မလိုဘဲ အလုပ်လုပ်ပါသည်။ ချိတ်ဆက်ခြင်း၊ စစ်ဆေးခြင်း (pre-flight) နှင့် ပေးပို့ခြင်း (push) တို့အတွက် သင်၏ ဒက်ရှ်ဘုတ်မှ API ကီးတစ်ခုနှင့် Zinn Digital® ဟို့စ်တင်းပေါ်ရှိ ဆိုက်တစ်ခု လိုအပ်ပါသည်။

စီးဆင်းမှု- ဖန်တီးပါ၊ တည်ဆောက်ပါ၊ ချိတ်ဆက်ပါ၊ စစ်ဆေးပါ၊ ပို့ပါ

ဘာသာမရှိခြင်းမှ တိုက်ရိုက်ထုတ်လွှင့်နေသည့် ဝက်ဘ်ဆိုက်တစ်ခုသို့ အမိန့်ခြောက်ခုဖြင့် ရောက်ရှိနိုင်ပါသည်။ zinnector new သည် ၎င်းပြီးဆုံးသည့်အခါ ဤစာရင်းကို ထုတ်ပေးသောကြောင့် သင်မည်သည့်အခါမျှ မှတ်ထားရန် မလိုပါ။

zinnector new my-site      # scaffold a project that boots immediately
cd my-site
zinnector dev              # a real WordPress, locally, with no Docker

zinnector login            # once, when you have hosting
zinnector link             # point the project at a slot
zinnector check            # pre-flight: what will NOT match on the slot?
zinnector push             # push your commits, deploy, watch it finish

အလယ်တစ်ခုကတော့ အဓိကပါပဲ။ zinnector check က သင်တည်ဆောက်ထားတာတွေကို — PHP ဗားရှင်း၊ ဒစ်ဂျစ်တယ်၊ ဖိုင်အရေအတွက်၊ WordPress ဗားရှင်း — သင်ဖြန့်ကျက်တော့မယ့် slot နဲ့ နှိုင်းယှဉ်ပေးပြီး၊ ကိုက်ညီမှုမရှိတာတွေနဲ့ နှိုင်းယှဉ်မရနိုင်တာတွေကို ဖော်ပြပေးပါတယ်။ ပြီးတော့ စစ်ဆေးသူ မသိနိုင်တဲ့ သင့်ဝဘ်ဆိုက်အကြောင်းတွေကို သင်ကိုယ်တိုင် သိရှိထားတဲ့အတွက် မည်သို့ပင်ဆိုစေကာမူ ဖြန့်ကျက်လုပ်ဆောင်နိုင်ပါတယ်။

အမိန့်ပေးစနစ် ကိုးကားချက်

zinnector --help က စာရင်းပြုစုထားသည့် အစဉ်အတိုင်း အမိန့် 36 ခုလုံး။ "ဖမ်းယူထားသည်" ဟု အမှတ်အသားပြုထားသော အထွက်များကို ဤဗားရှင်း၏ တကယ့်အလုပ်လုပ်ဆောင်မှုမှ ကူးယူထားခြင်းဖြစ်ပြီး ကျန်ရှိသည်မှာ ဥပမာတန်ဖိုးများနှင့်အတူ အမိန့်ပုံနှိပ်ထုတ်ပေးသည့် တိကျသော ပုံစံကို ပြသနေပါသည် — သင်၏ ဒိုမိန်းများ၊ အိုင်ဒီများနှင့် ကိန်းဂဏန်းများ ကွဲပြားခြားနားမည် ဖြစ်ပါသည်။

မည်သည့်ကွိုင်းမဆိုမီ လက်ခံသည့် ကမ္ဘာလုံးဆိုင်ရာ ရွေးချယ်စရာများ-

ရွေးစရာ၎င်းသည် မည်သို့လုပ်ဆောင်သည်
-V, --versionprint the version
--profile <name>use a named credential profile
-h, --helpမည်သည့် အမိန့် (command) အတွက်မဆို အကူအညီကို ပြပါ။

zinnector new

scaffold a WordPress project you can run immediately

zinnector new [options] [name]
စတင်ဆွေးနွေးမှုအချက်အလက်လိုအပ်သည်၎င်းသည် မည်သို့လုပ်ဆောင်သည်
nameမဟုတ်ပါ
ရွေးစရာ၎င်းသည် မည်သို့လုပ်ဆောင်သည်မူလအစွဲ
-t, --template <kind>one of: site, plugin, theme"site"
--php <version>PHP version to develop against"8.3"
--wp <version>WordPress version for the local runtime"latest"
--runtime <name>playground or docker"playground"
--herescaffold into the current directory instead of a new one

ဥပမာ

zinnector new my-site

သင်မြင်တွေ့ရသည်များcaptured — 0.1.2 on Linux

Created my-site  ·  site
──────────────────────────

  + .gitignore
  + README.md
  + wp-content/mu-plugins/000-zinnector-dev.php
  + wp-content/plugins/.gitkeep
  + wp-content/themes/.gitkeep
  + zinnector.json

  php        8.3
  wordpress  latest
  runtime    playground

→ run it:
    cd my-site
    zinnector dev

→ then, when you have a hosting slot:
    zinnector link     # point it at a site
    zinnector check    # pre-flight before you push
    zinnector push

zinnector dev

run this project locally — no Docker required

zinnector dev [options]
ရွေးစရာ၎င်းသည် မည်သို့လုပ်ဆောင်သည်မူလအစွဲ
--php <version>PHP version to run (5.2–8.5 on playground, 7.4–8.5 on docker)
--wp <version>WordPress version
-p, --port <port>port to serve on
--runtime <name>playground (default) or docker
--loginlog in as admin automaticallytrue
--no-logindo not log in automatically
--onceboot, report what is running, then stop
--yesinstall the local runtime without asking
--reset-runtimedelete the installed runtime and install it again
-v, --verboseshow the runtime's own output

ဥပမာ

cd my-site
zinnector dev

သင်မြင်တွေ့ရသည်များcaptured — 0.1.2. The first run asks once to download the WordPress runtime (~570 MB); pass --yes to skip the question

my-site  ·  WordPress Playground (WASM, no Docker)
───────────────────────────────────────────────────

  serving    a WordPress project
  from       /home/you/my-site
  php        8.3
  wordpress  latest

✔ running at http://127.0.0.1:9400
  admin: http://127.0.0.1:9400/wp-admin  (already signed in)

  Ctrl-C to stop

zinnector login

sign in — with your own account in the browser, or with an API key

zinnector login [options]
ရွေးစရာ၎င်းသည် မည်သို့လုပ်ဆောင်သည်မူလအစွဲ
--profile <name>store under a named profile"default"
--api <url>API base URL"https://api.zinndigital.com"
--api-keypaste a per-organisation API key instead of signing in as yourself
--issuer <url>the sign-in service"https://auth.zinndigital.com/realms/zinn"
--no-browserprint the sign-in link without trying to open a browser

ဥပမာ

zinnector login

သင်မြင်တွေ့ရသည်များthe key is typed at the prompt, never on the command line. In CI, pipe it: echo "$ZINN_API_KEY" | zinnector login --profile ci

Sign in to Zinn Digital  ·  https://api.zinndigital.com
────────────────────────────────────────────────────

  API key: ••••••••••••••••••••••••••••

✔ signed in as you@example.com (Acme Ltd) — profile “default”
→ next: zinnector sites

zinnector logout

forget a stored sign-in

zinnector logout [options]
ရွေးစရာ၎င်းသည် မည်သို့လုပ်ဆောင်သည်မူလအစွဲ
--profile <name>which profile to forget"default"

ဥပမာ

zinnector logout

သင်မြင်တွေ့ရသည်များ

✔ signed out of profile “default”

zinnector whoami

show who this CLI is signed in as, and what it can reach

zinnector whoami [options]
ရွေးစရာ၎င်းသည် မည်သို့လုပ်ဆောင်သည်မူလအစွဲ
--profile <name>use a named profile
--scopeslist the permissions an API key carries
--jsonmachine-readable output

ဥပမာ

zinnector whoami --scopes

သင်မြင်တွေ့ရသည်များ

Signed in  ·  https://api.zinndigital.com
─────────────────────────────────────────

  key           zdk_live_…3f9a
  organisation  Acme Ltd
  profile       default

  · sites.read
  · sites.deploy
  · dns.manage

zinnector sites

list the sites this key can see

zinnector sites [options]
ရွေးစရာ၎င်းသည် မည်သို့လုပ်ဆောင်သည်မူလအစွဲ
--jsonmachine-readable output
--status <status>only sites in this status

ဥပမာ

zinnector sites

သင်မြင်တွေ့ရသည်များ

Sites  ·  2
───────────

  domain        status   php      target  id
  example.com   active   php 8.3  fleet   01a03f39-730a-7dc4-84b0-5d4f7582dd04
  shop.test     active   php 8.2  fleet   01a03f39-9c11-7b02-a7e0-2e4d0c5f1b77

zinnector status

everything the platform knows about one site

zinnector status [options] [site]
စတင်ဆွေးနွေးမှုအချက်အလက်လိုအပ်သည်၎င်းသည် မည်သို့လုပ်ဆောင်သည်
siteမဟုတ်ပါ
ရွေးစရာ၎င်းသည် မည်သို့လုပ်ဆောင်သည်မူလအစွဲ
--jsonmachine-readable output

ဥပမာ

zinnector status example.com

သင်မြင်တွေ့ရသည်များ

example.com  ·  01a03f39-730a-7dc4-84b0-5d4f7582dd04
────────────────────────────────────────────────────

  status        active
  product line  mainstream
  stack         wordpress

● PHP
  version   8.3
  applied   yes

● Quota
  disk      412 MB of 10 GB
  files     18,204 of 250,000

● Deploy
  repository  acme/example-site (main)
  last        2 hours ago — success

zinnector share

give one person access to ONE site — a developer, a designer, a client

zinnector share [options] <site> <email>
စတင်ဆွေးနွေးမှုအချက်အလက်လိုအပ်သည်၎င်းသည် မည်သို့လုပ်ဆောင်သည်
siteဟုတ်ကဲ့
emailဟုတ်ကဲ့
ရွေးစရာ၎င်းသည် မည်သို့လုပ်ဆောင်သည်မူလအစွဲ
--role <role>what they may do: viewer, editor, manager
--reason <text>why they need it — kept with the grant for the audit trail
--until <date>when access ends on its own (YYYY-MM-DD); omit for until-revoked
--jsonmachine-readable output

ဥပမာ

zinnector share example.com dev@agency.test --role editor --reason "rebuild the checkout"

သင်မြင်တွေ့ရသည်များthe exact shape the command prints, from the source (W40-DEVTOOL added these after this file was last captured); your domains, ids and dates will differ

Shared example.com  ·  01a03f39-730a-7dc4-84b0-5d4f7582dd04
────────────────────────────────────────────────────────────

✔ invited dev@agency.test as editor
  They have no account yet, so an invitation has been emailed. Until they
  sign in and accept it they can see nothing; the moment they do, the site is theirs.

→ what they do next, on their own machine:
    npm i -g zinnector && zinnector login   # sign in as themselves
    zinnector clone example.com   # pull the files down

zinnector collaborators

who has been given access to a site, and whether they have accepted

zinnector collaborators [options] [site]
စတင်ဆွေးနွေးမှုအချက်အလက်လိုအပ်သည်၎င်းသည် မည်သို့လုပ်ဆောင်သည်
siteမဟုတ်ပါ
ရွေးစရာ၎င်းသည် မည်သို့လုပ်ဆောင်သည်မူလအစွဲ
--jsonmachine-readable output

ဥပမာ

zinnector collaborators example.com

သင်မြင်တွေ့ရသည်များthe exact shape the command prints, from the source (W40-DEVTOOL added these after this file was last captured); your domains, ids and dates will differ

Access to example.com  ·  2
────────────────────────────

  who               role    status                      ends              why                   grant
  dev@agency.test   editor  invited — not yet accepted  —                 rebuild the checkout  01a03f39-9c11-7b02-a7e0-2e4d0c5f1b77
  ana@studio.test   viewer  active                      until 2026-12-31  quarterly audit       01a03f39-af52-7e19-93c1-6b0d2a7c4e11

zinnector unshare

take a person's access to a site back — by email or grant id

zinnector unshare [options] <site> <who>
စတင်ဆွေးနွေးမှုအချက်အလက်လိုအပ်သည်၎င်းသည် မည်သို့လုပ်ဆောင်သည်
siteဟုတ်ကဲ့
whoဟုတ်ကဲ့
ရွေးစရာ၎င်းသည် မည်သို့လုပ်ဆောင်သည်မူလအစွဲ
--yesdo not ask

ဥပမာ

zinnector unshare example.com dev@agency.test --yes

သင်မြင်တွေ့ရသည်များthe exact shape the command prints, from the source (W40-DEVTOOL added these after this file was last captured); your domains, ids and dates will differ

✔ withdrew the invitation to dev@agency.test

zinnector invitations

the invitations waiting for you, and accept one

zinnector invitations [options] [command]

ဥပမာ

zinnector invitations

သင်မြင်တွေ့ရသည်များthe exact shape the command prints, from the source (W40-DEVTOOL added these after this file was last captured); your domains, ids and dates will differ; with no subcommand it runs `list`

Invitations  ·  1
──────────────────

  Acme Ltd has shared example.com with you as editor  01a03f39-9c11-7b02-a7e0-2e4d0c5f1b77

→ accept one: zinnector invitations accept <id>

zinnector invitations list

invitations addressed to the account you are signed in as

zinnector invitations list [options]
ရွေးစရာ၎င်းသည် မည်သို့လုပ်ဆောင်သည်မူလအစွဲ
--jsonmachine-readable output

ဥပမာ

zinnector invitations list

သင်မြင်တွေ့ရသည်များthe exact shape the command prints, from the source (W40-DEVTOOL added these after this file was last captured); your domains, ids and dates will differ

Invitations  ·  1
──────────────────

  Acme Ltd has shared example.com with you as editor  01a03f39-9c11-7b02-a7e0-2e4d0c5f1b77

→ accept one: zinnector invitations accept <id>

zinnector invitations accept

accept an invitation — the site is yours the moment this returns

zinnector invitations accept [options] <id>
စတင်ဆွေးနွေးမှုအချက်အလက်လိုအပ်သည်၎င်းသည် မည်သို့လုပ်ဆောင်သည်
idဟုတ်ကဲ့

ဥပမာ

zinnector invitations accept 01a03f39-9c11-7b02-a7e0-2e4d0c5f1b77

သင်မြင်တွေ့ရသည်များthe exact shape the command prints, from the source (W40-DEVTOOL added these after this file was last captured); your domains, ids and dates will differ

✔ you now have access to example.com

zinnector pull

pull a hosted site's files into this project for local dev — and re-run to re-sync

zinnector pull [options] [site]
စတင်ဆွေးနွေးမှုအချက်အလက်လိုအပ်သည်၎င်းသည် မည်သို့လုပ်ဆောင်သည်
siteမဟုတ်ပါ
ရွေးစရာ၎င်းသည် မည်သို့လုပ်ဆောင်သည်မူလအစွဲ
--via <seam>auto (default), git, or backup"auto"
--freshtake a new backup rather than using the latest one (spends an on-demand slot)
--max-age <hours>accept the latest backup if it is younger than this"24"
--fullthe whole document root, WordPress core included (default: wp-content only)
--no-uploadsleave wp-content/uploads (media) behind
--live-configalso write wp-config.php — it holds the LIVE database credentials
--cleanempty wp-content before extracting, so deletions on the site are mirrored
--dry-runsay what would happen and stop
--yesdo not ask

ဥပမာ

zinnector pull

သင်မြင်တွေ့ရသည်များ

Pull example.com  ·  01a03f39-730a-7dc4-84b0-5d4f7582dd04
─────────────────────────────────────────────────────────────

● via git — the site syncs to its own repository and this is a clone of it
✔ fast-forwarded 3 commits 4f1c2a9b → 9d2e7c14

● not synced, and why
  ✖ database                     the local playground has its own; the site's is not copied
  ✖ offloaded media              objects in storage are not in the site's files
  ✖ anything outside the repository  only wp-content syncs

→ next: zinnector dev

zinnector clone

make a local project from a hosted site: clone its repository or pull its files

zinnector clone [options] <site> [dir]
စတင်ဆွေးနွေးမှုအချက်အလက်လိုအပ်သည်၎င်းသည် မည်သို့လုပ်ဆောင်သည်
siteဟုတ်ကဲ့
dirမဟုတ်ပါ
ရွေးစရာ၎င်းသည် မည်သို့လုပ်ဆောင်သည်မူလအစွဲ
--via <seam>auto (default), git, or backup"auto"
--freshtake a new backup rather than using the latest one
--fullthe whole document root, WordPress core included
--no-uploadsleave wp-content/uploads (media) behind
--live-configalso write wp-config.php — it holds the LIVE database credentials
--yesdo not ask

ဥပမာ

zinnector clone client.example.com

သင်မြင်တွေ့ရသည်များ

Clone client.example.com  ·  client.example.com
──────────────────────────────────────────────────────

✔ wrote client.example.com/zinnector.json (php 8.3, wordpress 6.7.1)
● via backup — the site does not sync to a repository
✔ downloaded 214 MB and extracted wp-content

● not synced, and why
  ✖ database                     the local playground has its own; the site's is not copied
  ✖ offloaded media              objects in storage are not in the site's files
  ✖ wp-config.php                holds the live database credentials (--live-config to write it)
  ✖ WordPress core               the runtime supplies the version the slot runs (--full to take it)

→ next: zinnector dev

→ run it:
    cd client.example.com
    zinnector dev

zinnector check

compare this project against the slot you are about to deploy to

zinnector check [options] [site]
စတင်ဆွေးနွေးမှုအချက်အလက်လိုအပ်သည်၎င်းသည် မည်သို့လုပ်ဆောင်သည်
siteမဟုတ်ပါ
ရွေးစရာ၎င်းသည် မည်သို့လုပ်ဆောင်သည်မူလအစွဲ
--probeboot the local runtime and MEASURE its php, rather than trusting zinnector.json
--allshow passing checks too
--strictalso fail when something could not be checked
--jsonmachine-readable output

ဥပမာ

zinnector check

သင်မြင်တွေ့ရသည်များcaptured from a real run against a slot on PHP 7.4 — the whole point of the command

Pre-flight — example.com  ·  01a03f39-730a-7dc4-84b0-5d4f7582dd04
──────────────────────────────────────────────────────────────────

  local   php 8.3   1,284 files, 12.4 MB
  slot    php 7.4.33   target fleet
  local php is the version DECLARED in zinnector.json — run with --probe to measure it

  ✖ high      php 8.3 locally, 7.4 on the slot
      You built against PHP 8.3, which is newer than the PHP 7.4 the
      slot runs. Code that uses syntax or functions added after the
      slot's version will fatal at runtime, not at deploy time.
      try zinnector php 8.3

  ⚠ warn      the slot runs php 7.4, which is past end of life
      try zinnector php --list

  ? unknown   local php extensions could not be enumerated
      try zinnector dev --once

  5 passed  ·  3 to look at  ·  2 could not be checked

  none of this blocks a deploy — zinnector push --force proceeds anyway

zinnector push

pre-flight, push your commits, and deploy

zinnector push [options] [site]
စတင်ဆွေးနွေးမှုအချက်အလက်လိုအပ်သည်၎င်းသည် မည်သို့လုပ်ဆောင်သည်
siteမဟုတ်ပါ
ရွေးစရာ၎င်းသည် မည်သို့လုပ်ဆောင်သည်မူလအစွဲ
-f, --forcedeploy even when pre-flight has findings
--skip-checksdo not run pre-flight at all
--probemeasure the local runtime during pre-flight instead of trusting zinnector.json
--no-waittrigger the deploy and exit without watching it
--no-gitdo not run git push; deploy whatever the platform already has
--dry-rundo everything except the deploy

ဥပမာ

zinnector push

သင်မြင်တွေ့ရသည်များ

Deploy to example.com  ·  01a03f39-730a-7dc4-84b0-5d4f7582dd04
───────────────────────────────────────────────────────────────

✔ pre-flight: 8 passed  ·  0 to look at  ·  2 could not be checked
→ pushing main (4f1c2a9b add the contact form)
✔ pushed
● deploy 7c0e… started — watching
✔ deployed 4f1c2a9b in 48s

  status    success
  commit    4f1c2a9b
  url       https://example.com

zinnector deploy

redeploy what the platform already has, without pushing

zinnector deploy [options] [site]
စတင်ဆွေးနွေးမှုအချက်အလက်လိုအပ်သည်၎င်းသည် မည်သို့လုပ်ဆောင်သည်
siteမဟုတ်ပါ
ရွေးစရာ၎င်းသည် မည်သို့လုပ်ဆောင်သည်မူလအစွဲ
--no-waittrigger and exit

ဥပမာ

zinnector deploy example.com

သင်မြင်တွေ့ရသည်များ

Redeploy example.com  ·  01a03f39-730a-7dc4-84b0-5d4f7582dd04
───────────────────────────────────────────────────────────────

● deploy 7c0e… started — watching
✔ deployed 4f1c2a9b in 41s

zinnector deploys

a site's deploy history

zinnector deploys [options] [site]
စတင်ဆွေးနွေးမှုအချက်အလက်လိုအပ်သည်၎င်းသည် မည်သို့လုပ်ဆောင်သည်
siteမဟုတ်ပါ
ရွေးစရာ၎င်းသည် မည်သို့လုပ်ဆောင်သည်မူလအစွဲ
--jsonmachine-readable output
-n, --limit <n>how many to show"10"

ဥပမာ

zinnector deploys example.com

သင်မြင်တွေ့ရသည်များ

Deploys — example.com  ·  3
───────────────────────────

  status   commit    branch  trigger  started        message
  success  4f1c2a9b  main    cli      2 hours ago    add the contact form
  success  b21d70e4  main    push     yesterday      fix footer links
  failed   9e8a0c13  main    push     3 days ago     build: composer install exited 1

zinnector php

show or switch a site's PHP version

zinnector php [options] [version]
စတင်ဆွေးနွေးမှုအချက်အလက်လိုအပ်သည်၎င်းသည် မည်သို့လုပ်ဆောင်သည်
versionမဟုတ်ပါ
ရွေးစရာ၎င်းသည် မည်သို့လုပ်ဆောင်သည်မူလအစွဲ
-s, --site <site>site id or domain
--listlist the versions the platform offers
--jsonmachine-readable output

ဥပမာ

zinnector php 8.3 --site example.com

သင်မြင်တွေ့ရသည်များwith no version it shows the current one; --list shows what the platform offers for this site's product line

PHP — example.com
─────────────────

  version   7.4  →  8.3
  applied   the machine will confirm shortly

  switch example.com to php 8.3? [y/N] y
✔ php 8.3 requested
⚠ recorded, but the machine has not confirmed it yet

zinnector quota

disk, files and database usage against what the plan grants

zinnector quota [options] [site]
စတင်ဆွေးနွေးမှုအချက်အလက်လိုအပ်သည်၎င်းသည် မည်သို့လုပ်ဆောင်သည်
siteမဟုတ်ပါ
ရွေးစရာ၎င်းသည် မည်သို့လုပ်ဆောင်သည်မူလအစွဲ
--jsonmachine-readable output

ဥပမာ

zinnector quota example.com

သင်မြင်တွေ့ရသည်များ

Quota — example.com
───────────────────

  disk      412 MB of 10 GB   (4%)
  files     18,204 of 250,000 (7%)
  database  38 MB of 1 GB     (4%)

zinnector db

database size, and single-use links into phpMyAdmin and the file manager

zinnector db [options] [site]
စတင်ဆွေးနွေးမှုအချက်အလက်လိုအပ်သည်၎င်းသည် မည်သို့လုပ်ဆောင်သည်
siteမဟုတ်ပါ
ရွေးစရာ၎င်းသည် မည်သို့လုပ်ဆောင်သည်မူလအစွဲ
--jsonmachine-readable output

ဥပမာ

zinnector db example.com

သင်မြင်တွေ့ရသည်များthe phpMyAdmin and file-manager links are single-use and expire; do not paste them anywhere

Database — example.com
──────────────────────

  engine      mariadb 10.11
  size        38 MB
  phpmyadmin  https://…/pma/sso?token=… (single use)
  files       https://…/files/sso?token=… (single use)

zinnector logs

tail a site's access and error logs

zinnector logs [options] [site]
စတင်ဆွေးနွေးမှုအချက်အလက်လိုအပ်သည်၎င်းသည် မည်သို့လုပ်ဆောင်သည်
siteမဟုတ်ပါ
ရွေးစရာ၎င်းသည် မည်သို့လုပ်ဆောင်သည်မူလအစွဲ
--accessonly the access log
--erroronly the error log
--buildthe build log of the most recent deploy instead
--jsonmachine-readable output

ဥပမာ

zinnector logs example.com --error

သင်မြင်တွေ့ရသည်များ--access for the access log, --build for the last deploy's build log; with no flag both site logs are shown

Error log — example.com
───────────────────────
[06-Sep-2026 10:12:44 UTC] PHP Warning:  Undefined variable $x in /wp-content/plugins/my-plugin/my-plugin.php on line 12

zinnector wp

run an allow-listed WP-CLI command on a site

zinnector wp [options] <command...>
စတင်ဆွေးနွေးမှုအချက်အလက်လိုအပ်သည်၎င်းသည် မည်သို့လုပ်ဆောင်သည်
command...ဟုတ်ကဲ့
ရွေးစရာ၎င်းသည် မည်သို့လုပ်ဆောင်သည်မူလအစွဲ
-s, --site <site>site id or domain
--commandslist what the platform will run
--jsonmachine-readable output

ဥပမာ

zinnector wp plugin list --site example.com

သင်မြင်တွေ့ရသည်များthe allow-list is served by the platform — zinnector wp --commands prints it

+-----------------+----------+--------+---------+
| name            | status   | update | version |
+-----------------+----------+--------+---------+
| my-plugin       | active   | none   | 1.0.0   |
| zinn-cache      | active   | none   | 2.4.1   |
+-----------------+----------+--------+---------+

zinnector backup

list and take site backups

zinnector backup [options] [command]

ဥပမာ

zinnector backup list example.com

`backup` on its own prints its subcommands; see `backup list` and `backup now` below

zinnector backup list

list a site's backups and what its plan grants

zinnector backup list [options] [site]
စတင်ဆွေးနွေးမှုအချက်အလက်လိုအပ်သည်၎င်းသည် မည်သို့လုပ်ဆောင်သည်
siteမဟုတ်ပါ
ရွေးစရာ၎င်းသည် မည်သို့လုပ်ဆောင်သည်မူလအစွဲ
--jsonmachine-readable output

ဥပမာ

zinnector backup list example.com

သင်မြင်တွေ့ရသည်များ

Backups — example.com  ·  3
───────────────────────────

  status     taken          size    id
  complete   today 03:00    412 MB  bk_01a0…
  complete   yesterday      410 MB  bk_019f…
  complete   2 days ago     409 MB  bk_019e…

  retention  30 days
  off-site   yes

zinnector backup now

take an on-demand backup

zinnector backup now [options] [site]
စတင်ဆွေးနွေးမှုအချက်အလက်လိုအပ်သည်၎င်းသည် မည်သို့လုပ်ဆောင်သည်
siteမဟုတ်ပါ

ဥပမာ

zinnector backup now example.com

သင်မြင်တွေ့ရသည်များ

✔ backup started — zinnector backup list example.com shows it when it completes

zinnector domains

list the domains this key can see

zinnector domains [options]
ရွေးစရာ၎င်းသည် မည်သို့လုပ်ဆောင်သည်မူလအစွဲ
--jsonmachine-readable output

ဥပမာ

zinnector domains

သင်မြင်တွေ့ရသည်များ

Domains  ·  2
─────────────

  domain        status   registrar  renewal  expires
  example.com   active   zinn       auto     2027-03-14
  shop.test     active   external   —        —

zinnector dns

read and change DNS records

zinnector dns [options] [command]

ဥပမာ

zinnector dns list example.com

`dns` on its own prints its subcommands; see `dns list`, `dns add` and `dns rm` below

zinnector dns list

list a domain's DNS records

zinnector dns list [options] <domain>
စတင်ဆွေးနွေးမှုအချက်အလက်လိုအပ်သည်၎င်းသည် မည်သို့လုပ်ဆောင်သည်
domainဟုတ်ကဲ့
ရွေးစရာ၎င်းသည် မည်သို့လုပ်ဆောင်သည်မူလအစွဲ
--type <type>only records of this type
--jsonmachine-readable output

ဥပမာ

zinnector dns list example.com

သင်မြင်တွေ့ရသည်များ

DNS — example.com  ·  4 records
───────────────────────────────

  type  name   value            ttl
  A     @      203.0.113.10     300   rec_7f…
  A     www    203.0.113.10     300   rec_80…
  MX    @      10 mail.example.com  3600  rec_81…
  TXT   @      "v=spf1 -all"    3600  rec_82…

zinnector dns add

create a DNS record

zinnector dns add [options] <domain> <type> <name> <value>
စတင်ဆွေးနွေးမှုအချက်အလက်လိုအပ်သည်၎င်းသည် မည်သို့လုပ်ဆောင်သည်
domainဟုတ်ကဲ့
typeဟုတ်ကဲ့
nameဟုတ်ကဲ့
valueဟုတ်ကဲ့
ရွေးစရာ၎င်းသည် မည်သို့လုပ်ဆောင်သည်မူလအစွဲ
--ttl <seconds>time to live"3600"
--priority <n>priority, for MX and SRV
--proxiedroute through the CDN
-y, --yesdo not ask

ဥပမာ

zinnector dns add example.com TXT _acme "token" --ttl 300

သင်မြင်တွေ့ရသည်များthe record is shown and confirmed before it is written; pass --yes to skip the question

Add a DNS record to example.com
───────────────────────────────

  type   TXT
  name   _acme
  value  "token"
  ttl    300

  create it? [y/N] y
✔ created TXT _acme

zinnector dns rm

delete a DNS record

zinnector dns rm [options] <domain> <recordId>
စတင်ဆွေးနွေးမှုအချက်အလက်လိုအပ်သည်၎င်းသည် မည်သို့လုပ်ဆောင်သည်
domainဟုတ်ကဲ့
recordIdဟုတ်ကဲ့
ရွေးစရာ၎င်းသည် မည်သို့လုပ်ဆောင်သည်မူလအစွဲ
-y, --yesdo not ask

ဥပမာ

zinnector dns rm example.com rec_7f3a

သင်မြင်တွေ့ရသည်များ

⚠ deleting A @ 203.0.113.10 from example.com
  delete it? [y/N] y
✔ deleted

zinnector mail

list mail services

zinnector mail [options]
ရွေးစရာ၎င်းသည် မည်သို့လုပ်ဆောင်သည်မူလအစွဲ
--jsonmachine-readable output

ဥပမာ

zinnector mail

သင်မြင်တွေ့ရသည်များ

Mail services  ·  1
───────────────────

  domain        status   provider  mailboxes  dns
  example.com   active   zinn      3          ok

zinnector bulk

run one operation across many sites (cache_purge, malware_scan, sitemap, block_ip)

zinnector bulk [options] <operation>
စတင်ဆွေးနွေးမှုအချက်အလက်လိုအပ်သည်၎င်းသည် မည်သို့လုပ်ဆောင်သည်
operationဟုတ်ကဲ့
ရွေးစရာ၎င်းသည် မည်သို့လုပ်ဆောင်သည်မူလအစွဲ
--allevery site this key can see
--site <site...>specific sites, by id or domain
--status <status>every site in this status
-y, --yesdo not ask
--jsonmachine-readable output

ဥပမာ

zinnector bulk cache_purge --all

သင်မြင်တွေ့ရသည်များone call to the platform for the whole selection, not one per site; the selection is shown and confirmed first

Bulk cache_purge  ·  2 sites
────────────────────────────
  · example.com
  · shop.test

  run cache_purge on 2 sites? [y/N] y
✔ cache_purge queued for 2 sites

zinnector ai

ask the Zinn Digital assistant, with this project as context

zinnector ai [options] <question...>
စတင်ဆွေးနွေးမှုအချက်အလက်လိုအပ်သည်၎င်းသည် မည်သို့လုပ်ဆောင်သည်
question...ဟုတ်ကဲ့
ရွေးစရာ၎င်းသည် မည်သို့လုပ်ဆောင်သည်မူလအစွဲ
-s, --site <site>ask about a particular site
--no-contextdo not send anything about the local project
--jsonmachine-readable output

ဥပမာ

zinnector ai "why is my deploy failing?"

သင်မြင်တွေ့ရသည်များruns on the platform against your own account; from inside a project it sends the project's shape and site id, never file contents

Zinn Digital assistant
──────────────────────

Your last deploy of example.com failed at the build step: `composer install` exited 1 because
`vendor/` is committed alongside a lock file that no longer matches it. Remove `vendor/` from
the repository or run `composer update` and commit the new lock file, then `zinnector push`.

ဆက်ဖတ်ပါ

၎င်းကို ထည့်သွင်းပြီး နောက်တစ်မိနစ်အတွင်း ဝဘ်ဆိုက်တစ်ခုကို စတင်လည်ပတ်လိုက်ပါ

အခမဲ့ဖြစ်ပြီး MIT-လိုင်စင်ရရှိထားကာ အမိန့်တိုင်းသည် အများသုံး API တွင် မှတ်တမ်းတင်ထားသော လုပ်ဆောင်ချက်တစ်ခု ဖြစ်ပါသည် - API မလုပ်ဆောင်နိုင်သည့် မည်သည့်အရာကိုမျှ ဤနေရာတွင် လုပ်ဆောင်၍မရပါ။

npm install -g zinnector