Маркетплэйс і плагіны/Палітыка праверкі маркетплейса і чэк-ліст
Палітыка праверкі маркетплейса і чэк-ліст
v1.0.x · абноўлена 2026-07-19
Кожны community-плагін, адпраўлены праз
асабісты кабінет, праходзіць праверку перад
публікацыяй. Гэтая старонка — публічны чэк-ліст, тыя ж крытэрыі, што
выкарыстоўвае праверка, — каб вы маглі выканаць усе патрабаванні да адпраўкі.
Праверка ідзе ў два этапы: аўтаматычная па гэтым чэк-лісце, затым
мадэратар-чалавек, які прымае фінальнае рашэнне. Нічога не публікуецца без
адабрэння мадэратара, і аўтаматыка ніколі не адабрае сама.
Як выносіцца вердыкт
Кожны крытэрый ацэньваецца як pass / warn / fail з кароткай прычынай (а для
мадэратара — з дакладным пацвярджэннем).
Хард-фейл бяспекі (любы пункт раздзела A) ⇒ аўтаматычная адмова. Вы
атрымліваеце прычыны і можаце выправіць і адправіць нанова.
Папярэджанні або дробныя заўвагі ⇒ заяўка пазначаецца для чалавека,
які ўзважвае іх і вырашае.
Усё pass ⇒ заяўка ўсё роўна ідзе да чалавека, які прымае фінальнае
рашэнне пра публікацыю.
[!IMPORTANT]
Аўтаматычная праверка ніколі не публікуе плагін. Фінальнае рашэнне заўсёды за
мадэратарам-чалавекам, і нічога не трапляе ў каталог без яго.
A. Бяспека — фейл тут = аўта-адмова
Гэта жорсткія патрабаванні. Любы правал аўтаматычна адхіляе заяўку.
A1 — Ніякіх захардкоджаных сакрэтаў. Ні API-ключоў, ні токенаў, пароляў або
прыватных ключоў — нідзе ў артэфакце або метаданых. Указвайце доступы па імені
у capability-маніфесце;
значэнні карыстальнік уводзіць пры ўстаноўцы.
A2 — Ніякага шкоднаснага кода. Ні reverse-shell, ні выканання аддаленага
кода, ні майнераў, ні ransomware і падобных патэрнаў.
A3 — Ніякай эксфільтрацыі даных. Нельга адпраўляць даныя карыстальніка,
доступы або памяць на незаяўленыя хосты. Кожны хост, да якога звяртаецца плагін,
павінен быць у полі network маніфеста.
A4 — Ніякіх аперацый звыш заяўленых правоў. Няма доступу да файлавай сістэмы
па-за ўласнай дырэкторыяй плагіна, няма запуску працэсаў без заяўленага exec,
няма павышэння прывілеяў, няма чытання сакрэтаў хоста (env, ssh-ключы, сістэмныя
файлы).
A5 — Ніякай абфускацыі. Няма ўпакаванага, схаванага мінімізацыяй або інакш
абфускаванага кода, што хавае паводзіны.
A6 — Чыстыя залежнасці. Няма вядома-шкоднасных або вядома-уразлівых пакетаў;
залежнасці замацаваны.
A7 — Заяўленыя правы супадаюць з кодам. Capability-маніфест павінен адлюстроўваць
тое, што рэальна робіць код, — ніякіх незаяўленых сеткі, файлавай сістэмы, exec,
каналаў або доступаў. Гэта самая важная праверка карэктнасці.
A8 — Бяспечная праца з уласнай паверхняй. Няма command-injection,
SQL-injection або path-traversal у кодзе самога плагіна.
B. Карэктнасць
B1 — Валідны маніфест. У manifest.json ёсць абавязковыя палі, валідны slug,
версія ў фармаце semver і працоўны пункт уваходу.
B2 — Загружаецца. Плагін карэктна ініцыялізуецца.
B3 — Карэктныя, мінімальныя правы. Capability-маніфест парсіцца і дэкларуе
мінімум неабходнага — нічога лішняга.
B4 — Новая або павялічаная версія.version вышэй за любую раней адпраўленую
версію.
B5 — Няма калізіі slug. Slug не супадае з зарэзерваваным або першапартыйным
імем.
C. Паўната — паритэт з карткай крамы
C1 — Назвы і апісанні на RU + EN. Назва, кароткае і поўнае апісанне на дзвюх
мовах, усё асэнсавана (без заглушак).
C2 — Катэгорыя. Адна катэгорыя з дазволенага набору.
C3 — Іконка + хаця б адзін скрыншот. Валідныя выявы.
C4 — Версія + чэйнджлог. Версія і чалавекачытэльныя нататкі чэйнджлога.
C5 — Ідэнтычнасць аўтара. Вызначальны адпраўнік.
C6 — Ліцэнзія. Ліцэнзія з дазволенага набору.
C7 — Валідныя спасылкі. Сайт/рэпазіторый, калі ўказаны, — валідны URL https://.
Спасылка на данат, калі ўказана, — валідная спасылка https:// на вядомы
данат-хост (напрыклад Boosty, Patreon, PayPal, ЮMoney); адвольныя або фішынгавыя
хосты адхіляюцца.
C8 — Чалавекачытэльныя правы. Поле description capability-маніфеста тлумачыць
простай мовай, што і навошта патрэбна плагіну.
D. Палітыка, права і кантэнт
D1 — Ніякага забароненага кантэнту. Нічога незаконнага, шкоднаснага або
супярэчнага палітыцы платформы.
D2 — Ніякага выдавання сябе за іншых. Няма злоўжывання таварнымі знакамі і
выдавання сябе за іншы брэнд або каманду AiHummer.
D3 — Ніякіх падманлівых заяў. Плагін робіць тое, што заяўлена.
D4 — Звязная мова лакалізацыі. Тэксты RU і EN сапраўдныя і звязныя, а не машынная
каша.
D5 — Не спам. Не пусты, не дублікат і не спам.
Што вядзе да аўта-адмовы, а што вырашае чалавек
Зыход
Трыгер
Аўта-адмова
Любы хард-фейл бяспекі з раздзела A.
Пазначана → чалавек
Папярэджанні або дробныя заўвагі ў B/C/D (слабае апісанне, спрэчная катэгорыя, дробная заўвага да маніфеста).
Вырашае чалавек
Любая заяўка, што прайшла аўтаматыку, усё роўна патрабуе яўнага адабрэння мадэратара для публікацыі.
Allowlist данат-хостаў
Спасылка на данат неабавязковая і заўсёды знешняя — маркетплейс ніколі не
апрацоўвае грошы. Калі вы яе дадаяце, яна павінна весці на вядомую
данат-платформу па https:// (напрыклад Boosty, Patreon, PayPal або ЮMoney).
Спасылкі на невядомыя хосты, скарачальнікі або нешта падобнае на фішынг адхіляюцца.
Community-плагіны бясплатныя; спасылка на данат — проста спосаб для ўдзячных
карыстальнікаў падтрымаць вас.
Кожны community-плагін, адпраўлены праз
[асабісты кабінет](/be/v1.0/marketplace/submit-plugin), праходзіць праверку перад
публікацыяй. Гэтая старонка — **публічны чэк-ліст**, тыя ж крытэрыі, што
выкарыстоўвае праверка, — каб вы маглі выканаць усе патрабаванні **да** адпраўкі.
Праверка ідзе ў два этапы: **аўтаматычная** па гэтым чэк-лісце, затым
**мадэратар-чалавек**, які прымае фінальнае рашэнне. Нічога не публікуецца без
адабрэння мадэратара, і аўтаматыка ніколі не адабрае сама.
## Як выносіцца вердыкт
- Кожны крытэрый ацэньваецца як **pass / warn / fail** з кароткай прычынай (а для
мадэратара — з дакладным пацвярджэннем).
- **Хард-фейл бяспекі** (любы пункт раздзела A) ⇒ **аўтаматычная адмова**. Вы
атрымліваеце прычыны і можаце выправіць і адправіць нанова.
- **Папярэджанні або дробныя заўвагі** ⇒ заяўка **пазначаецца для чалавека**,
які ўзважвае іх і вырашае.
- **Усё pass** ⇒ заяўка ўсё роўна ідзе да **чалавека**, які прымае фінальнае
рашэнне пра публікацыю.
> [!IMPORTANT]
> Аўтаматычная праверка **ніколі** не публікуе плагін. Фінальнае рашэнне заўсёды за
> мадэратарам-чалавекам, і нічога не трапляе ў каталог без яго.
## A. Бяспека — фейл тут = аўта-адмова
Гэта жорсткія патрабаванні. Любы правал аўтаматычна адхіляе заяўку.
- **A1 — Ніякіх захардкоджаных сакрэтаў.** Ні API-ключоў, ні токенаў, пароляў або
прыватных ключоў — нідзе ў артэфакце або метаданых. Указвайце доступы **па імені**
у [capability-маніфесце](/be/v1.0/marketplace/submit-plugin#step-3--declare-the-capability-manifest);
значэнні карыстальнік уводзіць пры ўстаноўцы.
- **A2 — Ніякага шкоднаснага кода.** Ні reverse-shell, ні выканання аддаленага
кода, ні майнераў, ні ransomware і падобных патэрнаў.
- **A3 — Ніякай эксфільтрацыі даных.** Нельга адпраўляць даныя карыстальніка,
доступы або памяць на незаяўленыя хосты. Кожны хост, да якога звяртаецца плагін,
павінен быць у полі `network` маніфеста.
- **A4 — Ніякіх аперацый звыш заяўленых правоў.** Няма доступу да файлавай сістэмы
па-за ўласнай дырэкторыяй плагіна, няма запуску працэсаў без заяўленага `exec`,
няма павышэння прывілеяў, няма чытання сакрэтаў хоста (env, ssh-ключы, сістэмныя
файлы).
- **A5 — Ніякай абфускацыі.** Няма ўпакаванага, схаванага мінімізацыяй або інакш
абфускаванага кода, што хавае паводзіны.
- **A6 — Чыстыя залежнасці.** Няма вядома-шкоднасных або вядома-уразлівых пакетаў;
залежнасці замацаваны.
- **A7 — Заяўленыя правы супадаюць з кодам.** Capability-маніфест павінен адлюстроўваць
тое, што рэальна робіць код, — ніякіх незаяўленых сеткі, файлавай сістэмы, exec,
каналаў або доступаў. Гэта самая важная праверка карэктнасці.
- **A8 — Бяспечная праца з уласнай паверхняй.** Няма command-injection,
SQL-injection або path-traversal у кодзе самога плагіна.
## B. Карэктнасць
- **B1 — Валідны маніфест.** У `manifest.json` ёсць абавязковыя палі, валідны slug,
версія ў фармаце semver і працоўны пункт уваходу.
- **B2 — Загружаецца.** Плагін карэктна ініцыялізуецца.
- **B3 — Карэктныя, мінімальныя правы.** Capability-маніфест парсіцца і дэкларуе
**мінімум** неабходнага — нічога лішняга.
- **B4 — Новая або павялічаная версія.** `version` вышэй за любую раней адпраўленую
версію.
- **B5 — Няма калізіі slug.** Slug не супадае з зарэзерваваным або першапартыйным
імем.
## C. Паўната — паритэт з карткай крамы
- **C1 — Назвы і апісанні на RU + EN.** Назва, кароткае і поўнае апісанне на дзвюх
мовах, усё асэнсавана (без заглушак).
- **C2 — Катэгорыя.** Адна катэгорыя з дазволенага набору.
- **C3 — Іконка + хаця б адзін скрыншот.** Валідныя выявы.
- **C4 — Версія + чэйнджлог.** Версія і чалавекачытэльныя нататкі чэйнджлога.
- **C5 — Ідэнтычнасць аўтара.** Вызначальны адпраўнік.
- **C6 — Ліцэнзія.** Ліцэнзія з дазволенага набору.
- **C7 — Валідныя спасылкі.** Сайт/рэпазіторый, калі ўказаны, — валідны URL `https://`.
**Спасылка на данат**, калі ўказана, — валідная спасылка `https://` на **вядомы
данат-хост** (напрыклад Boosty, Patreon, PayPal, ЮMoney); адвольныя або фішынгавыя
хосты адхіляюцца.
- **C8 — Чалавекачытэльныя правы.** Поле `description` capability-маніфеста тлумачыць
простай мовай, што і навошта патрэбна плагіну.
## D. Палітыка, права і кантэнт
- **D1 — Ніякага забароненага кантэнту.** Нічога незаконнага, шкоднаснага або
супярэчнага палітыцы платформы.
- **D2 — Ніякага выдавання сябе за іншых.** Няма злоўжывання таварнымі знакамі і
выдавання сябе за іншы брэнд або каманду AiHummer.
- **D3 — Ніякіх падманлівых заяў.** Плагін робіць тое, што заяўлена.
- **D4 — Звязная мова лакалізацыі.** Тэксты RU і EN сапраўдныя і звязныя, а не машынная
каша.
- **D5 — Не спам.** Не пусты, не дублікат і не спам.
## Што вядзе да аўта-адмовы, а што вырашае чалавек
| Зыход | Трыгер |
|---|---|
| **Аўта-адмова** | Любы хард-фейл бяспекі з **раздзела A**. |
| **Пазначана → чалавек** | Папярэджанні або дробныя заўвагі ў B/C/D (слабае апісанне, спрэчная катэгорыя, дробная заўвага да маніфеста). |
| **Вырашае чалавек** | Любая заяўка, што прайшла аўтаматыку, усё роўна патрабуе яўнага адабрэння мадэратара для публікацыі. |
## Allowlist данат-хостаў
Спасылка на данат **неабавязковая** і заўсёды **знешняя** — маркетплейс ніколі не
апрацоўвае грошы. Калі вы яе дадаяце, яна павінна весці на **вядомую
данат-платформу** па `https://` (напрыклад Boosty, Patreon, PayPal або ЮMoney).
Спасылкі на невядомыя хосты, скарачальнікі або нешта падобнае на фішынг адхіляюцца.
Community-плагіны **бясплатныя**; спасылка на данат — проста спосаб для ўдзячных
карыстальнікаў падтрымаць вас.
## Што далей
- [Публікацыя плагіна](/be/v1.0/marketplace/submit-plugin) — пакрокавы разбор
адпраўкі.
- [Plugin SDK](/be/v1.0/marketplace/sdk) — зборка плагіна і яго `manifest.json`.
- [Маркетплейс: агляд і ўзроўні](/be/v1.0/marketplace/overview-tiers) — чым
адрозніваюцца афіцыйны і community-каталогі.