ワンクリックで
cron
Explica cómo funcionan las tareas periódicas (cron jobs) en FacturaScripts mediante el archivo Cron.php y la clase CronClass.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Explica cómo funcionan las tareas periódicas (cron jobs) en FacturaScripts mediante el archivo Cron.php y la clase CronClass.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Crea un modelo de FacturaScripts con su clase PHP y archivo XML de tabla.
Configura la ruta de módulos MCP locales privados en ~/.fs-claude.json
Redacta en pantalla (sin crear ningún archivo) un texto en formato markdown, listo para copiar y pegar, que explica las novedades, mejoras y correcciones de un plugin o proyecto de FacturaScripts a partir de un rango de commits o de versiones. Activa esta skill siempre que el usuario pida "redacta las novedades", "escribe la noticia de los cambios", "genera el changelog", "qué ha cambiado desde la versión X", "resume los cambios entre la versión X y la Y", "prepara el anuncio de la nueva versión", o cualquier variación en la que se pida comunicar qué se ha hecho en un rango de commits o entre dos versiones.
Guía para añadir una nueva conexión de FacturaScripts al archivo de configuración
Sincroniza modelos del MCP fs-mcp con sus fuentes (FacturaScripts core o plugins privados). Detecta columnas nuevas/modificadas/eliminadas, mantiene las descripciones unificadas en los archivos de overrides, regenera la metadata y compila si hace falta. Soporta uno o varios modelos, ruta local o URL de GitHub, y un modo "refresh masivo" para auditar todos los modelos del catálogo y actualizar la versión registrada de FacturaScripts.
Responde preguntas sobre cómo usar FacturaScripts consultando la documentación oficial de usuarios a través del agente especializado `docs-expert`. ACTIVAR SIEMPRE que el usuario pregunte cómo hacer una operación, dónde encontrar una función, cómo fluye un proceso (presupuesto→factura), cómo gestionar clientes, inventario, compras, contabilidad, o cualquier aspecto práctico de uso del ERP. También activar cuando Claude necesite explorar la documentación de usuario antes de responder sobre procedimientos — no esperar a que el usuario pregunte explícitamente. No esperes a que mencione "documentación" — si la pregunta o tarea involucra procedimientos operativos en FacturaScripts, activa esta skill.
| name | cron |
| description | Explica cómo funcionan las tareas periódicas (cron jobs) en FacturaScripts mediante el archivo Cron.php y la clase CronClass. |
El sistema de cron de FacturaScripts permite ejecutar tareas periódicas en los plugins. Cada plugin puede tener su propio archivo Cron.php que hereda de CronClass. El cron del sistema gestionará automáticamente todos los procesos cron de los plugins activos.
El cron del sistema debe estar configurado correctamente en el servidor o hosting para que se ejecute periódicamente (por ejemplo, cada minuto).
Para generar automáticamente el archivo Cron.php y añadir un nuevo CronJob:
# Crear el archivo Cron.php base del plugin
fsmaker cron
# Crear un nuevo CronJob y registrarlo en Cron.php
fsmaker cronjob
<?php
namespace FacturaScripts\Plugins\MiPlugin;
use FacturaScripts\Core\Template\CronClass;
class Cron extends CronClass
{
public function run(): void
{
// tu código aquí
}
}
Todo el código dentro de run() se ejecutará cada vez que se active el cron. Para controlar la frecuencia de ejecución de trabajos individuales, se usa el método job().
public function run(): void
{
// ejecutar cada hora
$this->job('mi-trabajo')
->every('1 hour')
->run(function () {
// código a ejecutar cada hora
});
// ejecutar cada 6 horas
$this->job('otro-trabajo')
->every('6 hours')
->run(function () {
// código a ejecutar cada 6 horas
});
// ejecutar cada 10 días
$this->job('trabajo-dias')
->every('10 days')
->run(function () {
// código a ejecutar cada 10 días
});
}
$this->job('mi-trabajo')
->everyDayAt(8)
->run(function () {
// se ejecutará cada día a las 8h
});
Si necesitas una comprobación más estricta (solo ejecutar exactamente a esa hora, sin recuperar ejecuciones perdidas):
$this->job('mi-trabajo')
->everyDayAt(8, true)
->run(function () {
// solo se ejecutará a las 8h exactas
});
$this->job('mi-trabajo')
->everyMondayAt(8)
->run(function () {
// cada lunes a las 8h
});
Métodos disponibles por día de la semana:
everyMondayAt() — luneseveryTuesdayAt() — marteseveryWednesdayAt() — miércoleseveryThursdayAt() — jueveseveryFridayAt() — vierneseverySaturdayAt() — sábadoeverySundayAt() — domingo$this->job('mi-trabajo')
->everyDay(15, 7)
->run(function () {
// cada día 15 a las 7h
});
$this->job('mi-trabajo')
->everyLastDayOfMonthAt(8)
->run(function () {
// el último día de cada mes, a las 8h
});
Si un trabajo no debe ejecutarse mientras otros estén en progreso, usa withoutOverlapping():
// no se ejecuta si hay otro trabajo en progreso
$this->job('mi-trabajo')
->everyDayAt(8)
->withoutOverlapping()
->run(function () {
// código exclusivo
});
Para evitar solapamiento solo con trabajos concretos:
// no se ejecuta si trabajo3 o trabajo4 están en progreso
$this->job('trabajo2')
->everyDayAt(8)
->withoutOverlapping('trabajo3', 'trabajo4')
->run(function () {
// código
});
withoutOverlapping(), puede impedir que otras tareas menos frecuentes lleguen a ejecutarse.Para consultar la documentación oficial completa sobre tareas periódicas con cron en FacturaScripts, invoca el agente docs-expert que te proporcionará detalles completos directamente desde la documentación oficial del framework.