Аҿартҟәал акьыԥхьра
Аҿартҟәал SDK ала аҿартҟәал шәаргылеи? Уи ҩба арежим ала шәкьыԥхьыр шәылшоит:
- Шәахатә (шәара шәзы) — шәара шәхатә инстанциахь side-load. Аартефакт уаҟынтә ддәылҵӡом.
- Ауаажәларратә (зегьы рзы) — иҟәышу официалтә AiHummer акаталогахь PR ала ишьҭра.
Аналогиа: .vsix напала аҭагалара (шәахатә) насгьы VS Code Marketplace ахь
акьыԥхьра (ауаажәларратә); хазы npm регистри ауаажәларратәи.
Шәахатә режим — шәинстанциахь side-load
Уи ахы иадырхәа шәара шәара мацара аҿартҟәал ианышәҭаху: аҩныҟатә ацҳазыҩ, ахатә интеграциа, атесттә аргылара.
Ашьаҿақәа
- Абандл аԥкьара насгьы анышьҭ агалара:
aihummer plugin package ./my-plugin aihummer plugin sign --key author.key --manifest ./my-plugin/manifest.json my-plugin-1.0.0.tar.gz - Инстанциахь ишьҭра ҩба амҩа ала:
- Admin UI → Plugins → “Upload plugin” — абандл ишьҭра; ма
- CLI:
aihummer plugin publish --private --instance https://your-instance \ --token <admin-token> my-plugin-1.0.0.tar.gz
- Иахьыршьҭоу уи
POST /v1/admin/modules/uploadауп (multipart,integrations:write): аартефакт инстанциа blob store аҟны (AIHUMMER_BLOB_DIR)blob:аҵыԥхьаӡала иҟалоит, насгьы каталогтә цәаҳәаorigin = local-private,visibility = privateала иҭагалоуп. - Аҿартҟәал маркетплейс аҟны Private ала иарбаны иаарԥшуп насгьы абжьаратә мҩа ала иҭагалоит — sandbox systemd аиҩыза + агәабзиаратә гейт.
Атрест: ипиннуп акьыс насгьы атрест ацәахьа
Шәахатә аартефактқәа анышьҭ ауроуп ауп. Иудыруам акьыс ала анышьҭ зуоу аҿартҟәал аншьҭыхуа, Admin UI аҩыза акьыс ажәуыргалара инстанциа атрест цәахьахь иудырҵеит (зныԥшь-нҟәаԥшьырла). Иажәырга ашьҭахь, анышьҭ аҭагалареи арҿыцреи зегьы рҿы ишьоуп.
- Официалтә аҵыхәтәи аартефактқәа core аҟны ипиннуп акьыс иадгыланы ишьоуп — бжьаратәла иуадгылоуп, аҵҟатә шьаҿа ыҟаӡам.
- Шәахатә аартефактқәа инстанциа атрест ацәахьаҟны икьысқәа иадгыланы ишьоуп.
- Анышьҭ змам абандлқәа ирӷьоуп — аҩныҟатә аиҭарҟьаразы dev-режим ада:
AIHUMMER_PLUGIN_DEV_UNSIGNED=1.
[!WARNING]
AIHUMMER_PLUGIN_DEV_UNSIGNED=1анышьҭ аԥшаара иаҟәнаҵоит насгьы аҩныҟатә аус ауразы мацара иабжьоуп. Зныкгьы адәныҟа иузаауа инстанциа аҟны иуааԥшуам.
Ауаажәларратә режим — ауаажәларратә регистр
Аҿартҟәал зегьы инстанциа азы иҟазаразы, уи ауаажәларратә регистр
AiHummer/marketplace-catalog
ахь PR ала ишьҭра: автоматтә ахԥшааразы + ахцәажәара, насгьы аижәуыргараан
AiHummer арелиз контр-анышьҭ агалоит.
Ашьаҿақәа
- Зныкатәи — акьыԥхьҩы арегистрациа. Акьыс агалареи аиԥш аброн агалареи:
Уиaihummer plugin keygen # ауаажәларратә акьыс (base64) насгьы акьыс id икьыԥхьуеит@youаиԥш аброн агалоит. Ихатә акьыс шәара шәара иумоу — уи аишьҭ зегьы анышьҭ агалоит. - Иустаҟоу HTTPS URL ала аартефакт ахарԥхьа (аартефакт аҩыза ала иахарԥхьоуп, AiHummer ала акәымкәа).
- Акаталогахь PR аартра:
aihummer plugin publish --public --dir ./my-plugin --key author.key \ --artifact-url https://you.example.com/my-plugin-1.0.0.tar.gz \ --publisher you --description "What the plugin does" --icon https://you.example.com/icon.svg \ [--screenshot https://you.example.com/1.png ...] [--channel stable|beta] \ [--register-key author.pub]--register-keypublishers/<you>.jsonиацҵоит (шәара шәактәи аишьҭ мацара иаҭахуп). - CI гейтқәа аишьҭ ишьоуеит (абра иаҳәшьа), AI ахцәажәара ашәарҭара аӡбамҭа иҟанаҵоит, насгьы AiHummer амаинтейнер напала иахԥшаауеит насгьы иеиҵхоит.
- Аиҵхараан арелиз ипиннуп регистртә акьыс ала контр-анышьҭ агалоуп насгьы
CDN аҟны хазы
community-catalog.jsonахь икьыԥхьуп. Абри аҵыхәтәи зацҵаз инстанциа зегьы аҿартҟәал ибоит; core ипиннуп акьыс ала иуадгылоит — зегь-оператор атрест шьаҿа аҭахӡам.
Аишьҭратә контракт
PR ҩ-файлк иацҵоит (аформа publish --public ала исгенерациауп насгьы
иустаҟоуп):
publishers/<publisher>.json — зныкатәи арегистрациа:
{
"publisher": "acme",
"public_key": "<base64 std ed25519 public key>",
"key_id": "<sha256(public_key)[:16] in hex>",
"contact": "you@example.com"
}
catalog/<publisher>/<slug>/plugin.json — аишьҭ (аверсиа цәаҳәа зегьы азы
заналак):
{
"publisher": "acme",
"slug": "hello-tool",
"namespaced_slug": "@acme/hello-tool",
"version": "1.0.0",
"channel": "stable",
"artifact_url": "https://acme.example.com/hello-tool-1.0.0.tar.gz",
"license": "MIT",
"publisher_key_id": "bd68f2deedad25b1",
"signature": "<base64 ed25519 over the release identity>",
"manifest": { "...the full Manifest object..." }
}
namespaced_slug@<publisher>/<slug>иаҟароуп.channel∈stable | beta.artifact_url— аҩыза ала иахарԥхьоу.tar.gz.publisher_key_idиарегистрациоу акьыԥхьҩыkey_idиаҟароуп.- Анышьҭ зуоу арелиз идентификациа = абайтқәа
slug \x00 version \x00 artifact_url. - Ауаажәларратә аишьҭ азы иалаԥхьоу
manifestdescription,icon(насгьы заҵәыкscreenshots) аныҟәгароуп — иаҳәшьа store-page аҭакыгақәа.
[!TIP]
aihummer plugin publish --publicабарҭ афайлқәа иашаны иеиҿнакаауеит насгьы шәара шәзы PR иаанартуеит — JSON напала аиҩыжәара аҭахӡам.
Амодерациа
Аишьҭ зегьы автоматтә ахԥшааразы ииасуеит (аишьҭратә контракт, анышьҭ насгьы ашәарҭадаратә скан), нас арзҳәаратә AI ашәарҭара ахцәажәара, насгьы агьежьы иҵаулоу ауаҩразратә ахцәажәара AiHummer акоманда ала. Автоматизациеи Ai-и зныкгьы хазы иаиҵхаӡом — аӡбара зегьы амаинтейнер иоуп, насгьы рыжәуыргарада акаталогахь акгьы наӡаӡом. Икьыԥхьу аҿартҟәал анаҩс изакьоу ма иҟәырҭоу шәахьдыруа ишьҭыхыр улшоит насгьы аиҵыхә иҵауреан акаталог аҟынтә идгалатәуп.
Community catalog аҵыхәтәи иацҵоу еиԥш
Ауаажәларратә аҿартҟәалақәа хазы community-catalog.json ахь икьыԥхьуп, иара
иҟәышу актәи-напала акаталог изырыцқьам. Инстанциа уи Plugins → Sources
аҟны (ма POST /v1/admin/modules/catalog/sources) аҵыхәтәи иацҵоу еиԥш иацҵоит.
Иаҳәшьа Аҭагалара & арҿыцрақәа
насгьы Аиҿкаашьа & аҵыхәтәиқәа.
Уаҩ узаауеи
- Аҿартҟәал SDK — manifest аҭакыгақәеи
aihummer pluginадҵақәеи. - Аҭагалара & арҿыцрақәа — иҵауроу, атрест амодель, анышьҭ зуоу арҿыцрақәа, аиқәырхара.
- Маркетплейс: аиҿкаашьа & аҵыхәтәиқәа — официалтәи ауаажәларратәи регистр.