> ## Documentation Index
> Fetch the complete documentation index at: https://linkly.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Guía de instalación para Agentes

> Entrega esta página a tu agente de IA y deja que te guíe en la instalación, integración y verificación de Linkly AI

Esta página está escrita principalmente para **agentes de IA**, no para personas.

Si usas un asistente de IA con acceso a la terminal —Claude Code, Codex, Cursor y similares— copia la línea de abajo y envíasela a tu asistente. Leerá esta página y te guiará paso a paso por la instalación:

```
Por favor, lee https://linkly.ai/docs/es/agent-setup.md y guíame en la instalación e integración de Linkly AI
```

También puedes seguir leyendo por tu cuenta: esta es igualmente una guía de instalación completa. Simplemente está redactada de forma más directa que la mayoría, con especial énfasis en cómo saber si cada paso funcionó realmente. Si tu asistente de IA no puede acceder a internet, usa **Copy page** en la esquina superior derecha para obtener esta página como Markdown en bruto y pégasela directamente.

***

## Para el agente de IA

Todo lo que sigue va dirigido a ti. Léelo por completo antes de empezar.

### Tu tarea

Guía al usuario en la instalación e integración de Linkly AI. Habrás terminado cuando:

1. La aplicación de escritorio Linkly AI esté instalada, inicializada e indexando: **con los ejemplos incluidos basta**; los documentos propios del usuario son un extra; y
2. Tú —u otra herramienta de IA que el usuario posea— puedas invocar realmente las herramientas de recuperación de Linkly AI y encontrar un documento real.

### Tus límites y reglas

Algunas cosas puedes hacerlas tú mismo; otras debes dejárselas al usuario. **No te excedas ni des por hecho un resultado en nombre del usuario:**

* **Puedes hacer tú mismo**: ejecutar comandos de sondeo, instalar la CLI, configurar MCP, instalar Skills, ejecutar comandos de verificación, interpretar errores e informar de los resultados. Para cualquier cosa que instale software, **muestra el comando y obtén consentimiento primero**.
* **El usuario debe hacer**: descargar y ejecutar el instalador, completar el asistente de configuración, añadir carpetas de documentos en la aplicación y conceder permisos del sistema. Son acciones de interfaz gráfica: tú no puedes hacerlas.

Y unas cuantas reglas estrictas:

* **Sondea antes de actuar.** Puede que el usuario ya tenga parte de la configuración hecha, o que esté reinstalando: no recorras a ciegas todos los pasos desde el principio.
* **Verifica cada paso.** Cada paso indica su criterio de aceptación. Si la comprobación no pasa, no avances.
* **Cuando el usuario deba actuar, dilo todo de una vez, luego detente y espera una única respuesta.** No dividas una misma tarea en varias rondas de confirmación de ida y vuelta.
* **Muestra los comandos de instalación y obtén consentimiento antes de ejecutarlos**, especialmente cualquier cosa que descargue y ejecute un script desde la red.
* **Nunca exageres el progreso.** Si no está verificado, no está hecho. Di exactamente dónde te has atascado y qué has intentado.
* **No eludas los requisitos de permisos, seguridad o verificación.** Cuando la sección Resolución de problemas no cubra un problema, ejecuta primero `linkly doctor` y consulta la guía oficial correspondiente; si usas un enfoque no listado aquí, explica tu motivo y vuelve a verificar.

### Primero, comprueba si puedes ejecutar comandos

Esta guía asume que dispones de acceso a una shell: Claude Code, Codex, Cursor, Gemini CLI y similares. Si eres una **aplicación en línea sin shell**, como ChatGPT o Claude.ai en la web, no puedes ejecutar los comandos de sondeo que siguen ni instalar la CLI; lo único que sigue aplicándose es que **la aplicación de escritorio debe estar instalada** (traslada el Paso 1 completo al usuario). La forma de conectarte (MCP remoto, subir Skills, etc.) varía mucho según la aplicación, así que lee `https://linkly.ai/docs/llms.txt`, busca la guía de integración de la aplicación en la que te estás ejecutando (por ejemplo, "Using Linkly AI in ChatGPT") y sigue esa página para guiar al usuario; no generalices a partir de esta.

***

## Paso 0: Sondear el estado actual

Ejecuta primero este lote de comandos y luego usa el resultado para decidir por dónde empezar.

**macOS / Linux (bash / zsh):**

```bash theme={null}
echo "--- 1. port file ---"
cat ~/.linkly/port 2>/dev/null || echo "NO_PORT_FILE"
echo ""
echo "--- 2. health ---"
PORT=$(sed -n 's/.*"port":\([0-9]*\).*/\1/p' ~/.linkly/port 2>/dev/null)
curl -sf --max-time 5 "http://127.0.0.1:${PORT:-60606}/health" || echo "UNREACHABLE"
echo ""
echo "--- 3. cli ---"
linkly --version 2>/dev/null || echo "NO_CLI"
echo "--- 4. status ---"
linkly status --json 2>/dev/null || echo "NO_STATUS"
echo "--- 5. skills ---"
ls ~/.claude/skills/linkly-ai/SKILL.md ~/.agents/skills/linkly-ai/SKILL.md 2>/dev/null || echo "NO_SKILLS"
```

**Windows (PowerShell):**

```powershell theme={null}
Write-Output "--- 1. port file ---"
$port = 60606
if (Test-Path "$HOME\.linkly\port") {
  Get-Content "$HOME\.linkly\port"
  $port = (Get-Content "$HOME\.linkly\port" | ConvertFrom-Json).port
} else { Write-Output "NO_PORT_FILE" }
Write-Output "--- 2. health ---"
try { Invoke-RestMethod "http://127.0.0.1:$port/health" -TimeoutSec 5 | ConvertTo-Json -Compress } catch { "UNREACHABLE" }
Write-Output "--- 3. cli ---"
if (Get-Command linkly -ErrorAction SilentlyContinue) { linkly --version } else { Write-Output "NO_CLI" }
Write-Output "--- 4. status ---"
if (Get-Command linkly -ErrorAction SilentlyContinue) { linkly status --json } else { Write-Output "NO_STATUS" }
Write-Output "--- 5. skills ---"
if ((Test-Path "$HOME\.claude\skills\linkly-ai\SKILL.md") -or (Test-Path "$HOME\.agents\skills\linkly-ai\SKILL.md")) { Write-Output "SKILLS_OK" } else { Write-Output "NO_SKILLS" }
```

### Cómo interpretar los resultados

`/health` es, con diferencia, el sondeo más fiable. Cuando el servicio está en ejecución devuelve HTTP 200 y un cuerpo JSON:

```json theme={null}
{
  "version": "0.8.1",
  "doc_count": 12009,
  "mcp_endpoint": "http://127.0.0.1:60606/mcp",
  "index_status": "watching",
  "capabilities": ["clips-v1"]
}
```

Puntos clave:

* **Nunca codifiques de forma fija el puerto 60606.** Es solo el valor por defecto; si el puerto está ocupado, la aplicación va incrementándolo. Lee siempre el puerto real de `~/.linkly/port`, cuyo contenido es JSON compacto: `{"port":60606}`.
* **Que exista el archivo de puerto no significa que el servicio esté en ejecución.** El archivo queda atrás cuando la aplicación se cierra a la fuerza o se bloquea. Juzga el estado únicamente por si `/health` devuelve 200.
* **Que `mcp_endpoint` sea `null` significa que el interruptor de MCP está desactivado** (`/health` sigue devolviendo 200). No te pongas a depurar el puerto: pide al usuario que lo active en **Ajustes → MCP**.
* **Valores de `index_status`**: `watching` (terminado — la CLI muestra `Up to date`), `scanning`, `indexing`, `idle`, `error`.
* **`doc_count` es el número de documentos indexados**: úsalo para calibrar el progreso de la indexación, no como prueba concluyente de que los archivos del usuario se han recogido: es solo un total, y 151 frente a 150 apenas se distingue cuando solo se añadió uno o dos archivos.

### Tabla de estados

**Coteja de arriba abajo y sigue la primera fila que coincida** (la tabla enruta según un único eje de estado, de modo que las filas son mutuamente excluyentes):

| Resultado del sondeo                                               | Significado                                   | Empieza en                                                                                                                                   |
| ------------------------------------------------------------------ | --------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
| Sin archivo de puerto, `/health` inalcanzable                      | No instalada, o nunca iniciada                | Paso 1                                                                                                                                       |
| El archivo de puerto existe, `/health` inalcanzable                | Instalada pero no en ejecución                | Pide al usuario que la inicie y vuelve a sondear                                                                                             |
| `/health` 200, pero `index_status` es `error`                      | La indexación falló                           | Ejecuta primero `linkly doctor` (sin CLI → pide al usuario que abra **Ajustes → Acerca de → Registros**); no continúes hasta que se recupere |
| `/health` 200, pero `linkly status` no funciona                    | Aplicación lista, falta la CLI (o no conecta) | Paso 2                                                                                                                                       |
| `/health` 200 y `linkly status` correcto, pero Skills no instalado | Cadena lista, faltan Skills                   | Paso 3                                                                                                                                       |
| Todo lo anterior listo, y Skills instalado                         | Prácticamente configurado                     | Verificación del Paso 4                                                                                                                      |

Nota: sea cual sea el paso en el que entres, si `doc_count` está solo al nivel de los ejemplos (\~150), sugiere —en tu informe final— que el usuario añada sus propias carpetas en **Ajustes → Carpetas**. No es un bloqueante; sigue adelante.

***

## Paso 1: Instalar e inicializar

Este paso es completamente manual: no puedes hacer nada de él. **Dale al usuario la secuencia completa de abajo en un solo mensaje, luego detente y espera una única respuesta de confirmación.** No la recorras punto por punto a lo largo de varias rondas.

Esto es lo que debes transmitirle al usuario (puedes reformularlo con tus propias palabras, pero cubre las cinco partes):

### 1. Descargar e instalar

Ve a **[https://linkly.ai/#download](https://linkly.ai/#download)** y descarga la versión correspondiente a tu sistema operativo.

* **macOS**: haz doble clic en el `.dmg` para montarlo, arrastra el icono de **LinklyAI** a **Applications** y luego inícialo desde Launchpad.
* **Windows**: haz doble clic en el `.exe` y sigue el asistente (se instala en el directorio del usuario por defecto), luego inícialo desde el menú Inicio.
* **Linux**: AppImage — `chmod +x LinklyAI-*.AppImage && ./LinklyAI-*.AppImage`; o deb — `sudo dpkg -i linkly-ai-*.deb`.

### 2. Completar el asistente del primer inicio

El primer inicio abre una ventana guiada: **portada → inicio de sesión → preparación → panel de inicio** (el contador de pasos de la esquina inferior derecha solo cuenta los dos intermedios, mostrando 1/2 y 2/2).

* **Portada**: elige el idioma de la interfaz y el tema. **Debes marcar «He leído y acepto la Política de Privacidad» para continuar.** En la misma pantalla hay un interruptor de telemetría, «Ayuda a mejorar Linkly AI», activado por defecto, que puedes desactivar.
* **Inicio de sesión** (1/2): al pulsar «Iniciar sesión / Registrarse» se abre el navegador para el flujo OAuth. **Este paso se puede omitir**: el acceso para omitirlo es un enlace «omitir el inicio de sesión» en una línea de texto pequeño al final. Dile al usuario: iniciar sesión solo sirve para obtener rápidamente la cuota de prueba de los modelos de IA oficiales y las funciones de biblioteca de conocimiento en la nube, lo que facilita probarlo; **la indexación local, la búsqueda local y el servicio MCP no necesitan conexión a internet en absoluto**.
* **Preparación** (2/2): la aplicación descomprime un conjunto de documentos de ejemplo incluidos y los indexa, normalmente en unos minutos. Espera a que se active el botón «Empezar».
* **Panel de inicio**: seis tarjetas de funciones. Haz clic en cualquier tarjeta para probar la función principal; haz clic en la × de la esquina superior derecha para finalizar el asistente.

### 3. Añade tus propias carpetas de documentos (opcional)

Cuando termina el asistente, solo están indexados los documentos de ejemplo incluidos; los archivos propios del usuario no. Merece la pena sugerirlo, pero no es obligatorio: los ejemplos bastan para probar Linkly AI, y las carpetas se pueden añadir en cualquier momento más adelante. Cualquiera de las dos vías sirve:

* Abre **Ajustes → Carpetas** y añade los directorios a indexar (Documentos, Descargas, un directorio de proyecto, etc.);
* O deja archivos en la carpeta `~/LinklyAI`: está vigilada por defecto, así que todo lo que se coloque ahí se indexa automáticamente.

Si el sistema informa de permisos insuficientes (habitual en macOS), ve a **Ajustes del Sistema → Privacidad y Seguridad → Acceso completo al disco**, añade Linkly AI y reinicia la aplicación.

Sugiere al usuario que añada al índice sus propias carpetas con muchos archivos locales —Documentos, unidades en la nube, NAS y similares—.

### 4. Ten en cuenta que los modelos se descargan en segundo plano (no requiere acción, pero avisa al usuario)

Tras el primer inicio, la aplicación descarga en segundo plano unos **710MB** de archivos de modelo (unos 639MB para la búsqueda semántica y unos 70MB para OCR). Según la conexión, esto puede tardar desde unos minutos hasta más de una hora. Durante ese periodo:

* **La búsqueda por palabras clave funciona de inmediato** y no se ve afectada en absoluto;
* **La búsqueda semántica espera a que terminen la descarga y la indexación.** Hasta entonces, `search` recurre automáticamente a la recuperación solo por palabras clave (texto completo): la relevancia baja ligeramente. Es el comportamiento esperado, no un fallo.

### 5. Responde una sola vez cuando todo esté hecho

Cuando todo lo anterior esté hecho, responde al usuario una sola vez con un tono agradecido; tú te encargarás del resto.

***

**Criterio de aceptación**: `/health` devuelve 200 y `doc_count` es mayor que 0. Si acabas de terminar el asistente y `doc_count` sigue en 0 mientras `index_status` es `scanning`/`indexing`, los ejemplos aún se están recogiendo: **reintenta cada 10 segundos, hasta 6 veces**; si sigue en 0, trátalo como el caso `error` de Resolución de problemas. Si el usuario añadió sus propias carpetas, `doc_count` estará claramente por encima del nivel de los ejemplos; si no lo hizo, no es motivo para frenar el resto.

***

## Paso 2: Conectar la vía de acceso a las herramientas

Hay dos vías, y **no son mutuamente excluyentes**. **Instala primero la CLI**: funciona en el momento en que se instala, así que puedes invocarla y cerrar el ciclo dentro de la sesión actual; MCP necesita reiniciar la sesión antes de funcionar, así que no puedes verificarlo en el acto. Esto es solo una prioridad de «¿puedo autoverificar en esta sesión?»: no significa que la CLI sea mejor que MCP como producto. Si el usuario también quiere Linkly AI en otra herramienta de IA, puedes configurar ambas.

**No codifiques de forma fija el puerto en ninguno de los comandos siguientes.** Al principio de este paso, extrae el puerto real a una variable y refiérete a ella a partir de entonces:

```bash theme={null}
PORT=$(sed -n 's/.*"port":\([0-9]*\).*/\1/p' ~/.linkly/port)
MCP_URL="http://127.0.0.1:$PORT/mcp"
```

En PowerShell, reutiliza el `$port` del Paso 0: `$mcpUrl = "http://127.0.0.1:$port/mcp"`.

### Opción A: Instalar la CLI (recomendado)

Muéstrale el comando al usuario, explícale que descarga y ejecuta un script de instalación desde la red y **obtén su consentimiento antes de ejecutarlo**:

macOS / Linux:

```bash theme={null}
curl -sSL https://updater.linkly.ai/cli/install.sh | sh
```

O mediante Homebrew:

```bash theme={null}
brew tap LinklyAI/tap
brew install linkly
```

Windows (PowerShell):

```powershell theme={null}
irm https://updater.linkly.ai/cli/install.ps1 | iex
```

Cualquier plataforma (requiere una cadena de herramientas de Rust):

```bash theme={null}
cargo install linkly-ai-cli
```

El script de instalación instala la CLI y la añade a tu PATH. Si después no se encuentra `linkly`, pide al usuario que **abra una nueva ventana de terminal** (los cambios de PATH no se aplican a las ventanas ya abiertas), o invoca la ruta completa directamente:

* macOS / Linux: se instala en `~/.linkly/bin/linkly`, con el PATH añadido a `.zshrc` / `.bashrc` / `.profile`;
* Windows: se instala en `%LOCALAPPDATA%\linkly\bin\linkly.exe`, modificando el PATH a nivel de usuario.

**Criterio de aceptación**: `linkly --version` imprime una versión y `linkly status --json` devuelve un JSON que contiene `app_version` y `doc_count`. (En el `linkly status` legible para humanos, ese campo aparece etiquetado como `Docs:` y lleva separadores de miles; para comprobaciones programáticas usa siempre `--json`.)

### Opción B: Configurar MCP

Usa esta vía cuando la CLI sea incómoda de instalar en el entorno del usuario, o cuando quiera tener Linkly AI en varias herramientas de IA. Usa el `$MCP_URL` del principio del Paso 2 (es decir, `http://127.0.0.1:$PORT/mcp`): **no codifiques de forma fija 60606**.

Clientes habituales:

* **Claude Code**: `claude mcp add --transport http linkly-ai "$MCP_URL"`
* **Codex**: `codex mcp add linkly-ai --url "$MCP_URL"`
* **Cursor**: Settings → MCP Servers → Add Server; Name `linkly-ai`, Type `StreamableHTTP`, la URL es el valor resuelto de `$MCP_URL`.

Para otros clientes, consulta [Integrar con asistentes de IA usando MCP](/docs/es/use-mcp).

**Un servidor MCP recién configurado normalmente no queda disponible en la sesión actual**: la mayoría de los clientes necesitan recargar la configuración o iniciar una nueva sesión; sigue la guía del propio cliente. Dile al usuario con claridad: «la configuración está escrita, recarga/inicia una nueva sesión y vuelve a intentarlo». **No sigas sondeando la sesión actual para ver si han aparecido las herramientas.**

**Criterio de aceptación**: la configuración se escribió correctamente. Para confirmar que el servidor en sí está sano sin reiniciar nada, envía un saludo inicial directamente (sustituye `$MCP_URL` por el valor resuelto):

```bash theme={null}
curl -sf --max-time 5 -X POST "$MCP_URL" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"setup-probe","version":"1"}}}'
```

Una respuesta que contenga `"serverInfo":{"name":"linkly-ai"` significa que el servicio MCP está sano; un **403** significa que el interruptor de MCP está desactivado: pide al usuario que lo active en **Ajustes → MCP**.

***

## Paso 3: Instalar Skills

Skills te enseña a usar bien las herramientas de Linkly AI —primero buscar, luego ver el esquema y después leer las partes que importan—, lo que mejora de forma medible la calidad de la recuperación. **Muy recomendable.**

De nuevo, muestra el comando y obtén consentimiento antes de ejecutarlo:

```bash theme={null}
npx skills add LinklyAI/linkly-ai-skills
```

Si `npx` no está disponible, clona manualmente:

```bash theme={null}
# Claude Code (user level)
git clone https://github.com/LinklyAI/linkly-ai-skills.git ~/.claude/skills/linkly-ai

# Codex CLI
git clone https://github.com/LinklyAI/linkly-ai-skills.git ~/.agents/skills/linkly-ai
```

Algunos usuarios no pueden acceder a GitHub: descarga en su lugar nuestro paquete alternativo desde la CDN de Linkly:

```
https://updater.linkly.ai/skills/linkly-skills-latest.zip
```

Para instalar solo para un cliente concreto (p. ej. `-a claude-code` / `-a codex`) u otros métodos, consulta [Usar Skills](/docs/es/use-skills). Si el directorio de destino ya existe, ya está instalado: omítelo (para actualizar, entra con `cd` y ejecuta `git pull`).

**Skills también requiere reiniciar la sesión para cargarse.** El criterio de aceptación es que los archivos hayan quedado en el directorio correcto, no que la sesión actual ya pueda invocarlos. Recuérdale al usuario que reinicie después.

**Criterio de aceptación**: existe un archivo `SKILL.md` en cualquiera de estas rutas — `~/.claude/skills/linkly-ai/SKILL.md` (Claude Code, nivel de usuario), `.claude/skills/linkly-ai/SKILL.md` (nivel de proyecto), `~/.agents/skills/linkly-ai/SKILL.md` (Codex). `npx skills add` elige una automáticamente según el cliente detectado, así que basta con comprobar estas tres rutas después.

***

## Paso 4: Verificación de extremo a extremo

**Si instalaste la CLI (Opción A)**: ejecuta una búsqueda real para confirmar que toda la cadena funciona. Comprueba primero `doc_count`: al nivel de los ejemplos (\~150), busca una palabra de la biblioteca de ejemplos (p. ej. `Holmes`); claramente por encima del nivel de los ejemplos significa que el usuario añadió sus propias carpetas, así que usa una palabra que probablemente aparezca en sus documentos:

```bash theme={null}
linkly search "Holmes" --json
```

**Éxito significa**: se devolvieron entradas de documentos reales (cuando se ejecuta solo con los ejemplos, dar con los documentos de ejemplo también cuenta como éxito).

**Si solo seguiste la vía MCP (Opción B)**: no puedes terminar este paso dentro de la sesión actual: las herramientas solo aparecen después de que el cliente recargue o inicie una nueva sesión, que es el mecanismo de carga, no un fallo. Cierra con «configuración escrita, saludo inicial del servidor correcto, pendiente de verificación por el usuario tras reiniciar», entrégale al usuario la línea de abajo y detente (esto no es exagerar el progreso):

> Tras recargar/iniciar una nueva sesión, pídeme «busca Holmes con linkly-ai»: si devuelve entradas de documentos, toda la cadena funciona.

Si una búsqueda por CLI vuelve vacía, no te apresures a culpar al modelo: con el modelo no listo, `search` solo se degrada a solo palabras clave y no devuelve vacío. Comprueba en orden: ¿es razonable la consulta? → ¿es `doc_count` 0 (los ejemplos aún se están recogiendo, consulta el criterio de aceptación del Paso 1)? → ¿añadió carpetas el usuario? → ¿es compatible el formato? Usa `linkly status --json` para leer `index_status`: `indexing` significa que todavía está construyendo el índice o descargando modelos, solo espera; `error` → consulta Resolución de problemas.

Nota: en el breve intervalo entre el final del escaneo y el inicio de la extracción de contenido, `index_status` muestra `watching` (es decir, `Up to date`) de forma prematura. **No juzgues si está listo a partir de una sola muestra**: vuelve a comprobarlo unos segundos después, o fíjate en si `doc_count` sigue subiendo.

***

## Resolución de problemas

| Síntoma                                                    | Causa y solución                                                                                                                                                                                                                |
| ---------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `/health` con conexión rechazada                           | La aplicación de escritorio no está en ejecución. Pide al usuario que la inicie y reinténtalo.                                                                                                                                  |
| El archivo de puerto existe pero `/health` falla           | Archivo obsoleto de un cierre incorrecto. Pide al usuario que reinicie la aplicación.                                                                                                                                           |
| Puerto inalcanzable pero la aplicación está en ejecución   | 60606 estaba ocupado y el puerto se incrementó. Lee el puerto real de `~/.linkly/port`.                                                                                                                                         |
| `/health` correcto pero el saludo inicial devuelve **403** | El interruptor de MCP está desactivado. Pide al usuario que lo active en **Ajustes → MCP**.                                                                                                                                     |
| `index_status` es `error`                                  | La indexación falló. Ejecuta `linkly doctor` (sin CLI → pide al usuario que abra **Ajustes → Acerca de → Registros**); no continúes hasta que se recupere.                                                                      |
| No se encuentra el comando `linkly`                        | Pide al usuario que abra una nueva terminal; en macOS/Linux usa `~/.linkly/bin/linkly`, en Windows usa `%LOCALAPPDATA%\linkly\bin\linkly.exe`.                                                                                  |
| PowerShell dice que el script está bloqueado               | Restricción de la política de ejecución. Pide al usuario que ejecute `Set-ExecutionPolicy -Scope Process -Bypass` en la misma ventana (solo esa ventana) y reintente, o que use `cargo install linkly-ai-cli`.                  |
| Búsqueda vacía                                             | No culpes primero al modelo (cuando el modelo no está listo se degrada a texto completo y no devuelve vacío). Comprueba en orden: la consulta, si `doc_count` es 0, si el usuario añadió carpetas, si el formato es compatible. |
| `index_status` atascado en `indexing`                      | Normal en colecciones grandes o con una descarga de modelo en curso. Observa si `doc_count` sigue subiendo.                                                                                                                     |
| Errores de permisos en macOS                               | **Ajustes del Sistema → Privacidad y Seguridad → Acceso completo al disco**, añade Linkly AI y reinicia la aplicación.                                                                                                          |
| MCP configurado pero las herramientas nunca aparecen       | Es necesario recargar la configuración o iniciar una nueva sesión. Es el comportamiento de carga del cliente, no un error de configuración.                                                                                     |
| Necesitas un diagnóstico más profundo                      | Ejecuta `linkly doctor`: comprueba la cadena de conexión paso a paso y sugiere soluciones.                                                                                                                                      |

***

## Informa cuando hayas terminado

Cierra con un breve resumen para el usuario que cubra:

* qué pasos completaste y por qué vía (CLI o MCP);
* si es necesario reiniciar la sesión para que algo surta efecto;
* el estado actual de la indexación y el número de documentos;
* cómo usarlo realmente — por ejemplo, añadiendo `use linkly-ai` a cualquier prompt, o pulsando `CMD/Ctrl + Shift + L` para abrir el lanzador de búsqueda.

Si algún paso no se pudo completar, dilo claramente: dónde te atascaste, qué intentaste y qué puede hacer el usuario a continuación.

### Termina con cuatro preguntas de ejemplo

Cierra tu informe con cuatro preguntas que el usuario pueda copiar y probar de inmediato. **Adáptalas a su material real siempre que puedas**:

Dedica un momento a ver qué ha indexado: ejecuta la herramienta `explore` (`linkly explore` en la CLI) para hacerte una idea del conjunto y usa `search` sobre algunos temas si necesitas más detalle. Después escribe cuatro preguntas que realmente haría: ancladas en sus propios documentos e intereses, no rellenos genéricos como «resume mis documentos». Una buena pregunta hace que el usuario piense «esto va claramente sobre mis archivos».

Si el usuario todavía no ha añadido sus propios documentos (`doc_count` sigue en el nivel de solo muestras), usa estas cuatro, dirigidas a la biblioteca de ejemplos integrada:

1. Lee A Life in 10 Years y analiza los patrones de vida recurrentes en los diez años de diarios de Samuel Pepys, y los puntos ciegos que quizá él mismo nunca llegó a ver.
2. ¿En qué gana realmente Sherlock Holmes? Lee los 12 casos de Detectives Library, extrae su fórmula para resolver casos y convierte el método de Holmes en una checklist para diagnosticar problemas de negocio complejos.
3. ¿Qué temían realmente los fundadores de Estados Unidos? Lee los Federalist Papers completos y dame una respuesta. Explica cómo diseñaron un sistema donde la ambición frena a la ambición y las facciones se equilibran, y luego traduce esa lógica en principios de gobernanza para las empresas de IA o las plataformas de internet de hoy.
4. Tras leer los recuerdos contados en primera persona por cientos de personas antes esclavizadas, ¿qué es lo que los libros de historia de Estados Unidos menos se atreven a contar en detalle? Responde basándote en las WPA Slave Narratives.

***

## Lecturas adicionales

* [Inicio rápido](/docs/es/quickstart) — la guía completa de instalación e incorporación, escrita para personas
* [Usar CLI](/docs/es/use-cli) — todos los subcomandos y parámetros de la CLI
* [Usar MCP](/docs/es/use-mcp) — los tres modos de acceso y la configuración por cliente
* [Usar Skills](/docs/es/use-skills) — cómo se instalan Skills y cómo funcionan
