SKILL para FacturaScripts

v2025.81.0

Skill completo para FacturaScripts 2025, el ERP open-source en PHP. Usa este skill SIEMPRE que el usuario mencione FacturaScripts, facturascripts, plugins de...

0· 91·0 current·0 all-time
byJosé Conti@joseconti

Install

OpenClaw Prompt Flow

Install with OpenClaw

Best for remote or guided setup. Copy the exact prompt, then paste it into OpenClaw for joseconti/facturascripts.

Previewing Install & Setup.
Prompt PreviewInstall & Setup
Install the skill "SKILL para FacturaScripts" (joseconti/facturascripts) from ClawHub.
Skill page: https://clawhub.ai/joseconti/facturascripts
Keep the work scoped to this skill only.
After install, inspect the skill metadata and help me finish setup.
Use only the metadata you can verify from ClawHub; do not invent missing requirements.
Ask before making any broader environment changes.

Command Line

CLI Commands

Use the direct CLI path if you want to install manually and keep every step visible.

OpenClaw CLI

Bare skill slug

openclaw skills install facturascripts

ClawHub CLI

Package manager switcher

npx clawhub@latest install facturascripts
Security Scan
Capability signals
CryptoCan make purchasesRequires OAuth token
These labels describe what authority the skill may exercise. They are separate from suspicious or malicious moderation verdicts.
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Benign
high confidence
Purpose & Capability
El nombre/descripcion (ayuda de desarrollo para FacturaScripts) coincide con lo que incluye el paquete: referencias y guías. No se solicitan credenciales ni binarios inesperados.
Instruction Scope
SKILL.md indica cuándo y cómo usar la documentación (por ejemplo al trabajar con modelos, controladores, API, plugins). No ordena leer archivos del sistema, exfiltrar datos ni llamar a endpoints externos; su alcance se limita a proporcionar documentación y guías de desarrollo.
Install Mechanism
No hay spec de instalación ni código ejecutable en la skill (instruction-only + archivos .md). Esto minimiza riesgo de ejecutar código no deseado.
Credentials
No requiere variables de entorno, credenciales ni rutas de configuración. Las referencias a la API y a la gestión de API keys son parte de la documentación y no constituyen peticiones de secretos.
Persistence & Privilege
La skill no solicita always:true ni permisos especiales; es user-invocable y no fuerza inclusión en todos los contextos. No modifica otras skills ni configura el agente.
Assessment
Esta skill es básicamente un paquete de documentación de FacturaScripts 2025. Es internamente coherente y no pide credenciales ni instala código, por lo que su riesgo técnico directo es bajo. Consideraciones prácticas antes de instalar: 1) El origen es 'unknown' y no hay homepage — si dependes de esta documentación para producción, preferir la documentación oficial o un repositorio conocido; 2) revisar rápidamente los archivos incluidos (ya listados) para asegurarte de que no contienen instrucciones que impliquen aportar credenciales o ejecutar scripts en entornos sensibles; 3) permitir su uso en entornos donde el agente tenga acceso a código fuente o sistemas productivos implica que las sugerencias generadas por la skill podrían recomendar cambios en esos sistemas — siempre revisar y validar cualquier cambio antes de aplicarlo; 4) si necesitas trazabilidad/soporte, solicita al autor/metadatos adicionales antes de depender de la skill en procesos críticos.

Like a lobster shell, security has layers — review code before you run it.

latestvk975ze57evdz3523e95d0e5ey584qfd0
91downloads
0stars
1versions
Updated 2w ago
v2025.81.0
MIT-0

FacturaScripts 2025 - Skill Completo

Este skill contiene la documentacion exhaustiva de FacturaScripts 2025.81, un ERP open-source en PHP para gestion empresarial: facturacion, contabilidad, stock, compras, ventas, CRM y mas.

Cuando usar cada referencia

Antes de escribir codigo, lee la referencia relevante segun la tarea:

TareaReferencia a leer
Entender como funciona FacturaScriptsreferences/architecture.md (2374 lineas)
Crear un plugin nuevoreferences/plugins.md (2089 lineas)
Trabajar con modelos (datos, CRUD)references/models.md (1135 lineas)
Crear o modificar controladoresreferences/controllers.md (1721 lineas) + references/controllers-advanced.md (713 lineas)
Crear o modificar vistas/formulariosreferences/views-widgets.md (2787 lineas)
Conectar con la API RESTreferences/api.md (2811 lineas)
Trabajar con base de datosreferences/database.md (2649 lineas)
Exportacion, PDF, email, contabilidadreferences/libraries.md (944 lineas)
Usuarios, roles, permisos, seguridadreferences/security.md (1840 lineas)
Traducciones e internacionalizacionreferences/translations.md (1181 lineas)
Consulta rapida de metodos y clasesreferences/quick-reference.md (454 lineas)

Para la mayoria de tareas de desarrollo de plugins, lee references/plugins.md primero y luego las referencias especificas que necesites.

Si la tarea involucra crear un MCP Server para conectar con FacturaScripts, lee references/api.md que incluye una seccion completa sobre como crear un MCP Server con herramientas basadas en la API REST.

Estructura de FacturaScripts 2025

facturascripts/
  index.php                  # Punto de entrada
  Core/
    Kernel.php               # Nucleo: rutas, controladores, ciclo de vida
    Plugins.php              # Gestor de plugins
    Session.php              # Sesion y autenticacion
    Request.php              # Datos HTTP de entrada
    Response.php             # Respuesta HTTP
    Cache.php                # Cache basada en archivos
    Logger.php               # Sistema de logging
    Tools.php                # Utilidades (fechas, numeros, archivos)
    Translator.php           # Sistema de traducciones
    Html.php                 # Motor Twig con funciones custom
    Http.php                 # Cliente HTTP (cURL)
    DbQuery.php              # Query builder fluent
    Where.php                # Constructor de clausulas WHERE
    WorkQueue.php            # Cola de trabajos asincronos
    Validator.php            # Validacion de datos
    Base/
      Controller.php         # Clase base de controladores
      DataBase.php           # Abstraccion BD (MySQL/PostgreSQL)
    Controller/              # 125+ controladores del core
    Model/                   # 87+ modelos de dominio
      Base/                  # Clases base (ModelCore, ModelClass, traits)
      Join/                  # Modelos virtuales (JOIN)
    Lib/
      ExtendedController/    # Controladores extendidos (List, Edit, Panel)
      Widget/                # 36 tipos de widgets
      API/                   # Sistema API REST
      ListFilter/            # 7 tipos de filtros
      AjaxForms/             # Formularios AJAX
      Export/                # Exportacion (CSV, XLS, PDF)
      PDF/                   # Generacion PDF
      Email/                 # Envio de emails
      Accounting/            # Contabilidad
    View/                    # Plantillas Twig
    XMLView/                 # 133 definiciones de vistas XML
    Table/                   # Esquemas de tablas XML
    Translation/             # Archivos de traduccion JSON
    Mod/                     # Sistema de modificadores (hooks)
    Worker/                  # Workers para cola de trabajos
  Plugins/                   # Directorio de plugins
  MyFiles/                   # Archivos generados, cache, uploads

Conceptos fundamentales

Ciclo de vida de una peticion

1. index.php carga autoloader Composer
2. CrashReport::init() - manejo de errores fatales
3. Kernel::init() - constantes, idioma, workers, plugins
4. Plugins::init() - ejecuta Init.php de cada plugin activo
5. Kernel::run($url)
   a. Sanitiza URL
   b. Carga rutas (core + MyFiles/routes.json)
   c. Busca controlador que coincida con URL
   d. Instancia controlador
   e. Ejecuta controlador->run($response, $request)
6. WorkQueue::run() - procesa trabajos pendientes
7. Telemetry::update()
8. Logger::save() - persiste logs
9. DataBase::close()

Ciclo de vida de un controlador

1. __construct() - configura getPageData()
2. run($response, $request)
   a. checkSecurity() - verifica login y permisos
   b. execPreviousAction($action) - procesa acciones del usuario
   c. loadData() - carga datos del modelo
   d. execAfterAction($action) - post-procesamiento
   e. Renderiza vista Twig

Patron MVC

  • Modelo: Clases en Core/Model/ que extienden ModelClass. Cada modelo mapea una tabla.
  • Vista: Definida en XML (Core/XMLView/) y renderizada con Twig (Core/View/). Los widgets controlan la UI.
  • Controlador: Clases en Core/Controller/ que extienden BaseController o sus variantes extendidas.

Tipos de controlador

TipoUsoClase
ListControllerListados con filtros, ordenacion, paginacionLib\ExtendedController\ListController
EditControllerFormulario de edicion de un registroLib\ExtendedController\EditController
PanelControllerFormulario con pestanas (tabs)Lib\ExtendedController\PanelController
ReportControllerInformes con filtrosLib\ExtendedController\ReportController

Estructura minima de un plugin

Plugins/MiPlugin/
  facturascripts.ini         # Metadatos del plugin
  Init.php                   # Hooks de inicializacion
  Controller/
    ListMiModelo.php         # Controladores
    EditMiModelo.php
  Model/
    MiModelo.php             # Modelos
  Table/
    mi_tabla.xml             # Esquema de tabla
  XMLView/
    ListMiModelo.xml         # Definicion de vista lista
    EditMiModelo.xml         # Definicion de vista edicion
  Translation/
    es_ES.json               # Traducciones

API REST

FacturaScripts incluye una API REST completa accesible en /api/3/. Soporta:

  • Autenticacion por API Key (header Token) o login/password
  • Operaciones CRUD sobre cualquier modelo
  • Filtros con operadores: =, gt, gte, lt, lte, neq, like, null, notnull
  • Paginacion con offset y limit
  • Recursos personalizados

Para detalles completos de cada area, consulta las referencias especificas en references/.

Reglas de desarrollo

  1. Los modelos SIEMPRE deben implementar tableName(), primaryColumn() y clear().
  2. La validacion va en test(), que se ejecuta antes de save().
  3. Los nombres de tabla usan snake_case en plural (ej: facturas_cli, productos).
  4. Los controladores List llevan prefijo List y los Edit llevan prefijo Edit.
  5. Las vistas XML deben coincidir en nombre con el controlador (ListProducto.xml para ListProducto.php).
  6. Usa Tools::lang()->trans('clave') para textos traducibles.
  7. Los plugins NO deben modificar archivos del core. Usa Mod (modificadores) para extender comportamiento.
  8. Las migraciones de BD se definen en archivos XML en Table/.
  9. Para relaciones entre modelos, usa metodos get*() (ej: getLines(), getCustomer()).
  10. El sistema de permisos se basa en Roles con acceso por pagina (controlador).

Comments

Loading comments...