Skip to content
ecomkit-com-uaPublic

About

Робоча папка вашого магазину для ШІ-помічника · A CLI that sets up a folder any AI agent can use to work on a Ukrainian online store

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

2 Commits

Folders and files

Repository files navigation

ecomkit

English: a command-line wizard that sets up a working folder for a Ukrainian online store, so that Claude, the ChatGPT desktop app, Cursor or any other MCP client understands the shop from the first message. It scans the storefront without any credentials — platform, language, analytics tags, product feed, robots and sitemap — then writes a briefing for the agent, MCP configs in three different formats, and one access note per system explaining where in the vendor's panel each key comes from. No credentials are asked for, collected or stored: configs carry ${PLACEHOLDERS}, and the agent fills .env later, when the owner asks it to. Run it with npx -y ecomkit. llms-install.md lets an AI agent do the whole thing for you. MIT licensed. Documentation below is in Ukrainian.


Пояснення для власника магазину, без технічних деталей — ecomkit.com.ua/instrumenty.

Що це

Одна команда, після якої на вашому комп'ютері з'являється папка. Відкриваєте її в застосунку зі ШІ — і помічник одразу знає, про який магазин ідеться, які у вас системи і що з ними можна робити.

npx -y ecomkit

Далі він питає адресу вашого магазину, дивиться на неї — і показує, що побачив:

Платформа магазину — Хорошоп.
Сайт зустрічає перевіркою браузера — я її пройшов і читав уже сам магазин.
Мова сторінки — «uk».
Веб-аналітики на головній сторінці не бачу — а без неї реклама рахується наосліп.
Піксель Meta на головній є: 292671852873663.
Карта сайту на місці.

Що потрібно

  • Node.js 20 або новіший.
  • Адреса вашого магазину. Більше нічого.

Доступи не потрібні й не збираються. Сканується рівно одна сторінка — головна; сторінки товарів не обходяться.

Що з'являється в папці

  • README.md — що знайшло сканування і з чого почати.
  • AGENTS.md — бриф для помічника: магазин, ваші системи, як заповнювати доступи і чого не робити без вашого дозволу.
  • CLAUDE.md — один рядок, що веде на AGENTS.md.
  • dostupy/<система>.md — по файлу на систему: що це відкриє, де взяти доступ, чим ризикуєте.
  • zavdannia/perevirka-fida.md — перевірка товарного фіда: працює без доступів.
  • katalog/, zvity/ — куди класти вивантаження.
  • ecomkit.json — що знайшло сканування. Секретів там немає й бути не може.
  • .env, .env.example, .gitignore і файли налаштувань — див. нижче.

Параметри

npx -y ecomkit <адреса>       почати одразу зі сканування
  --url <адреса>              те саме
  --dir <тека>                куди створити папку (типово — назва домену)
  --yes                       нічого не питати
  --force                     перезаписати те, що вже налаштоване
  --version  --help

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

Технічна частина

Файли налаштувань

Один список серверів розкладається у три різні формати — вони справді різні, а не той самий JSON під трьома назвами:

  • mcpServers у JSON — .mcp.json (Claude Code), .cursor/mcp.json, .agents/mcp_config.json (Antigravity).
  • servers у JSON, з окремим "type": "stdio" — .vscode/mcp.json.
  • [mcp_servers.<name>] у TOML — .codex/config.toml (Codex CLI, застосунок ChatGPT).

Усе пишеться тільки всередині створеної папки. Нічого в домашній теці не змінюється. У конфізі Claude Desktop лежать живі ключі інших ваших серверів, і автоматично переписувати такий файл — надто дорога помилка. README створеної папки друкує потрібний блок і точний шлях, куди його вставити.

Якщо файл уже існує, сервер додається в наявний об'єкт, а чужі сервери не чіпаються. Свій сервер, який там уже є, лишається як був — перезаписати його можна тільки --force. Файл, який не вдалося прочитати, не переписується взагалі: поруч кладеться .ecomkit-копія.

Доступи

Ця версія їх не збирає. У конфігах стоять ${ЗМІННІ}, .env порожній, а поряд лежить dostupy/<система>.md із точним шляхом у кабінеті вендора. Заповнює .env сам помічник, коли ви його про це попросите: AGENTS.md каже йому спитати значення в чаті, записати у файл і жодного разу не друкувати назад.

Реєстр систем

Це і є продукт; візард лише проводить по ньому. Кожен запис має або MCP-сервер, або письмову інструкцію — інакше тест не пропускає збірку.

У цій версії конфіг емітується тільки для серверів, які ставляться як npx -y <пакет> і перевірені в реєстрі npm: horoshop-mcp (свій), google-tag-manager-mcp-server (Stape), mcp-server-gsc, @shopana/novaposhta-mcp-server. Веб-аналітика, Google Ads, Meta і товарний фід ідуть інструкцією — там або сервера немає, або він вимагає кроку, який не можна чесно назвати однією командою.

Два записи навмисно лишились без сервера, і це варто знати окремо:

  • пакет google-ads-mcp у npm опублікований не Google, а стороннім автором, а репозиторій google-marketing-solutions/google_ads_mcp_server заархівований;
  • офіційний сервер GA4 — не npm, а Python, і йому потрібен файл службового акаунта Google Cloud.

Перевірка браузера на Хорошопі

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

Код зі сканованої сторінки ніколи не виконується — ні eval, ні node:vm. Сьогодні значення лежить літералом, тож досить регулярного виразу. Якщо колись воно стане обчислюваним, чесна відповідь — сказати, що сторінку прочитати не вдалося, а не запускати чужий код у вас на комп'ютері.

Розробка

npm install
npm test

Тести працюють проти локального мок-сервера на випадковому порту — мережа не потрібна. test/support/fixtures/ містить справжню сторінку Bloomery Home, справжню перевірку браузера і challenge-computed.html, який існує рівно для того, щоб довести: код ми не виконуємо.

Шлюз реєстру живе в src/registry/check.ts і викликається з test/registry.test.mjs. Він вимагає в кожного запису або mcp, або manual, вимагає застереження там, де воно обов'язкове, і ловить російські літери та латиницю всередині українських слів. У тестах лежить навмисно зіпсований запис — щоб шлюз не був декорацією.

Ліцензія

MIT.

Privacy Policy

No data is collected. ecomkit runs entirely on your machine.

  • What it reads: the homepage, robots.txt and sitemap.xml of the address you give it, over ordinary HTTPS requests with an identifiable user agent.
  • Credentials: none are requested, collected, printed or written. Generated configs contain ${PLACEHOLDER} values only.
  • Where your data goes: nowhere. Nothing is sent anywhere; everything is written to the folder you named.
  • Third parties: none. The only runtime dependency is a prompt library.
  • Retention: nothing is retained — there is no server.
  • Contact: [email protected]

Сергій Троїцький · ecomkit.com.ua

About

Робоча папка вашого магазину для ШІ-помічника · A CLI that sets up a folder any AI agent can use to work on a Ukrainian online store

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages