Volver al blog

LibreOffice Sin IA Bate Récord de Descargas: Por Qué No Tener IA Se Volvió una Función en 2026

Hola HaWkers, LibreOffice 26.8 salió el 26 de agosto de 2026 sin ninguna función de IA generativa, y The Document Foundation se encargó de dejar claro que fue una elección, no un retraso. Una semana después, la fundación publicó los números: 1.031.162 descargas en el sitio oficial en los primeros siete días, la mejor primera semana de cualquier versión en la historia del proyecto. Al día siguiente llegó un post con un título que resume toda la discusión: "Yes, no AI is now a feature".

Detente un segundo y piensa en la última app que actualizaste. ¿Cuántas ganaron un botón con brillitos que no pediste? En este artículo vas a entender qué anunció de verdad la fundación, cuáles son las seis condiciones que impone para que cualquier IA entre en el paquete estándar, por qué esto dialoga con el aumento de precios de Microsoft 365 y cómo aplicar la misma lógica en tu producto, con código de IA opt-in y un pipeline que resume documentos sin sacarlos de tu máquina.

Qué Pasó con LibreOffice 26.8

LibreOffice nació en 2010 como un fork de OpenOffice.org y lo mantiene The Document Foundation (TDF), una fundación alemana sin fines de lucro. Es la alternativa gratuita más conocida a Microsoft Office y se usa en escuelas, hospitales, organismos públicos y bufetes de abogados de todo el mundo.

La versión 26.8 llegó para Windows, macOS y Linux, en 120 idiomas. Los números que llamaron la atención fueron estos:

  • 1.031.162 descargas en siete días, contando solo el sitio oficial. Quien instala desde Flathub, la Snap Store, PPAs o el repositorio de su distribución Linux queda fuera, así que el total real es mayor.
  • Dos semanas seguidas por encima de 1 millón de descargas, algo inédito en el proyecto. Parte de eso coincide con el lanzamiento de la versión de mantenimiento 26.2.6 en la misma ventana.
  • 29.755.011 descargas acumuladas en 2026, según números compilados por Cybernews, por encima de las 24.830.220 registradas en 2025 y de las 23.732.502 de 2024.

La noticia ganó tracción internacional a partir de un texto del sitio brasileño Manual do Usuário, que llegó a la portada de Hacker News con más de 700 puntos y más de 200 comentarios.

Qué trae de nuevo la versión

Sin IA no quiere decir sin novedades. Los principales cambios de la 26.8:

Módulo Novedad
Writer Paragraph Composer, un algoritmo de maquetación que equilibra el espaciado entre palabras en líneas consecutivas
Writer Apertura más rápida de documentos grandes con imágenes y base para comparar documentos lado a lado
Writer Soporte para variaciones de fuentes OpenType y detección automática de la dirección del párrafo
Calc Comando para mezclar al azar las celdas de un rango y campos calculados en tablas dinámicas
Chart Soporte experimental para importar y reexportar los nuevos gráficos Chartex de Microsoft Office
Draw Opción de invertir el zoom y el desplazamiento en la rueda del mouse

Súmale a eso una mejor compatibilidad con archivos XLSX, que sigue siendo el punto más sensible para quien cambia de suite en el trabajo.

"¿Sin IA Se Volvió Función?": Las Seis Condiciones de la Fundación

El post del 3 de septiembre, firmado por Italo Vignoli en el blog de la TDF, empieza respondiendo a un comentario dejado en el anuncio de la versión: "¿entonces no tener IA ahora es una función?". La respuesta es más cuidadosa de lo que sugiere el título. La fundación dice que LibreOffice no rechaza la inteligencia artificial de entrada. Lo que rechaza es poner en el paquete estándar, usado por decenas de millones de personas, un recurso que todavía no puede entregarse dentro de los principios del proyecto.

Y esos principios se convirtieron en una lista objetiva de seis condiciones:

  1. Ejecución controlada por el usuario. Quien lo usa elige dónde corre la inferencia: en su propia computadora, en una infraestructura que controla o en un servicio que eligió de forma independiente. En palabras de la TDF, un valor predeterminado que redirige en silencio a un único proveedor no es una elección.
  2. Ningún contenido sale de la computadora sin autorización. El envío del documento tiene que ser una decisión del usuario, nunca un comportamiento en segundo plano.
  3. Ninguna telemetría de ningún tipo. LibreOffice no recopila datos de uso, y eso también vale para la IA.
  4. Ninguna dependencia de un único proveedor. Para la fundación, una integración que solo funciona con la API de una empresa es un mecanismo de lock-in.
  5. Ninguna concesión en el formato. El contenido generado tiene que salir en ODF, como cualquier otro contenido.
  6. Totalmente opcional. El recurso tiene que ser instalable, removible y ausente de la interfaz para quien no quiere usarlo.

La conclusión de la TDF es directa: hoy no existe una integración que cumpla todos esos requisitos para entrar en el paquete estándar. Quien quiera IA puede instalar extensiones de terceros que apunten a Ollama, LM Studio o cualquier endpoint compatible con la API de OpenAI, y en ese caso el documento nunca sale de la computadora.

Fíjate en que esto no es un manifiesto anti-IA. Es una especificación de requisitos. Ya comenté aquí en el blog cómo Debian votó reglas para el uso de IA generativa en el código, y el patrón es parecido: los grandes proyectos open source están cambiando el "sí o no" por "bajo qué condiciones".

El Otro Lado: La IA Como Justificación del Aumento de Precios

El argumento más afilado del post no es técnico, es de modelo de negocio. La TDF recuerda que, como fundación sin fines de lucro, no tiene planes de suscripción que proteger, upsell que empujar ni datos que monetizar. En las suites comerciales, en cambio, según el texto, el asistente de IA sirve para justificar aumentos de precio y para reforzar el argumento de mantener todos los documentos dentro de la infraestructura del proveedor.

El calendario ayuda al argumento. El 1 de julio de 2026 Microsoft reajustó los precios de los planes comerciales de Microsoft 365 y, en ese mismo movimiento, incluyó Copilot Chat en los planes base, con lectura de la bandeja de entrada y del calendario y agentes en Word, Excel y PowerPoint. Algunos de los nuevos precios por usuario, por mes:

Plan Antes Después Aumento
Business Basic US$ 6,00 US$ 7,00 +17%
Business Standard US$ 12,50 US$ 14,00 +12%
Microsoft 365 E3 US$ 36,00 US$ 39,00 +8%
Microsoft 365 E5 US$ 57,00 US$ 60,00 +5%
F3 (con Teams) US$ 8,00 US$ 10,00 +25%
F1 (sin Teams) US$ 1,75 US$ 2,50 +43%

Microsoft 365 Copilot completo sigue siendo un complemento aparte, de US$ 30 por usuario al mes. Es decir: la IA básica entró en el paquete junto con el aumento, y la IA más completa se sigue vendiendo por separado. No se puede afirmar que una cosa causó la otra, pero es justamente ese tipo de combinación la que la TDF usa como contraste.

La Lección de Producto: Cuando Todos Suman, Restar Se Vuelve Posicionamiento

El posicionamiento es, antes que nada, diferencia percibida. Cuando todas las suites de oficina pasan a tener el mismo botón de IA, ese botón deja de diferenciar a quien lo tiene y pasa a diferenciar a quien no lo tiene. LibreOffice no inventó esto. En agosto de 2024, Procreate, la app de dibujo para iPad, prometió públicamente que nunca pondría IA generativa en sus productos, y su CEO, James Cuda, resumió la postura en una frase: "la creatividad se hace, no se genera". La reacción de su base de artistas fue mayoritariamente positiva.

Tres puntos hacen que esta estrategia funcione en el caso de la TDF, y valen para cualquier producto.

1. El cliente correcto valora la ausencia

Escuelas, hospitales, organismos públicos y bufetes de abogados manejan datos confidenciales, reservados o personales. Para ellos, saber adónde va el documento es un requisito de compra, no un detalle. En Brasil, cualquier software que procesa datos personales choca con la LGPD, la ley de protección de datos del país, y "el contenido nunca sale de la máquina" acorta mucho la conversación con el área legal. En Europa, el movimiento de soberanía digital empuja en la misma dirección, como mostró el plan de Francia para sustituir las apps estadounidenses.

2. La postura tiene que encajar con el modelo de negocio

La TDF puede decir "sin IA por defecto" con credibilidad porque no vive de suscripciones. Si tu SaaS cobra por asiento y empuja un plan premium con IA, el mismo discurso suena falso. Antes de copiar la estrategia, pregúntate si es coherente con la forma en que ganas dinero.

3. No es "nunca", es "con condiciones"

La TDF dejó la puerta abierta y escribió los criterios para abrirla. Eso convierte un rechazo en una promesa verificable y le da a quien quiere IA un camino, las extensiones, sin obligar a quien no la quiere.

En la Práctica: IA Opt-In en Tu Producto

Las seis condiciones de la TDF son un excelente checklist de arquitectura. Vamos a convertir las más importantes en código, empezando por lo básico: todo desactivado por defecto.

// ai-settings.ts: configuración de IA del producto, todo empieza desactivado
export type AiProvider =
  | { kind: 'local'; baseUrl: string; model: string } // ej.: Ollama en la máquina del usuario
  | { kind: 'self-hosted'; baseUrl: string; model: string } // servidor controlado por la empresa del usuario
  | { kind: 'external'; baseUrl: string; model: string; apiKeyRef: string }; // servicio elegido por el usuario

export interface AiSettings {
  enabled: boolean; // el recurso solo existe después de que el usuario lo activa
  provider: AiProvider | null; // ningún proveedor elegido por defecto
  allowContentUpload: boolean; // autorización explícita para enviar contenido hacia fuera
  showInToolbar: boolean; // si es falso, la IA ni siquiera aparece en la interfaz
  telemetry: boolean; // la recopilación de datos de uso también es opt-in
}

export const DEFAULT_AI_SETTINGS: Readonly<AiSettings> = Object.freeze({
  enabled: false,
  provider: null,
  allowContentUpload: false,
  showInToolbar: false,
  telemetry: false,
});

La regla de oro está en el objeto por defecto: ningún proveedor elegido, ningún envío autorizado, nada en la interfaz. El usuario activa lo que quiera, cuando quiera.

Una barrera antes de cualquier llamada de red

La condición número 2 de la TDF, que ningún contenido salga sin autorización, tiene que garantizarse en el código, no en la buena voluntad de quien escribe cada pantalla. Un guardia central lo resuelve:

// ai-guard.ts: toda llamada de IA pasa por aquí antes de tocar la red
import type { AiProvider, AiSettings } from './ai-settings';

export class AiNotAllowedError extends Error {
  constructor(message: string) {
    super(message);
    this.name = 'AiNotAllowedError';
  }
}

const isOnDevice = (provider: AiProvider): boolean => {
  if (provider.kind !== 'local') return false;
  const { hostname } = new URL(provider.baseUrl);
  // "local" solo vale si la dirección es de verdad la máquina del usuario
  return ['localhost', '127.0.0.1', '[::1]'].includes(hostname);
};

export function assertAiAllowed(
  settings: AiSettings,
  hasUserContent: boolean
): AiProvider {
  if (!settings.enabled || !settings.provider) {
    throw new AiNotAllowedError('IA desactivada: el usuario no activó el recurso.');
  }

  // El contenido del usuario solo sale de la máquina con autorización explícita
  if (hasUserContent && !isOnDevice(settings.provider) && !settings.allowContentUpload) {
    throw new AiNotAllowedError('Envío de contenido a un proveedor remoto no autorizado.');
  }

  return settings.provider;
}

Con esto, olvidar la verificación en una función nueva no filtra ningún documento: la llamada falla de forma ruidosa y temprana, y el error dice exactamente qué faltó.

Ausente de la interfaz para quien no lo quiere

La condición 6 pide que el recurso sea removible y esté ausente de la interfaz. En el front-end, eso es un v-if honesto, y no un botón deshabilitado parpadeando en la barra de herramientas:

<script setup lang="ts">
// EditorToolbar.vue: el botón de IA solo existe para quien activó el recurso
import { computed } from 'vue';
import type { AiSettings } from './ai-settings';

const props = defineProps<{ settings: AiSettings }>();
const emit = defineEmits<{ summarize: [] }>();

const showAiButton = computed(
  () => props.settings.enabled && props.settings.showInToolbar
);
</script>

<template>
  <nav class="toolbar">
    <button type="button">Guardar</button>
    <button type="button">Exportar PDF</button>
    <!-- Nada de botones con brillitos para quien no los pidió -->
    <button v-if="showAiButton" type="button" @click="emit('summarize')">
      Resumir con IA
    </button>
  </nav>
</template>

IA Local Como Sugiere la TDF: LibreOffice Headless + Ollama

El camino que la TDF señala para quien quiere IA, un modelo corriendo en la propia máquina con un endpoint compatible con OpenAI, es fácil de montar hoy. Y LibreOffice entra como pieza de automatización: el modo headless convierte documentos sin abrir ninguna interfaz. Si quieres entender mejor el escenario de los modelos que corren en el dispositivo, escribí sobre IA local y edge computing aquí en el blog.

Primero, la terminal:

# 1. Descarga un modelo para correr localmente (solo la primera vez)
ollama pull llama3.2

# 2. Verifica que el endpoint compatible con OpenAI esté respondiendo
curl http://localhost:11434/v1/models

# 3. Convierte un documento a texto plano sin abrir la interfaz de LibreOffice
#    (en macOS el binario está en /Applications/LibreOffice.app/Contents/MacOS/soffice)
soffice --headless --convert-to txt:Text --outdir ./salida contrato.odt

# 4. El mismo modo headless genera PDF, útil en el back-end y en pipelines de CI
soffice --headless --convert-to pdf --outdir ./salida informe.docx

Ahora un script de Node.js que junta las dos cosas: convierte el documento con LibreOffice y le pide un resumen al modelo local. El archivo no sale de tu computadora en ningún momento.

// resumen-local.mjs: resume un documento sin que salga de tu máquina
import { execFile } from 'node:child_process';
import { mkdtemp, readFile, rm } from 'node:fs/promises';
import { tmpdir } from 'node:os';
import path from 'node:path';
import { promisify } from 'node:util';

const run = promisify(execFile);
const SOFFICE = process.env.SOFFICE ?? 'soffice'; // ruta del binario de LibreOffice
const ENDPOINT = 'http://localhost:11434/v1/chat/completions'; // Ollama, compatible con OpenAI
const MODEL = process.env.MODEL ?? 'llama3.2'; // cámbialo por el modelo que descargaste

async function documentToText(file) {
  const outDir = await mkdtemp(path.join(tmpdir(), 'lo-'));
  try {
    // Conversión headless: no se abre ninguna ventana y nada va a la red
    await run(SOFFICE, ['--headless', '--convert-to', 'txt:Text', '--outdir', outDir, file]);
    const name = `${path.basename(file, path.extname(file))}.txt`;
    return await readFile(path.join(outDir, name), 'utf-8');
  } finally {
    await rm(outDir, { recursive: true, force: true }); // borra el archivo temporal
  }
}

async function summarize(text) {
  const response = await fetch(ENDPOINT, {
    method: 'POST',
    headers: { 'Content-Type': 'application/json' },
    body: JSON.stringify({
      model: MODEL,
      messages: [
        { role: 'system', content: 'Resume el documento en hasta 5 puntos, en español.' },
        { role: 'user', content: text.slice(0, 20_000) }, // recorta textos demasiado largos
      ],
    }),
  });
  if (!response.ok) throw new Error(`El modelo local respondió ${response.status}`);
  const data = await response.json();
  return data.choices[0].message.content;
}

const file = process.argv[2];
if (!file) {
  console.error('Uso: node resumen-local.mjs <documento.odt|docx>');
  process.exit(1);
}

console.log(await summarize(await documentToText(file)));

Para ejecutarlo: node resumen-local.mjs contrato.odt. Es el espíritu de las seis condiciones aplicado en un script corto: el usuario elige el modelo, la inferencia corre localmente, no hay telemetría y el documento de entrada sigue en un formato abierto.

Los Límites del Argumento

Sería deshonesto vender el récord como prueba de que "sin IA" vende. Algunas precauciones antes de llevar la lección a tu producto:

  • Correlación no es causalidad. La primera semana récord se midió entre el 26 de agosto y el 2 de septiembre, antes del post que convirtió el "sin IA" en titular. Y las dos semanas por encima de 1 millón coinciden con dos versiones lanzadas una tras otra.
  • Una descarga no es un usuario activo. Una parte relevante viene de quien ya usaba la suite y solo actualizó.
  • Mucha gente sí quiere IA. La estrategia funciona para el público al que atiende LibreOffice. Un editor enfocado en marketing de contenidos quizás perdería clientes con la misma decisión.
  • Las extensiones de terceros también exigen cuidado. "El documento nunca sale de la computadora" vale para el modelo local. Una extensión que apunta a una API externa vuelve al problema original, y la responsabilidad pasa a quien la instaló.

Nada de esto invalida la lección. Solo muestra que depende del contexto: el público, el modelo de negocio y la confianza acumulada a lo largo de los años.

Qué Significa Esto Para Quien Construye Software en 2026

El mensaje de LibreOffice 26.8 no es "no uses IA". Es que la IA se volvió una decisión de producto con un costo de confianza, y el estándar del mercado de activar todo para todo el mundo ganó competencia. Para quien desarrolla y vende software, se puede sacar un checklist corto de este episodio:

  • Desactivado por defecto para cualquier recurso que envíe contenido del usuario hacia fuera.
  • Elección de proveedor, incluida la opción local, en lugar de una única API atada.
  • Cero telemetría por defecto, con opt-in explícito si de verdad la necesitas.
  • Salida en formato abierto, para que el usuario no quede atrapado en lo que la IA generó dentro de tu producto.
  • Eliminación de verdad, sin botones fantasma en la interfaz.

Mi apuesta es que, en los próximos años, "IA opcional y local" va a dejar de ser un nicho de fundaciones open source para convertirse en criterio de compra en licitaciones públicas, salud y el sector legal. Quien ya tenga esa arquitectura lista va a tener una respuesta corta cuando el cliente pregunte adónde van los datos. Y hay un bonus: un producto que funciona bien sin IA suele quedar todavía mejor cuando el usuario decide activarla.

¡Vamos con todo! 🦅

📚 ¿Quieres Seguir lo Que Viene Por Delante?

Este artículo cubrió el récord de LibreOffice 26.8 y la decisión de dejar la IA fuera del paquete estándar, pero el ecosistema cambia todas las semanas y no todo se convierte en artículo aquí.

En X comparto lo que estoy probando, los bastidores de los proyectos y las novedades que aparecen antes de volverse post.

Sígueme Allá

👉 Seguir a @jeffbruchado en X

💡 Contenido diario sobre desarrollo, carrera y las herramientas que realmente uso

Comentarios (0)

Este artículo aún no tiene comentarios 😢. ¡Sé el primero! 🚀🦅

Añadir comentarios