Skip to main content

Site Builder Orchestracija v2

Site Builder Orchestracija v2 (uvedena sa Gratis AI Agent v1.4.0) je motor koji pokreće kreiranje web stranica u više koraka. Kada agentu kažete da "izgradi restoran web stranicu" ili "kreira portfolio sa blogom", orkestrator razbija taj cilj na visokom nivou u strukturiran plan, otkriva pluginove potrebne za njegovo ostvarenje, izvršava svaki korak sekvencijalno, prati napredak i autonomno se oporavlja od grešaka.


Kako Funkcioniše

1. Generisanje plana

Kada agent primi uputstvo za izgradnju stranice, on poziva sposobnost create_site_plan kako bi proizveo JSON plan stranice. Plan opisuje:

  • Cilj — šta završena stranica treba da radi
  • Faze — sekvencijalne grupe koraka (npr. Postavljanje, Tipovi sadržaja, Dizajn, Sadržaj)
  • Koraci — pojedinačne pozive sposobnosti unutar svake faze
  • Zahtjevani pluginovi — pluginovi koji moraju biti aktivni da bi određeni koraci mogli da se izvrše
  • Fallback-ovi — alternativni koraci ako primarni korak ne uspije

Primjer plana (skraćeno)

{
"plan_id": "plan_restaurant_001",
"goal": "Build a restaurant website with an online menu, booking form, and contact page",
"phases": [
{
"id": "setup",
"label": "Setup",
"steps": [
{ "ability": "install_ability", "params": { "slug": "gratis-ai-agent-woocommerce" } },
{ "ability": "register_post_type", "params": { "slug": "menu-item", "singular_label": "Menu Item", "plural_label": "Menu Items" } },
{ "ability": "register_taxonomy", "params": { "slug": "menu-section", "singular_label": "Menu Section", "plural_label": "Menu Sections", "post_types": ["menu-item"] } }
]
},
{
"id": "design",
"label": "Design",
"steps": [
{ "ability": "apply_theme_json_preset", "params": { "preset": "warm-editorial" } },
{ "ability": "inject_custom_css", "params": { "css": ".menu-item { border-radius: 8px; }", "label": "restaurant-ui" } }
]
},
{
"id": "navigation",
"label": "Navigation",
"steps": [
{ "ability": "create_menu", "params": { "name": "Primary Navigation", "location": "primary" } },
{ "ability": "add_menu_item", "params": { "menu_id": "__ref:create_menu.menu_id", "type": "custom", "title": "Menu", "url": "/menu-items/" } },
{ "ability": "add_menu_item", "params": { "menu_id": "__ref:create_menu.menu_id", "type": "custom", "title": "Book a Table", "url": "/book/" } }
]
}
],
"plugin_requirements": [
{ "slug": "contact-form-7", "reason": "Required for the booking and contact forms" }
]
}

2. Otkrivanje pluginova

Prije nego što počne izvršavanje, orkestrator skenira plugin_requirements plana i proverava koji su pluginovi već aktivni. Za nedostajuće pluginove, on:

  1. Pretražuje registar putem recommend_plugin radi najboljeg odgovaranja
  2. Traži od agenta potvrdu preporuke
  3. Pokreće instalaciju ako je odobreno (ili ako je automatska instalacija omogućena u podešavanjima)

Neuspešnost otkrivanja pluginova nije kritična — orkestrator označava pogođene korake kao skipped i nastavlja sa ostatkom plana.

3. Izvršavanje plana

Orkestrator poziva execute_site_plan sa ID-jem plana. Izvršavanje se odvija fazom po fazu, korak po korak:

  • Reference koraka (__ref: prefiks) — koraci mogu da se odnose na izlaze prethodnih koraka. U gornjem primjeru, __ref:create_menu.menu_id se rješava u menu_id koji je vraćen od koraka create_menu.
  • Paralelni koraci — koraci unutar iste faze koji nemaju međusobnih ovisnosti pokreću se istovremeno kada je postavljena oznaka parallel.
  • Timeout koraka — svaki korak ima pojedinačan timeout (podrazumevano: podešavanje Ability Timeout). Korak koji je isteklo vrijeme označava se kao failed i plan nastavlja.

4. Praćenje napretka

Pozovite get_plan_progress u bilo kojem trenutku da provjerite status izvršavanja:

{
"plan_id": "plan_restaurant_001",
"status": "in_progress",
"phases_total": 4,
"phases_complete": 2,
"steps_total": 14,
"steps_complete": 8,
"steps_failed": 1,
"steps_skipped": 0,
"current_step": "add_menu_item",
"elapsed_seconds": 42
}

Korisnici WP-CLI mogu pratiti napredak sa:

wp gratis-ai-agent plan status plan_restaurant_001

5. Oporavak od grešaka

Kada korak ne uspije, orkestrator provjerava da li postoji fallback korak definisan u planu:

  • Fallback je dostupan — pokušava se fallback korak odmah. Ako uspije, izvršavanje se nastavlja. Ako i on ne uspije, korak se označava kao failed i izvršavanje nastavlja sa sljedećim korakom.
  • Nema fallback-a — korak se označava kao failed. Nije kritični koraci preskaču; kritični koraci (označeni required: true) zaustavljaju trenutnu fazu i pokreću pokušaj oporavka na nivou faze.

Agent izvještava sve neuspjehe u konačnom sažetku plana i može predložiti ručne korake za rješavanje neopravljivih grešaka.


Sposnosti plana stranice (Site Plan Abilities)

create_site_plan

Generiše strukturirani plan stranice iz opisa cilja na prirodnom jeziku.

Parametri

ParameterTypeRequiredDescription
goalstringYesOpis cilja web stranice na prirodnom jeziku
stylestringNoVizuelni stil: minimal, bold, professional, playful. Podrazumevano: agent bira na osnovu cilja
pluginsarrayNoSlugs pluginova koje treba uključiti u plan. Orkestrator automatski dodaje potrebne pluginove.
dry_runbooleanNoAko je true, vraća JSON plan bez čuvanja ili izvršavanja. Podrazumevano false

Vraća { "plan_id": "plan_restaurant_001", "phases": 4, "steps": 14, "plugin_requirements": 1 }


execute_site_plan

Pokreće izvršavanje prethodno generisanog plana stranice.

Parametri

ParameterTypeRequiredDescription
plan_idstringYesID plana za izvršavanje
auto_install_pluginsbooleanNoAko je true, automatski instalira potrebne pluginove bez potvrde. Podrazumevano false
max_retriesintegerNoBroj puta za ponovno pokretanje neuspjelog koraka prije nego što se pređe. Podrazumevano 1

Vraća { "execution_id": "exec_001", "status": "started" }


get_plan_progress

Vraća trenutni status izvršavanja plana stranice.

Parametri

ParameterTypeRequiredDescription
plan_idstringYesID plana za upit

Vraća objekat napretka opisan u Praćenje napretka iznad.


handle_plan_error

Ručno rješava neuspješan korak i nastavlja izvršavanje plana od sljedećeg koraka. Koristite ovo kada nije bio moguć automatski oporavak i želite da intervenišete.

Parametri

ParameterTypeRequiredDescription
plan_idstringYesID plana
step_idstringYesID neuspješnog koraka
resolutionstringYesJedan od skip (preskoči i nastavi), retry (ponovi korak odmah), ili mark_done (tretiraj kao uspješno bez ponovnog pokretanja)

Vraća { "success": true, "plan_id": "plan_restaurant_001", "resumed_from": "add_menu_item" }


Poređenje v1 i v2

Featurev1v2
Multi-phase plansNoYes
Step output references (__ref:)NoYes
Plugin discoveryManualAutomatic
Progress tracking APINoYes
Error recoveryFail-and-stopFallback + continue
Parallel step executionNoYes (opt-in per phase)
WP-CLI plan commandsNoYes
Benchmark integrationNoYes (q-restaurant-website)

WP-CLI Komande za Plan

wp gratis-ai-agent plan create

Generiše plan stranice iz opisa cilja.

wp gratis-ai-agent plan create "Build a restaurant website with an online menu, booking form, and contact page" [--dry-run] [--output=json]

wp gratis-ai-agent plan execute

Izvršava prethodno generisani plan.

wp gratis-ai-agent plan execute plan_restaurant_001 [--auto-install-plugins]

wp gratis-ai-agent plan status

Prikazuje trenutni napredak za izvršavan ili završen plan.

wp gratis-ai-agent plan status plan_restaurant_001

wp gratis-ai-agent plan list

Lista svih planova stranica (u čekanju, u toku i završeni).

wp gratis-ai-agent plan list [--status=<status>] [--format=table|json|csv]

wp gratis-ai-agent plan reset

Resetuje neuspješan plan na pending kako bi ga bilo moguće ponovo izvršiti od početka.

wp gratis-ai-agent plan reset plan_restaurant_001