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.
- package/AGENTS.md +33 -0
- package/CHANGELOG.md +108 -0
- package/CLAUDE.md +114 -0
- package/LICENSE +190 -0
- package/README.es.md +611 -0
- package/README.md +640 -0
- package/README.pt.md +579 -0
- package/VERSION +1 -0
- package/agentes/README.md +28 -0
- package/agentes/prompts/estimador.md +29 -0
- package/comandos/bucle-completar.md +13 -0
- package/comandos/bucle-estado.md +13 -0
- package/comandos/bucle.md +74 -0
- package/comandos/especdev/actualizar.md +200 -0
- package/comandos/especdev/agente.md +43 -0
- package/comandos/especdev/analizar-sesiones.md +158 -0
- package/comandos/especdev/aplicar.md +73 -0
- package/comandos/especdev/archivar.md +69 -0
- package/comandos/especdev/auditar-seguridad.md +234 -0
- package/comandos/especdev/auditar.md +15 -0
- package/comandos/especdev/avance-rapido.md +64 -0
- package/comandos/especdev/cambios.md +14 -0
- package/comandos/especdev/capturar.md +61 -0
- package/comandos/especdev/cerrar-sesion.md +88 -0
- package/comandos/especdev/clarificar.md +98 -0
- package/comandos/especdev/comenzar.md +105 -0
- package/comandos/especdev/completo.md +49 -0
- package/comandos/especdev/continuar.md +59 -0
- package/comandos/especdev/contrato-api.md +223 -0
- package/comandos/especdev/contrato-ui.md +245 -0
- package/comandos/especdev/crear-skill.md +148 -0
- package/comandos/especdev/debate.md +119 -0
- package/comandos/especdev/desglosar.md +172 -0
- package/comandos/especdev/destilar.md +211 -0
- package/comandos/especdev/detectar-ambiguedad.md +81 -0
- package/comandos/especdev/diagnostico.md +92 -0
- package/comandos/especdev/dise/303/261ar.md +74 -0
- package/comandos/especdev/doctor.md +78 -0
- package/comandos/especdev/donde-estoy.md +32 -0
- package/comandos/especdev/especificar.md +189 -0
- package/comandos/especdev/estado.md +46 -0
- package/comandos/especdev/estimar.md +141 -0
- package/comandos/especdev/explorar.md +175 -0
- package/comandos/especdev/guardian.md +99 -0
- package/comandos/especdev/historial.md +14 -0
- package/comandos/especdev/implementar.md +227 -0
- package/comandos/especdev/incorporar.md +71 -0
- package/comandos/especdev/iniciar.md +82 -0
- package/comandos/especdev/limpiar-slop.md +88 -0
- package/comandos/especdev/marketplace.md +109 -0
- package/comandos/especdev/memorizar.md +31 -0
- package/comandos/especdev/mesa-redonda.md +60 -0
- package/comandos/especdev/mesa-tecnica.md +144 -0
- package/comandos/especdev/migrar.md +237 -0
- package/comandos/especdev/minar-referencias.md +214 -0
- package/comandos/especdev/planificar-tecnico.md +186 -0
- package/comandos/especdev/planning.md +264 -0
- package/comandos/especdev/poc.md +302 -0
- package/comandos/especdev/presentar.md +75 -0
- package/comandos/especdev/proponer.md +69 -0
- package/comandos/especdev/pseudocodigo.md +49 -0
- package/comandos/especdev/rapido.md +69 -0
- package/comandos/especdev/reflexionar.md +53 -0
- package/comandos/especdev/retro.md +14 -0
- package/comandos/especdev/reversa.md +155 -0
- package/comandos/especdev/revisar.md +231 -0
- package/comandos/especdev/traspasar.md +76 -0
- package/comandos/especdev/traspaso.md +43 -0
- package/comandos/especdev/uat.md +84 -0
- package/comandos/especdev/validar-spec.md +58 -0
- package/comandos/especdev/validar.md +40 -0
- package/comandos/historias-generar.md +74 -0
- package/comandos/razonar/5-porques.md +42 -0
- package/comandos/razonar/circulo-competencia.md +22 -0
- package/comandos/razonar/costo-oportunidad.md +21 -0
- package/comandos/razonar/inversion.md +40 -0
- package/comandos/razonar/mapa-territorio.md +22 -0
- package/comandos/razonar/minimizar-arrepentimiento.md +20 -0
- package/comandos/razonar/pareto.md +32 -0
- package/comandos/razonar/pre-mortem.md +22 -0
- package/comandos/razonar/primeros-principios.md +57 -0
- package/comandos/razonar/probabilistico.md +21 -0
- package/comandos/razonar/reversibilidad.md +27 -0
- package/comandos/razonar/rlm-cadena-pensamiento.md +189 -0
- package/comandos/razonar/rlm-descomposicion.md +216 -0
- package/comandos/razonar/rlm-verificacion.md +169 -0
- package/comandos/razonar/segundo-orden.md +35 -0
- package/ganchos/parar.md +10 -0
- package/ganchos/post-herramienta.md +9 -0
- package/ganchos/pre-herramienta.md +19 -0
- package/habilidades/arnes-agente/HABILIDAD.md +164 -0
- package/habilidades/auto-correccion/HABILIDAD.md +114 -0
- package/habilidades/brainstorming/HABILIDAD.md +88 -0
- package/habilidades/cambio-carpeta/HABILIDAD.md +100 -0
- package/habilidades/code-rag/HABILIDAD.md +306 -0
- package/habilidades/contabilidad-tokens/HABILIDAD.md +109 -0
- package/habilidades/delta-specs/HABILIDAD.md +102 -0
- package/habilidades/desarrollo-subagentes/HABILIDAD.md +51 -0
- package/habilidades/deteccion-loops/HABILIDAD.md +168 -0
- package/habilidades/deteccion-stubs/HABILIDAD.md +204 -0
- package/habilidades/devlog/HABILIDAD.md +84 -0
- package/habilidades/documentacion-viva/HABILIDAD.md +231 -0
- package/habilidades/estimacion/HABILIDAD.md +48 -0
- package/habilidades/extensiones-presets/HABILIDAD.md +133 -0
- package/habilidades/generador-specs/HABILIDAD.md +37 -0
- package/habilidades/ingenieria-contexto/HABILIDAD.md +34 -0
- package/habilidades/integracion-mcp/HABILIDAD.md +59 -0
- package/habilidades/leyes-hierro/HABILIDAD.md +45 -0
- package/habilidades/mapa-arquitectonico/HABILIDAD.md +93 -0
- package/habilidades/memoria-persistente/HABILIDAD.md +97 -0
- package/habilidades/obsidian/HABILIDAD.md +93 -0
- package/habilidades/optimizacion-tokens/HABILIDAD.md +179 -0
- package/habilidades/optimizador-contexto/HABILIDAD.md +106 -0
- package/habilidades/orquestacion-autonoma/HABILIDAD.md +133 -0
- package/habilidades/permisos-seguridad/HABILIDAD.md +76 -0
- package/habilidades/persona/HABILIDAD.md +66 -0
- package/habilidades/planning-equipo/HABILIDAD.md +169 -0
- package/habilidades/presentaciones/HABILIDAD.md +63 -0
- package/habilidades/proyecciones-costo/HABILIDAD.md +54 -0
- package/habilidades/prueba-trabajo/HABILIDAD.md +131 -0
- package/habilidades/razonamiento/HABILIDAD.md +69 -0
- package/habilidades/recuperacion-sesion/HABILIDAD.md +27 -0
- package/habilidades/refactorizacion-solid/HABILIDAD.md +182 -0
- package/habilidades/reflexion/HABILIDAD.md +37 -0
- package/habilidades/rigor-progresivo/HABILIDAD.md +109 -0
- package/habilidades/rlm/HABILIDAD.md +85 -0
- package/habilidades/routing-modelos/HABILIDAD.md +79 -0
- package/habilidades/salud-habilidades/HABILIDAD.md +63 -0
- package/habilidades/schemas-dbml/HABILIDAD.md +101 -0
- package/habilidades/trazabilidad/HABILIDAD.md +63 -0
- package/habilidades/ui-ux-design/HABILIDAD.md +76 -0
- package/habilidades/validacion-nyquist/HABILIDAD.md +161 -0
- package/habilidades/worktrees/HABILIDAD.md +80 -0
- package/locales/en.json +179 -0
- package/locales/es.json +179 -0
- package/locales/pt.json +179 -0
- package/package.json +48 -0
- package/plantillas/checklist-requisitos.md +31 -0
- package/plantillas/docker/Dockerfile +16 -0
- package/plantillas/docker/docker-compose.yml +28 -0
- package/plantillas/especdev/WORKFLOW.md +118 -0
- package/plantillas/especdev/config.yaml +27 -0
- package/plantillas/especdev/en/config.yaml +27 -0
- package/plantillas/especdev/en/decisions.md +17 -0
- package/plantillas/especdev/en/deferred-work.md +17 -0
- package/plantillas/especdev/en/findings.md +7 -0
- package/plantillas/especdev/en/knowledge.md +19 -0
- package/plantillas/especdev/en/plan.md +35 -0
- package/plantillas/especdev/en/progress.md +7 -0
- package/plantillas/especdev/en/project-constitution.md +53 -0
- package/plantillas/especdev/en/pseudocode.md +35 -0
- package/plantillas/especdev/en/runtime.md +26 -0
- package/plantillas/especdev/en/status.md +16 -0
- package/plantillas/especdev/es/config.yaml +27 -0
- package/plantillas/especdev/es/conocimiento.md +19 -0
- package/plantillas/especdev/es/constitucion-proyecto.md +53 -0
- package/plantillas/especdev/es/decisiones.md +17 -0
- package/plantillas/especdev/es/deuda-scope.md +17 -0
- package/plantillas/especdev/es/estado.md +16 -0
- package/plantillas/especdev/es/hallazgos.md +7 -0
- package/plantillas/especdev/es/plan.md +35 -0
- package/plantillas/especdev/es/progreso.md +7 -0
- package/plantillas/especdev/es/pseudocodigo.md +35 -0
- package/plantillas/especdev/es/runtime.md +26 -0
- package/plantillas/especdev/estado.md +16 -0
- package/plantillas/especdev/hallazgos.md +7 -0
- package/plantillas/especdev/isa.yml +152 -0
- package/plantillas/especdev/plan.md +35 -0
- package/plantillas/especdev/progreso.md +7 -0
- package/plantillas/especdev/pt/config.yaml +27 -0
- package/plantillas/especdev/pt/conhecimento.md +19 -0
- package/plantillas/especdev/pt/constituicao-projeto.md +53 -0
- package/plantillas/especdev/pt/decisoes.md +17 -0
- package/plantillas/especdev/pt/descobertas.md +7 -0
- package/plantillas/especdev/pt/estado.md +16 -0
- package/plantillas/especdev/pt/plano.md +35 -0
- package/plantillas/especdev/pt/progresso.md +7 -0
- package/plantillas/especdev/pt/pseudocodigo.md +35 -0
- package/plantillas/especdev/pt/runtime.md +26 -0
- package/plantillas/especdev/pt/trabalho-diferido.md +17 -0
- package/plantillas/estimado-desarrollo.md +43 -0
- package/prompt.md +16 -0
- package/reglas/constitucion.md +122 -0
- package/reglas/hooks-parar.md +102 -0
- package/reglas/i18n.md +47 -0
- package/reglas/leyes-hierro.md +18 -0
- package/reglas/puertas-calidad.md +87 -0
- package/reglas/reglas-desviacion.md +36 -0
- package/reglas/reglas-trabajo-globales.md +171 -0
- package/reglas/skills-best-practices.md +109 -0
- package/scripts/.claude/commands/bucle-completar.md +13 -0
- package/scripts/.claude/commands/bucle-estado.md +13 -0
- package/scripts/.claude/commands/bucle.md +74 -0
- package/scripts/.claude/commands/especdev/actualizar.md +200 -0
- package/scripts/.claude/commands/especdev/agente.md +43 -0
- package/scripts/.claude/commands/especdev/analizar-sesiones.md +158 -0
- package/scripts/.claude/commands/especdev/aplicar.md +73 -0
- package/scripts/.claude/commands/especdev/archivar.md +69 -0
- package/scripts/.claude/commands/especdev/auditar-seguridad.md +234 -0
- package/scripts/.claude/commands/especdev/auditar.md +15 -0
- package/scripts/.claude/commands/especdev/avance-rapido.md +64 -0
- package/scripts/.claude/commands/especdev/cambios.md +14 -0
- package/scripts/.claude/commands/especdev/cerrar-sesion.md +88 -0
- package/scripts/.claude/commands/especdev/clarificar.md +98 -0
- package/scripts/.claude/commands/especdev/comenzar.md +77 -0
- package/scripts/.claude/commands/especdev/completo.md +49 -0
- package/scripts/.claude/commands/especdev/continuar.md +59 -0
- package/scripts/.claude/commands/especdev/contrato-api.md +223 -0
- package/scripts/.claude/commands/especdev/contrato-ui.md +245 -0
- package/scripts/.claude/commands/especdev/desglosar.md +172 -0
- package/scripts/.claude/commands/especdev/destilar.md +211 -0
- package/scripts/.claude/commands/especdev/detectar-ambiguedad.md +81 -0
- package/scripts/.claude/commands/especdev/diagnostico.md +92 -0
- package/scripts/.claude/commands/especdev/dise/303/261ar.md +74 -0
- package/scripts/.claude/commands/especdev/donde-estoy.md +32 -0
- package/scripts/.claude/commands/especdev/especificar.md +189 -0
- package/scripts/.claude/commands/especdev/estado.md +46 -0
- package/scripts/.claude/commands/especdev/estimar.md +141 -0
- package/scripts/.claude/commands/especdev/explorar.md +175 -0
- package/scripts/.claude/commands/especdev/guardian.md +99 -0
- package/scripts/.claude/commands/especdev/historial.md +14 -0
- package/scripts/.claude/commands/especdev/implementar.md +227 -0
- package/scripts/.claude/commands/especdev/incorporar.md +71 -0
- package/scripts/.claude/commands/especdev/iniciar.md +82 -0
- package/scripts/.claude/commands/especdev/limpiar-slop.md +88 -0
- package/scripts/.claude/commands/especdev/memorizar.md +31 -0
- package/scripts/.claude/commands/especdev/mesa-redonda.md +60 -0
- package/scripts/.claude/commands/especdev/mesa-tecnica.md +144 -0
- package/scripts/.claude/commands/especdev/migrar.md +237 -0
- package/scripts/.claude/commands/especdev/minar-referencias.md +214 -0
- package/scripts/.claude/commands/especdev/planificar-tecnico.md +186 -0
- package/scripts/.claude/commands/especdev/planning.md +264 -0
- package/scripts/.claude/commands/especdev/poc.md +302 -0
- package/scripts/.claude/commands/especdev/proponer.md +69 -0
- package/scripts/.claude/commands/especdev/rapido.md +69 -0
- package/scripts/.claude/commands/especdev/reflexionar.md +53 -0
- package/scripts/.claude/commands/especdev/retro.md +14 -0
- package/scripts/.claude/commands/especdev/reversa.md +155 -0
- package/scripts/.claude/commands/especdev/revisar.md +221 -0
- package/scripts/.claude/commands/especdev/traspasar.md +76 -0
- package/scripts/.claude/commands/especdev/traspaso.md +43 -0
- package/scripts/.claude/commands/especdev/validar.md +40 -0
- package/scripts/.claude/commands/historias-generar.md +74 -0
- package/scripts/.claude/commands/razonar/5-porques.md +42 -0
- package/scripts/.claude/commands/razonar/circulo-competencia.md +22 -0
- package/scripts/.claude/commands/razonar/costo-oportunidad.md +21 -0
- package/scripts/.claude/commands/razonar/inversion.md +40 -0
- package/scripts/.claude/commands/razonar/mapa-territorio.md +22 -0
- package/scripts/.claude/commands/razonar/minimizar-arrepentimiento.md +20 -0
- package/scripts/.claude/commands/razonar/pareto.md +32 -0
- package/scripts/.claude/commands/razonar/pre-mortem.md +22 -0
- package/scripts/.claude/commands/razonar/primeros-principios.md +57 -0
- package/scripts/.claude/commands/razonar/probabilistico.md +21 -0
- package/scripts/.claude/commands/razonar/reversibilidad.md +27 -0
- package/scripts/.claude/commands/razonar/rlm-cadena-pensamiento.md +189 -0
- package/scripts/.claude/commands/razonar/rlm-descomposicion.md +216 -0
- package/scripts/.claude/commands/razonar/rlm-verificacion.md +169 -0
- package/scripts/.claude/commands/razonar/segundo-orden.md +35 -0
- package/scripts/.claude/don-cheli/AGENTS.md +20 -0
- package/scripts/.claude/don-cheli/CLAUDE.md +114 -0
- package/scripts/.claude/don-cheli/NOTICE +17 -0
- package/scripts/.claude/don-cheli/VERSION +1 -0
- package/scripts/.claude/don-cheli/agentes/README.md +28 -0
- package/scripts/.claude/don-cheli/agentes/prompts/estimador.md +29 -0
- package/scripts/.claude/don-cheli/folder-map.json +19 -0
- package/scripts/.claude/don-cheli/ganchos/parar.md +10 -0
- package/scripts/.claude/don-cheli/ganchos/post-herramienta.md +9 -0
- package/scripts/.claude/don-cheli/ganchos/pre-herramienta.md +19 -0
- package/scripts/.claude/don-cheli/habilidades/arnes-agente/HABILIDAD.md +155 -0
- package/scripts/.claude/don-cheli/habilidades/auto-correccion/HABILIDAD.md +105 -0
- package/scripts/.claude/don-cheli/habilidades/brainstorming/HABILIDAD.md +79 -0
- package/scripts/.claude/don-cheli/habilidades/cambio-carpeta/HABILIDAD.md +91 -0
- package/scripts/.claude/don-cheli/habilidades/code-rag/HABILIDAD.md +297 -0
- package/scripts/.claude/don-cheli/habilidades/contabilidad-tokens/HABILIDAD.md +100 -0
- package/scripts/.claude/don-cheli/habilidades/delta-specs/HABILIDAD.md +93 -0
- package/scripts/.claude/don-cheli/habilidades/desarrollo-subagentes/HABILIDAD.md +42 -0
- package/scripts/.claude/don-cheli/habilidades/deteccion-loops/HABILIDAD.md +159 -0
- package/scripts/.claude/don-cheli/habilidades/deteccion-stubs/HABILIDAD.md +195 -0
- package/scripts/.claude/don-cheli/habilidades/devlog/HABILIDAD.md +75 -0
- package/scripts/.claude/don-cheli/habilidades/documentacion-viva/HABILIDAD.md +222 -0
- package/scripts/.claude/don-cheli/habilidades/estimacion/HABILIDAD.md +39 -0
- package/scripts/.claude/don-cheli/habilidades/extensiones-presets/HABILIDAD.md +124 -0
- package/scripts/.claude/don-cheli/habilidades/generador-specs/HABILIDAD.md +28 -0
- package/scripts/.claude/don-cheli/habilidades/ingenieria-contexto/HABILIDAD.md +25 -0
- package/scripts/.claude/don-cheli/habilidades/integracion-mcp/HABILIDAD.md +50 -0
- package/scripts/.claude/don-cheli/habilidades/leyes-hierro/HABILIDAD.md +36 -0
- package/scripts/.claude/don-cheli/habilidades/mapa-arquitectonico/HABILIDAD.md +84 -0
- package/scripts/.claude/don-cheli/habilidades/memoria-persistente/HABILIDAD.md +88 -0
- package/scripts/.claude/don-cheli/habilidades/obsidian/HABILIDAD.md +84 -0
- package/scripts/.claude/don-cheli/habilidades/optimizacion-tokens/HABILIDAD.md +170 -0
- package/scripts/.claude/don-cheli/habilidades/optimizador-contexto/HABILIDAD.md +97 -0
- package/scripts/.claude/don-cheli/habilidades/orquestacion-autonoma/HABILIDAD.md +124 -0
- package/scripts/.claude/don-cheli/habilidades/permisos-seguridad/HABILIDAD.md +67 -0
- package/scripts/.claude/don-cheli/habilidades/persona/HABILIDAD.md +57 -0
- package/scripts/.claude/don-cheli/habilidades/presentaciones/HABILIDAD.md +54 -0
- package/scripts/.claude/don-cheli/habilidades/prueba-trabajo/HABILIDAD.md +122 -0
- package/scripts/.claude/don-cheli/habilidades/razonamiento/HABILIDAD.md +60 -0
- package/scripts/.claude/don-cheli/habilidades/recuperacion-sesion/HABILIDAD.md +18 -0
- package/scripts/.claude/don-cheli/habilidades/refactorizacion-solid/HABILIDAD.md +173 -0
- package/scripts/.claude/don-cheli/habilidades/reflexion/HABILIDAD.md +15 -0
- package/scripts/.claude/don-cheli/habilidades/rigor-progresivo/HABILIDAD.md +100 -0
- package/scripts/.claude/don-cheli/habilidades/rlm/HABILIDAD.md +76 -0
- package/scripts/.claude/don-cheli/habilidades/schemas-dbml/HABILIDAD.md +92 -0
- package/scripts/.claude/don-cheli/habilidades/trazabilidad/HABILIDAD.md +54 -0
- package/scripts/.claude/don-cheli/habilidades/ui-ux-design/HABILIDAD.md +67 -0
- package/scripts/.claude/don-cheli/habilidades/validacion-nyquist/HABILIDAD.md +152 -0
- package/scripts/.claude/don-cheli/habilidades/worktrees/HABILIDAD.md +71 -0
- package/scripts/.claude/don-cheli/locale +1 -0
- package/scripts/.claude/don-cheli/locales/en.json +179 -0
- package/scripts/.claude/don-cheli/locales/es.json +179 -0
- package/scripts/.claude/don-cheli/locales/pt.json +179 -0
- package/scripts/.claude/don-cheli/plantillas/checklist-requisitos.md +31 -0
- package/scripts/.claude/don-cheli/plantillas/docker/Dockerfile +16 -0
- package/scripts/.claude/don-cheli/plantillas/docker/docker-compose.yml +28 -0
- package/scripts/.claude/don-cheli/plantillas/especdev/WORKFLOW.md +118 -0
- package/scripts/.claude/don-cheli/plantillas/especdev/config.yaml +27 -0
- package/scripts/.claude/don-cheli/plantillas/especdev/en/config.yaml +27 -0
- package/scripts/.claude/don-cheli/plantillas/especdev/en/findings.md +7 -0
- package/scripts/.claude/don-cheli/plantillas/especdev/en/plan.md +35 -0
- package/scripts/.claude/don-cheli/plantillas/especdev/en/progress.md +7 -0
- package/scripts/.claude/don-cheli/plantillas/especdev/en/status.md +16 -0
- package/scripts/.claude/don-cheli/plantillas/especdev/es/config.yaml +27 -0
- package/scripts/.claude/don-cheli/plantillas/especdev/es/estado.md +16 -0
- package/scripts/.claude/don-cheli/plantillas/especdev/es/hallazgos.md +7 -0
- package/scripts/.claude/don-cheli/plantillas/especdev/es/plan.md +35 -0
- package/scripts/.claude/don-cheli/plantillas/especdev/es/progreso.md +7 -0
- package/scripts/.claude/don-cheli/plantillas/especdev/estado.md +16 -0
- package/scripts/.claude/don-cheli/plantillas/especdev/hallazgos.md +7 -0
- package/scripts/.claude/don-cheli/plantillas/especdev/isa.yml +152 -0
- package/scripts/.claude/don-cheli/plantillas/especdev/plan.md +35 -0
- package/scripts/.claude/don-cheli/plantillas/especdev/progreso.md +7 -0
- package/scripts/.claude/don-cheli/plantillas/especdev/pt/config.yaml +27 -0
- package/scripts/.claude/don-cheli/plantillas/especdev/pt/descobertas.md +7 -0
- package/scripts/.claude/don-cheli/plantillas/especdev/pt/estado.md +16 -0
- package/scripts/.claude/don-cheli/plantillas/especdev/pt/plano.md +35 -0
- package/scripts/.claude/don-cheli/plantillas/especdev/pt/progresso.md +7 -0
- package/scripts/.claude/don-cheli/plantillas/estimado-desarrollo.md +43 -0
- package/scripts/.claude/don-cheli/prompt.md +16 -0
- package/scripts/.claude/don-cheli/reglas/constitucion.md +122 -0
- package/scripts/.claude/don-cheli/reglas/hooks-parar.md +102 -0
- package/scripts/.claude/don-cheli/reglas/i18n.md +47 -0
- package/scripts/.claude/don-cheli/reglas/leyes-hierro.md +18 -0
- package/scripts/.claude/don-cheli/reglas/puertas-calidad.md +87 -0
- package/scripts/.claude/don-cheli/reglas/reglas-desviacion.md +36 -0
- package/scripts/.claude/don-cheli/reglas/reglas-trabajo-globales.md +171 -0
- package/scripts/.claude/don-cheli/scripts/bucle.sh +103 -0
- package/scripts/.claude/don-cheli/scripts/instalar.sh +522 -0
- package/scripts/.claude/don-cheli/scripts/validar.sh +70 -0
- package/scripts/bucle.sh +103 -0
- package/scripts/instalar.sh +587 -0
- package/scripts/validar.sh +70 -0
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Generar documento de traspaso estructurado para retomar en la próxima sesión
|
|
3
|
+
i18n: true
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# /especdev:traspasar
|
|
7
|
+
|
|
8
|
+
## Objetivo
|
|
9
|
+
|
|
10
|
+
Generar un documento de traspaso estructurado que permite a la **siguiente sesión** (o agente) retomar exactamente donde se dejó. Diferente de `/especdev:cerrar-sesion` que es un checklist para ti — el traspaso es un documento escrito para **el siguiente lector**.
|
|
11
|
+
|
|
12
|
+
> Adaptado de `session-handoff` de Pro-Workflow.
|
|
13
|
+
|
|
14
|
+
## Uso
|
|
15
|
+
|
|
16
|
+
```
|
|
17
|
+
/especdev:traspasar
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
## Output
|
|
21
|
+
|
|
22
|
+
```markdown
|
|
23
|
+
# Traspaso de Sesión — 2026-03-21 16:45
|
|
24
|
+
|
|
25
|
+
## Estado
|
|
26
|
+
- **Branch:** feature/oauth-login
|
|
27
|
+
- **Commits esta sesión:** 3
|
|
28
|
+
- **Cambios sin commit:** 2 archivos
|
|
29
|
+
- **Tests:** ✅ pasando
|
|
30
|
+
|
|
31
|
+
## ✅ Completado
|
|
32
|
+
- Endpoint POST /api/auth/google
|
|
33
|
+
- Endpoint POST /api/auth/github
|
|
34
|
+
- 12 unit tests para ambos endpoints
|
|
35
|
+
- Middleware de validación de tokens OAuth
|
|
36
|
+
|
|
37
|
+
## 🔄 En Progreso
|
|
38
|
+
- Refresh token (src/services/auth/refresh.ts:23)
|
|
39
|
+
→ Falta implementar rotación de tokens
|
|
40
|
+
→ El test skeleton ya existe en tests/auth/refresh.test.ts
|
|
41
|
+
|
|
42
|
+
## ⬜ Pendiente
|
|
43
|
+
- [ ] Vincular OAuth a cuenta existente por email
|
|
44
|
+
- [ ] Revocar token al logout
|
|
45
|
+
- [ ] BLOQUEADO: Endpoint de callback necesita URL de producción
|
|
46
|
+
|
|
47
|
+
## 🧠 Decisiones Tomadas
|
|
48
|
+
- Elegido Strategy Pattern para providers (Google, GitHub)
|
|
49
|
+
→ Razón: extensible para Apple/Microsoft después
|
|
50
|
+
- Tokens JWT con 15min de vida + refresh de 7 días
|
|
51
|
+
→ Razón: balance seguridad/UX
|
|
52
|
+
|
|
53
|
+
## 📄 Archivos Tocados
|
|
54
|
+
- `src/services/auth/google.ts` — Provider de Google OAuth
|
|
55
|
+
- `src/services/auth/github.ts` — Provider de GitHub OAuth
|
|
56
|
+
- `src/middleware/oauth-validate.ts` — Validación de tokens
|
|
57
|
+
- `tests/auth/google.test.ts` — 6 tests
|
|
58
|
+
- `tests/auth/github.test.ts` — 6 tests
|
|
59
|
+
|
|
60
|
+
## ⚠️ Gotchas
|
|
61
|
+
- NextAuth v5 cambia la API: `getSession()` ahora es async
|
|
62
|
+
- El mock de Google no devuelve `refresh_token` en primer login
|
|
63
|
+
|
|
64
|
+
## ▶️ Comando de Retomar
|
|
65
|
+
|
|
66
|
+
> Continuar en branch `feature/oauth-login`. Implementar refresh token
|
|
67
|
+
> (src/services/auth/refresh.ts). El test skeleton ya está. Siguiente
|
|
68
|
+
> paso: implementar rotación de tokens en el endpoint POST /api/auth/refresh.
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
## Guardrails
|
|
72
|
+
|
|
73
|
+
- **Escribir para el lector** — No para ti
|
|
74
|
+
- **Incluir paths y líneas** — Ser específico
|
|
75
|
+
- **Comando de retomar copy-pasteable** — 1-2 oraciones de contexto
|
|
76
|
+
- **Solo hechos** — Describir cambios funcionalmente, no inferir motivación
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Generar handoff de contexto para transferencia de sesión
|
|
3
|
+
i18n: true
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# /especdev:traspaso
|
|
7
|
+
|
|
8
|
+
## Objetivo
|
|
9
|
+
|
|
10
|
+
Generar un documento estructurado para transferir contexto entre sesiones o agentes.
|
|
11
|
+
|
|
12
|
+
## Uso
|
|
13
|
+
|
|
14
|
+
```
|
|
15
|
+
/especdev:traspaso
|
|
16
|
+
/especdev:traspaso --guardar
|
|
17
|
+
/especdev:traspaso --formato md
|
|
18
|
+
/especdev:traspaso --destino agente
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
## Output
|
|
22
|
+
|
|
23
|
+
```xml
|
|
24
|
+
<traspaso_contexto>
|
|
25
|
+
<metadatos>
|
|
26
|
+
<proyecto>api-pagos</proyecto>
|
|
27
|
+
<fecha>2026-03-21T15:30:00Z</fecha>
|
|
28
|
+
</metadatos>
|
|
29
|
+
<tarea_original>Implementar API de pagos</tarea_original>
|
|
30
|
+
<trabajo_completado>
|
|
31
|
+
- Spec Gherkin creada
|
|
32
|
+
- Blueprint técnico generado
|
|
33
|
+
</trabajo_completado>
|
|
34
|
+
<trabajo_pendiente>
|
|
35
|
+
- Implementar endpoint de cobro
|
|
36
|
+
- Agregar tests de integración
|
|
37
|
+
</trabajo_pendiente>
|
|
38
|
+
<estado_actual>
|
|
39
|
+
Fase: 4/7
|
|
40
|
+
Progreso: 55%
|
|
41
|
+
</estado_actual>
|
|
42
|
+
</traspaso_contexto>
|
|
43
|
+
```
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Generar scripts de User Acceptance Testing para validación humana
|
|
3
|
+
i18n: true
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# /especdev:uat
|
|
7
|
+
|
|
8
|
+
## Objetivo
|
|
9
|
+
|
|
10
|
+
Generar automáticamente un script de pruebas de aceptación (UAT) ejecutable por un humano después de completar un slice o feature. El script describe paso a paso qué verificar, qué resultado esperar, y cómo reportar fallos.
|
|
11
|
+
|
|
12
|
+
## Uso
|
|
13
|
+
|
|
14
|
+
```
|
|
15
|
+
/especdev:uat # Genera UAT para el slice actual
|
|
16
|
+
/especdev:uat @specs/features/auth/ # Genera UAT para un dominio específico
|
|
17
|
+
/especdev:uat --formato checklist # Solo checklist sin narrativa
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
## Comportamiento
|
|
21
|
+
|
|
22
|
+
1. **Leer** las specs Gherkin del slice/feature
|
|
23
|
+
2. **Extraer** los escenarios P1 y P2
|
|
24
|
+
3. **Generar** pasos de prueba ejecutables por un humano
|
|
25
|
+
4. **Incluir** datos de prueba concretos (no genéricos)
|
|
26
|
+
5. **Guardar** en `.especdev/uat/<feature>.uat.md`
|
|
27
|
+
|
|
28
|
+
## Output
|
|
29
|
+
|
|
30
|
+
```markdown
|
|
31
|
+
# UAT: Notificaciones Push
|
|
32
|
+
|
|
33
|
+
**Feature:** notificaciones/NotificacionesPush
|
|
34
|
+
**Generado:** 2026-03-22
|
|
35
|
+
**Tiempo estimado:** 15 minutos
|
|
36
|
+
|
|
37
|
+
## Pre-requisitos
|
|
38
|
+
- [ ] App instalada en dispositivo físico (no simulador)
|
|
39
|
+
- [ ] Permisos de notificación otorgados
|
|
40
|
+
- [ ] Liga "La Liga" marcada como favorita
|
|
41
|
+
- [ ] Al menos un partido de La Liga en vivo o programado hoy
|
|
42
|
+
|
|
43
|
+
## Pruebas
|
|
44
|
+
|
|
45
|
+
### UAT-001: Recibir notificación de gol ⭐ P1
|
|
46
|
+
**Pasos:**
|
|
47
|
+
1. Abrir la app y verificar que muestra partidos en vivo
|
|
48
|
+
2. Minimizar la app (dejar en background)
|
|
49
|
+
3. Esperar a que ocurra un gol en un partido de La Liga
|
|
50
|
+
- *Alternativa: usar endpoint de test `POST /api/test/simulate-goal`*
|
|
51
|
+
|
|
52
|
+
**Resultado esperado:**
|
|
53
|
+
- [ ] Notificación push recibida en < 10 segundos
|
|
54
|
+
- [ ] Título contiene "⚽ ¡GOL!" + marcador actualizado
|
|
55
|
+
- [ ] Cuerpo contiene nombre del goleador y minuto
|
|
56
|
+
- [ ] Al tocar la notificación, abre el detalle del partido
|
|
57
|
+
|
|
58
|
+
**Si falla:** Reportar captura de pantalla + modelo de dispositivo + versión OS
|
|
59
|
+
|
|
60
|
+
### UAT-002: Sin permisos no llegan notificaciones ⭐ P1
|
|
61
|
+
**Pasos:**
|
|
62
|
+
1. Revocar permisos de notificación en Ajustes del dispositivo
|
|
63
|
+
2. Abrir la app
|
|
64
|
+
3. Esperar evento de gol
|
|
65
|
+
|
|
66
|
+
**Resultado esperado:**
|
|
67
|
+
- [ ] NO llega notificación push
|
|
68
|
+
- [ ] Al abrir la app, el evento es visible en el timeline del partido
|
|
69
|
+
|
|
70
|
+
## Resumen
|
|
71
|
+
| ID | Descripción | Resultado | Notas |
|
|
72
|
+
|----|-------------|-----------|-------|
|
|
73
|
+
| UAT-001 | Notificación de gol | ⬜ | |
|
|
74
|
+
| UAT-002 | Sin permisos | ⬜ | |
|
|
75
|
+
|
|
76
|
+
**Firma del tester:** _______________
|
|
77
|
+
**Fecha:** _______________
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
## Integración
|
|
81
|
+
|
|
82
|
+
- Se genera automáticamente al completar `/especdev:implementar` para cada feature
|
|
83
|
+
- Se incluye en la descripción del PR como evidencia de testing manual
|
|
84
|
+
- Se archiva con `/especdev:archivar`
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Validar la calidad y completitud de una especificación antes de planificar
|
|
3
|
+
i18n: true
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# /especdev:validar-spec
|
|
7
|
+
|
|
8
|
+
## Objetivo
|
|
9
|
+
|
|
10
|
+
Ejecutar una validación multi-capa sobre las especificaciones ANTES de desglosar en tareas. Detecta problemas que `/especdev:clarificar` no cubre: implementation leakage, measurability, completeness, y adherencia a la constitución del proyecto.
|
|
11
|
+
|
|
12
|
+
Inspirado en los 13 pasos de validación del framework BMAD.
|
|
13
|
+
|
|
14
|
+
## Uso
|
|
15
|
+
|
|
16
|
+
```
|
|
17
|
+
/especdev:validar-spec # Validar todas las specs activas
|
|
18
|
+
/especdev:validar-spec @specs/features/auth/ # Validar un dominio
|
|
19
|
+
/especdev:validar-spec --strict # Modo estricto (0 warnings permitidos)
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
## Validaciones (8 checks)
|
|
23
|
+
|
|
24
|
+
| # | Check | Qué detecta | Severidad |
|
|
25
|
+
|---|-------|-------------|-----------|
|
|
26
|
+
| 1 | **Implementation Leakage** | ¿La spec menciona tecnologías donde no debería? (WHAT vs HOW) | 🔴 Error |
|
|
27
|
+
| 2 | **Measurability** | ¿Los criterios de aceptación son medibles y verificables? | 🟠 Warning |
|
|
28
|
+
| 3 | **Completeness** | ¿Hay happy path + sad paths + edge cases para cada scenario? | 🔴 Error |
|
|
29
|
+
| 4 | **Traceability** | ¿Cada requisito tiene al menos un escenario que lo cubre? | 🔴 Error |
|
|
30
|
+
| 5 | **Constitution Adherence** | ¿La spec respeta los principios de constitucion-proyecto.md? | 🔴 Error |
|
|
31
|
+
| 6 | **Consistency** | ¿Hay contradicciones entre escenarios o entre features? | 🟠 Warning |
|
|
32
|
+
| 7 | **Ambiguity** | ¿Hay términos ambiguos o no definidos? (complementa clarificar) | 🟠 Warning |
|
|
33
|
+
| 8 | **Scope Alignment** | ¿La spec está dentro del alcance definido en la propuesta? | 🟠 Warning |
|
|
34
|
+
|
|
35
|
+
## Output
|
|
36
|
+
|
|
37
|
+
```
|
|
38
|
+
📋 Validación de Spec: demo-sdd
|
|
39
|
+
|
|
40
|
+
✅ PASS: Implementation Leakage (0 violaciones)
|
|
41
|
+
✅ PASS: Completeness (todos los escenarios tienen happy + sad path)
|
|
42
|
+
⚠️ WARN: Measurability — 2 criterios sin umbral cuantificable
|
|
43
|
+
- VerPartidosEnVivo.feature:45 — "respuesta rápida" → ¿cuántos ms?
|
|
44
|
+
- PrediccionesIA.feature:32 — "precisión aceptable" → ¿qué porcentaje?
|
|
45
|
+
✅ PASS: Traceability (100% de requisitos cubiertos)
|
|
46
|
+
✅ PASS: Constitution Adherence
|
|
47
|
+
✅ PASS: Consistency
|
|
48
|
+
⚠️ WARN: Ambiguity — 1 término sin definir
|
|
49
|
+
- "usuario premium" usado en 3 features pero no definido en ninguna
|
|
50
|
+
✅ PASS: Scope Alignment
|
|
51
|
+
|
|
52
|
+
Resultado: ⚠️ PASA CON WARNINGS (2 warnings, 0 errores)
|
|
53
|
+
→ Corregir warnings antes de /especdev:desglosar para máxima calidad
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
## Integración
|
|
57
|
+
|
|
58
|
+
Se ejecuta automáticamente como sub-puerta de la **Puerta 3 (Clarificación)** cuando se usa el pipeline completo. También se puede ejecutar manualmente en cualquier momento.
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Validar la conformidad de archivos .especdev/
|
|
3
|
+
i18n: true
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# /especdev:validar
|
|
7
|
+
|
|
8
|
+
## Objetivo
|
|
9
|
+
|
|
10
|
+
Verificar que los archivos de `.especdev/` están completos y conformes.
|
|
11
|
+
|
|
12
|
+
## Uso
|
|
13
|
+
|
|
14
|
+
```
|
|
15
|
+
/especdev:validar
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
## Verificaciones
|
|
19
|
+
|
|
20
|
+
| Archivo | Verificación |
|
|
21
|
+
|---------|-------------|
|
|
22
|
+
| `config.yaml` | Campos requeridos presentes |
|
|
23
|
+
| `estado.md` | Fase válida (1-7), progreso 0-100% |
|
|
24
|
+
| `plan.md` | Al menos una fase definida |
|
|
25
|
+
| `hallazgos.md` | Formato correcto |
|
|
26
|
+
| `progreso.md` | Formato correcto |
|
|
27
|
+
|
|
28
|
+
## Output
|
|
29
|
+
|
|
30
|
+
```
|
|
31
|
+
=== Validación Don Cheli ===
|
|
32
|
+
|
|
33
|
+
✅ config.yaml — OK
|
|
34
|
+
✅ estado.md — OK (Fase 3, 40%)
|
|
35
|
+
⚠️ plan.md — Fases 5-7 sin definir
|
|
36
|
+
✅ hallazgos.md — OK (3 entradas)
|
|
37
|
+
✅ progreso.md — OK (4 sesiones)
|
|
38
|
+
|
|
39
|
+
Resultado: 4/5 ✅, 1 advertencia
|
|
40
|
+
```
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Generar prd.json desde un PRD markdown para el bucle autónomo
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# /historias-generar
|
|
6
|
+
|
|
7
|
+
## Objetivo
|
|
8
|
+
|
|
9
|
+
Convertir un PRD markdown en archivo `prd.json` estructurado para el bucle autónomo.
|
|
10
|
+
|
|
11
|
+
## Uso
|
|
12
|
+
|
|
13
|
+
```
|
|
14
|
+
/historias-generar [archivo-prd.md]
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
Si no se especifica archivo, busca en orden:
|
|
18
|
+
1. `.especdev/prd.md`
|
|
19
|
+
2. `docs/prd.md`
|
|
20
|
+
3. `PRD.md`
|
|
21
|
+
|
|
22
|
+
## Formato PRD Markdown Esperado
|
|
23
|
+
|
|
24
|
+
```markdown
|
|
25
|
+
# Nombre del Proyecto
|
|
26
|
+
|
|
27
|
+
Descripción del proyecto o feature.
|
|
28
|
+
|
|
29
|
+
## Historias
|
|
30
|
+
|
|
31
|
+
### HU-001: Título de la historia
|
|
32
|
+
|
|
33
|
+
Como [rol], quiero [acción], para [beneficio].
|
|
34
|
+
|
|
35
|
+
**Criterios de aceptación:**
|
|
36
|
+
- [ ] Criterio 1
|
|
37
|
+
- [ ] Criterio 2
|
|
38
|
+
|
|
39
|
+
**Prioridad:** 1
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
## Formato prd.json Generado
|
|
43
|
+
|
|
44
|
+
```json
|
|
45
|
+
{
|
|
46
|
+
"proyecto": "Nombre del Proyecto",
|
|
47
|
+
"ramaBase": "[rama-actual]",
|
|
48
|
+
"descripcion": "Descripción...",
|
|
49
|
+
"historiasUsuario": [
|
|
50
|
+
{
|
|
51
|
+
"id": "HU-001",
|
|
52
|
+
"titulo": "Título de la historia",
|
|
53
|
+
"descripcion": "Como...",
|
|
54
|
+
"criteriosAceptacion": ["Criterio 1", "Criterio 2"],
|
|
55
|
+
"prioridad": 1,
|
|
56
|
+
"pasa": false,
|
|
57
|
+
"notas": ""
|
|
58
|
+
}
|
|
59
|
+
]
|
|
60
|
+
}
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
## Output
|
|
64
|
+
|
|
65
|
+
```
|
|
66
|
+
Historias generadas: 5
|
|
67
|
+
Archivo: .especdev/sesion/prd.json
|
|
68
|
+
|
|
69
|
+
HU-001 [P1] Título historia 1
|
|
70
|
+
HU-002 [P2] Título historia 2
|
|
71
|
+
...
|
|
72
|
+
|
|
73
|
+
Ejecuta /bucle para implementar las historias.
|
|
74
|
+
```
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Análisis de causa raíz preguntando "¿por qué?" repetidamente hasta llegar al origen del problema.
|
|
3
|
+
i18n: true
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# /razonar:5-porques
|
|
7
|
+
|
|
8
|
+
Análisis de causa raíz preguntando "¿por qué?" repetidamente hasta llegar al origen del problema.
|
|
9
|
+
|
|
10
|
+
## Uso
|
|
11
|
+
|
|
12
|
+
```
|
|
13
|
+
/razonar:5-porques [problema]
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
## Proceso
|
|
17
|
+
|
|
18
|
+
1. Plantear el problema
|
|
19
|
+
2. Preguntar "¿Por qué?" → Respuesta 1
|
|
20
|
+
3. Preguntar "¿Por qué?" sobre la respuesta → Respuesta 2
|
|
21
|
+
4. Repetir hasta llegar a la causa raíz (usualmente 5 niveles)
|
|
22
|
+
5. Proponer solución a la causa raíz
|
|
23
|
+
|
|
24
|
+
## Ejemplo
|
|
25
|
+
|
|
26
|
+
```
|
|
27
|
+
/razonar:5-porques "Los tests fallan intermitentemente"
|
|
28
|
+
|
|
29
|
+
¿Por qué? → Condición de carrera
|
|
30
|
+
¿Por qué? → Estado compartido entre tests
|
|
31
|
+
¿Por qué? → Singleton global
|
|
32
|
+
¿Por qué? → Diseño legacy sin revisión
|
|
33
|
+
¿Por qué? → No hay proceso de revisión arquitectónica
|
|
34
|
+
|
|
35
|
+
→ Causa raíz: problema de PROCESO, no solo de código
|
|
36
|
+
→ Solución: Implementar revisión arquitectónica + refactorizar singleton
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
## Combina bien con
|
|
40
|
+
|
|
41
|
+
- `/razonar:primeros-principios`
|
|
42
|
+
- `/razonar:pre-mortem`
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Conocer tus límites. Distinguir entre lo que conoces profundamente y lo que solo conoces superficialmente.
|
|
3
|
+
i18n: true
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# /razonar:circulo-competencia
|
|
7
|
+
|
|
8
|
+
Conocer tus límites. Distinguir entre lo que conoces profundamente y lo que solo conoces superficialmente.
|
|
9
|
+
|
|
10
|
+
## Uso
|
|
11
|
+
|
|
12
|
+
```
|
|
13
|
+
/razonar:circulo-competencia [área/decisión]
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
## Proceso
|
|
17
|
+
|
|
18
|
+
1. **Definir** el área de decisión
|
|
19
|
+
2. **Evaluar** honestamente: ¿es mi área de competencia?
|
|
20
|
+
3. **Si SÍ**: Decidir con confianza
|
|
21
|
+
4. **Si NO**: Buscar experto o investigar antes de decidir
|
|
22
|
+
5. **Documentar** los límites para futuras decisiones
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Evaluar el costo de NO elegir las alternativas. Cada decisión tiene un costo oculto.
|
|
3
|
+
i18n: true
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# /razonar:costo-oportunidad
|
|
7
|
+
|
|
8
|
+
Evaluar el costo de NO elegir las alternativas. Cada decisión tiene un costo oculto.
|
|
9
|
+
|
|
10
|
+
## Uso
|
|
11
|
+
|
|
12
|
+
```
|
|
13
|
+
/razonar:costo-oportunidad [opciones]
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
## Proceso
|
|
17
|
+
|
|
18
|
+
1. Listar todas las opciones disponibles
|
|
19
|
+
2. Para cada opción: ¿qué GANO y qué PIERDO?
|
|
20
|
+
3. Evaluar el costo de la mejor alternativa NO elegida
|
|
21
|
+
4. Decidir si el beneficio supera el costo de oportunidad
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Resolver un problema pensando al revés: ¿cómo GARANTIZARÍAMOS el fracaso?
|
|
3
|
+
i18n: true
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# /razonar:inversion
|
|
7
|
+
|
|
8
|
+
Resolver un problema pensando al revés: ¿cómo GARANTIZARÍAMOS el fracaso?
|
|
9
|
+
|
|
10
|
+
## Uso
|
|
11
|
+
|
|
12
|
+
```
|
|
13
|
+
/razonar:inversion [objetivo]
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
## Proceso
|
|
17
|
+
|
|
18
|
+
1. **Definir** el objetivo deseado
|
|
19
|
+
2. **Invertir**: ¿Cómo garantizaríamos el fracaso?
|
|
20
|
+
3. **Listar** todas las formas de fallar
|
|
21
|
+
4. **Invertir** cada fallo → acción preventiva
|
|
22
|
+
5. **Priorizar** acciones preventivas
|
|
23
|
+
|
|
24
|
+
## Ejemplo
|
|
25
|
+
|
|
26
|
+
```
|
|
27
|
+
/razonar:inversion "Lanzamiento exitoso de v2.0"
|
|
28
|
+
|
|
29
|
+
¿Cómo GARANTIZAR que el lanzamiento falle?
|
|
30
|
+
- No hacer tests de regresión
|
|
31
|
+
- Desplegar un viernes a las 6pm
|
|
32
|
+
- No tener plan de rollback
|
|
33
|
+
- Ignorar feedback de beta testers
|
|
34
|
+
|
|
35
|
+
→ Inversión = nuestro plan:
|
|
36
|
+
- Tests de regresión obligatorios
|
|
37
|
+
- Desplegar martes a las 10am
|
|
38
|
+
- Plan de rollback documentado
|
|
39
|
+
- Ciclo de beta testing
|
|
40
|
+
```
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Distinguir entre el modelo (mapa) y la realidad (territorio). El mapa NO es el territorio.
|
|
3
|
+
i18n: true
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# /razonar:mapa-territorio
|
|
7
|
+
|
|
8
|
+
Distinguir entre el modelo (mapa) y la realidad (territorio). El mapa NO es el territorio.
|
|
9
|
+
|
|
10
|
+
## Uso
|
|
11
|
+
|
|
12
|
+
```
|
|
13
|
+
/razonar:mapa-territorio [situación]
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
## Proceso
|
|
17
|
+
|
|
18
|
+
1. **Identificar** el modelo/mapa que estás usando
|
|
19
|
+
2. **Preguntar**: ¿Dónde podría diferir de la realidad?
|
|
20
|
+
3. **Buscar** evidencia directa del territorio (datos reales)
|
|
21
|
+
4. **Ajustar** el mapa donde sea necesario
|
|
22
|
+
5. **Recordar**: todo modelo es una simplificación
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Tomar decisiones pensando en lo que minimizará el arrepentimiento a largo plazo.
|
|
3
|
+
i18n: true
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# /razonar:minimizar-arrepentimiento
|
|
7
|
+
|
|
8
|
+
Tomar decisiones pensando en lo que minimizará el arrepentimiento a largo plazo.
|
|
9
|
+
|
|
10
|
+
## Uso
|
|
11
|
+
|
|
12
|
+
```
|
|
13
|
+
/razonar:minimizar-arrepentimiento [decisión]
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
## Proceso
|
|
17
|
+
|
|
18
|
+
1. Imagínate a los 80 años mirando hacia atrás
|
|
19
|
+
2. ¿De cuál opción te arrepentirías más de NO haber tomado?
|
|
20
|
+
3. Elegir la opción que minimiza el arrepentimiento futuro
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Aplicar el principio 80/20: enfocarse en el 20% que produce el 80% de los resultados.
|
|
3
|
+
i18n: true
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# /razonar:pareto
|
|
7
|
+
|
|
8
|
+
Aplicar el principio 80/20: enfocarse en el 20% que produce el 80% de los resultados.
|
|
9
|
+
|
|
10
|
+
## Uso
|
|
11
|
+
|
|
12
|
+
```
|
|
13
|
+
/razonar:pareto [contexto]
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
## Proceso
|
|
17
|
+
|
|
18
|
+
1. **Listar** todos los elementos (features, bugs, tareas)
|
|
19
|
+
2. **Evaluar** el impacto de cada uno
|
|
20
|
+
3. **Ordenar** por impacto descendente
|
|
21
|
+
4. **Identificar** el 20% de mayor impacto
|
|
22
|
+
5. **Enfocar** recursos en ese 20%
|
|
23
|
+
|
|
24
|
+
## Ejemplo
|
|
25
|
+
|
|
26
|
+
```
|
|
27
|
+
/razonar:pareto "20 features solicitadas"
|
|
28
|
+
|
|
29
|
+
→ ¿Cuáles 20% entregarán 80% del valor?
|
|
30
|
+
→ Enfocarse en 4 features de alto impacto
|
|
31
|
+
→ Las 16 restantes pueden esperar
|
|
32
|
+
```
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Anticipar el fracaso ANTES de que ocurra. Imaginar que el proyecto ya falló y analizar por qué.
|
|
3
|
+
i18n: true
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# /razonar:pre-mortem
|
|
7
|
+
|
|
8
|
+
Anticipar el fracaso ANTES de que ocurra. Imaginar que el proyecto ya falló y analizar por qué.
|
|
9
|
+
|
|
10
|
+
## Uso
|
|
11
|
+
|
|
12
|
+
```
|
|
13
|
+
/razonar:pre-mortem [proyecto/decisión]
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
## Proceso
|
|
17
|
+
|
|
18
|
+
1. **Imaginar** que el proyecto ya falló completamente
|
|
19
|
+
2. **Preguntar**: "¿Por qué falló?"
|
|
20
|
+
3. **Listar** todas las causas posibles
|
|
21
|
+
4. **Evaluar** probabilidad e impacto de cada una
|
|
22
|
+
5. **Crear** plan de mitigación para las más probables
|
|
@@ -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
|