IR
irwinrodriguez.dev
FA Licencia perpetua · Pago único

Quieres que Claude u otros agentes entiendan tu aplicación VFP y trabajen con ella mientras está en ejecución.

Claude habla con tu app VFP. En tiempo real.

Un agente de IA (Claude, desde Claude Desktop, Claude Code o cualquier cliente MCP) inspecciona y opera tu aplicación VFP en ejecución: lee variables, consulta cursores, mira el formulario activo, busca en tu código fuente y llama a funciones de negocio escritas en VFP puro. Sin cambiar una sola línea de tu arquitectura existente.

Para quién
  • Desarrolladores VFP
  • Diagnóstico
  • Automatización
  • Integración de IA

Sin tarjeta. Al verificar tu correo tienes 30 días de licencia completa (no es una versión recortada) de FoxServer, FoxCore, FoxBridge, FoxAgent, FoxCli y FoxCli MCP, con su instalador, en tu portal. Una por persona y producto; a los 30 días caduca.

En FoxAgent, cuando la prueba caduca el Broker sigue arrancando: vuelve a los límites del modo evaluación (1 instancia y 1 herramienta propia, con las 55 built-in sin recortar) y te enseña tu machineId para comprar. No hay que borrar nada, y ese modo funciona también sin registrarse.

FoxAgent 1.64.3 Windows x64 Visual FoxPro 9 (SP2) Bridge: .NET Framework 4.8 Broker y McpHost autocontenidos Binarios firmados digitalmente

Características

Inspección en tiempo real

Variables públicas, cursores abiertos, el formulario en pantalla, la pila de llamadas: todo en vivo, sin pausar la aplicación y sin robarle el foco al usuario.

55 herramientas built-in

De get_variables a search_in_source: leen la sesión en vivo, manejan la app por su propia interfaz y trabajan con DBFs y fuentes en disco sin necesidad de una instancia corriendo.

User Defined Tools (UDT)

Una clase VFP con nombre, descripción, parámetros y un Execute(). El agente la llama por su nombre. Si sabes escribir una clase VFP, sabes extender el agente.

Roles: quién acota cada tool

Cuatro peldaños. 0: solo tus tools de negocio. 10 operator: tu pantalla y conducirla, donde tu modelo de permisos sigue mandando. 20 inspector: el proceso por detrás, variables y cursores. 90 engineer: VFP crudo. El peldaño lo declara tu aplicación en Connect() y solo lo sube tu código con Elevate(), nunca el chat; policy.json solo puede bajarlo.

Todo local, por Named Pipes

El Bridge (COM, .NET 4.8) vive dentro de tu proceso; el Broker registra instancias; el McpHost habla MCP por stdio. Todo en la misma máquina: el HTTP del Broker escucha solo en localhost:7400, no hay nada abierto a la red, no hay telemetría y la licencia se valida offline.

Developer y Runtime

Developer: una licencia por máquina de desarrollo, atada a esa máquina, o una de empresa para 3, 5, 10 o todas tus máquinas, sin atar a ninguna. Runtime: una por empresa, que viaja dentro de tu instalador y quita los límites en todos tus clientes.

Cómo funciona

  1. 1
    Carga el Bridge en tu app VFP

    Tres líneas al arrancar (CREATEOBJECT('FoxAgent.Bridge'), SetInstance(_VFP) y Connect()) y una al salir: Disconnect(), que no es opcional. La instancia queda registrada en el Broker local con heartbeat cada 15 segundos. El orden de arranque importa: Broker → tu aplicación → el cliente de IA.

  2. 2
    Conecta tu cliente MCP

    Claude Desktop, Claude Code o cualquier cliente MCP: FoxAgent aparece como servidor MCP y el agente descubre en tiempo de ejecución las herramientas que el rol activo de la sesión permite.

  3. 3
    Escribe UDTs para tu dominio

    find_product, sales_today, stock por debajo del mínimo: veinte líneas de VFP con un SELECT. Registro explícito con RegisterTool() en tu arranque: fácil de leer y fácil de auditar.

Las 55 herramientas, por dónde actúan

Agrupadas por el peldaño que exige cada banda, más la que no necesita ninguna instancia de VFP corriendo.

Tus tools de negocio y la fontanería de sesión Peldaño 0

execute_tool, describe_udt, get_tools, list_instances, get_role, set_role

La pantalla, y conducirla (operator) Peldaño 10

take_screenshot, get_screen_state, list_open_forms, get_active_form, get_form_controls, find_control, get_control_state, get_control_text, click_control, send_key, set_control_text, refresh_form

El proceso por detrás de la pantalla (inspector) Peldaño 20

get_variables, variable_exists, get_cursors, get_cursor_data, get_cursor_schema, get_datasessions, get_environment, eval_expression (solo lectura), list_prg_files

Fuera de la aplicación (engineer) Peldaño 90

exec_command, set_variable, invoke_method, set_control_property, goto_record, set_cursor_field, close_cursors, close_instance, get_call_stack, get_object_members, reload_procedure

Sin instancia Siempre

query_table, describe_table, list_tables, insert_row, update_row, set_memo, backup_table, get_source_file, write_source_file, search_in_source, list_tests, run_tests, get_project_structure, build_project, launch_instance, eval_vfp, foxagent_onboarding

FoxAgent en marcha

Tres momentos de una demo contra FoxMart, un punto de venta VFP corriente. Nada está simulado.

El agente añade tres unidades a la venta abierta
Cinco llamadas para poner tres unidades en la venta abierta: leer los controles, rellenar dos, pulsar «Añadir al carrito» y una captura para confirmar. El agente pulsa lo que pulsaría un usuario; la lógica del formulario hace el resto.
El formulario de venta con la línea nueva y el total actualizado
El resultado en la pantalla del usuario: la línea nueva y el total actualizado.
Dos negativas de FoxAgent: leer variables pide el peldaño 20 y abrir un BROWSE pide el 90
Los peldaños, en vivo: leer las variables pide 20 (inspector), abrir un BROWSE pide 90 (engineer), y la sesión está en 10 (operator). El agente no puede subirse el rol: solo lo sube el código de la propia aplicación, con Elevate(), después de autenticar a la persona.

Para software houses

Vendes tu ERP a trescientos clientes. La pregunta no es cuánto cuesta FoxAgent por puesto: es cuántas licencias vas a tener que administrar. La respuesta es una.

Una licencia, no trescientas

La Runtime se emite a nombre de tu empresa, viaja dentro de tu instalador y no caduca. No se cuenta por cliente, ni por puesto, ni por sede.

Tus programadores, aparte

La Developer es la que da acceso al agente en una máquina de desarrollo, atada a esa máquina. La Runtime es lo que hace que la aplicación instalada en tu cliente funcione sin límites.

Perpetua, con un año de actualizaciones

La versión que compras funciona para siempre. Renovar el mantenimiento es opcional y solo sirve para seguir recibiendo versiones nuevas.

Una licencia Runtime. Todos tus clientes, todos sus puestos, para siempre. Un año de actualizaciones; renueva si quieres más.

Precios

Licencia perpetua, pago único, un año de actualizaciones incluido. Renovar el mantenimiento es opcional: cuesta el 25 % de la licencia (la cifra está bajo cada precio) y se pide escribiendo a soporte@irwinrodriguez.dev.

TramoLicenciaPrecioMantenimiento / año
1 máquina Atada a una máquina de desarrollo 299 € 75 € Comprar
Equipo 3 De empresa, sin atar a máquina 719 € 179 € Comprar
Equipo 5 De empresa, sin atar a máquina 1079 € 269 € Comprar
Equipo 10 De empresa, sin atar a máquina 1790 € 449 € Comprar
Empresa De empresa, sin atar a máquina 2990 € 749 € Comprar

1 máquina: la licencia va atada a esa máquina de desarrollo. Desde Equipo 3 es de empresa: un solo foxagent.lic, a nombre de la empresa, que vale en tantas máquinas como diga el tramo y no se ata a ninguna. El número es contractual: FoxAgent no llama a casa.

Pago único con 12 meses de actualizaciones. Pasado ese año la licencia sigue funcionando con las versiones de dentro de su mantenimiento; renovarlo se tramita escribiendo a soporte@irwinrodriguez.dev.

Runtime (ISV)
1.999 €
Renovación opcional: 499 € al año
Una por empresa: viaja dentro de tu instalador y quita los límites en todos tus clientes, sin contar puestos ni sedes.
Ver la Runtime

Preguntas frecuentes

¿Tengo que modificar mi aplicación VFP existente?
Tres líneas de inicialización (CREATEOBJECT('FoxAgent.Bridge'), SetInstance(_VFP) y Connect()) y un Disconnect() en tu rutina de cierre, que es obligatorio: sin él, al usuario le puede salir «Mismatched pushjmp/popjmp call» al cerrar y el asiento de la licencia queda retenido. No cambia la arquitectura y el Bridge se carga como cualquier objeto COM, pero recompilas tu aplicación, claro. Si vas a escribir tools propias, además cargas los dos ficheros base del SDK.
¿Con qué clientes de IA funciona?
Claude Desktop, Claude Code y cualquier cliente que hable MCP. MCP es un estándar abierto; FoxAgent implementa el contrato del lado VFP, así que tus tools siguen funcionando aunque cambies de cliente.
¿Puede el agente modificar datos en mi aplicación?
Hasta donde llegue el peldaño que le da tu aplicación. Un usuario de negocio conecta a 10 (operator): el agente cambia datos solo a través de tus pantallas, pulsando lo que pulsaría esa persona, y tus validaciones y permisos siguen mandando. Lo que va por fuera de la aplicación (VFP crudo, escribir un cursor saltándose el formulario) exige 90 (engineer), con el que nadie conecta: solo lo sube tu propio código con Elevate(), tras autenticar a la persona, durante un rato, y caduca solo. El chat no puede subirse el rol. Y en el puesto de un cliente, policy.json puede bajar el techo y apagar las tools que escriben DBFs en disco sin pasar por ninguna aplicación.
¿Qué es una UDT y cómo la creo?
Una User Defined Tool es una clase VFP que hereda de FoxAgentTool: ToolName, ToolDescription, parámetros en DefineParameters() y la lógica en Execute(). El SDK trae la clase base, una plantilla y ejemplos funcionando.
¿Necesita conexión a internet?
No. Broker, Bridge y McpHost corren en local; la única conexión a internet es la de tu cliente de IA con su API. La licencia se valida offline con una clave pública embebida en el binario, y no hay telemetría: lo único que se escribe es un log de auditoría local.
¿Cómo lo pruebo sin comprar?
Instala y ya estás en modo evaluación: 1 instancia conectada y 1 UDT propia, con las 55 built-in sin límite. Al registrarte en el portal tienes además un trial de un mes.
¿Cuántas sesiones de VFP puedo tener abiertas a la vez?
Con la Developer comprada, ocho instancias registradas en el Broker de esa máquina, de sobra para desarrollar con varios proyectos abiertos. La licencia de prueba trae una, y la Runtime no pone tope. Cuando se llega al tope, la instancia que sobra se rechaza con «Instance limit reached for this license»: no es un fallo, es el tope.
¿Qué pasa cuando se acaba mi mantenimiento?
Nada en lo que ya tienes instalado: la licencia es perpetua y los builds que cubre arrancan igual dentro de diez años. Lo que caduca es el derecho a los builds nuevos. Si instalas uno compilado después de tu fecha, el Broker arranca en evaluación y lo dice (mode MaintenanceExpired), con la fecha y el build en la primera línea del log. Dos salidas: volver al build anterior, o renovar.

Tu app VFP, amplificada con IA

Conecta un agente a tu aplicación legacy y empieza a inspeccionarla, diagnosticarla y operarla con lenguaje natural.

Comprar ahora