> For the complete documentation index, see [llms.txt](https://kiwi-8.gitbook.io/kiwi-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://kiwi-8.gitbook.io/kiwi-docs/sesiones-y-memoria.md).

# Sesiones y memoria

## Cada conversación se guarda

Kiwi escribe cada sesión en SQLite, bajo `~/.local/share/kiwi/`, asociada al proyecto en el que la abriste. No hay que hacer nada para guardarla.

```sh
kiwi --continue          # retoma la más reciente de este proyecto
kiwi session list        # lista las guardadas, con sus ids
kiwi --resume 3f2a1c     # retoma una concreta
```

Dentro de la interfaz, `/sessions` hace lo mismo de forma visual.

## La ventana de contexto se llena

Una conversación larga acaba llenando el contexto del modelo. Kiwi **compacta solo** cuando el historial ocupa la mitad de la ventana real del modelo activo — así uno de 200k no se compacta con el mismo criterio que uno de 32k. Al saltar, los mensajes viejos se sustituyen por un resumen y los recientes siguen tal cual.

Dos comandos para llevarlo tú:

* **`/context`** — te enseña qué lo está ocupando. Muchas veces es un fichero enorme que se leyó una vez y ya no hace falta.
* **`/compact`** — fuerza el resumen antes de que salte solo.

Y si quieres empezar de cero sin salir, `/clear` olvida la conversación.

## Memoria

Las sesiones son historial; la **memoria** es lo que debe sobrevivir a la conversación: una preferencia tuya, una decisión del proyecto, una corrección que no quieres repetir. Kiwi la escribe con la herramienta `remember`, y viaja en cada prompt.

Tiene dos ámbitos, y son ficheros Markdown normales:

| Ámbito   | Fichero                                        | Qué guarda                                |
| -------- | ---------------------------------------------- | ----------------------------------------- |
| global   | `~/.config/kiwi/memory/global.md`              | lo que vale para ti en cualquier proyecto |
| proyecto | `~/.config/kiwi/memory/projects/<proyecto>.md` | lo que solo vale para este directorio     |

Viven **fuera del repositorio**, así que nunca aparecen en tu `git status`.

```
/memory
```

Muestra lo que recuerda y te deja editarlo o borrarlo. Merece una visita de vez en cuando: una memoria equivocada es peor que ninguna, porque se aplica en silencio.

> `remember` pasa por el mismo permiso que una escritura de fichero. En [modo plan](/kiwi-docs/modos-de-permiso.md) está bloqueada, como `write_file` y `edit_file`.

## Instrucciones del proyecto

Distinto de la memoria: un fichero **versionado**, en el repositorio, con lo que cualquiera que trabaje ahí debería saber — convenciones, comandos de test, cosas que no se deducen del código.

Kiwi lee `KIWI.md` y `AGENTS.md`, y nunca los escribe por su cuenta. Para crear uno:

```
/init
```

Al vivir en el repo, viaja con él y lo revisa quien revisa el código.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://kiwi-8.gitbook.io/kiwi-docs/sesiones-y-memoria.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `build a script that syncs our docs to a CMS` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
