Site Builder Orchestration v2
Ang Site Builder Orchestration v2 (na ipinakilala sa Gratis AI Agent v1.4.0) ay ang makina na nagpapagana sa paggawa ng website na may maraming hakbang. Kapag hiniling mo sa agent na "gumawa ng website para sa restaurant" o "gumawa ng portfolio na may blog," hahatiin ng orchestrator ang pangkalahatang layunin na iyon sa isang nakabalangkas na plano (plan), matutukoy ang mga plugin na kailangan para matupad ito, isasagawa ang bawat hakbang nang sunud-sunod, susubaybayan ang progreso, at makakabawi mula sa mga error nang awtomatiko.
Paano Ito Gumagana
1. Pagbuo ng Plano (Plan Generation)
Kapag nakatanggap ang agent ng utos na gumawa ng site, tatawag ito sa create_site_plan ability upang makabuo ng isang JSON na site plan. Inilalarawan ng plano ang mga sumusunod:
- Goal — kung ano ang dapat gawin ng tapos na site
- Phases — mga nakaayos na grupo ng hakbang (hal. Setup, Content Types, Design, Content)
- Steps — mga indibidwal na tawag sa ability sa loob ng bawat phase
- Plugin requirements — mga plugin na dapat aktibo para tumakbo ang ilang hakbang
- Fallbacks — mga alternatibong hakbang kung mag-fail ang pangunahing hakbang
Halimbawang plano (pinaikli)
{
"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. Pagtuklas ng Plugin (Plugin Discovery)
Bago magsimula ang pagpapatupad, susuriin ng orchestrator ang plugin_requirements ng plano at titingnan kung aling mga plugin ang aktibo na. Para sa mga nawawalang plugin, ito ang gagawin nito:
- Maghahanap sa registry gamit ang
recommend_pluginpara sa pinakamahusay na katugma. - Hihilingin sa agent na kumpirmahin ang rekomendasyon.
- Magti-trigger ng pag-install kung aprubado (o kung naka-enable ang auto-install sa settings).
Ang pagkabigo sa pagtuklas ng plugin ay hindi kritikal — ituturing ng orchestrator ang mga apektadong hakbang bilang skipped at magpapatuloy sa natitirang plano.
3. Pagpapatupad ng Plano (Plan Execution)
Tatawag ang orchestrator sa execute_site_plan gamit ang plan ID. Ang pagpapatupad ay magpapatuloy phase-by-phase, hakbang-sa-hakbang:
- Step references (
__ref:prefix) — ang mga hakbang ay maaaring mag-reference sa mga output mula sa mga naunang hakbang. Sa halimbawa sa itaas, ang__ref:create_menu.menu_iday inaayos samenu_idna ibinalik ngcreate_menustep. - Parallel steps — ang mga hakbang sa loob ng iisang phase na walang pagkakadepende sa isa't isa ay ipapadala nang sabay-sabay kapag naka-set ang
parallelflag. - Step timeout — ang bawat hakbang ay may sariling timeout (default: ang
Ability Timeoutsetting). Ang hakbang na nag-timeout ay ituturing nafailedat magpapatuloy ang plano.
4. Pagsubaybay sa Pag-unlad (Progress Tracking)
Tumawag ng get_plan_progress anumang oras para tingnan ang status ng pagpapatupad:
{
"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
}
Maaaring subaybayan ng mga gumagamit ng WP-CLI ang progreso gamit ang:
wp gratis-ai-agent plan status plan_restaurant_001
5. Pagbawi sa Error (Error Recovery)
Kapag nag-fail ang isang hakbang, susuriin ng orchestrator kung may fallback step na tinukoy sa plano:
- Fallback available — susubukan agad ang fallback step. Kung magtagumpay ito, magpapatuloy ang pagpapatupad. Kung mag-fail din ito, ituturing na
failedang hakbang at magpapatuloy ang pagpapatupad sa susunod na hakbang. - No fallback — ituturing na
failedang hakbang. Ang mga hindi kritikal na hakbang ay lalaktawan; ang mga kritikal na hakbang (na may markangrequired: true) ay hihinto sa kasalukuyang phase at magti-trigger ng pagtatangka sa pagbawi sa level ng phase.
Iuulat ng agent ang lahat ng pagkabigo sa huling summary ng plano at maaaring magmungkahi ng mga manual na hakbang para sa mga error na hindi na mababawi.
Site Plan Abilities
create_site_plan
Gumagawa ng nakabalangkas na site plan mula sa isang natural language goal description.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
goal | string | Yes | Natural language description of the desired website |
style | string | No | Visual style preference: minimal, bold, professional, playful. Default: agent chooses based on the goal |
plugins | array | No | Plugin slugs to include in the plan. The orchestrator adds required plugins automatically. |
dry_run | boolean | No | If true, returns the plan JSON without saving or executing it. Default false |
Returns { "plan_id": "plan_restaurant_001", "phases": 4, "steps": 14, "plugin_requirements": 1 }
execute_site_plan
Nagsisimula ng pagpapatupad ng isang naunang nabuong site plan.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
plan_id | string | Yes | ID ng plan na ipapatupad |
auto_install_plugins | boolean | No | If true, automatically installs required plugins without confirmation. Default false |
max_retries | integer | No | Number of times to retry a failed step before moving on. Default 1 |
Returns { "execution_id": "exec_001", "status": "started" }
get_plan_progress
Ibinabalik ang kasalukuyang status ng pagpapatupad ng isang site plan.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
plan_id | string | Yes | Plan ID na titingnan |
Returns ang progress object na inilarawan sa Progress Tracking sa itaas.
handle_plan_error
Manu-manong inaayos ang isang nag-fail na hakbang at ipinagpapatuloy ang pagpapatupad ng plano mula sa susunod na hakbang. Gamitin ito kapag hindi posible ang awtomatikong pagbawi at gusto mong makialam.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
plan_id | string | Yes | Plan ID |
step_id | string | Yes | ID ng nag-fail na hakbang |
resolution | string | Yes | Isa sa skip (laktawan at magpatuloy), retry (subukan ulit agad ang hakbang), o mark_done (ituring na matagumpay nang hindi muling nagpapatakbo) |
Returns { "success": true, "plan_id": "plan_restaurant_001", "resumed_from": "add_menu_item" }
Paghahambing ng v1 at v2
| Feature | v1 | v2 |
|---|---|---|
| Multi-phase plans | No | Yes |
Step output references (__ref:) | No | Yes |
| Plugin discovery | Manual | Automatic |
| Progress tracking API | No | Yes |
| Error recovery | Fail-and-stop | Fallback + continue |
| Parallel step execution | No | Yes (opt-in per phase) |
| WP-CLI plan commands | No | Yes |
| Benchmark integration | No | Yes (q-restaurant-website) |
WP-CLI Plan Commands
wp gratis-ai-agent plan create
Gumagawa ng site plan mula sa isang goal description.
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
Nagpapatupad ng isang naunang nabuong plan.
wp gratis-ai-agent plan execute plan_restaurant_001 [--auto-install-plugins]
wp gratis-ai-agent plan status
Nagpapakita ng kasalukuyang progreso para sa isang nagpapatakbo o natapos na plan.
wp gratis-ai-agent plan status plan_restaurant_001
wp gratis-ai-agent plan list
Naglilista ng lahat ng site plan (pending, in-progress, at completed).
wp gratis-ai-agent plan list [--status=<status>] [--format=table|json|csv]
wp gratis-ai-agent plan reset
Ibinabalik sa pending ang isang nag-fail na plan para ma-re-execute mula sa simula.
wp gratis-ai-agent plan reset plan_restaurant_001