Facts

Un fact representa una relación.

{
  "subject": "user:maya",
  "predicate": "works_at",
  "object": "company:acme"
}

Esto significa user:maya — works_at → company:acme.

Entidades: type:id

Utiliza un tipo y un identificador separados por dos puntos:

  • user:maya
  • company:acme
  • project:dashboard
  • topic:typescript

GoMind identifica el tipo por el prefijo. user:123 y question:123 son entidades diferentes. La operación forget_entity elimina todos los facts asociados a la entidad indicada.

También puedes utilizar textos sin espacio de nombres, pero resulta más difícil relacionarlos después. Prefiere type:id desde el principio.

Objeto: entidad o valor literal

Cuando el objeto parece el nombre de una entidad, GoMind lo trata como un nodo del grafo. Si es un valor como vegetarian, Portland o senior engineer, se guarda como literal. En la respuesta aparece en value en lugar de object.

Predicados

Mantén los predicados estables y en snake_case: works_at, has_skill, display_name. Cambiarles el nombre después divide el historial.

El campo opcional context añade una nota al fact, pero no forma parte de la tripleta.

Qué no guardar

No inventes hechos. Guarda lo que una persona haya dicho, lo que un sistema ya sepa o lo que feed haya extraído. Confirma antes de guardar datos sensibles.