Montaż (runbook)
Kroki instalacji tenanta na aios-core — tryb aion (hub) lub standalone (eject).
1. Scaffold
Dział zatytułowany „1. Scaffold”# na serwerze / w CIcp -a /var/www/aios-core /var/www/<tenant>.example.plcd /var/www/<tenant>.example.plcp .env.example .env# uzupełnij POSTGRES_*, DIRECTUS_*, AION_*npm installmodules.json — wybór pluginów i trybu:
| Pole | Znaczenie |
|---|---|
mode |
aion | standalone |
tenant_id |
ID w hub (wymagane w aion) |
plugins |
aios-seo, aios-articles, aios-images, aios-webmcp, aios-tracking, opcjonalnie aios-commerce |
profiles |
["commerce"] tylko po kill-gate Discovery |
slots |
mapowanie slotów Astro (header/footer/article) |
2. Rejestr hub
Dział zatytułowany „2. Rejestr hub”- Utwórz wpis tenanta w hub registry (
hub.aionflow.pl/clients.json). - Wygeneruj tenant key (Bearer) →
AION_TENANT_KEY+AION_TENANT_ID. - Ustaw
AION_MODE=aion,AION_HUB_URL=https://hub.aionflow.pl. - Smoke:
NetworkPortdokładaX-Aion-Tenant;UsageMeterbatche do/api/usage.
3. Directus + dane
Dział zatytułowany „3. Directus + dane”docker compose up -d# zaimportuj schema/schema.snapshot.json (+ fragmenty pluginów, np. tracking_config)npm run data # fixtures/dump → apps/starter/src/data (dev)npm run buildTracking: wgraj packages/tracking/schema/tracking_config.json — IDs GA4/Meta tylko w Directus / env, nigdy w kodzie.
4. WebMCP
Dział zatytułowany „4. WebMCP”Plugin aios-webmcp w plugins → Astro aiosWebmcp({ packs: [...] }) wstrzykuje bridge (injectScript head-inline).
- Packs day-one:
site-nav,contact,content-credentials - Pack
commercewyłącznie z profilem commerce - Weryfikacja: HTML zawiera
modelContext/registerTool;node scripts/check-webmcp-html.mjs
5. ExitHarness
Dział zatytułowany „5. ExitHarness”npm run exit-harness -- apps/starter/distW standalone build musi mieć zero URL *.aionflow.pl. W aion tenant zostaje w sieci — harness i tak skanuje artefakty pod kątem wycieków zgodnie z polityką projektu.
6. Eject (standalone)
Dział zatytułowany „6. Eject (standalone)”modules.json:"mode": "standalone",tenant_id: null- Usuń
AION_TENANT_KEY/ callouty hub - UsageMeter → lokalny
usage_log(Directus) - Stock: BYOK (
PEXELS_API_KEY/PIXABAY_API_KEY/UNSPLASH_ACCESS_KEY) zamiastBOT_STOCK_URL npm run exit-harness -- dist→ PASS- Odłącz symlink / wpis hub (opcjonalnie zachowaj historię usage)
7. Kill-gate commerce
Dział zatytułowany „7. Kill-gate commerce”aios-commerce instaluj tylko gdy Discovery potwierdzi katalog + inventory + fulfillment i profiles: ["commerce"].
Bez tego nie dodawaj pluginu ani stron /produkty — zob. packages/commerce/plugin/directus/README.md.
8. Checklist po montażu
Dział zatytułowany „8. Checklist po montażu”-
npm test+npm run ci:no-nuxt+npm run ci:no-hardcode-analytics -
npm run build+check-webmcp-html(gdy webmcp włączony) - Directus health 200
- Hub
/api/usage?tenant=…(tryb aion) po pierwszym calloucie - ExitHarness PASS
- Gate i WebMCP
- Eject / EXIT
- Narracja: /pisze/montaz-gate/