don-cheli-sdd 1.13.0

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 (351) hide show
  1. package/AGENTS.md +33 -0
  2. package/CHANGELOG.md +108 -0
  3. package/CLAUDE.md +114 -0
  4. package/LICENSE +190 -0
  5. package/README.es.md +611 -0
  6. package/README.md +640 -0
  7. package/README.pt.md +579 -0
  8. package/VERSION +1 -0
  9. package/agentes/README.md +28 -0
  10. package/agentes/prompts/estimador.md +29 -0
  11. package/comandos/bucle-completar.md +13 -0
  12. package/comandos/bucle-estado.md +13 -0
  13. package/comandos/bucle.md +74 -0
  14. package/comandos/especdev/actualizar.md +200 -0
  15. package/comandos/especdev/agente.md +43 -0
  16. package/comandos/especdev/analizar-sesiones.md +158 -0
  17. package/comandos/especdev/aplicar.md +73 -0
  18. package/comandos/especdev/archivar.md +69 -0
  19. package/comandos/especdev/auditar-seguridad.md +234 -0
  20. package/comandos/especdev/auditar.md +15 -0
  21. package/comandos/especdev/avance-rapido.md +64 -0
  22. package/comandos/especdev/cambios.md +14 -0
  23. package/comandos/especdev/capturar.md +61 -0
  24. package/comandos/especdev/cerrar-sesion.md +88 -0
  25. package/comandos/especdev/clarificar.md +98 -0
  26. package/comandos/especdev/comenzar.md +105 -0
  27. package/comandos/especdev/completo.md +49 -0
  28. package/comandos/especdev/continuar.md +59 -0
  29. package/comandos/especdev/contrato-api.md +223 -0
  30. package/comandos/especdev/contrato-ui.md +245 -0
  31. package/comandos/especdev/crear-skill.md +148 -0
  32. package/comandos/especdev/debate.md +119 -0
  33. package/comandos/especdev/desglosar.md +172 -0
  34. package/comandos/especdev/destilar.md +211 -0
  35. package/comandos/especdev/detectar-ambiguedad.md +81 -0
  36. package/comandos/especdev/diagnostico.md +92 -0
  37. package/comandos/especdev/dise/303/261ar.md +74 -0
  38. package/comandos/especdev/doctor.md +78 -0
  39. package/comandos/especdev/donde-estoy.md +32 -0
  40. package/comandos/especdev/especificar.md +189 -0
  41. package/comandos/especdev/estado.md +46 -0
  42. package/comandos/especdev/estimar.md +141 -0
  43. package/comandos/especdev/explorar.md +175 -0
  44. package/comandos/especdev/guardian.md +99 -0
  45. package/comandos/especdev/historial.md +14 -0
  46. package/comandos/especdev/implementar.md +227 -0
  47. package/comandos/especdev/incorporar.md +71 -0
  48. package/comandos/especdev/iniciar.md +82 -0
  49. package/comandos/especdev/limpiar-slop.md +88 -0
  50. package/comandos/especdev/marketplace.md +109 -0
  51. package/comandos/especdev/memorizar.md +31 -0
  52. package/comandos/especdev/mesa-redonda.md +60 -0
  53. package/comandos/especdev/mesa-tecnica.md +144 -0
  54. package/comandos/especdev/migrar.md +237 -0
  55. package/comandos/especdev/minar-referencias.md +214 -0
  56. package/comandos/especdev/planificar-tecnico.md +186 -0
  57. package/comandos/especdev/planning.md +264 -0
  58. package/comandos/especdev/poc.md +302 -0
  59. package/comandos/especdev/presentar.md +75 -0
  60. package/comandos/especdev/proponer.md +69 -0
  61. package/comandos/especdev/pseudocodigo.md +49 -0
  62. package/comandos/especdev/rapido.md +69 -0
  63. package/comandos/especdev/reflexionar.md +53 -0
  64. package/comandos/especdev/retro.md +14 -0
  65. package/comandos/especdev/reversa.md +155 -0
  66. package/comandos/especdev/revisar.md +231 -0
  67. package/comandos/especdev/traspasar.md +76 -0
  68. package/comandos/especdev/traspaso.md +43 -0
  69. package/comandos/especdev/uat.md +84 -0
  70. package/comandos/especdev/validar-spec.md +58 -0
  71. package/comandos/especdev/validar.md +40 -0
  72. package/comandos/historias-generar.md +74 -0
  73. package/comandos/razonar/5-porques.md +42 -0
  74. package/comandos/razonar/circulo-competencia.md +22 -0
  75. package/comandos/razonar/costo-oportunidad.md +21 -0
  76. package/comandos/razonar/inversion.md +40 -0
  77. package/comandos/razonar/mapa-territorio.md +22 -0
  78. package/comandos/razonar/minimizar-arrepentimiento.md +20 -0
  79. package/comandos/razonar/pareto.md +32 -0
  80. package/comandos/razonar/pre-mortem.md +22 -0
  81. package/comandos/razonar/primeros-principios.md +57 -0
  82. package/comandos/razonar/probabilistico.md +21 -0
  83. package/comandos/razonar/reversibilidad.md +27 -0
  84. package/comandos/razonar/rlm-cadena-pensamiento.md +189 -0
  85. package/comandos/razonar/rlm-descomposicion.md +216 -0
  86. package/comandos/razonar/rlm-verificacion.md +169 -0
  87. package/comandos/razonar/segundo-orden.md +35 -0
  88. package/ganchos/parar.md +10 -0
  89. package/ganchos/post-herramienta.md +9 -0
  90. package/ganchos/pre-herramienta.md +19 -0
  91. package/habilidades/arnes-agente/HABILIDAD.md +164 -0
  92. package/habilidades/auto-correccion/HABILIDAD.md +114 -0
  93. package/habilidades/brainstorming/HABILIDAD.md +88 -0
  94. package/habilidades/cambio-carpeta/HABILIDAD.md +100 -0
  95. package/habilidades/code-rag/HABILIDAD.md +306 -0
  96. package/habilidades/contabilidad-tokens/HABILIDAD.md +109 -0
  97. package/habilidades/delta-specs/HABILIDAD.md +102 -0
  98. package/habilidades/desarrollo-subagentes/HABILIDAD.md +51 -0
  99. package/habilidades/deteccion-loops/HABILIDAD.md +168 -0
  100. package/habilidades/deteccion-stubs/HABILIDAD.md +204 -0
  101. package/habilidades/devlog/HABILIDAD.md +84 -0
  102. package/habilidades/documentacion-viva/HABILIDAD.md +231 -0
  103. package/habilidades/estimacion/HABILIDAD.md +48 -0
  104. package/habilidades/extensiones-presets/HABILIDAD.md +133 -0
  105. package/habilidades/generador-specs/HABILIDAD.md +37 -0
  106. package/habilidades/ingenieria-contexto/HABILIDAD.md +34 -0
  107. package/habilidades/integracion-mcp/HABILIDAD.md +59 -0
  108. package/habilidades/leyes-hierro/HABILIDAD.md +45 -0
  109. package/habilidades/mapa-arquitectonico/HABILIDAD.md +93 -0
  110. package/habilidades/memoria-persistente/HABILIDAD.md +97 -0
  111. package/habilidades/obsidian/HABILIDAD.md +93 -0
  112. package/habilidades/optimizacion-tokens/HABILIDAD.md +179 -0
  113. package/habilidades/optimizador-contexto/HABILIDAD.md +106 -0
  114. package/habilidades/orquestacion-autonoma/HABILIDAD.md +133 -0
  115. package/habilidades/permisos-seguridad/HABILIDAD.md +76 -0
  116. package/habilidades/persona/HABILIDAD.md +66 -0
  117. package/habilidades/planning-equipo/HABILIDAD.md +169 -0
  118. package/habilidades/presentaciones/HABILIDAD.md +63 -0
  119. package/habilidades/proyecciones-costo/HABILIDAD.md +54 -0
  120. package/habilidades/prueba-trabajo/HABILIDAD.md +131 -0
  121. package/habilidades/razonamiento/HABILIDAD.md +69 -0
  122. package/habilidades/recuperacion-sesion/HABILIDAD.md +27 -0
  123. package/habilidades/refactorizacion-solid/HABILIDAD.md +182 -0
  124. package/habilidades/reflexion/HABILIDAD.md +37 -0
  125. package/habilidades/rigor-progresivo/HABILIDAD.md +109 -0
  126. package/habilidades/rlm/HABILIDAD.md +85 -0
  127. package/habilidades/routing-modelos/HABILIDAD.md +79 -0
  128. package/habilidades/salud-habilidades/HABILIDAD.md +63 -0
  129. package/habilidades/schemas-dbml/HABILIDAD.md +101 -0
  130. package/habilidades/trazabilidad/HABILIDAD.md +63 -0
  131. package/habilidades/ui-ux-design/HABILIDAD.md +76 -0
  132. package/habilidades/validacion-nyquist/HABILIDAD.md +161 -0
  133. package/habilidades/worktrees/HABILIDAD.md +80 -0
  134. package/locales/en.json +179 -0
  135. package/locales/es.json +179 -0
  136. package/locales/pt.json +179 -0
  137. package/package.json +48 -0
  138. package/plantillas/checklist-requisitos.md +31 -0
  139. package/plantillas/docker/Dockerfile +16 -0
  140. package/plantillas/docker/docker-compose.yml +28 -0
  141. package/plantillas/especdev/WORKFLOW.md +118 -0
  142. package/plantillas/especdev/config.yaml +27 -0
  143. package/plantillas/especdev/en/config.yaml +27 -0
  144. package/plantillas/especdev/en/decisions.md +17 -0
  145. package/plantillas/especdev/en/deferred-work.md +17 -0
  146. package/plantillas/especdev/en/findings.md +7 -0
  147. package/plantillas/especdev/en/knowledge.md +19 -0
  148. package/plantillas/especdev/en/plan.md +35 -0
  149. package/plantillas/especdev/en/progress.md +7 -0
  150. package/plantillas/especdev/en/project-constitution.md +53 -0
  151. package/plantillas/especdev/en/pseudocode.md +35 -0
  152. package/plantillas/especdev/en/runtime.md +26 -0
  153. package/plantillas/especdev/en/status.md +16 -0
  154. package/plantillas/especdev/es/config.yaml +27 -0
  155. package/plantillas/especdev/es/conocimiento.md +19 -0
  156. package/plantillas/especdev/es/constitucion-proyecto.md +53 -0
  157. package/plantillas/especdev/es/decisiones.md +17 -0
  158. package/plantillas/especdev/es/deuda-scope.md +17 -0
  159. package/plantillas/especdev/es/estado.md +16 -0
  160. package/plantillas/especdev/es/hallazgos.md +7 -0
  161. package/plantillas/especdev/es/plan.md +35 -0
  162. package/plantillas/especdev/es/progreso.md +7 -0
  163. package/plantillas/especdev/es/pseudocodigo.md +35 -0
  164. package/plantillas/especdev/es/runtime.md +26 -0
  165. package/plantillas/especdev/estado.md +16 -0
  166. package/plantillas/especdev/hallazgos.md +7 -0
  167. package/plantillas/especdev/isa.yml +152 -0
  168. package/plantillas/especdev/plan.md +35 -0
  169. package/plantillas/especdev/progreso.md +7 -0
  170. package/plantillas/especdev/pt/config.yaml +27 -0
  171. package/plantillas/especdev/pt/conhecimento.md +19 -0
  172. package/plantillas/especdev/pt/constituicao-projeto.md +53 -0
  173. package/plantillas/especdev/pt/decisoes.md +17 -0
  174. package/plantillas/especdev/pt/descobertas.md +7 -0
  175. package/plantillas/especdev/pt/estado.md +16 -0
  176. package/plantillas/especdev/pt/plano.md +35 -0
  177. package/plantillas/especdev/pt/progresso.md +7 -0
  178. package/plantillas/especdev/pt/pseudocodigo.md +35 -0
  179. package/plantillas/especdev/pt/runtime.md +26 -0
  180. package/plantillas/especdev/pt/trabalho-diferido.md +17 -0
  181. package/plantillas/estimado-desarrollo.md +43 -0
  182. package/prompt.md +16 -0
  183. package/reglas/constitucion.md +122 -0
  184. package/reglas/hooks-parar.md +102 -0
  185. package/reglas/i18n.md +47 -0
  186. package/reglas/leyes-hierro.md +18 -0
  187. package/reglas/puertas-calidad.md +87 -0
  188. package/reglas/reglas-desviacion.md +36 -0
  189. package/reglas/reglas-trabajo-globales.md +171 -0
  190. package/reglas/skills-best-practices.md +109 -0
  191. package/scripts/.claude/commands/bucle-completar.md +13 -0
  192. package/scripts/.claude/commands/bucle-estado.md +13 -0
  193. package/scripts/.claude/commands/bucle.md +74 -0
  194. package/scripts/.claude/commands/especdev/actualizar.md +200 -0
  195. package/scripts/.claude/commands/especdev/agente.md +43 -0
  196. package/scripts/.claude/commands/especdev/analizar-sesiones.md +158 -0
  197. package/scripts/.claude/commands/especdev/aplicar.md +73 -0
  198. package/scripts/.claude/commands/especdev/archivar.md +69 -0
  199. package/scripts/.claude/commands/especdev/auditar-seguridad.md +234 -0
  200. package/scripts/.claude/commands/especdev/auditar.md +15 -0
  201. package/scripts/.claude/commands/especdev/avance-rapido.md +64 -0
  202. package/scripts/.claude/commands/especdev/cambios.md +14 -0
  203. package/scripts/.claude/commands/especdev/cerrar-sesion.md +88 -0
  204. package/scripts/.claude/commands/especdev/clarificar.md +98 -0
  205. package/scripts/.claude/commands/especdev/comenzar.md +77 -0
  206. package/scripts/.claude/commands/especdev/completo.md +49 -0
  207. package/scripts/.claude/commands/especdev/continuar.md +59 -0
  208. package/scripts/.claude/commands/especdev/contrato-api.md +223 -0
  209. package/scripts/.claude/commands/especdev/contrato-ui.md +245 -0
  210. package/scripts/.claude/commands/especdev/desglosar.md +172 -0
  211. package/scripts/.claude/commands/especdev/destilar.md +211 -0
  212. package/scripts/.claude/commands/especdev/detectar-ambiguedad.md +81 -0
  213. package/scripts/.claude/commands/especdev/diagnostico.md +92 -0
  214. package/scripts/.claude/commands/especdev/dise/303/261ar.md +74 -0
  215. package/scripts/.claude/commands/especdev/donde-estoy.md +32 -0
  216. package/scripts/.claude/commands/especdev/especificar.md +189 -0
  217. package/scripts/.claude/commands/especdev/estado.md +46 -0
  218. package/scripts/.claude/commands/especdev/estimar.md +141 -0
  219. package/scripts/.claude/commands/especdev/explorar.md +175 -0
  220. package/scripts/.claude/commands/especdev/guardian.md +99 -0
  221. package/scripts/.claude/commands/especdev/historial.md +14 -0
  222. package/scripts/.claude/commands/especdev/implementar.md +227 -0
  223. package/scripts/.claude/commands/especdev/incorporar.md +71 -0
  224. package/scripts/.claude/commands/especdev/iniciar.md +82 -0
  225. package/scripts/.claude/commands/especdev/limpiar-slop.md +88 -0
  226. package/scripts/.claude/commands/especdev/memorizar.md +31 -0
  227. package/scripts/.claude/commands/especdev/mesa-redonda.md +60 -0
  228. package/scripts/.claude/commands/especdev/mesa-tecnica.md +144 -0
  229. package/scripts/.claude/commands/especdev/migrar.md +237 -0
  230. package/scripts/.claude/commands/especdev/minar-referencias.md +214 -0
  231. package/scripts/.claude/commands/especdev/planificar-tecnico.md +186 -0
  232. package/scripts/.claude/commands/especdev/planning.md +264 -0
  233. package/scripts/.claude/commands/especdev/poc.md +302 -0
  234. package/scripts/.claude/commands/especdev/proponer.md +69 -0
  235. package/scripts/.claude/commands/especdev/rapido.md +69 -0
  236. package/scripts/.claude/commands/especdev/reflexionar.md +53 -0
  237. package/scripts/.claude/commands/especdev/retro.md +14 -0
  238. package/scripts/.claude/commands/especdev/reversa.md +155 -0
  239. package/scripts/.claude/commands/especdev/revisar.md +221 -0
  240. package/scripts/.claude/commands/especdev/traspasar.md +76 -0
  241. package/scripts/.claude/commands/especdev/traspaso.md +43 -0
  242. package/scripts/.claude/commands/especdev/validar.md +40 -0
  243. package/scripts/.claude/commands/historias-generar.md +74 -0
  244. package/scripts/.claude/commands/razonar/5-porques.md +42 -0
  245. package/scripts/.claude/commands/razonar/circulo-competencia.md +22 -0
  246. package/scripts/.claude/commands/razonar/costo-oportunidad.md +21 -0
  247. package/scripts/.claude/commands/razonar/inversion.md +40 -0
  248. package/scripts/.claude/commands/razonar/mapa-territorio.md +22 -0
  249. package/scripts/.claude/commands/razonar/minimizar-arrepentimiento.md +20 -0
  250. package/scripts/.claude/commands/razonar/pareto.md +32 -0
  251. package/scripts/.claude/commands/razonar/pre-mortem.md +22 -0
  252. package/scripts/.claude/commands/razonar/primeros-principios.md +57 -0
  253. package/scripts/.claude/commands/razonar/probabilistico.md +21 -0
  254. package/scripts/.claude/commands/razonar/reversibilidad.md +27 -0
  255. package/scripts/.claude/commands/razonar/rlm-cadena-pensamiento.md +189 -0
  256. package/scripts/.claude/commands/razonar/rlm-descomposicion.md +216 -0
  257. package/scripts/.claude/commands/razonar/rlm-verificacion.md +169 -0
  258. package/scripts/.claude/commands/razonar/segundo-orden.md +35 -0
  259. package/scripts/.claude/don-cheli/AGENTS.md +20 -0
  260. package/scripts/.claude/don-cheli/CLAUDE.md +114 -0
  261. package/scripts/.claude/don-cheli/NOTICE +17 -0
  262. package/scripts/.claude/don-cheli/VERSION +1 -0
  263. package/scripts/.claude/don-cheli/agentes/README.md +28 -0
  264. package/scripts/.claude/don-cheli/agentes/prompts/estimador.md +29 -0
  265. package/scripts/.claude/don-cheli/folder-map.json +19 -0
  266. package/scripts/.claude/don-cheli/ganchos/parar.md +10 -0
  267. package/scripts/.claude/don-cheli/ganchos/post-herramienta.md +9 -0
  268. package/scripts/.claude/don-cheli/ganchos/pre-herramienta.md +19 -0
  269. package/scripts/.claude/don-cheli/habilidades/arnes-agente/HABILIDAD.md +155 -0
  270. package/scripts/.claude/don-cheli/habilidades/auto-correccion/HABILIDAD.md +105 -0
  271. package/scripts/.claude/don-cheli/habilidades/brainstorming/HABILIDAD.md +79 -0
  272. package/scripts/.claude/don-cheli/habilidades/cambio-carpeta/HABILIDAD.md +91 -0
  273. package/scripts/.claude/don-cheli/habilidades/code-rag/HABILIDAD.md +297 -0
  274. package/scripts/.claude/don-cheli/habilidades/contabilidad-tokens/HABILIDAD.md +100 -0
  275. package/scripts/.claude/don-cheli/habilidades/delta-specs/HABILIDAD.md +93 -0
  276. package/scripts/.claude/don-cheli/habilidades/desarrollo-subagentes/HABILIDAD.md +42 -0
  277. package/scripts/.claude/don-cheli/habilidades/deteccion-loops/HABILIDAD.md +159 -0
  278. package/scripts/.claude/don-cheli/habilidades/deteccion-stubs/HABILIDAD.md +195 -0
  279. package/scripts/.claude/don-cheli/habilidades/devlog/HABILIDAD.md +75 -0
  280. package/scripts/.claude/don-cheli/habilidades/documentacion-viva/HABILIDAD.md +222 -0
  281. package/scripts/.claude/don-cheli/habilidades/estimacion/HABILIDAD.md +39 -0
  282. package/scripts/.claude/don-cheli/habilidades/extensiones-presets/HABILIDAD.md +124 -0
  283. package/scripts/.claude/don-cheli/habilidades/generador-specs/HABILIDAD.md +28 -0
  284. package/scripts/.claude/don-cheli/habilidades/ingenieria-contexto/HABILIDAD.md +25 -0
  285. package/scripts/.claude/don-cheli/habilidades/integracion-mcp/HABILIDAD.md +50 -0
  286. package/scripts/.claude/don-cheli/habilidades/leyes-hierro/HABILIDAD.md +36 -0
  287. package/scripts/.claude/don-cheli/habilidades/mapa-arquitectonico/HABILIDAD.md +84 -0
  288. package/scripts/.claude/don-cheli/habilidades/memoria-persistente/HABILIDAD.md +88 -0
  289. package/scripts/.claude/don-cheli/habilidades/obsidian/HABILIDAD.md +84 -0
  290. package/scripts/.claude/don-cheli/habilidades/optimizacion-tokens/HABILIDAD.md +170 -0
  291. package/scripts/.claude/don-cheli/habilidades/optimizador-contexto/HABILIDAD.md +97 -0
  292. package/scripts/.claude/don-cheli/habilidades/orquestacion-autonoma/HABILIDAD.md +124 -0
  293. package/scripts/.claude/don-cheli/habilidades/permisos-seguridad/HABILIDAD.md +67 -0
  294. package/scripts/.claude/don-cheli/habilidades/persona/HABILIDAD.md +57 -0
  295. package/scripts/.claude/don-cheli/habilidades/presentaciones/HABILIDAD.md +54 -0
  296. package/scripts/.claude/don-cheli/habilidades/prueba-trabajo/HABILIDAD.md +122 -0
  297. package/scripts/.claude/don-cheli/habilidades/razonamiento/HABILIDAD.md +60 -0
  298. package/scripts/.claude/don-cheli/habilidades/recuperacion-sesion/HABILIDAD.md +18 -0
  299. package/scripts/.claude/don-cheli/habilidades/refactorizacion-solid/HABILIDAD.md +173 -0
  300. package/scripts/.claude/don-cheli/habilidades/reflexion/HABILIDAD.md +15 -0
  301. package/scripts/.claude/don-cheli/habilidades/rigor-progresivo/HABILIDAD.md +100 -0
  302. package/scripts/.claude/don-cheli/habilidades/rlm/HABILIDAD.md +76 -0
  303. package/scripts/.claude/don-cheli/habilidades/schemas-dbml/HABILIDAD.md +92 -0
  304. package/scripts/.claude/don-cheli/habilidades/trazabilidad/HABILIDAD.md +54 -0
  305. package/scripts/.claude/don-cheli/habilidades/ui-ux-design/HABILIDAD.md +67 -0
  306. package/scripts/.claude/don-cheli/habilidades/validacion-nyquist/HABILIDAD.md +152 -0
  307. package/scripts/.claude/don-cheli/habilidades/worktrees/HABILIDAD.md +71 -0
  308. package/scripts/.claude/don-cheli/locale +1 -0
  309. package/scripts/.claude/don-cheli/locales/en.json +179 -0
  310. package/scripts/.claude/don-cheli/locales/es.json +179 -0
  311. package/scripts/.claude/don-cheli/locales/pt.json +179 -0
  312. package/scripts/.claude/don-cheli/plantillas/checklist-requisitos.md +31 -0
  313. package/scripts/.claude/don-cheli/plantillas/docker/Dockerfile +16 -0
  314. package/scripts/.claude/don-cheli/plantillas/docker/docker-compose.yml +28 -0
  315. package/scripts/.claude/don-cheli/plantillas/especdev/WORKFLOW.md +118 -0
  316. package/scripts/.claude/don-cheli/plantillas/especdev/config.yaml +27 -0
  317. package/scripts/.claude/don-cheli/plantillas/especdev/en/config.yaml +27 -0
  318. package/scripts/.claude/don-cheli/plantillas/especdev/en/findings.md +7 -0
  319. package/scripts/.claude/don-cheli/plantillas/especdev/en/plan.md +35 -0
  320. package/scripts/.claude/don-cheli/plantillas/especdev/en/progress.md +7 -0
  321. package/scripts/.claude/don-cheli/plantillas/especdev/en/status.md +16 -0
  322. package/scripts/.claude/don-cheli/plantillas/especdev/es/config.yaml +27 -0
  323. package/scripts/.claude/don-cheli/plantillas/especdev/es/estado.md +16 -0
  324. package/scripts/.claude/don-cheli/plantillas/especdev/es/hallazgos.md +7 -0
  325. package/scripts/.claude/don-cheli/plantillas/especdev/es/plan.md +35 -0
  326. package/scripts/.claude/don-cheli/plantillas/especdev/es/progreso.md +7 -0
  327. package/scripts/.claude/don-cheli/plantillas/especdev/estado.md +16 -0
  328. package/scripts/.claude/don-cheli/plantillas/especdev/hallazgos.md +7 -0
  329. package/scripts/.claude/don-cheli/plantillas/especdev/isa.yml +152 -0
  330. package/scripts/.claude/don-cheli/plantillas/especdev/plan.md +35 -0
  331. package/scripts/.claude/don-cheli/plantillas/especdev/progreso.md +7 -0
  332. package/scripts/.claude/don-cheli/plantillas/especdev/pt/config.yaml +27 -0
  333. package/scripts/.claude/don-cheli/plantillas/especdev/pt/descobertas.md +7 -0
  334. package/scripts/.claude/don-cheli/plantillas/especdev/pt/estado.md +16 -0
  335. package/scripts/.claude/don-cheli/plantillas/especdev/pt/plano.md +35 -0
  336. package/scripts/.claude/don-cheli/plantillas/especdev/pt/progresso.md +7 -0
  337. package/scripts/.claude/don-cheli/plantillas/estimado-desarrollo.md +43 -0
  338. package/scripts/.claude/don-cheli/prompt.md +16 -0
  339. package/scripts/.claude/don-cheli/reglas/constitucion.md +122 -0
  340. package/scripts/.claude/don-cheli/reglas/hooks-parar.md +102 -0
  341. package/scripts/.claude/don-cheli/reglas/i18n.md +47 -0
  342. package/scripts/.claude/don-cheli/reglas/leyes-hierro.md +18 -0
  343. package/scripts/.claude/don-cheli/reglas/puertas-calidad.md +87 -0
  344. package/scripts/.claude/don-cheli/reglas/reglas-desviacion.md +36 -0
  345. package/scripts/.claude/don-cheli/reglas/reglas-trabajo-globales.md +171 -0
  346. package/scripts/.claude/don-cheli/scripts/bucle.sh +103 -0
  347. package/scripts/.claude/don-cheli/scripts/instalar.sh +522 -0
  348. package/scripts/.claude/don-cheli/scripts/validar.sh +70 -0
  349. package/scripts/bucle.sh +103 -0
  350. package/scripts/instalar.sh +587 -0
  351. package/scripts/validar.sh +70 -0
@@ -0,0 +1,57 @@
1
+ ---
2
+ description: Descomponer un problema o suposición a sus verdades fundamentales, luego reconstruir el entendimiento desde cero.
3
+ i18n: true
4
+ ---
5
+
6
+ # /razonar:primeros-principios
7
+
8
+ Descomponer un problema o suposición a sus verdades fundamentales, luego reconstruir el entendimiento desde cero.
9
+
10
+ ## Uso
11
+
12
+ ```
13
+ /razonar:primeros-principios [tema]
14
+ ```
15
+
16
+ ## Descripción
17
+
18
+ El Pensamiento de Primeros Principios te ayuda a escapar de la sabiduría convencional cuestionando suposiciones. En vez de razonar por analogía ("¿cómo lo hacen otros?"), razonas desde lo básico ("¿qué es fundamentalmente verdad?").
19
+
20
+ **Usar cuando:**
21
+ - Los enfoques convencionales se sienten incorrectos
22
+ - Necesitas innovación, no iteración
23
+ - Las suposiciones están limitando las opciones
24
+ - Enfrentas restricciones "imposibles"
25
+
26
+ ## Proceso
27
+
28
+ 1. **Identificar suposiciones** — Listar lo que das por sentado
29
+ 2. **Descomponer a lo fundamental** — ¿Qué es innegablemente verdad?
30
+ 3. **Cuestionar cada suposición** — ¿Es realmente necesaria?
31
+ 4. **Reconstruir desde lo básico** — ¿Qué soluciones emergen de lo fundamental?
32
+
33
+ ## Ejemplo
34
+
35
+ ```
36
+ /razonar:primeros-principios "Necesitamos microservicios para escalar"
37
+
38
+ SUPOSICIONES:
39
+ - Los microservicios son necesarios para escalar
40
+ - Los monolitos no escalan
41
+ - Las empresas grandes saben más
42
+
43
+ FUNDAMENTOS:
44
+ - Necesitamos X solicitudes/segundo
45
+ - Tenemos Y desarrolladores
46
+ - Necesitamos Z frecuencia de despliegue
47
+
48
+ RECONSTRUCCIÓN:
49
+ Nuestra escala: 1000 req/s → El monolito maneja fácilmente
50
+ Nuestro equipo: 5 devs → Pueden coordinarse en monolito
51
+ Conclusión: Un monolito modular nos sirve mejor
52
+ ```
53
+
54
+ ## Combina bien con
55
+
56
+ - `/razonar:inversion`
57
+ - `/razonar:5-porques`
@@ -0,0 +1,21 @@
1
+ ---
2
+ description: Razonar en probabilidades en vez de certezas. Asignar porcentajes a los posibles resultados.
3
+ i18n: true
4
+ ---
5
+
6
+ # /razonar:probabilistico
7
+
8
+ Razonar en probabilidades en vez de certezas. Asignar porcentajes a los posibles resultados.
9
+
10
+ ## Uso
11
+
12
+ ```
13
+ /razonar:probabilistico [escenario]
14
+ ```
15
+
16
+ ## Proceso
17
+
18
+ 1. **Listar** todos los posibles resultados
19
+ 2. **Asignar** probabilidad a cada uno (deben sumar 100%)
20
+ 3. **Evaluar** el valor esperado de cada opción
21
+ 4. **Decidir** basándose en el valor esperado, no en el mejor caso
@@ -0,0 +1,27 @@
1
+ ---
2
+ description: Calibrar el nivel de compromiso según si la decisión es reversible o irreversible.
3
+ i18n: true
4
+ ---
5
+
6
+ # /razonar:reversibilidad
7
+
8
+ Calibrar el nivel de compromiso según si la decisión es reversible o irreversible.
9
+
10
+ ## Uso
11
+
12
+ ```
13
+ /razonar:reversibilidad [decisión]
14
+ ```
15
+
16
+ ## Proceso
17
+
18
+ 1. **Clasificar**: ¿Es reversible o irreversible?
19
+ 2. **Si reversible** (puerta de dos vías): Decidir rápido, iterar
20
+ 3. **Si irreversible** (puerta de una vía): Decidir con cuidado, analizar profundamente
21
+
22
+ ## Regla
23
+
24
+ | Tipo | Velocidad | Análisis |
25
+ |------|-----------|----------|
26
+ | Reversible | Rápido | Mínimo |
27
+ | Irreversible | Lento | Exhaustivo |
@@ -0,0 +1,189 @@
1
+ ---
2
+ description: Razonamiento en Cadena con Context Folding
3
+ i18n: true
4
+ ---
5
+
6
+ # /razonar:rlm-cadena-pensamiento
7
+
8
+ 🧠 **Modelo RLM: Razonamiento en Cadena con Context Folding**
9
+
10
+ Basado en el paradigma **Recursive Language Model (RLM)** de PrimeIntellect. Aplica "context folding" (plegado de contexto) para problemas de razonamiento multi-paso: el LLM principal orquesta sub-LLMs frescos para cada paso de la cadena, manteniendo su propio contexto limpio y evitando el "context rot".
11
+
12
+ ## Uso
13
+
14
+ ```
15
+ /razonar:rlm-cadena-pensamiento [problema complejo multi-paso]
16
+ ```
17
+
18
+ ## El Problema del Context Rot
19
+
20
+ En razonamiento multi-paso tradicional, cada paso se acumula en el contexto del LLM. Después de muchos pasos, el contexto crece y la calidad de las respuestas **degrada** (context rot). Esto es un problema bien documentado en la investigación.
21
+
22
+ ## La Solución: Context Folding
23
+
24
+ En vez de acumular todo en un solo contexto, el RLM:
25
+
26
+ 1. **Pliega** el contexto delegando trabajo a sub-LLMs frescos
27
+ 2. **Solo retiene** resúmenes concisos de los resultados
28
+ 3. **Nunca resume el contexto** (lo cual pierde información) — en su lugar, **delega programáticamente**
29
+
30
+ ## Arquitectura
31
+
32
+ ```
33
+ ┌─────────────────────────────────────────────────────┐
34
+ │ RLM Principal │
35
+ │ (Gestión de Contexto) │
36
+ │ │
37
+ │ # El RLM descompone el problema en pasos │
38
+ │ # y usa Python para orquestar sub-LLMs │
39
+ │ │
40
+ │ ┌─────────────────────────────────────────────┐ │
41
+ │ │ REPL Python │ │
42
+ │ │ │ │
43
+ │ │ # Paso 1: Analizar requisitos │ │
44
+ │ │ paso1 = llm_batch([ │ │
45
+ │ │ "Analiza los requisitos en esta spec..." │ │
46
+ │ │ ])[0] │ │
47
+ │ │ │ │
48
+ │ │ # Paso 2: Diseñar (usando resultado paso1) │ │
49
+ │ │ paso2 = llm_batch([ │ │
50
+ │ │ f"Dado estos requisitos: {paso1[:2000]}" │ │
51
+ │ │ f"Diseña la arquitectura..." │ │
52
+ │ │ ])[0] │ │
53
+ │ │ │ │
54
+ │ │ # Paso 3: Validar en paralelo │ │
55
+ │ │ validaciones = llm_batch([ │ │
56
+ │ │ f"Valida que {paso2} cubre {paso1}", │ │
57
+ │ │ f"Identifica gaps en el diseño {paso2}", │ │
58
+ │ │ f"Evalúa riesgos del diseño {paso2}" │ │
59
+ │ │ ]) │ │
60
+ │ │ │ │
61
+ │ │ # El RLM principal NUNCA vio los documentos │ │
62
+ │ │ # completos — los sub-LLMs los procesaron │ │
63
+ │ │ # y devolvieron resúmenes concisos │ │
64
+ │ │ │ │
65
+ │ │ respuesta["contenido"] = sintetizar(...) │ │
66
+ │ │ respuesta["lista"] = True │ │
67
+ │ └─────────────────────────────────────────────┘ │
68
+ └─────────────────────────────────────────────────────┘
69
+ ```
70
+
71
+ ## Proceso
72
+
73
+ ### 1. Carga de Datos al Entorno
74
+
75
+ El problema y todo el contexto se cargan al **REPL Python**, NO al contexto del LLM principal:
76
+
77
+ ```python
78
+ # Los datos están disponibles programáticamente
79
+ # pero NO en el contexto del RLM
80
+ datos_entrada = env.input_data # spec, PRD, código, etc.
81
+
82
+ # El RLM solo ve lo que explícitamente imprime
83
+ print(datos_entrada[:500]) # Ver solo un fragmento
84
+ ```
85
+
86
+ ### 2. Descomposición en Pasos
87
+
88
+ El RLM escribe código Python para organizar la cadena de razonamiento:
89
+
90
+ ```python
91
+ # Definir los pasos de la cadena
92
+ pasos = [
93
+ "Analizar los requisitos funcionales y no-funcionales",
94
+ "Identificar los componentes técnicos necesarios",
95
+ "Diseñar las interfaces entre componentes",
96
+ "Evaluar alternativas de implementación",
97
+ "Validar el diseño contra los requisitos"
98
+ ]
99
+ ```
100
+
101
+ ### 3. Ejecución con Sub-LLMs Frescos
102
+
103
+ Cada paso se ejecuta con un sub-LLM que tiene **contexto fresco** y acceso a herramientas:
104
+
105
+ ```python
106
+ # Cada sub-LLM tiene contexto fresco
107
+ # → sin context rot entre pasos
108
+ resultado_paso1 = llm_batch([
109
+ f"Solo necesitas hacer esto: {pasos[0]}. "
110
+ f"Aquí están los datos relevantes: {datos_paso1}"
111
+ ])[0]
112
+
113
+ # El paso siguiente recibe solo el RESUMEN del anterior
114
+ resultado_paso2 = llm_batch([
115
+ f"Contexto previo (resumen): {resultado_paso1[:2000]}. "
116
+ f"Tu tarea: {pasos[1]}. "
117
+ f"Datos adicionales: {datos_paso2}"
118
+ ])[0]
119
+ ```
120
+
121
+ ### 4. Paralelización donde sea Posible
122
+
123
+ Pasos independientes se ejecutan en paralelo:
124
+
125
+ ```python
126
+ # Pasos independientes → paralelos
127
+ resultados_paralelos = llm_batch([
128
+ f"Evalúa seguridad del diseño: {diseño}",
129
+ f"Evalúa rendimiento del diseño: {diseño}",
130
+ f"Evalúa mantenibilidad del diseño: {diseño}"
131
+ ])
132
+ ```
133
+
134
+ ### 5. Construcción Iterativa de Respuesta
135
+
136
+ ```python
137
+ # La respuesta se construye gradualmente
138
+ respuesta["contenido"] = f"""
139
+ ## Análisis de Requisitos
140
+ {resultado_paso1}
141
+
142
+ ## Componentes Técnicos
143
+ {resultado_paso2}
144
+ """
145
+
146
+ # ...más pasos...
147
+
148
+ # Agregar validaciones
149
+ respuesta["contenido"] += f"""
150
+ ## Validación
151
+ - Seguridad: {resultados_paralelos[0]}
152
+ - Rendimiento: {resultados_paralelos[1]}
153
+ - Mantenibilidad: {resultados_paralelos[2]}
154
+ """
155
+
156
+ # Finalizar cuando esté completo
157
+ respuesta["lista"] = True
158
+ ```
159
+
160
+ ## Ventajas sobre Chain-of-Thought Tradicional
161
+
162
+ | Aspecto | CoT Tradicional | RLM + Context Folding |
163
+ |---------|-----------------|----------------------|
164
+ | **Context rot** | Se acumula → degrada | Cada paso es fresco |
165
+ | **Costo de tokens** | Lineal con pasos | El RLM principal usa pocos tokens |
166
+ | **Herramientas** | Todos los tokens en contexto | Solo sub-LLMs ven los tokens pesados |
167
+ | **Paralelización** | No posible | `llm_batch()` en paralelo |
168
+ | **Pérdida de info** | Resumir = perder info | Delegar ≠ perder info |
169
+
170
+ ## Cuándo Usar
171
+
172
+ - Decisiones arquitectónicas complejas
173
+ - Análisis de trade-offs multi-dimensionales
174
+ - Planificación de proyectos con muchas variables
175
+ - Cualquier razonamiento que requiera >5 pasos encadenados
176
+
177
+ ## Principios
178
+
179
+ 1. **Los datos van al entorno, no al contexto** — REPL Python como buffer
180
+ 2. **Cada paso razona con contexto fresco** — Sub-LLM dedicado
181
+ 3. **Context folding > context summarization** — No se pierde información
182
+ 4. **Paralelizar siempre que sea posible** — Eficiencia via `llm_batch()`
183
+ 5. **La respuesta se construye por difusión** — Iterativa, no de una vez
184
+
185
+ ## Referencia
186
+
187
+ - [PrimeIntellect: Recursive Language Models](https://www.primeintellect.ai/blog/rlm)
188
+ - [Context Rot Research](https://research.trychroma.com/context-rot)
189
+ - [Context Folding (arXiv:2510.11967)](http://arxiv.org/abs/2510.11967)
@@ -0,0 +1,216 @@
1
+ ---
2
+ description: Descomposición Recursiva con Sub-LLMs
3
+ i18n: true
4
+ ---
5
+
6
+ # /razonar:rlm-descomposicion
7
+
8
+ 🧠 **Modelo RLM: Descomposición Recursiva con Sub-LLMs**
9
+
10
+ Basado en el paradigma **Recursive Language Model (RLM)** de PrimeIntellect. Para problemas con inputs masivos o contextos extremadamente largos, el RLM descompone el problema programáticamente y delega sub-tareas a sub-LLMs frescos en paralelo, evitando completamente el context rot.
11
+
12
+ ## Uso
13
+
14
+ ```
15
+ /razonar:rlm-descomposicion [problema complejo o codebase grande]
16
+ ```
17
+
18
+ ## El Paradigma RLM
19
+
20
+ > "En vez de ingerir directamente sus datos de entrada (potencialmente enormes), el RLM permite al LLM usar un REPL Python persistente para inspeccionar y transformar sus datos de entrada, y llamar sub-LLMs desde ese REPL."
21
+ > — PrimeIntellect, 2026
22
+
23
+ ### El modelo NO ve los datos directamente
24
+
25
+ ```python
26
+ # ❌ Enfoque tradicional: cargar todo al contexto
27
+ # El contexto crece, la calidad baja (context rot)
28
+
29
+ # ✅ Enfoque RLM: datos en entorno externo
30
+ # El RLM los inspecciona programáticamente
31
+ datos = env.input_data # Puede ser enorme: PDFs, codebases, datasets
32
+ print(len(datos)) # "1,500,000 caracteres"
33
+ print(datos[:500]) # Solo ve un fragmento a la vez
34
+ ```
35
+
36
+ ## Arquitectura Completa
37
+
38
+ ```
39
+ ┌──────────────────────────────────────────────────────┐
40
+ │ RLM Principal │
41
+ │ (Orquestador Recursivo) │
42
+ │ │
43
+ │ NO ingiere los datos directamente │
44
+ │ NO usa herramientas directamente │
45
+ │ SOLO escribe código Python en el REPL │
46
+ │ │
47
+ │ ┌──────────────────────────────────────────────┐ │
48
+ │ │ REPL Python Persistente │ │
49
+ │ │ │ │
50
+ │ │ # 1. Inspeccionar datos de entrada │ │
51
+ │ │ archivos = listar_proyecto("src/") │ │
52
+ │ │ print(f"Archivos: {len(archivos)}") │ │
53
+ │ │ │ │
54
+ │ │ # 2. Dividir en chunks manejables │ │
55
+ │ │ chunks = particionar(archivos, tamaño=10) │ │
56
+ │ │ │ │
57
+ │ │ # 3. Despachar sub-LLMs en paralelo │ │
58
+ │ │ analisis = llm_batch([ │ │
59
+ │ │ f"Analiza estos archivos: {chunk}" │ │
60
+ │ │ for chunk in chunks │ │
61
+ │ │ ]) │ │
62
+ │ │ # Cada sub-LLM tiene: │ │
63
+ │ │ # - Contexto FRESCO (sin context rot) │ │
64
+ │ │ # - Acceso a herramientas (leer archivos, │ │
65
+ │ │ # ejecutar tests, buscar) │ │
66
+ │ │ # - Solo ve SU chunk, no todo │ │
67
+ │ │ │ │
68
+ │ │ # 4. Sintetizar hallazgos │ │
69
+ │ │ # Solo los RESÚMENES vuelven al RLM │ │
70
+ │ │ for i, resultado in enumerate(analisis): │ │
71
+ │ │ print(f"Chunk {i}: {resultado[:500]}") │ │
72
+ │ │ │ │
73
+ │ │ # 5. Si hay gaps, despachar más sub-LLMs │ │
74
+ │ │ seguimiento = llm_batch([ │ │
75
+ │ │ "Investiga la dependencia circular...", │ │
76
+ │ │ "¿Cómo se conecta el módulo auth con..." │ │
77
+ │ │ ]) │ │
78
+ │ │ │ │
79
+ │ │ # 6. Construir respuesta iterativamente │ │
80
+ │ │ respuesta["contenido"] = combinar(analisis) │ │
81
+ │ │ respuesta["lista"] = True │ │
82
+ │ └──────────────────────────────────────────────┘ │
83
+ │ │
84
+ │ ┌─────┐ ┌─────┐ ┌─────┐ ┌─────┐ ┌─────┐ │
85
+ │ │Sub 1│ │Sub 2│ │Sub 3│ │Sub 4│ │Sub N│ │
86
+ │ │FRESH│ │FRESH│ │FRESH│ │FRESH│ │FRESH│ │
87
+ │ │+tool│ │+tool│ │+tool│ │+tool│ │+tool│ │
88
+ │ └─────┘ └─────┘ └─────┘ └─────┘ └─────┘ │
89
+ │ ▲ EN PARALELO via llm_batch() │
90
+ └──────────────────────────────────────────────────────┘
91
+ ```
92
+
93
+ ## Estrategias de Descomposición
94
+
95
+ ### 1. Map-Reduce (para análisis de codebases grandes)
96
+
97
+ ```python
98
+ # MAP: Cada sub-LLM analiza un grupo de archivos
99
+ archivos = listar_todos("src/") # 200 archivos
100
+ grupos = particionar(archivos, tamaño=15)
101
+
102
+ hallazgos = llm_batch([
103
+ f"Analiza estos archivos y reporta: "
104
+ f"- Dependencias, APIs expuestas, complejidad. "
105
+ f"Archivos: {grupo}"
106
+ for grupo in grupos
107
+ ])
108
+
109
+ # REDUCE: Sintetizar todos los hallazgos
110
+ sintesis = llm_batch([
111
+ f"Sintetiza estos {len(hallazgos)} análisis parciales "
112
+ f"en un reporte unificado: {hallazgos}"
113
+ ])[0]
114
+
115
+ respuesta["contenido"] = sintesis
116
+ ```
117
+
118
+ ### 2. Divide y Conquista (para problemas particionables)
119
+
120
+ ```python
121
+ # Dividir problema en sub-problemas independientes
122
+ sub_problemas = [
123
+ "Diseñar el modelo de datos",
124
+ "Diseñar la API REST",
125
+ "Diseñar la interfaz de usuario",
126
+ "Diseñar la infraestructura"
127
+ ]
128
+
129
+ # Resolver en paralelo (cada uno con contexto fresco)
130
+ soluciones = llm_batch([
131
+ f"Resuelve este sub-problema de forma independiente: "
132
+ f"{sp}. Contexto del proyecto: {resumen_proyecto}"
133
+ for sp in sub_problemas
134
+ ])
135
+
136
+ # Verificar coherencia entre soluciones
137
+ coherencia = llm_batch([
138
+ f"¿Las soluciones A y B son coherentes entre sí? "
139
+ f"A: {soluciones[i]} B: {soluciones[j]}"
140
+ for i, j in combinaciones_pares(len(soluciones))
141
+ ])
142
+ ```
143
+
144
+ ### 3. Búsqueda Binaria Semántica (para recuperación en contextos largos)
145
+
146
+ ```python
147
+ # Para encontrar información específica en contextos enormes
148
+ documento = env.input_data # 500K tokens
149
+ mitades = [documento[:len(documento)//2],
150
+ documento[len(documento)//2:]]
151
+
152
+ relevancia = llm_batch([
153
+ f"¿Esta sección contiene info sobre '{consulta}'? "
154
+ f"Responde SÍ/NO y extracto relevante. Sección: {m[:5000]}"
155
+ for m in mitades
156
+ ])
157
+
158
+ # Recurrir sobre la mitad relevante
159
+ # (recursión depth puede ser >1 en futuras versiones)
160
+ ```
161
+
162
+ ## La Variable `respuesta`
163
+
164
+ ```python
165
+ # Inicializada al comienzo de cada rollout
166
+ respuesta = {"contenido": "", "lista": False}
167
+
168
+ # El RLM puede escribir, editar, reescribir
169
+ # MÚLTIPLES VECES durante el proceso
170
+ respuesta["contenido"] = "Análisis parcial del módulo de auth..."
171
+
172
+ # Después de más procesamiento...
173
+ respuesta["contenido"] = f"""
174
+ # Análisis Completo del Codebase
175
+
176
+ ## Módulo de Auth
177
+ {analisis_auth}
178
+
179
+ ## Módulo de API
180
+ {analisis_api}
181
+
182
+ ## Dependencias y Riesgos
183
+ {analisis_deps}
184
+ """
185
+
186
+ # Solo cuando está satisfecho:
187
+ respuesta["lista"] = True # Finaliza el rollout
188
+ ```
189
+
190
+ ## Cuándo Usar
191
+
192
+ | Situación | ¿Usar RLM-Descomposición? |
193
+ |-----------|--------------------------|
194
+ | Analizar un codebase grande (>50 archivos) | ✅ Sí |
195
+ | Procesar documentos largos (PRDs, specs) | ✅ Sí |
196
+ | Migración de sistema completo | ✅ Sí |
197
+ | Tarea simple (1-3 archivos) | ❌ No (overhead innecesario) |
198
+ | Problema que cabe en un contexto | ❌ No |
199
+
200
+ ## Principios del RLM (PrimeIntellect)
201
+
202
+ 1. **Los datos van al entorno, NUNCA al contexto del RLM** — Esto evita context rot
203
+ 2. **El RLM solo ve lo que imprime** — Fuerza selectividad (máx 8192 chars por print)
204
+ 3. **Herramientas solo para sub-LLMs** — El RLM principal orquesta, no ejecuta
205
+ 4. **Sub-LLMs siempre tienen contexto fresco** — Cada instancia es nueva
206
+ 5. **`llm_batch()` para paralelización** — Eficiencia en procesamiento
207
+ 6. **La respuesta se construye por difusión** — Se edita iterativamente
208
+ 7. **Context folding > context summarization** — Delegar ≠ resumir (no se pierde info)
209
+
210
+ ## Referencia
211
+
212
+ - [PrimeIntellect: Recursive Language Models — the paradigm of 2026](https://www.primeintellect.ai/blog/rlm)
213
+ - [Alex Zhang: Recursive Language Models (Oct 2025)](https://alexzhang13.github.io/blog/2025/rlm/)
214
+ - [Paper: arXiv:2512.24601](https://arxiv.org/abs/2512.24601)
215
+ - [Implementación: PrimeIntellect/verifiers](https://github.com/PrimeIntellect-ai/verifiers/)
216
+ - [Context Rot Research](https://research.trychroma.com/context-rot)
@@ -0,0 +1,169 @@
1
+ ---
2
+ description: Verificación con Sub-LLMs
3
+ i18n: true
4
+ ---
5
+
6
+ # /razonar:rlm-verificacion
7
+
8
+ 🧠 **Modelo RLM: Verificación con Sub-LLMs**
9
+
10
+ Basado en el paradigma **Recursive Language Model (RLM)** de PrimeIntellect. En vez de procesar todo en un solo contexto, el LLM principal actúa como orquestador: usa un REPL de Python para inspeccionar datos, delega trabajo a sub-LLMs frescos en paralelo, y construye la respuesta de forma iterativa sin contaminar su propio contexto.
11
+
12
+ ## Uso
13
+
14
+ ```
15
+ /razonar:rlm-verificacion [problema con criterios verificables]
16
+ ```
17
+
18
+ ## Descripción
19
+
20
+ El RLM no ingiere directamente toda la información. En su lugar:
21
+
22
+ 1. El LLM principal (el **RLM**) recibe el problema en su contexto
23
+ 2. Los datos de entrada se cargan en un **entorno externo** (REPL Python)
24
+ 3. El RLM escribe código Python para inspeccionar, filtrar y transformar los datos
25
+ 4. Delega trabajo pesado a **sub-LLMs frescos** usando `llm_batch()`
26
+ 5. Las herramientas (tests, linters, etc.) solo las usan los sub-LLMs
27
+ 6. La respuesta se construye iterativamente en una **variable `respuesta`**
28
+ 7. Solo cuando `respuesta["lista"] = True` se finaliza el proceso
29
+
30
+ ## Arquitectura
31
+
32
+ ```
33
+ ┌─────────────────────────────────────────────────────┐
34
+ │ RLM Principal │
35
+ │ (Orquestador) │
36
+ │ │
37
+ │ Contexto limpio — NO usa herramientas directamente │
38
+ │ Solo escribe código Python en el REPL │
39
+ │ │
40
+ │ ┌─────────────────────────────────────────────┐ │
41
+ │ │ REPL Python (Entorno) │ │
42
+ │ │ │ │
43
+ │ │ # Inspeccionar datos de entrada │ │
44
+ │ │ datos = cargar_contexto("specs/feature.md") │ │
45
+ │ │ print(datos[:500]) # Ver fragmento │ │
46
+ │ │ │ │
47
+ │ │ # Delegar verificación a sub-LLMs │ │
48
+ │ │ resultados = llm_batch([ │ │
49
+ │ │ "Ejecuta los tests y reporta resultados", │ │
50
+ │ │ "Revisa el código contra la spec", │ │
51
+ │ │ "Analiza cobertura de edge cases" │ │
52
+ │ │ ]) │ │
53
+ │ │ # Los sub-LLMs SÍ tienen herramientas: │ │
54
+ │ │ # ejecutar tests, leer archivos, etc. │ │
55
+ │ │ │ │
56
+ │ │ # Construir respuesta iterativamente │ │
57
+ │ │ respuesta["contenido"] = sintetizar(res) │ │
58
+ │ │ respuesta["lista"] = True # Finalizar │ │
59
+ │ └─────────────────────────────────────────────┘ │
60
+ │ │
61
+ │ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
62
+ │ │ Sub-LLM │ │ Sub-LLM │ │ Sub-LLM │ │
63
+ │ │ (fresco) │ │ (fresco) │ │ (fresco) │ │
64
+ │ │ │ │ │ │ │ │
65
+ │ │ + tests │ │ + leer │ │ + buscar │ │
66
+ │ │ + lint │ │ specs │ │ código │ │
67
+ │ └──────────┘ └──────────┘ └──────────┘ │
68
+ │ EN PARALELO │
69
+ └─────────────────────────────────────────────────────┘
70
+ ```
71
+
72
+ ## Conceptos Clave
73
+
74
+ ### 1. Contexto como Recurso Escaso
75
+
76
+ El RLM trata el contexto del LLM principal como un recurso escaso. En vez de volcar toda la información en el contexto:
77
+
78
+ - Los datos de entrada se cargan al **entorno externo** (Python REPL)
79
+ - El RLM solo ve lo que explícitamente `print()` en el REPL (limitado a 8192 caracteres por turno)
80
+ - Esto **fuerza** al modelo a ser selectivo con la información que procesa
81
+
82
+ ### 2. Sub-LLMs con Herramientas
83
+
84
+ Las herramientas que producen muchos tokens (tests, lectura de archivos, búsquedas web) **solo las usan los sub-LLMs**, no el RLM principal. Así:
85
+
86
+ - El RLM mantiene su contexto limpio y corto
87
+ - Los sub-LLMs procesan el contenido pesado y devuelven resúmenes concisos
88
+ - Cada sub-LLM tiene **contexto fresco** → sin context rot
89
+
90
+ ### 3. Variable `respuesta` (Diffusion-style)
91
+
92
+ ```python
93
+ respuesta = {"contenido": "", "lista": False}
94
+
95
+ # El RLM puede escribir, editar y reescribir
96
+ # la respuesta múltiples veces a lo largo del proceso
97
+ respuesta["contenido"] = "Resultado parcial..."
98
+ # ... más procesamiento ...
99
+ respuesta["contenido"] = "Resultado refinado con más datos..."
100
+ # Solo cuando está satisfecho:
101
+ respuesta["lista"] = True # Finaliza el rollout
102
+ ```
103
+
104
+ ### 4. Llamadas Paralelas con `llm_batch()`
105
+
106
+ ```python
107
+ # Despachar múltiples sub-LLMs en paralelo
108
+ resultados = llm_batch([
109
+ "Ejecuta test_auth.py y reporta qué tests pasan y cuáles fallan",
110
+ "Lee la spec CrearUsuario.feature y lista los escenarios",
111
+ "Revisa el código de AuthService.ts contra los criterios"
112
+ ])
113
+
114
+ # Cada sub-LLM trabaja independientemente con contexto fresco
115
+ # y herramientas propias (test runner, file reader, etc.)
116
+ ```
117
+
118
+ ## Proceso para Verificación de Código
119
+
120
+ ```
121
+ 1. CARGAR contexto en entorno Python
122
+ - Specs, criterios de aceptación, código fuente
123
+ - NO en el contexto del RLM → en variables Python
124
+
125
+ 2. INSPECCIONAR selectivamente
126
+ - print() solo las partes relevantes
127
+ - Filtrar y transformar datos con Python
128
+
129
+ 3. DELEGAR verificación a sub-LLMs en paralelo
130
+ - Sub-LLM 1: Ejecutar tests → reportar pasan/fallan
131
+ - Sub-LLM 2: Comparar código vs spec → reportar cumplimiento
132
+ - Sub-LLM 3: Analizar edge cases → reportar cobertura
133
+ (Los sub-LLMs SÍ tienen las herramientas)
134
+
135
+ 4. SINTETIZAR resultados
136
+ - Combinar y cruzar hallazgos de los sub-LLMs
137
+ - Identificar inconsistencias que requieran más investigación
138
+
139
+ 5. ITERAR si es necesario
140
+ - Si hay gaps → despachar más sub-LLMs focalizados
141
+ - Si hay contradicciones → verificación cruzada
142
+
143
+ 6. FINALIZAR
144
+ - Escribir respuesta["contenido"] con resultado sintetizado
145
+ - Establecer respuesta["lista"] = True
146
+ ```
147
+
148
+ ## Cuándo Usar
149
+
150
+ | Situación | ¿Usar RLM-Verificación? |
151
+ |-----------|------------------------|
152
+ | Verificar código contra specs | ✅ Sí |
153
+ | Tests que producen mucho output | ✅ Sí (sub-LLMs manejan el output) |
154
+ | Código simple sin specs | ❌ No |
155
+ | Exploración abierta | ❌ No (usar RLM-Investigación) |
156
+
157
+ ## Principios (del paradigma PrimeIntellect)
158
+
159
+ 1. **El RLM nunca usa herramientas directamente** — Delega a sub-LLMs
160
+ 2. **Contexto fresco para cada sub-LLM** — Sin acumulación de context rot
161
+ 3. **Los datos van al entorno, no al contexto** — Python REPL como buffer
162
+ 4. **La respuesta se construye por difusión** — Escritura iterativa, no de una vez
163
+ 5. **Paralelización siempre que sea posible** — `llm_batch()` para eficiencia
164
+
165
+ ## Referencia
166
+
167
+ - [PrimeIntellect: Recursive Language Models](https://www.primeintellect.ai/blog/rlm)
168
+ - [Paper original RLM (Alex Zhang, Oct 2025)](https://alexzhang13.github.io/blog/2025/rlm/)
169
+ - [Implementación en verifiers](https://github.com/PrimeIntellect-ai/verifiers/)