Skip to main content

Referencia de habilidades

As habilidades son as accións atómicas que Gratis AI Agent pode invocar na túa instalación de WordPress. Cada habilidade é unha clase PHP rexistrada que expón un esquema JSON — o axente le este esquema en tempo de execución para entender que parámetros son necesarios e que devolve a habilidade.

Esta páxina documenta todas as habilidades incluídas con Gratis AI Agent v1.9.0.


Tipos de entrada personalizados

Estas habilidades xestionan tipos de entrada personalizados (CPTs) rexistrados a través do axente. Os rexistros persisten na táboa de opcións de WordPress para que sobrevivan á desactivación e reactivación do plugin.

register_post_type

Rexistra un novo tipo de entrada personalizado.

Parámetros

ParámetroTipoObrigatorioDescrición
slugstringSiA clave do tipo de entrada (máx. 20 caracteres, sen maiúsculas, sen espazos)
singular_labelstringSiNome singular lexible para humanos, por exemplo Portfolio Item
plural_labelstringSiNome plural lexible para humanos, por exemplo Portfolio Items
publicbooleanNonSe o tipo de entrada é accesible publicamente. Predeterminado true
supportsarrayNonFuncionalidades que admitir: title, editor, thumbnail, excerpt, comments, revisions, custom-fields. Predeterminado ["title","editor"]
has_archivebooleanNonSe está activada unha páxina de arquivo do tipo de entrada. Predeterminado false
menu_iconstringNonClase Dashicons ou URL para a icona do menú de administración. Predeterminado "dashicons-admin-post"
rewrite_slugstringNonSlug de URL para o tipo de entrada. Predetermina a slug

Exemplo

{
"slug": "portfolio",
"singular_label": "Portfolio Item",
"plural_label": "Portfolio Items",
"public": true,
"supports": ["title", "editor", "thumbnail"],
"has_archive": true,
"menu_icon": "dashicons-portfolio"
}

Devolve { "success": true, "slug": "portfolio" }


list_post_types

Devolve todos os tipos de entrada personalizados rexistrados polo axente.

Parámetros — ningún

Devolve

{
"post_types": [
{
"slug": "portfolio",
"singular_label": "Portfolio Item",
"plural_label": "Portfolio Items",
"public": true
}
]
}

delete_post_type

Anula o rexistro dun tipo de entrada personalizado rexistrado previamente polo axente. As entradas existentes dese tipo permanecen na base de datos pero xa non son accesibles a través do tipo de entrada.

Parámetros

ParámetroTipoObrigatorioDescrición
slugstringSiA clave do tipo de entrada que eliminar

Devolve { "success": true, "slug": "portfolio" }


Taxonomías personalizadas

Estas habilidades xestionan taxonomías personalizadas. Igual ca os CPTs, os rexistros de taxonomías persisten.

register_taxonomy

Rexistra unha nova taxonomía personalizada.

Parámetros

ParámetroTipoObrigatorioDescrición
slugstringSiA clave da taxonomía (máx. 32 caracteres)
singular_labelstringSiNome singular lexible para humanos, por exemplo Project Category
plural_labelstringSiNome plural lexible para humanos, por exemplo Project Categories
post_typesarraySiSlugs de tipos de entrada aos que se debe anexar esta taxonomía
hierarchicalbooleanNontrue para estilo categoría, false para estilo etiqueta. Predeterminado true
publicbooleanNonSe os termos son accesibles publicamente. Predeterminado true
rewrite_slugstringNonSlug de URL para a taxonomía. Predetermina a slug

Exemplo

{
"slug": "project-category",
"singular_label": "Project Category",
"plural_label": "Project Categories",
"post_types": ["portfolio"],
"hierarchical": true
}

Devolve { "success": true, "slug": "project-category" }


list_taxonomies

Devolve todas as taxonomías personalizadas rexistradas polo axente.

Parámetros — ningún

Devolve

{
"taxonomies": [
{
"slug": "project-category",
"singular_label": "Project Category",
"post_types": ["portfolio"],
"hierarchical": true
}
]
}

delete_taxonomy

Anula o rexistro dunha taxonomía personalizada rexistrada previamente polo axente.

Parámetros

ParámetroTipoObrigatorioDescrición
slugstringSiA clave da taxonomía que eliminar

Devolve { "success": true, "slug": "project-category" }


Sistema de deseño

As habilidades do sistema de deseño modifican a presentación visual do sitio WordPress — desde CSS personalizado ata patróns de bloques e o logotipo do sitio.

inject_custom_css

Engade CSS ao <head> do sitio mediante wp_add_inline_style. O CSS almacénase na opción gratis_ai_agent_custom_css e retírase da cola limpamente cando se restablece a habilidade.

Parámetros

ParámetroTipoObrigatorioDescrición
cssstringSiCSS válido para inxectar
labelstringNonEtiqueta lexible para humanos para este bloque CSS, usada nos rexistros de depuración. Predeterminado "agent-injected"
replacebooleanNonSe é true, substitúe todo o CSS inxectado previamente. Predeterminado false (engade)

Exemplo

{
"css": ":root { --primary: #1a1a2e; --accent: #e94560; } body { font-family: 'Inter', sans-serif; }",
"label": "brand-colours",
"replace": false
}

Devolve { "success": true, "bytes": 96 }


add_block_pattern

Rexistra un patrón de bloques reutilizable na biblioteca de patróns de WordPress.

Parámetros

ParámetroTipoObrigatorioDescrición
slugstringSiIdentificador do patrón, por exemplo gratis/hero-dark
titlestringSiNome do patrón lexible para humanos mostrado no editor
contentstringSiMarcado de bloques serializado (HTML) para o patrón
categoriesarrayNonSlugs de categorías de patróns, por exemplo ["featured", "hero"]
descriptionstringNonDescrición curta mostrada no selector de patróns
keywordsarrayNonPalabras clave de busca

Devolve { "success": true, "slug": "gratis/hero-dark" }


list_block_patterns

Lista todos os patróns de bloques rexistrados polo axente.

Parámetros — ningún

Devolve

{
"patterns": [
{
"slug": "gratis/hero-dark",
"title": "Dark Hero",
"categories": ["hero"]
}
]
}

Establece o logotipo do sitio WordPress nun ID de adxunto dado ou nun URL de imaxe remota. Cando se proporciona un URL, a imaxe descárgase e impórtase á Biblioteca multimedia.

Parámetros

ParámetroTipoObrigatorioDescrición
attachment_idintegerNonID dun adxunto existente da Biblioteca multimedia
urlstringNonURL de imaxe remota para importar e establecer como logotipo

Debe proporcionarse un de attachment_id ou url.

Devolve { "success": true, "attachment_id": 42 }


apply_theme_json_preset

Aplica un axuste predefinido con nome de cor/tipografía ao theme.json do tema activo (ou global-styles). Os axustes predefinidos son paquetes seleccionados mantidos polo equipo de Gratis AI Agent.

Parámetros

ParámetroTipoObrigatorioDescrición
presetstringSiNome do axuste predefinido, p. ex. minimal-dark, warm-editorial, corporate-blue
mergebooleanNonSe é true, combina cos valores existentes en lugar de substituílos. Valor predeterminado false

Axustes predefinidos dispoñibles

Axuste predefinidoDescrición
minimal-darkFondo case negro, texto branco, unha soa cor de acento
warm-editorialFondo cálido case branco, encabezados con serifa, cores de acento terrosas
corporate-bluePaleta azul mariño e branca con tipografía profesional
vibrant-startupDegradados brillantes, esquinas redondeadas, tipo sans-serif moderno
classic-blogGrises neutros, altura de liña cómoda, espazamento de deseño tradicional

Devolve { "success": true, "preset": "minimal-dark" }


Estilos globais

As capacidades de Estilos globais len e escriben valores de theme.json mediante a API de Estilos globais de WordPress, afectando a todos os bloques e modelos en todo o sitio.

get_global_styles

Devolve a configuración actual dos estilos globais.

Parámetros

ParámetroTipoObrigatorioDescrición
pathstringNonPunteiro JSON a un valor específico, p. ex. /color/palette ou /typography/fontSizes. Devolve o obxecto completo se se omite.

Devolve o obxecto completo de estilos globais ou o valor en path.


set_global_styles

Actualiza un ou máis valores na configuración dos estilos globais.

Parámetros

ParámetroTipoObrigatorioDescrición
pathstringSiPunteiro JSON ao valor que se vai establecer, p. ex. /color/palette
valueanySiO novo valor

Exemplo — engadir unha cor á paleta

{
"path": "/color/palette",
"value": [
{ "slug": "primary", "color": "#1a1a2e", "name": "Primary" },
{ "slug": "accent", "color": "#e94560", "name": "Accent" }
]
}

Devolve { "success": true, "path": "/color/palette" }


reset_global_styles

Restablece todos os cambios de estilos globais aplicados polo axente, restaurando os valores predeterminados do tema.

Parámetros — ningún

Devolve { "success": true }


As capacidades de Menú de navegación crean e xestionan menús de navegación de WordPress e os seus elementos.

create_menu

Crea un novo menú de navegación de WordPress.

Parámetros

ParámetroTipoObrigatorioDescrición
namestringSiNome do menú, p. ex. Primary Navigation
locationstringNonLocalización do tema á que asignar este menú, p. ex. primary

Devolve { "success": true, "menu_id": 7 }


update_menu

Renomea un menú ou reasígano a unha localización do tema.

Parámetros

ParámetroTipoObrigatorioDescrición
menu_idintegerSiID do menú que se vai actualizar
namestringNonNovo nome do menú
locationstringNonLocalización do tema á que asignar ou reasignar

Devolve { "success": true, "menu_id": 7 }


add_menu_item

Engade un elemento a un menú de navegación existente.

Parámetros

ParámetroTipoObrigatorioDescrición
menu_idintegerSiID do menú de destino
typestringSiTipo de elemento: custom, post_type ou taxonomy
titlestringNonEtiqueta para o elemento de menú (obrigatoria para o tipo custom)
urlstringNonURL para elementos custom
object_idintegerNonID de publicación ou ID de termo para elementos post_type/taxonomy
parent_idintegerNonID do elemento de menú baixo o que aniñar este elemento
positionintegerNonPosición baseada en cero no menú

Devolve { "success": true, "item_id": 12 }


remove_menu_item

Elimina un elemento dun menú de navegación.

Parámetros

ParámetroTipoObrigatorioDescrición
item_idintegerSiID do elemento de menú que se vai eliminar

Devolve { "success": true, "item_id": 12 }


list_menus

Lista todos os menús de navegación de WordPress, incluídas as súas localizacións de tema asignadas.

Parámetros — ningún

Devolve

{
"menus": [
{
"menu_id": 7,
"name": "Primary Navigation",
"location": "primary",
"item_count": 5
}
]
}

Xestión de opcións

As capacidades de opcións len e escriben opcións de WordPress mediante get_option / update_option. Unha lista de bloqueo de seguridade integrada evita a modificación accidental de configuracións críticas.

get_option

Le unha opción de WordPress.

Parámetros

ParámetroTipoObrigatorioDescrición
option_namestringSiA clave da opción, p. ex. blogname

Devolve { "option_name": "blogname", "value": "My Site" }

Devolve un erro se option_name está na lista de bloqueo de seguridade.


set_option

Escribe unha opción de WordPress.

Parámetros

ParámetroTipoObrigatorioDescrición
option_namestringSiA clave da opción
valueanySiO novo valor (serializado automaticamente para matrices/obxectos)
autoloadstringNon"yes" ou "no". O valor predeterminado conserva a configuración de autoload existente

Devolve un erro se option_name está na lista de bloqueo de seguridade.

Devolve { "success": true, "option_name": "blogname" }


delete_option

Elimina unha opción de WordPress.

Parámetros

ParámetroTipoObrigatorioDescrición
option_namestringSiA clave da opción que se vai eliminar

Devolve un erro se option_name está na lista de bloqueo de seguridade.

Devolve { "success": true, "option_name": "my_custom_option" }


list_options

Lista opcións de WordPress que coinciden cun patrón.

Parámetros

ParámetroTipoObrigatorioDescrición
patternstringNonPatrón SQL LIKE para filtrar nomes de opcións, por exemplo gratis_%. Devolve todas as opcións se se omite (úsao con precaución en bases de datos grandes).
limitintegerNonNúmero máximo de resultados. Predeterminado 50, máximo 500

Devolve

{
"options": [
{ "option_name": "gratis_ai_agent_version", "autoload": "yes" }
],
"total": 1
}

Xestión de contido

As capacidades de xestión de contido crean e editan entradas e páxinas de WordPress. Devólvense os ID das entradas para que os pasos posteriores en plans con varias capacidades poidan facer referencia ao contido creado.

create_post

Crea unha nova entrada, páxina ou entrada de tipo de contido personalizado en WordPress.

Parámetros

ParámetroTipoObrigatorioDescrición
titlestringSiTítulo da entrada
contentstringNonCorpo da entrada — acepta texto sen formato, HTML ou marcado de bloques serializado
statusstringNondraft, publish, pending, private. Predeterminado draft
post_typestringNonSlug do tipo de entrada, por exemplo post, page ou calquera CPT rexistrado. Predeterminado post
excerptstringNonResumo breve que se mostra nos arquivos e nos resultados de busca
categoriesarrayNonArray de nomes ou ID de categorías que asignar
tagsarrayNonArray de nomes ou ID de etiquetas que asignar
authorintegerNonID do usuario de WordPress que se establecerá como autor da entrada. Predetermínase ao usuario actual
datestringNonData de publicación en formato ISO 8601, por exemplo 2026-05-01T09:00:00
page_templatestringNonFicheiro de modelo que asignar a esta entrada ou páxina, por exemplo page-full-width.php. Só ten sentido cando post_type é page ou un CPT que admite modelos de páxina.

Exemplo

{
"title": "Welcome to Our New Site",
"content": "<!-- wp:paragraph --><p>Hello world!</p><!-- /wp:paragraph -->",
"status": "publish",
"post_type": "page",
"page_template": "page-full-width.php"
}

Devolve { "success": true, "post_id": 42, "permalink": "https://example.com/welcome/" }


update_post

Actualiza unha entrada ou páxina existente de WordPress.

Parámetros

ParámetroTipoObrigatorioDescrición
post_idintegerSiID da entrada que se vai actualizar
titlestringNonNovo título da entrada
contentstringNonNovo corpo da entrada
statusstringNonNovo estado: draft, publish, pending, private
excerptstringNonNovo resumo
categoriesarrayNonSubstitúe a lista completa de categorías por este array de nomes ou ID
tagsarrayNonSubstitúe a lista completa de etiquetas por este array de nomes ou ID
page_templatestringNonNovo ficheiro de modelo que asignar a esta entrada ou páxina, por exemplo page-full-width.php. Pasa unha cadea baleira para eliminar a asignación do modelo e volver ao predeterminado do tema.

Exemplo — cambiar o modelo despois da creación

{
"post_id": 42,
"page_template": "page-full-width.php"
}

Devolve { "success": true, "post_id": 42 }


batch_create_posts

Crea varias entradas nunha soa chamada de capacidade, reducindo as idas e voltas durante a creación de sitios ou a importación masiva de contido. As entradas créanse en secuencia; se unha falla, as outras continúan e o fallo infórmase no array de resultados.

Parámetros

ParámetroTipoObrigatorioDescrición
postsarraySiArray de obxectos de entrada, cada un aceptando os mesmos parámetros ca create_post
stop_on_errorbooleanNonSe é true, detén o procesamento despois do primeiro fallo. Predeterminado false

Exemplo

{
"posts": [
{
"title": "About Us",
"post_type": "page",
"status": "publish",
"page_template": "page-full-width.php"
},
{
"title": "Services",
"post_type": "page",
"status": "publish"
},
{
"title": "Contact",
"post_type": "page",
"status": "publish"
}
]
}

Devolve

{
"created": 3,
"failed": 0,
"results": [
{ "success": true, "post_id": 42, "title": "About Us" },
{ "success": true, "post_id": 43, "title": "Services" },
{ "success": true, "post_id": 44, "title": "Contact" }
]
}

set_featured_image

Asigna unha imaxe destacada (miniatura da entrada) a unha entrada ou páxina existente. Acepta un ID de anexo existente da biblioteca multimedia ou un URL de imaxe remoto; cando se fornece un URL, a imaxe descárgase e impórtase automaticamente.

Parámetros

ParámetroTipoObrigatorioDescrición
post_idintegerSiID da entrada ou páxina que se vai actualizar
attachment_idintegerNonID dun anexo existente da biblioteca multimedia
urlstringNonURL de imaxe remoto que importar e establecer como imaxe destacada
alt_textstringNonTexto alternativo que aplicar ao anexo se se importa desde un URL

Debe fornecerse un de attachment_id ou url.

Devolve { "success": true, "post_id": 42, "attachment_id": 17 }


create_contact_form

Crea un formulario de contacto usando o plugin de formularios activo (Contact Form 7, WPForms, Fluent Forms ou Gravity Forms, dependendo de cal estea instalado). Devolve un shortcode que se pode incrustar en calquera entrada ou páxina.

Parámetros

ParámetroTipoObrigatorioDescrición
titlestringSiNome do formulario mostrado no admin do plugin de formularios
fieldsarraySiLista ordenada de campos do formulario (ver o obxecto Campo a continuación)
recipientstringNonEnderezo de correo electrónico para recibir envíos. Por defecto usa o correo electrónico do admin de WordPress
subjectstringNonLiña de asunto do correo electrónico. Admite os marcadores de posición [your-name] e [your-subject] ao usar Contact Form 7
confirmation_messagestringNonMensaxe mostrada despois dun envío correcto. Por defecto: "Thank you for your message. We'll be in touch soon."

Obxecto Campo

ChaveTipoObrigatorioDescrición
namestringSiNome interno do campo / chave de máquina
labelstringSiEtiqueta lexible para humanos mostrada no formulario
typestringSitext, email, tel, textarea, select, checkbox, radio, file, date
requiredbooleanNonSe o campo debe cubrirse antes do envío. Por defecto false
optionsarrayNonOpcións para os campos select, checkbox e radio
placeholderstringNonTexto do marcador de posición para entradas de tipo texto

Exemplo

{
"title": "Restaurant Booking Enquiry",
"fields": [
{ "name": "your-name", "label": "Name", "type": "text", "required": true },
{ "name": "your-email", "label": "Email", "type": "email", "required": true },
{ "name": "party-size", "label": "Party size", "type": "select", "options": ["1–2", "3–5", "6–10", "10+"] },
{ "name": "your-message", "label": "Special requests", "type": "textarea", "required": false }
],
"recipient": "[email protected]",
"subject": "New booking enquiry from [your-name]"
}

Devolve

{
"success": true,
"form_id": 3,
"shortcode": "[contact-form-7 id=\"3\" title=\"Restaurant Booking Enquiry\"]"
}

Revisión visual

As capacidades de Revisión visual permiten que o axente capture capturas de pantalla de páxinas en directo e as analice, permitindo a revisión autónoma do deseño, comparacións antes/despois e comprobacións de regresión visual sen requirir ningunha extensión de navegador.

capture_screenshot

Captura unha captura de pantalla dunha páxina de WordPress nun URL dado usando un navegador headless do lado do servidor. A imaxe gárdase na Biblioteca multimedia e devólvese un URL de CDN.

Parámetros

ParámetroTipoObrigatorioDescrición
urlstringSiURL completo da páxina da que facer unha captura de pantalla, por exemplo https://example.com/about/
widthintegerNonLargura do viewport en píxeles. Por defecto 1280
heightintegerNonAltura do viewport en píxeles. Por defecto 800
full_pagebooleanNonCaptura a páxina desprazable completa en vez de só o viewport. Por defecto false
delay_msintegerNonMilisegundos que agardar despois da carga da páxina antes de capturar, útil para contido animado. Por defecto 500
labelstringNonEtiqueta lexible para humanos almacenada co anexo na Biblioteca multimedia

Devolve

{
"success": true,
"attachment_id": 88,
"url": "https://example.com/wp-content/uploads/2026/04/screenshot-about.png",
"width": 1280,
"height": 800
}

compare_screenshots

Toma dúas capturas de pantalla e devolve unha puntuación de diferenza visual máis unha imaxe de diferenza que destaca as rexións modificadas. Útil para confirmar que un cambio de deseño produciu o resultado esperado ou para detectar regresións non intencionadas.

Parámetros

ParámetroTipoObrigatorioDescrición
before_urlstringSiURL da páxina que capturar como estado "anterior"
after_urlstringSiURL da páxina que capturar como estado "posterior". Pode ser o mesmo URL se se compara ao longo do tempo
widthintegerNonLargura do viewport para ambas capturas. Por defecto 1280
thresholdfloatNonLimiar de diferenza de píxeles (0.0–1.0). Os píxeles dentro desta tolerancia considéranse sen cambios. Por defecto 0.1

Devolve

{
"success": true,
"diff_score": 0.04,
"changed_pixels": 2340,
"total_pixels": 1024000,
"diff_attachment_id": 91,
"diff_url": "https://example.com/wp-content/uploads/2026/04/diff-about.png"
}

Un diff_score de 0.0 significa que non hai cambios visibles; 1.0 significa que cambiaron todos os píxeles.


review_page_design

Captura unha captura de pantalla dunha páxina e envíaa ao modelo de linguaxe para análise visual. Devolve unha avaliación estruturada que cobre a disposición, a tipografía, o uso da cor e preocupacións de accesibilidade.

Parámetros

ParámetroTipoObrigatorioDescrición
urlstringSiURL completo da páxina que revisar
focusstringNonLista separada por comas de áreas de revisión que enfatizar: layout, typography, colour, accessibility, mobile. Por defecto: todas as áreas
widthintegerNonLargura do viewport. Por defecto 1280

Devolve

{
"success": true,
"screenshot_url": "https://example.com/wp-content/uploads/2026/04/review-about.png",
"assessment": {
"overall": "The page structure is clean and readable. Two accessibility issues detected.",
"layout": "Good visual hierarchy. Hero section is prominent.",
"typography": "Body text is 15px — consider increasing to 16px for readability.",
"colour": "Contrast ratio on the CTA button (#fff on #4a90e2) is 3.1:1 — below the WCAG AA threshold of 4.5:1.",
"accessibility": ["Low contrast on CTA button", "Missing alt text on hero image"],
"suggestions": ["Darken the CTA button to #1a5cb0 to pass WCAG AA", "Add descriptive alt text to the hero image"]
}
}

Capacidades instalables

O Rexistro de capacidades instalables permíteche ampliar o axente con paquetes de capacidades adicionais distribuídos como plugins de WordPress. Cada paquete rexistra unha ou máis capacidades usando a API estándar de capacidades.

list_available_abilities

Devolve o catálogo de paquetes de capacidades dispoñibles para a instalación desde o rexistro.

Parámetros

ParámetroTipoObrigatorioDescrición
categorystringNonFiltrar por categoría: ecommerce, seo, media, social, developer

Devolve

{
"packs": [
{
"slug": "gratis-ai-agent-woocommerce",
"name": "WooCommerce Abilities",
"category": "ecommerce",
"version": "1.0.0",
"abilities": ["create_product", "update_pricing", "manage_inventory"],
"installed": false
}
]
}

install_ability

Descarga e activa un paquete de habilidades desde o rexistro.

Parámetros

ParámetroTipoObrigatorioDescrición
slugstringSiSlug do plugin do paquete de habilidades

Devolve { "success": true, "slug": "gratis-ai-agent-woocommerce", "abilities_added": 3 }


recommend_plugin

Consulta o rexistro de habilidades para atopar o mellor plugin para un caso de uso descrito e, opcionalmente, instálao.

Parámetros

ParámetroTipoObrigatorioDescrición
descriptionstringSiDescrición en linguaxe natural da funcionalidade desexada
installbooleanNonSe true, instala o plugin recomendado inmediatamente. Predeterminado false

Exemplo

{
"description": "I need a contact form with file upload support and spam protection",
"install": false
}

Devolve

{
"recommendation": {
"slug": "contact-form-7",
"name": "Contact Form 7",
"reason": "Widely adopted, supports file uploads, and integrates with Akismet for spam filtering.",
"alternatives": ["wpforms-lite", "fluent-forms"]
}
}