FDN

Para equipos que construyen con agentes de IA: una app en el navegador para modelar el negocio con historias, reglas que se ejecutan y escenarios que las prueban, todo guardado en git. Cuando el modelo no deja dudas, el código sale exacto, y si no, FDN te lo dice.

Ver en GitHub npm v1.0 · código abierto
NegocioIngenieríaOperacionesAgentes de IA
un solo modelohistorias · reglas · escenarios · en tu git
el problema

Lo difícil es que negocio, ingeniería y operaciones hablen el mismo idioma.

Cada quien tiene su versión

En la cabeza, en el código, en un manual o en el chat del agente.

La ambigüedad llega a producción

Lo que nadie decidió se decide en un if.

Los post-its se quedan en la foto

El event storming no se ejecuta ni se revisa.

cómo es trabajar con fdn

Tú y tu agente, sobre el mismo modelo.

Negocio, ingeniería y operaciones trabajan juntos, cada quien con su agente preferido.

FDN · Gastos de viaje
Jefe
Autorizar viaje
Viaje
Viaje autorizado
¿Lo autoriza cualquier jefe?

agenteNada dice quién es el jefe del viaje: cualquiera podría autorizarlo. Te dejé una propuesta.

Autorizar viaje require estatus = enviado require actor = jefe del viaje Aplicar

túTiene sentido. La apruebo.

actorcomando: lo que se pideagregado: lo que guarda y decidehecho: lo que pasópregunta abierta

FDN revisa el modelo en cada cambio y marca lo que no cuadra; tu agente lo lee y propone cambios a través de MCP, el protocolo con el que los agentes de IA usan herramientas. Tú los revisas y decides cuáles se aplican.

las capas

Tres capas sin ambigüedad. La cuarta la escribe tu agente.

1

Historia

Event storming: las historias del negocio como una línea de tiempo de post-its.

2

Dominio

DDD: las reglas de cada parte del negocio. Un motor las ejecuta, así que los escenarios Given, When, Then corren sin una línea de código.

3

Contratos

La forma exacta de lo que entra y sale, agnóstica a la tecnología.

4

Código

  • Tu agente lo escribe, en tu lenguaje, con las reglas que FDN le da. Cada pieza lleva el id de lo que la hace nacer.
  • fdn trace revisa que nada del modelo falte en el código y que nada sobre.
  • fdn verify corre los mismos escenarios contra tu código, por un adaptador ligero que también escribe tu agente. Si tu código dice otra cosa que el modelo, falla.
// fdn: rule 01J9…3QK «require actor = jefe del viaje» · rechazo NoEsElJefe if (approver.id !== trip.bossId) throw new NotTheBoss();
empieza

Tres pasos para empezar.

Instala

Node 22.18 o posterior.

npm install -g @fdn-dev/cli

Abre FDN

En la carpeta que contiene tus repositorios. Se abre en tu navegador, y cada repositorio guarda su modelo en .foundation/, legible y con su diff en cada PR.

fdn --open

Conecta tu agente

Cualquier cliente MCP, en http://127.0.0.1:4848/mcp. Con Claude Code:

claude mcp add --transport http fdn http://127.0.0.1:4848/mcp

Con un servidor del equipo, negocio y operaciones entran desde el navegador, sin instalar nada.

preguntas

Lo que suelen preguntar.

¿Las personas de negocio necesitan git o la terminal?

No. Ingeniería instala FDN una vez en un servidor del equipo; negocio y operaciones entran desde el navegador con la cuenta de su empresa, y su agente se conecta al mismo lugar. Lo que aprueban llega a git como commits, e ingeniería lo revisa en un PR.

¿Necesito saber DDD o event storming?

Ayuda, pero no es requisito. Tu agente modela contigo y FDN revisa el modelo en cada cambio: te dice, en el lenguaje del negocio, qué falta o qué no cuadra.

¿Sirve en un proyecto que ya tiene código?

Sí. El modelo vive aparte, en .foundation/ del mismo repositorio, y no toca tu código. FDN no deduce el modelo del código que ya tienes: se modela a partir de las historias del negocio.

¿Qué agentes funcionan con FDN?

Cualquier cliente MCP: por HTTP en http://127.0.0.1:4848/mcp, o por stdio con fdn mcp si tu cliente no se conecta por HTTP. FDN no trae IA propia ni cobra por usarla.

¿Mi modelo sale de mi empresa?

No. FDN corre en tu máquina o en el servidor de tu equipo, nunca en uno nuestro; el modelo vive en tu git y FDN no envía telemetría. Tu agente solo propone: aplicar un cambio lo decide una persona.

¿Qué me queda si dejo FDN?

Tu modelo: un archivo JSON legible por contexto dentro de .foundation/, con su historial en git. Es tuyo y se lee sin FDN.

¿En qué se diferencia de una especificación en Markdown o de Gherkin?

Una especificación en Markdown la lee tu agente una vez, y nadie comprueba que el código la siga. Gherkin ejecuta sus escenarios contra el código, así que el código tiene que existir primero. En FDN los escenarios corren sobre el modelo y pasan o fallan antes de que exista el código; FDN avisa en cada cambio lo que deja de cuadrar, y después fdn verify corre los mismos escenarios contra tu código.

¿Y frente a Spec Kit o Kiro?

Son buenas formas de darle a tu agente una especificación antes de escribir código. FDN va un paso antes: el modelo del negocio se ejecuta, se revisa en cada cambio y comprueba el código con fdn verify. Se pueden usar juntos.

¿No es esto model-driven otra vez?

No. Las herramientas model-driven generaban el código desde el modelo, y había que mantener el generador y vivir con lo que producía. En FDN el código lo escribe tu agente, en tu lenguaje y con tu estilo; el modelo no lo genera, lo comprueba, con fdn trace y fdn verify.

Antes del código: FDN.