feed

Extrae facts de texto o de una conversación y guárdalos. Solo REST: no existe la herramienta MCP feed.

POST/v1/feed

Envía content o messages. Si incluyes ambos, prevalece content.

CampoTipoObligatorioDescripción
contentstringnoTexto sin procesar. Máximo de 5000 bytes.
messagesMessage[]noTurnos de conversación. Máximo de 20. Cada mensaje contiene role (user, assistant o system) y content.
sourcestringnoEtiqueta de los facts extraídos. Máximo de 255 caracteres.
collectionstringnoCódigo de la collection. Omítelo o indica "" para el espacio predeterminado.
reasonbooleannoPor defecto false: una extracción y almacenamiento. Con true, un agente consulta el grafo, conserva facts duraderos, utiliza espacios type:id, normaliza abreviaturas y evita duplicados. Las llamadas internas a remember/recall consumen créditos propios además de la base de reason.

Petición — texto

{
  "content": "Maya works at Acme and writes TypeScript.",
  "source": "onboarding-conversation"
}

Petición — mensajes

{
  "messages": [
    { "role": "user", "content": "I work at Acme as a backend engineer" },
    { "role": "assistant", "content": "What stack?" },
    { "role": "user", "content": "Mostly Go and PostgreSQL" }
  ],
  "source": "onboarding_chat"
}

Petición — reason

{
  "content": "Maya works at Acme and writes TypeScript.",
  "source": "onboarding-conversation",
  "reason": true
}

SDK:

await memory.feedWithOptions({
  content: "Maya works at Acme and writes TypeScript.",
  source: "onboarding-conversation",
  reason: true,
});
memory.FeedWithOptions(ctx, gomind.FeedRequest{
  Content: "Maya works at Acme and writes TypeScript.",
  Source:  "onboarding-conversation",
  Reason:  true,
})
$memory->feed(
  'Maya works at Acme and writes TypeScript.',
  'onboarding-conversation',
  null,
  true
);

Respuesta

{
  "status": "completed",
  "facts_extracted": 3,
  "facts_created": 3,
  "facts": []
}

Si ya tienes tripletas, usa remember_many en lugar de feed.