Zinnector®

Консоль розробника для хостингу WordPress

Zinnector® створює сайти WordPress локально без установлення нічого, крім Node — без Docker, без MAMP — потім перевіряє створене відповідно до хостинг-слота, на який ви збираєтеся розгортатися, і повідомляє, що не збігатиметься, перед вивантаженням. Установіть його за допомогою npm install -g zinnector. Він є безкоштовним, поширюється за ліцензією MIT та створений на основі того самого публічного API, що й усе інше тут.

П'ять команд, і середня з них — головна

Більшість хостингових CLI починаються з деплою. Zinnector® починається раніше — він створює сайт разом із вами, а потім перевіряє вашу роботу на тій машині, на яку ви збираєтеся його надіслати. Прірва між «це працювало на моєму ноутбуці» та «це працює на сервері» — це те, куди зникають пообідні години, і цю прірву можна виміряти.

zinnector новий

Створіть каркас сайту, плагіна чи блокової теми, які завантажуються миттєво. Жодних файлів-заповнювачів чи завдань TODO — плагін активується, а тему можна вибрати одразу після її створення.

zinnector dev

Справжній WordPress на вашому комп'ютері за лічені секунди, який запускає ваші власні плагіни та теми, без Docker і без PHP у вашому PATH. Виберіть будь-яку версію PHP від 5.2 до 8.5 для розробки.

перевірка zinnector

Передполітна перевірка. Порівнює створений вами ресурс із цільовим слотом розгортання та вказує на кожну невідповідність — а також на кожну перевірку, яку не вдалося виконати — перед надсиланням.

синхронізація zinnector

Перед польотом зафіксуйте свої коміти, запустіть розгортання та стежте за його завершенням. Якщо воно не вдасться, журнал збірки знаходиться на відстані однієї команди.

zinnector ai

Звертайтеся до асистента з термінала, використовуючи свій проєкт і свій сайт як контекст. Він працює на платформі з вашим власним обліковим записом, тому жоден ключ моделі ніколи не зберігається на вашому комп'ютері.

Test it works in two minutes, no account needed

Six commands, in order, and what success looks like at each one. Everything here runs on your own machine; an API key is only needed when you reach a hosting slot.

  1. Install it

    Run npm install -g zinnector on Node 24 or newer. If npm prints EBADENGINE, your Node is older than 24 — install the current LTS from nodejs.org and run the install again.

  2. Check the version

    zinnector --version prints a version number such as 0.1.2. On a Node older than 24 it prints a message saying Node 24 or newer is needed, and exits.

  3. Read the help

    zinnector --help lists every command below with a one-line purpose. Every command also takes --help of its own.

  4. Scaffold a site

    zinnector new my-site creates a project that boots immediately — a zinnector.json, a wp-content tree and a README — and prints the next commands to run.

  5. Run it

    cd my-site, then zinnector dev. The first run asks once to download the WordPress runtime (about 570 MB, kept in the CLI’s own cache, never in your project). Success looks like “running at http://127.0.0.1:9400”.

  6. Open it in a browser

    http://127.0.0.1:9400 is a fresh WordPress site; /wp-admin opens the dashboard already signed in. Drop a plugin into wp-content/plugins and it is there on the next reload.

  7. Then, with a hosting slot

    zinnector login, zinnector link, zinnector check, zinnector push — pre-flight what you built against the slot, then deploy and watch it finish.

Детальний попередній огляд

Ви створили сайт на PHP 8.3. Слот працює на версії 8.1. Жодне сповіщення не з’явиться, доки сайт не видасть білий екран. Саме для вирішення цієї проблеми існує ця команда, і саме її на ймення попросив власник цієї платформи. Zinnector® зчитує обидва середовища та порівнює їх одне з одним, а потім дозволяє розгорнути проєкт попри все, адже у вас можуть бути на це причини.

PHP, оцінений чесно

Розрив мажорної версії позначено як високий ризик, оскільки він зазвичай призводить до зламу сайту; мінорний розрив має нижчу позначку. Оцінювання всього як критичного лише привчає людей ігнорувати попередження.

Диск і кількість файлів, окремо

Дерево WordPress складається з десятків тисяч невеликих файлів, і сайт може вичерпати ліміт inode, залишаючись значно нижче обмеження дискового простору. Перевіряються обидва показники відносно того, що фактично залишилося на слоті, а не відносно тарифного плану.

«Не вдалося перевірити» — це сама по собі відповідь

Перевірка, яка не бачить свого предмета, повідомляє про неперевірене, а не про пройдено. Чистий запуск показує, скільки речей він не зміг перевірити, тому що хибне всеосяжне «все гаразд» — це те, на яке ніхто не дивиться двічі.

Попереджає, ніколи не блокує

Будь-який результат можна перевизначити за допомогою --force, про що свідчить зведення. У CI натомість роль бар'єра виконує код виходу, тож конвеєр може бути суворим, доки людина контролює процес.

Два локальні середовища виконання, обидва справжні

WordPress Playground є стандартним параметром: PHP, скомпільований у WebAssembly і запущений усередині Node, тому на ноутбуці, де встановлено лише Node, можна перейти від нуля до запускa WordPress приблизно за той час, який потрібен, щоб прочитати це речення.

Коли вам потрібен рідний PHP — розширення на кшталт imagick, справжній MySQL — передайте --runtime docker і натомість отримаєте контейнери php-fpm та MariaDB. Обидва обслуговують ті самі файли з того самого проєкту, тому перемикання між ними змінює лише рушій і нічого більше.

Все інше ви вже робите в панелі

Zinnector® створено на основі того ж загальнодоступного API, що й панель керування, тому все, що може панель, може й він — і кожна команда є задокументованою операцією у специфікації OpenAPI, а не приватною кінцевою точкою.

Сайти та розгортання

Перелічуйте сайти, читайте все, що платформа знає про один із них, повторно розгортайте та переглядайте історію розгортань і журнали збірки.

Домени, DNS та пошта

Переглядайте домени, читайте та змінюйте записи DNS із переглядом запису перед його створенням, а також читайте свої поштові служби.

PHP, квота, база даних і логи

Перемикайте версії PHP, перевіряйте використання диска та інод у межах вашого тарифного плану, отримуйте одноразові посилання на phpMyAdmin, а також переглядайте журнали доступів і помилок у реальному часі.

WP-CLI та масові операції

Виконуйте дозволені за списком команди WP-CLI для сайту, а також очищуйте кеш або запускайте сканування на шкідливе ПЗ для цілої вибірки за один виклик замість того, щоб робити це окремо для кожного сайту.

Every command, exactly as --help lists it

The full list, one line each. The complete reference — every flag, a runnable example and what each command prints — is generated from the CLI itself and lives in the developer docs and the knowledge base, so it cannot drift from the tool you have installed.

zinnector new

Scaffold a WordPress project you can run immediately.

zinnector dev

Run this project locally — no Docker required.

zinnector login

Sign in with a Zinn Digital® API key.

zinnector logout

Forget a stored API key.

zinnector whoami

Show who this CLI is authenticated as.

zinnector sites

List the sites this key can see.

zinnector status

Everything the platform knows about one site.

zinnector share

Give one person access to a single site — a developer, a designer, a client — with a role and a reason.

zinnector collaborators

See who has been given access to a site, their role, and whether they have accepted yet.

zinnector unshare

Take a person's access back, by email or grant id.

zinnector invitations

The invitations waiting for you, and accept one.

zinnector link

Point this project at a hosting slot (and connect its repository).

zinnector pull

Pull a hosted site's files into this project for local development, and re-run to re-sync. Takes the fast path when the site syncs to its own repository, otherwise works from the latest backup.

zinnector clone

Make a local project from a hosted site in one step: clone its repository or pull its files, write the project file, and leave you ready to run zinnector dev.

zinnector check

Compare this project against the slot you are about to deploy to.

zinnector push

Pre-flight, push your commits, and deploy.

zinnector deploy

Redeploy what the platform already has, without pushing.

zinnector deploys

A site's deploy history.

zinnector php

Show or switch a site's PHP version.

zinnector quota

Disk, files and database usage against what the plan grants.

zinnector db

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

zinnector logs

Tail a site's access and error logs.

zinnector wp

Run an allow-listed WP-CLI command on a site.

zinnector backup

List and take site backups. Subcommands: list, now.

zinnector domains

List the domains this key can see.

zinnector dns

Read and change DNS records. Subcommands: list, add, rm.

zinnector mail

List mail services.

zinnector bulk

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

zinnector ai

Ask the Zinn Digital® assistant, with this project as context.

Запитання

Чи потрібно мені бути клієнтом Zinn Digital®, щоб користуватися цим?

Ні. `zinnector new` та `zinnector dev` взагалі не потребують облікового запису — створіть каркас плагіна, теми чи цілого сайту та запустіть його локально, безкоштовно та назавжди. Ключ API потрібен лише для команд, які взаємодіють із вашим хостингом.

Чи потрібен йому Docker?

Не для середовища виконання за замовчуванням. WordPress Playground компілює PHP у WebAssembly та працює всередині Node, тому `zinnector dev` запускає справжній WordPress за лічені секунди без встановлення чогось іншого. Якщо вам потрібен нативний PHP — для тестування розширення на кшталт imagick або ionCube — `--runtime docker` натомість надає контейнери php-fpm та MariaDB. Обидва варіанти підтримуються; жоден із них не є резервним.

Що насправді порівнює передполітна перевірка?

Ваша локальна версія PHP порівняно з версією слота, чи може слот узагалі перемкнутися на версію, на якій ви здійснювали збірку, чи минув термін підтримки PHP слота і чи дійсно машина його застосувала, розмір вашого проєкту та кількість файлів порівняно із залишком вільного місця на диску та inode, версії WordPress з обох боків, чи завершено підготовку слота та чи підключено git-репозиторій для розгортання. Усе, що система не змогла перевірити, позначається як неперевірене, а не зараховується як успішне проходження.

Чи може це зупинити моє розгортання?

Ні, і це зроблено навмисно. Перевірка перед розгортанням попереджає та дозволяє продовжити — `--force` розгортає попри будь-які знайдені проблеми. Ви знаєте про свій сайт те, чого сканер не знає, а інструмент, який відмовляється виконувати розгортання, — це інструмент, який користувачі видаляють.

Чи вільний мій ключ API в безпеці?

Ключ ніколи не зчитується з командного рядка — лише із запиту або перенаправленого стандартного введення (stdin), тож він не може потрапити до історії вашої оболонки чи до списку процесів. Він зберігається у вашому власному каталозі конфігурації з режимом файлу 600, і Zinnector® щоразу під час запису повторно застосовує ці права доступу.

Чи можу я використовувати це в CI?

Так. Установіть `ZINNECTOR_TOKEN`, і кожна команда підтримує `--json`. Звичайний текст виводиться у stderr, а дані — у stdout, тож конвеєри залишаються чистими. `zinnector check` завершується з ненульовим кодом, якщо знаходить щось, тому він працює як перевірка конвеєра, а `--strict` також завершується помилкою, якщо порівняти не вдалося.

Установіть його та запустіть сайт протягом наступної хвилини

Запустіть npm install -g zinnector або спробуйте один раз за допомогою npx zinnector new my-site. Безплатно, на умовах ліцензії MIT та створено на основі загальнодоступного API. Створіть шаблон проєкту, запустіть його локально без Docker і перевірте перед розгортанням.

Читати документацію