@damiangilgonzalez/harness 1.3.19 → 1.3.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/README.md +57 -10
  2. package/manifest.json +1 -1
  3. package/package.json +1 -1
package/README.md CHANGED
@@ -169,16 +169,6 @@ Un `git pull` no escribe nada en tu máquina; `rsc doctor` te dice qué ya no cu
169
169
  **Skills propias.** Las que escribe tu equipo viven en el repo y funcionan al clonar.
170
170
  rsc nunca las instala, actualiza ni sobrescribe: su versión es el commit.
171
171
 
172
- ![Memoria entre sesiones: cada sesión retoma donde lo dejó la anterior](docs/img/readme/readme-13-memoria.png)
173
-
174
- Al cerrar, guarda rama, ficheros y commits; al abrir, te dice dónde lo dejaste.
175
- Nunca guarda prompts, respuestas ni secretos, y no sale de tu máquina. `rsc memory off` lo apaga.
176
-
177
- Lo que el proyecto *sabe* va a `docs/wiki/`: dile «recuerda que…» y te dirá en qué página lo
178
- guardó. Esa wiki, `docs/attachments/` y `01-TOOLS/` viajan solas a tu equipo por la rama
179
- `rsc/knowledge` y llegan a `main` dentro de vuestras PRs. `rsc knowledge-sync off` lo apaga.
180
- Cómo funciona todo junto: [la memoria del harness](docs/como-funciona/memoria.md).
181
-
182
172
  ![Una rama, una copia de trabajo](docs/img/readme/readme-18-worktrees.png)
183
173
 
184
174
  Cada rama en su worktree, cortada siempre desde `origin`.
@@ -200,6 +190,63 @@ npx @damiangilgonzalez/harness@latest repair --dry-run
200
190
 
201
191
  ---
202
192
 
193
+ ## La memoria
194
+
195
+ ![Los cuatro niveles de memoria y qué pasa en cada mensaje](docs/img/readme/readme-19-memoria-niveles.png)
196
+
197
+ El agente empieza cada conversación en blanco. Lo que recuerda está en cuatro sitios, y cada uno
198
+ responde a una pregunta distinta:
199
+
200
+ | Nivel | Qué guarda | Dónde | Quién lo escribe |
201
+ |---|---|---|---|
202
+ | **1. Wiki del proyecto** | Lo que el proyecto *sabe*: decisiones, stack, hechos del negocio | `docs/wiki/` (en git) | El agente cuando dices «recuerda que…» |
203
+ | **2. Diario de sesión** | *Dónde lo dejaste*: rama, ficheros tocados, commits | `.rsc/memory/` (solo tu máquina, 30 días) | Los hooks, solos |
204
+ | **3. Lecciones aprobadas** | Reglas cortas para cada sesión de este proyecto | `.rsc/memory/lessons/` (solo tu máquina) | Tú, con `rsc memory learn … --approve` |
205
+ | **4. Memoria de Claude Code** | *Cómo te gusta trabajar a ti* | `~/.claude/projects/` (fuera del repo) | Claude, cuando le hablas de ti |
206
+
207
+ ![Quién escribe cada nivel, cómo se activa y cuándo se lee](docs/img/readme/readme-20-memoria-quien-cuando.png)
208
+
209
+ **Nada guarda tus conversaciones.** Solo se recuerda lo que alguien escribe en uno de los cuatro
210
+ sitios:
211
+
212
+ | Nivel | ¿Cómo se escribe? | ¿Qué haces tú? | ¿Cuándo lo lee el agente? |
213
+ |---|---|---|---|
214
+ | **1. Wiki** | El agente, cuando se lo pides, o una skill que documenta su trabajo (`harness`, `continuous-learning`…) | Decir «recuerda que…» | Cuando la tarea lo pide: `CLAUDE.md` le dice que existe `docs/wiki/index.md` |
215
+ | **2. Diario** | Automático: los hooks, en cada evento | Nada | Automático, al abrir sesión |
216
+ | **3. Lecciones** | Solo con un comando, y solo con `--approve` | `rsc memory learn --text "…" --approve` | Automático, al abrir sesión |
217
+ | **4. Memoria de Claude** | Claude Code, cuando le cuentas algo de ti | Decir «recuerda que prefiero…» | Automático, al abrir sesión (`MEMORY.md`) |
218
+
219
+ «Recuerda que…» sobre el proyecto va al nivel 1, y el agente te dice la ruta de la página. Si no
220
+ te da una ruta dentro de `docs/wiki/`, no lo ha guardado en el proyecto.
221
+
222
+ **Qué pasa en cada mensaje** (no al abrir rama ni sesión: en cada mensaje):
223
+
224
+ 1. Envías un mensaje.
225
+ 2. Antes de que el agente lo lea, un hook trae a **tu rama actual** lo nuevo de la rama
226
+ `rsc/knowledge` del remoto (solo `docs/wiki/`, `docs/attachments/` y `01-TOOLS/`) y te avisa
227
+ con una línea `📥 Traídos…`.
228
+ 3. El agente responde con la wiki al día.
229
+ 4. Al terminar, otro hook sube a `rsc/knowledge` lo que cambió en esas carpetas.
230
+
231
+ `rsc/knowledge` es una rama de intercambio, no una PR: lo que escribe un compañero te llega sin
232
+ revisión, y llega a `main` dentro de vuestras PRs normales. Nunca trae código, nunca pisa un
233
+ fichero que estás editando y nunca comitea en una `main` cerrada. Trabajando solo, sirve para que
234
+ lo que anotas en una rama aparezca en las demás. Lo que se trae es lo que se descargó en el
235
+ mensaje anterior; si la última descarga tiene más de 3 minutos, descarga antes (3 s como mucho).
236
+
237
+ ![Memoria entre sesiones: cada sesión retoma donde lo dejó la anterior](docs/img/readme/readme-13-memoria.png)
238
+
239
+ El diario (nivel 2) nunca guarda prompts, respuestas ni secretos, y no sale de tu máquina.
240
+
241
+ ```bash
242
+ npx @damiangilgonzalez/harness memory resume # lo que recibirá el agente al abrir sesión
243
+ npx @damiangilgonzalez/harness knowledge-sync status # ¿se sincroniza la wiki? y si no, por qué
244
+ npx @damiangilgonzalez/harness memory off # apaga el diario y las lecciones
245
+ npx @damiangilgonzalez/harness knowledge-sync off # apaga la sincronización (todo el proyecto)
246
+ ```
247
+
248
+ Guía completa: [la memoria del harness](docs/como-funciona/memoria.md).
249
+
203
250
  ## Catálogo
204
251
 
205
252
  ![294 skills por dominio](docs/img/readme/readme-15-catalogo.png)
package/manifest.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "1.3.19",
2
+ "version": "1.3.20",
3
3
  "counts": {
4
4
  "skills": 294,
5
5
  "agents": 34,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@damiangilgonzalez/harness",
3
- "version": "1.3.19",
3
+ "version": "1.3.20",
4
4
  "description": "A guided harness builder that turns your goal into a minimal, verified AI-agent setup using strict best practices.",
5
5
  "type": "module",
6
6
  "bin": {