theus-cli-darwin-x64 0.2.84
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/LICENSE +42 -0
- package/README.md +295 -0
- package/RELEASE.json +18 -0
- package/assets/brand-official/v1.0/logo/theus-lockup-negative-official.png +0 -0
- package/assets/brand-official/v1.0/logo/theus-lockup-primary-dark-official.png +0 -0
- package/assets/fonts/satoshi/satoshi-300.woff2 +0 -0
- package/assets/fonts/satoshi/satoshi-400.woff2 +0 -0
- package/assets/fonts/satoshi/satoshi-500.woff2 +0 -0
- package/assets/fonts/satoshi/satoshi-700.woff2 +0 -0
- package/assets/fonts/satoshi/satoshi-900.woff2 +0 -0
- package/assets/windows-store/Square150x150Logo.png +0 -0
- package/assets/windows-store/Square44x44Logo.png +0 -0
- package/assets/windows-store/StoreLogo.png +0 -0
- package/assets/windows-store/theus-store-icon-master.png +0 -0
- package/bin/theus +0 -0
- package/package.json +18 -0
- package/vendor/theus-arsenal/.arsenal-nombres-ola2.json +6 -0
- package/vendor/theus-arsenal/.arsenal-nombres-ola3.json +72 -0
- package/vendor/theus-arsenal/.mailmap +2 -0
- package/vendor/theus-arsenal/.theus-plugin/marketplace.json +25 -0
- package/vendor/theus-arsenal/.theus-plugin/plugin.json +20 -0
- package/vendor/theus-arsenal/AUTHORS.md +8 -0
- package/vendor/theus-arsenal/CLEANROOM_REPLACEMENT_PLAN.md +11 -0
- package/vendor/theus-arsenal/LICENSE +26 -0
- package/vendor/theus-arsenal/PROVENANCE.md +9 -0
- package/vendor/theus-arsenal/README.md +41 -0
- package/vendor/theus-arsenal/THIRD_PARTY.md +80 -0
- package/vendor/theus-arsenal/agents/actualizador-docs.md +123 -0
- package/vendor/theus-arsenal/agents/analista-comentarios.md +53 -0
- package/vendor/theus-arsenal/agents/analista-conversaciones.md +60 -0
- package/vendor/theus-arsenal/agents/analista-tests-pr.md +53 -0
- package/vendor/theus-arsenal/agents/analista-tipos.md +49 -0
- package/vendor/theus-arsenal/agents/arquitecto-accesibilidad.md +148 -0
- package/vendor/theus-arsenal/agents/arquitecto-codigo.md +79 -0
- package/vendor/theus-arsenal/agents/arquitecto-homelab.md +90 -0
- package/vendor/theus-arsenal/agents/arquitecto-redes.md +116 -0
- package/vendor/theus-arsenal/agents/arquitecto-sistemas.md +219 -0
- package/vendor/theus-arsenal/agents/bifurcador-opensource.md +206 -0
- package/vendor/theus-arsenal/agents/cazador-fallos-silenciosos.md +58 -0
- package/vendor/theus-arsenal/agents/consultor-documentacion.md +76 -0
- package/vendor/theus-arsenal/agents/diagnosticador-redes.md +135 -0
- package/vendor/theus-arsenal/agents/ejecutor-e2e.md +96 -0
- package/vendor/theus-arsenal/agents/empaquetador-opensource.md +257 -0
- package/vendor/theus-arsenal/agents/escaner-secretos.md +196 -0
- package/vendor/theus-arsenal/agents/especialista-seo.md +70 -0
- package/vendor/theus-arsenal/agents/estratega-marketing.md +158 -0
- package/vendor/theus-arsenal/agents/evaluador-agentes.md +214 -0
- package/vendor/theus-arsenal/agents/evaluador-harness.md +217 -0
- package/vendor/theus-arsenal/agents/explorador-codigo.md +79 -0
- package/vendor/theus-arsenal/agents/extractor-specs.md +214 -0
- package/vendor/theus-arsenal/agents/generador-harness.md +139 -0
- package/vendor/theus-arsenal/agents/guia-tdd.md +99 -0
- package/vendor/theus-arsenal/agents/jefe-de-gabinete.md +162 -0
- package/vendor/theus-arsenal/agents/limpiador-refactors.md +93 -0
- package/vendor/theus-arsenal/agents/optimizador-rendimiento.md +454 -0
- package/vendor/theus-arsenal/agents/planificador-harness.md +107 -0
- package/vendor/theus-arsenal/agents/planificador.md +221 -0
- package/vendor/theus-arsenal/agents/resolutor-apps-harmonyos.md +181 -0
- package/vendor/theus-arsenal/agents/resolutor-builds-cpp.md +98 -0
- package/vendor/theus-arsenal/agents/resolutor-builds-dart.md +209 -0
- package/vendor/theus-arsenal/agents/resolutor-builds-django.md +253 -0
- package/vendor/theus-arsenal/agents/resolutor-builds-go.md +102 -0
- package/vendor/theus-arsenal/agents/resolutor-builds-java.md +274 -0
- package/vendor/theus-arsenal/agents/resolutor-builds-kotlin.md +128 -0
- package/vendor/theus-arsenal/agents/resolutor-builds-pytorch.md +128 -0
- package/vendor/theus-arsenal/agents/resolutor-builds-react.md +214 -0
- package/vendor/theus-arsenal/agents/resolutor-builds-rust.md +156 -0
- package/vendor/theus-arsenal/agents/resolutor-builds-swift.md +169 -0
- package/vendor/theus-arsenal/agents/resolutor-builds.md +122 -0
- package/vendor/theus-arsenal/agents/revisor-bd.md +97 -0
- package/vendor/theus-arsenal/agents/revisor-codigo.md +291 -0
- package/vendor/theus-arsenal/agents/revisor-config-red.md +116 -0
- package/vendor/theus-arsenal/agents/revisor-cpp.md +80 -0
- package/vendor/theus-arsenal/agents/revisor-csharp.md +109 -0
- package/vendor/theus-arsenal/agents/revisor-django.md +168 -0
- package/vendor/theus-arsenal/agents/revisor-fastapi.md +82 -0
- package/vendor/theus-arsenal/agents/revisor-flutter.md +251 -0
- package/vendor/theus-arsenal/agents/revisor-go.md +84 -0
- package/vendor/theus-arsenal/agents/revisor-java.md +192 -0
- package/vendor/theus-arsenal/agents/revisor-kotlin.md +171 -0
- package/vendor/theus-arsenal/agents/revisor-ml.md +159 -0
- package/vendor/theus-arsenal/agents/revisor-php.md +108 -0
- package/vendor/theus-arsenal/agents/revisor-python.md +106 -0
- package/vendor/theus-arsenal/agents/revisor-react.md +166 -0
- package/vendor/theus-arsenal/agents/revisor-rust.md +102 -0
- package/vendor/theus-arsenal/agents/revisor-seguridad.md +116 -0
- package/vendor/theus-arsenal/agents/revisor-software-clinico.md +95 -0
- package/vendor/theus-arsenal/agents/revisor-swift.md +115 -0
- package/vendor/theus-arsenal/agents/revisor-typescript.md +123 -0
- package/vendor/theus-arsenal/agents/revisor-vue.md +205 -0
- package/vendor/theus-arsenal/agents/simplificador-codigo.md +55 -0
- package/vendor/theus-arsenal/commands/actualizar-docs.md +88 -0
- package/vendor/theus-arsenal/commands/actualizar-mapas-codigo.md +78 -0
- package/vendor/theus-arsenal/commands/aprender-evaluar.md +109 -0
- package/vendor/theus-arsenal/commands/aprender.md +74 -0
- package/vendor/theus-arsenal/commands/arreglar-build.md +66 -0
- package/vendor/theus-arsenal/commands/bucle-multiperspectiva.md +153 -0
- package/vendor/theus-arsenal/commands/build-cpp.md +173 -0
- package/vendor/theus-arsenal/commands/build-flutter.md +164 -0
- package/vendor/theus-arsenal/commands/build-go.md +183 -0
- package/vendor/theus-arsenal/commands/build-gradle.md +75 -0
- package/vendor/theus-arsenal/commands/build-kotlin.md +176 -0
- package/vendor/theus-arsenal/commands/build-react.md +187 -0
- package/vendor/theus-arsenal/commands/build-rust.md +187 -0
- package/vendor/theus-arsenal/commands/campana-marketing.md +125 -0
- package/vendor/theus-arsenal/commands/checkpoint.md +78 -0
- package/vendor/theus-arsenal/commands/cobertura-tests.md +73 -0
- package/vendor/theus-arsenal/commands/configurar-gestor-paquetes.md +86 -0
- package/vendor/theus-arsenal/commands/consulta.md +164 -0
- package/vendor/theus-arsenal/commands/control-calidad.md +50 -0
- package/vendor/theus-arsenal/commands/crear-skill.md +77 -0
- package/vendor/theus-arsenal/commands/enrutar-modelo.md +30 -0
- package/vendor/theus-arsenal/commands/epica-desbloquear.md +17 -0
- package/vendor/theus-arsenal/commands/epica-descomponer.md +22 -0
- package/vendor/theus-arsenal/commands/epica-publicar.md +21 -0
- package/vendor/theus-arsenal/commands/epica-reclamar.md +25 -0
- package/vendor/theus-arsenal/commands/epica-revisar.md +22 -0
- package/vendor/theus-arsenal/commands/epica-sincronizar.md +21 -0
- package/vendor/theus-arsenal/commands/epica-validar.md +21 -0
- package/vendor/theus-arsenal/commands/evolucionar.md +176 -0
- package/vendor/theus-arsenal/commands/funcionalidad.md +49 -0
- package/vendor/theus-arsenal/commands/guardar-sesion.md +278 -0
- package/vendor/theus-arsenal/commands/harness-build.md +111 -0
- package/vendor/theus-arsenal/commands/harness-diseno.md +46 -0
- package/vendor/theus-arsenal/commands/informe-costos.md +90 -0
- package/vendor/theus-arsenal/commands/iniciar-bucle.md +36 -0
- package/vendor/theus-arsenal/commands/instintos-estado.md +53 -0
- package/vendor/theus-arsenal/commands/instintos-exportar.md +69 -0
- package/vendor/theus-arsenal/commands/instintos-importar.md +120 -0
- package/vendor/theus-arsenal/commands/lienzo-planes.md +48 -0
- package/vendor/theus-arsenal/commands/limpiar-refactor.md +84 -0
- package/vendor/theus-arsenal/commands/modo-seguro.md +96 -0
- package/vendor/theus-arsenal/commands/orq-agregar-funcionalidad.md +36 -0
- package/vendor/theus-arsenal/commands/orq-cambiar-funcionalidad.md +38 -0
- package/vendor/theus-arsenal/commands/orq-construir-mvp.md +36 -0
- package/vendor/theus-arsenal/commands/orq-corregir-defecto.md +40 -0
- package/vendor/theus-arsenal/commands/orq-refinar-codigo.md +44 -0
- package/vendor/theus-arsenal/commands/orq-revisar.md +135 -0
- package/vendor/theus-arsenal/commands/plan-prd.md +160 -0
- package/vendor/theus-arsenal/commands/plan.md +198 -0
- package/vendor/theus-arsenal/commands/podar.md +31 -0
- package/vendor/theus-arsenal/commands/pr.md +181 -0
- package/vendor/theus-arsenal/commands/promover.md +41 -0
- package/vendor/theus-arsenal/commands/proyectos.md +33 -0
- package/vendor/theus-arsenal/commands/prp-commit.md +112 -0
- package/vendor/theus-arsenal/commands/prp-implementar.md +385 -0
- package/vendor/theus-arsenal/commands/prp-planificar.md +501 -0
- package/vendor/theus-arsenal/commands/reanudar-sesion.md +160 -0
- package/vendor/theus-arsenal/commands/revisar-codigo.md +289 -0
- package/vendor/theus-arsenal/commands/revisar-cpp.md +132 -0
- package/vendor/theus-arsenal/commands/revisar-fastapi.md +39 -0
- package/vendor/theus-arsenal/commands/revisar-flutter.md +115 -0
- package/vendor/theus-arsenal/commands/revisar-go.md +148 -0
- package/vendor/theus-arsenal/commands/revisar-kotlin.md +140 -0
- package/vendor/theus-arsenal/commands/revisar-pr.md +37 -0
- package/vendor/theus-arsenal/commands/revisar-python.md +297 -0
- package/vendor/theus-arsenal/commands/revisar-react.md +170 -0
- package/vendor/theus-arsenal/commands/revisar-rust.md +142 -0
- package/vendor/theus-arsenal/commands/revisar-vue.md +174 -0
- package/vendor/theus-arsenal/commands/salud-skills.md +52 -0
- package/vendor/theus-arsenal/commands/sesiones.md +345 -0
- package/vendor/theus-arsenal/commands/test-cpp.md +252 -0
- package/vendor/theus-arsenal/commands/test-flutter.md +143 -0
- package/vendor/theus-arsenal/commands/test-go.md +268 -0
- package/vendor/theus-arsenal/commands/test-kotlin.md +312 -0
- package/vendor/theus-arsenal/commands/test-react.md +265 -0
- package/vendor/theus-arsenal/commands/test-rust.md +309 -0
- package/vendor/theus-arsenal/commands/vigilancia-canary.md +43 -0
- package/vendor/theus-arsenal/hooks/hooks.json +274 -0
- package/vendor/theus-arsenal/package.json +6 -0
- package/vendor/theus-arsenal/rules/angular/coding-style.md +182 -0
- package/vendor/theus-arsenal/rules/angular/hooks.md +25 -0
- package/vendor/theus-arsenal/rules/angular/patterns.md +249 -0
- package/vendor/theus-arsenal/rules/angular/security.md +87 -0
- package/vendor/theus-arsenal/rules/angular/testing.md +164 -0
- package/vendor/theus-arsenal/rules/arkts/coding-style.md +153 -0
- package/vendor/theus-arsenal/rules/arkts/hooks.md +80 -0
- package/vendor/theus-arsenal/rules/arkts/patterns.md +236 -0
- package/vendor/theus-arsenal/rules/arkts/security.md +141 -0
- package/vendor/theus-arsenal/rules/arkts/testing.md +126 -0
- package/vendor/theus-arsenal/rules/common/agents.md +49 -0
- package/vendor/theus-arsenal/rules/common/code-review.md +123 -0
- package/vendor/theus-arsenal/rules/common/coding-style.md +90 -0
- package/vendor/theus-arsenal/rules/common/development-workflow.md +44 -0
- package/vendor/theus-arsenal/rules/common/git-workflow.md +24 -0
- package/vendor/theus-arsenal/rules/common/hooks.md +32 -0
- package/vendor/theus-arsenal/rules/common/patterns.md +31 -0
- package/vendor/theus-arsenal/rules/common/performance.md +53 -0
- package/vendor/theus-arsenal/rules/common/security.md +29 -0
- package/vendor/theus-arsenal/rules/common/testing.md +57 -0
- package/vendor/theus-arsenal/rules/cpp/coding-style.md +44 -0
- package/vendor/theus-arsenal/rules/cpp/hooks.md +39 -0
- package/vendor/theus-arsenal/rules/cpp/patterns.md +51 -0
- package/vendor/theus-arsenal/rules/cpp/security.md +51 -0
- package/vendor/theus-arsenal/rules/cpp/testing.md +44 -0
- package/vendor/theus-arsenal/rules/csharp/coding-style.md +72 -0
- package/vendor/theus-arsenal/rules/csharp/hooks.md +25 -0
- package/vendor/theus-arsenal/rules/csharp/patterns.md +50 -0
- package/vendor/theus-arsenal/rules/csharp/security.md +58 -0
- package/vendor/theus-arsenal/rules/csharp/testing.md +50 -0
- package/vendor/theus-arsenal/rules/dart/coding-style.md +159 -0
- package/vendor/theus-arsenal/rules/dart/hooks.md +68 -0
- package/vendor/theus-arsenal/rules/dart/patterns.md +261 -0
- package/vendor/theus-arsenal/rules/dart/security.md +135 -0
- package/vendor/theus-arsenal/rules/dart/testing.md +215 -0
- package/vendor/theus-arsenal/rules/fsharp/coding-style.md +112 -0
- package/vendor/theus-arsenal/rules/fsharp/hooks.md +26 -0
- package/vendor/theus-arsenal/rules/fsharp/patterns.md +111 -0
- package/vendor/theus-arsenal/rules/fsharp/security.md +76 -0
- package/vendor/theus-arsenal/rules/fsharp/testing.md +62 -0
- package/vendor/theus-arsenal/rules/golang/coding-style.md +32 -0
- package/vendor/theus-arsenal/rules/golang/hooks.md +17 -0
- package/vendor/theus-arsenal/rules/golang/patterns.md +45 -0
- package/vendor/theus-arsenal/rules/golang/security.md +34 -0
- package/vendor/theus-arsenal/rules/golang/testing.md +31 -0
- package/vendor/theus-arsenal/rules/java/coding-style.md +114 -0
- package/vendor/theus-arsenal/rules/java/hooks.md +18 -0
- package/vendor/theus-arsenal/rules/java/patterns.md +147 -0
- package/vendor/theus-arsenal/rules/java/security.md +101 -0
- package/vendor/theus-arsenal/rules/java/testing.md +133 -0
- package/vendor/theus-arsenal/rules/kotlin/coding-style.md +86 -0
- package/vendor/theus-arsenal/rules/kotlin/hooks.md +17 -0
- package/vendor/theus-arsenal/rules/kotlin/patterns.md +146 -0
- package/vendor/theus-arsenal/rules/kotlin/security.md +82 -0
- package/vendor/theus-arsenal/rules/kotlin/testing.md +128 -0
- package/vendor/theus-arsenal/rules/nuxt/coding-style.md +47 -0
- package/vendor/theus-arsenal/rules/nuxt/hooks.md +39 -0
- package/vendor/theus-arsenal/rules/nuxt/patterns.md +54 -0
- package/vendor/theus-arsenal/rules/nuxt/security.md +48 -0
- package/vendor/theus-arsenal/rules/nuxt/testing.md +49 -0
- package/vendor/theus-arsenal/rules/php/coding-style.md +40 -0
- package/vendor/theus-arsenal/rules/php/hooks.md +24 -0
- package/vendor/theus-arsenal/rules/php/patterns.md +33 -0
- package/vendor/theus-arsenal/rules/php/security.md +37 -0
- package/vendor/theus-arsenal/rules/php/testing.md +38 -0
- package/vendor/theus-arsenal/rules/python/coding-style.md +42 -0
- package/vendor/theus-arsenal/rules/python/fastapi.md +58 -0
- package/vendor/theus-arsenal/rules/python/hooks.md +19 -0
- package/vendor/theus-arsenal/rules/python/patterns.md +39 -0
- package/vendor/theus-arsenal/rules/python/security.md +30 -0
- package/vendor/theus-arsenal/rules/python/testing.md +38 -0
- package/vendor/theus-arsenal/rules/react/coding-style.md +109 -0
- package/vendor/theus-arsenal/rules/react/hooks.md +187 -0
- package/vendor/theus-arsenal/rules/react/patterns.md +194 -0
- package/vendor/theus-arsenal/rules/react/security.md +180 -0
- package/vendor/theus-arsenal/rules/react/testing.md +208 -0
- package/vendor/theus-arsenal/rules/react-native/accessibility.md +55 -0
- package/vendor/theus-arsenal/rules/react-native/coding-style.md +71 -0
- package/vendor/theus-arsenal/rules/react-native/hooks.md +28 -0
- package/vendor/theus-arsenal/rules/react-native/patterns.md +88 -0
- package/vendor/theus-arsenal/rules/react-native/performance.md +45 -0
- package/vendor/theus-arsenal/rules/react-native/production-readiness.md +51 -0
- package/vendor/theus-arsenal/rules/react-native/security.md +43 -0
- package/vendor/theus-arsenal/rules/react-native/testing.md +52 -0
- package/vendor/theus-arsenal/rules/ruby/coding-style.md +46 -0
- package/vendor/theus-arsenal/rules/ruby/hooks.md +37 -0
- package/vendor/theus-arsenal/rules/ruby/patterns.md +44 -0
- package/vendor/theus-arsenal/rules/ruby/security.md +51 -0
- package/vendor/theus-arsenal/rules/ruby/testing.md +51 -0
- package/vendor/theus-arsenal/rules/rust/coding-style.md +151 -0
- package/vendor/theus-arsenal/rules/rust/hooks.md +16 -0
- package/vendor/theus-arsenal/rules/rust/patterns.md +168 -0
- package/vendor/theus-arsenal/rules/rust/security.md +141 -0
- package/vendor/theus-arsenal/rules/rust/testing.md +154 -0
- package/vendor/theus-arsenal/rules/swift/coding-style.md +47 -0
- package/vendor/theus-arsenal/rules/swift/hooks.md +20 -0
- package/vendor/theus-arsenal/rules/swift/patterns.md +66 -0
- package/vendor/theus-arsenal/rules/swift/security.md +33 -0
- package/vendor/theus-arsenal/rules/swift/testing.md +45 -0
- package/vendor/theus-arsenal/rules/typescript/coding-style.md +199 -0
- package/vendor/theus-arsenal/rules/typescript/hooks.md +22 -0
- package/vendor/theus-arsenal/rules/typescript/patterns.md +52 -0
- package/vendor/theus-arsenal/rules/typescript/security.md +28 -0
- package/vendor/theus-arsenal/rules/typescript/testing.md +18 -0
- package/vendor/theus-arsenal/rules/vue/coding-style.md +54 -0
- package/vendor/theus-arsenal/rules/vue/hooks.md +45 -0
- package/vendor/theus-arsenal/rules/vue/patterns.md +56 -0
- package/vendor/theus-arsenal/rules/vue/security.md +46 -0
- package/vendor/theus-arsenal/rules/vue/testing.md +53 -0
- package/vendor/theus-arsenal/rules/web/coding-style.md +108 -0
- package/vendor/theus-arsenal/rules/web/design-quality.md +75 -0
- package/vendor/theus-arsenal/rules/web/hooks.md +141 -0
- package/vendor/theus-arsenal/rules/web/patterns.md +91 -0
- package/vendor/theus-arsenal/rules/web/performance.md +76 -0
- package/vendor/theus-arsenal/rules/web/security.md +69 -0
- package/vendor/theus-arsenal/rules/web/testing.md +67 -0
- package/vendor/theus-arsenal/scripts/hooks/bash-hook-dispatcher.js +192 -0
- package/vendor/theus-arsenal/scripts/hooks/block-no-verify.js +556 -0
- package/vendor/theus-arsenal/scripts/hooks/check-console-log.js +92 -0
- package/vendor/theus-arsenal/scripts/hooks/check-hook-enabled.js +16 -0
- package/vendor/theus-arsenal/scripts/hooks/config-protection.js +171 -0
- package/vendor/theus-arsenal/scripts/hooks/design-quality-check.js +132 -0
- package/vendor/theus-arsenal/scripts/hooks/doc-file-warning.js +110 -0
- package/vendor/theus-arsenal/scripts/hooks/modo-seguro.js +158 -0
- package/vendor/theus-arsenal/scripts/hooks/notificacion-escritorio.js +208 -0
- package/vendor/theus-arsenal/scripts/hooks/plugin-hook-bootstrap.js +280 -0
- package/vendor/theus-arsenal/scripts/hooks/post-bash-command-log.js +87 -0
- package/vendor/theus-arsenal/scripts/hooks/post-bash-dispatcher.js +24 -0
- package/vendor/theus-arsenal/scripts/hooks/post-bash-pr-created.js +60 -0
- package/vendor/theus-arsenal/scripts/hooks/post-edit-accumulator.js +94 -0
- package/vendor/theus-arsenal/scripts/hooks/post-edit-console-warn.js +54 -0
- package/vendor/theus-arsenal/scripts/hooks/post-edit-format.js +110 -0
- package/vendor/theus-arsenal/scripts/hooks/post-edit-typecheck.js +98 -0
- package/vendor/theus-arsenal/scripts/hooks/pre-bash-commit-quality.js +447 -0
- package/vendor/theus-arsenal/scripts/hooks/pre-bash-dev-server-block.js +232 -0
- package/vendor/theus-arsenal/scripts/hooks/pre-bash-dispatcher.js +27 -0
- package/vendor/theus-arsenal/scripts/hooks/pre-compact.js +101 -0
- package/vendor/theus-arsenal/scripts/hooks/pretooluse-visible-output.js +49 -0
- package/vendor/theus-arsenal/scripts/hooks/quality-gate.js +168 -0
- package/vendor/theus-arsenal/scripts/hooks/run-with-flags.js +271 -0
- package/vendor/theus-arsenal/scripts/hooks/salud-mcp.js +749 -0
- package/vendor/theus-arsenal/scripts/hooks/seguimiento-costos.js +161 -0
- package/vendor/theus-arsenal/scripts/hooks/session-end.js +340 -0
- package/vendor/theus-arsenal/scripts/hooks/session-start.js +906 -0
- package/vendor/theus-arsenal/scripts/hooks/stop-format-typecheck.js +263 -0
- package/vendor/theus-arsenal/scripts/hooks/suggest-compact.js +286 -0
- package/vendor/theus-arsenal/scripts/hooks/theus-context-monitor.js +289 -0
- package/vendor/theus-arsenal/scripts/hooks/verificacion-factual.js +1278 -0
- package/vendor/theus-arsenal/scripts/lib/agent-data-home.js +96 -0
- package/vendor/theus-arsenal/scripts/lib/cost-estimate.js +66 -0
- package/vendor/theus-arsenal/scripts/lib/hook-flags.js +79 -0
- package/vendor/theus-arsenal/scripts/lib/llm-summary.js +185 -0
- package/vendor/theus-arsenal/scripts/lib/loopback-guard.js +54 -0
- package/vendor/theus-arsenal/scripts/lib/observer-sessions.js +237 -0
- package/vendor/theus-arsenal/scripts/lib/package-manager.d.ts +120 -0
- package/vendor/theus-arsenal/scripts/lib/package-manager.js +434 -0
- package/vendor/theus-arsenal/scripts/lib/path-safety.js +86 -0
- package/vendor/theus-arsenal/scripts/lib/plan-canvas/markdown.js +285 -0
- package/vendor/theus-arsenal/scripts/lib/plan-canvas/sdk.js +238 -0
- package/vendor/theus-arsenal/scripts/lib/plan-canvas/server.js +534 -0
- package/vendor/theus-arsenal/scripts/lib/plan-canvas/sessions.js +274 -0
- package/vendor/theus-arsenal/scripts/lib/plan-canvas/ui.js +546 -0
- package/vendor/theus-arsenal/scripts/lib/project-detect.js +451 -0
- package/vendor/theus-arsenal/scripts/lib/resolve-formatter.js +193 -0
- package/vendor/theus-arsenal/scripts/lib/resolve-theus-root.js +101 -0
- package/vendor/theus-arsenal/scripts/lib/session-aliases.d.ts +138 -0
- package/vendor/theus-arsenal/scripts/lib/session-aliases.js +483 -0
- package/vendor/theus-arsenal/scripts/lib/session-bridge.js +155 -0
- package/vendor/theus-arsenal/scripts/lib/session-manager.d.ts +137 -0
- package/vendor/theus-arsenal/scripts/lib/session-manager.js +555 -0
- package/vendor/theus-arsenal/scripts/lib/shell-split.js +86 -0
- package/vendor/theus-arsenal/scripts/lib/shell-substitution.js +501 -0
- package/vendor/theus-arsenal/scripts/lib/skill-evolution/dashboard.js +414 -0
- package/vendor/theus-arsenal/scripts/lib/skill-evolution/health.js +285 -0
- package/vendor/theus-arsenal/scripts/lib/skill-evolution/index.js +22 -0
- package/vendor/theus-arsenal/scripts/lib/skill-evolution/provenance.js +200 -0
- package/vendor/theus-arsenal/scripts/lib/skill-evolution/tracker.js +157 -0
- package/vendor/theus-arsenal/scripts/lib/skill-evolution/versioning.js +246 -0
- package/vendor/theus-arsenal/scripts/lib/transcript-context.js +232 -0
- package/vendor/theus-arsenal/scripts/lib/utils.d.ts +205 -0
- package/vendor/theus-arsenal/scripts/lib/utils.js +658 -0
- package/vendor/theus-arsenal/scripts/plan-canvas.js +341 -0
- package/vendor/theus-arsenal/scripts/setup-package-manager.js +46 -0
- package/vendor/theus-arsenal/scripts/skills-health.js +143 -0
- package/vendor/theus-arsenal/skills/a11y-frontend/SKILL.md +444 -0
- package/vendor/theus-arsenal/skills/accesibilidad/SKILL.md +144 -0
- package/vendor/theus-arsenal/skills/acelerador-throughput-datos/SKILL.md +72 -0
- package/vendor/theus-arsenal/skills/agente-scraper-datos/SKILL.md +771 -0
- package/vendor/theus-arsenal/skills/analisis-plataformas-competencia/SKILL.md +137 -0
- package/vendor/theus-arsenal/skills/api-x/SKILL.md +233 -0
- package/vendor/theus-arsenal/skills/aprendizaje-continuo-v2/SKILL.md +335 -0
- package/vendor/theus-arsenal/skills/aprendizaje-continuo-v2/agents/observer-loop.sh +374 -0
- package/vendor/theus-arsenal/skills/aprendizaje-continuo-v2/agents/observer.md +188 -0
- package/vendor/theus-arsenal/skills/aprendizaje-continuo-v2/agents/session-guardian.sh +153 -0
- package/vendor/theus-arsenal/skills/aprendizaje-continuo-v2/agents/start-observer.sh +253 -0
- package/vendor/theus-arsenal/skills/aprendizaje-continuo-v2/config.json +8 -0
- package/vendor/theus-arsenal/skills/aprendizaje-continuo-v2/hooks/observe.sh +594 -0
- package/vendor/theus-arsenal/skills/aprendizaje-continuo-v2/scripts/detect-project.sh +325 -0
- package/vendor/theus-arsenal/skills/aprendizaje-continuo-v2/scripts/instinct-cli.py +1918 -0
- package/vendor/theus-arsenal/skills/aprendizaje-continuo-v2/scripts/lib/arsenal-dir.sh +23 -0
- package/vendor/theus-arsenal/skills/aprendizaje-continuo-v2/scripts/test_parse_instinct.py +1420 -0
- package/vendor/theus-arsenal/skills/arquitectura-hexagonal/SKILL.md +275 -0
- package/vendor/theus-arsenal/skills/arquitectura-limpia-android/SKILL.md +340 -0
- package/vendor/theus-arsenal/skills/arquitectura-pipelines-recomendacion/SKILL.md +112 -0
- package/vendor/theus-arsenal/skills/atlas-datos-prediccion/SKILL.md +53 -0
- package/vendor/theus-arsenal/skills/auditoria-arquitectura-agentes/SKILL.md +257 -0
- package/vendor/theus-arsenal/skills/auditoria-produccion/SKILL.md +180 -0
- package/vendor/theus-arsenal/skills/auditoria-rutas-clic/SKILL.md +243 -0
- package/vendor/theus-arsenal/skills/autoevaluacion-agente/SKILL.md +180 -0
- package/vendor/theus-arsenal/skills/autoevaluacion-agente/examples/high-score-example.md +89 -0
- package/vendor/theus-arsenal/skills/autoevaluacion-agente/examples/low-score-example.md +87 -0
- package/vendor/theus-arsenal/skills/autoevaluacion-agente/references/evaluation-criteria.md +71 -0
- package/vendor/theus-arsenal/skills/autoevaluacion-agente/references/hook-integration.md +90 -0
- package/vendor/theus-arsenal/skills/autoevaluacion-agente/scripts/evaluate.py +409 -0
- package/vendor/theus-arsenal/skills/autoevaluacion-agente/templates/evaluation-report.md +86 -0
- package/vendor/theus-arsenal/skills/automatizacion-ssh-netmiko/SKILL.md +176 -0
- package/vendor/theus-arsenal/skills/base-datos-pubmed/SKILL.md +174 -0
- package/vendor/theus-arsenal/skills/base-datos-uspto/SKILL.md +173 -0
- package/vendor/theus-arsenal/skills/benchmark/SKILL.md +92 -0
- package/vendor/theus-arsenal/skills/bitacora-crecimiento/SKILL.md +120 -0
- package/vendor/theus-arsenal/skills/bucle-verificacion/SKILL.md +125 -0
- package/vendor/theus-arsenal/skills/buscar-primero/SKILL.md +184 -0
- package/vendor/theus-arsenal/skills/busqueda-exa/SKILL.md +111 -0
- package/vendor/theus-arsenal/skills/cache-por-hash/SKILL.md +160 -0
- package/vendor/theus-arsenal/skills/campana-marketing/SKILL.md +118 -0
- package/vendor/theus-arsenal/skills/capacidad-producto/SKILL.md +138 -0
- package/vendor/theus-arsenal/skills/cazador-vulnerabilidades/SKILL.md +104 -0
- package/vendor/theus-arsenal/skills/compactacion-estrategica/SKILL.md +115 -0
- package/vendor/theus-arsenal/skills/comparador-baskets-prediccion/SKILL.md +69 -0
- package/vendor/theus-arsenal/skills/compras-energia/SKILL.md +206 -0
- package/vendor/theus-arsenal/skills/concurrencia-swift-6-2/SKILL.md +224 -0
- package/vendor/theus-arsenal/skills/consejo/SKILL.md +201 -0
- package/vendor/theus-arsenal/skills/construccion-harness-agentes/SKILL.md +78 -0
- package/vendor/theus-arsenal/skills/constructor-conectores/SKILL.md +119 -0
- package/vendor/theus-arsenal/skills/constructor-equipos/SKILL.md +169 -0
- package/vendor/theus-arsenal/skills/consulta-documentacion/SKILL.md +92 -0
- package/vendor/theus-arsenal/skills/consultas-genomicas-gget/SKILL.md +170 -0
- package/vendor/theus-arsenal/skills/contacto-inversores/SKILL.md +95 -0
- package/vendor/theus-arsenal/skills/corrutinas-flows-kotlin/SKILL.md +284 -0
- package/vendor/theus-arsenal/skills/creacion-video-remotion/SKILL.md +46 -0
- package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/3d.md +86 -0
- package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/animations.md +29 -0
- package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/assets/charts-bar-chart.tsx +173 -0
- package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/assets/text-animations-typewriter.tsx +100 -0
- package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/assets/text-animations-word-highlight.tsx +108 -0
- package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/assets.md +78 -0
- package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/audio.md +172 -0
- package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/calculate-metadata.md +104 -0
- package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/can-decode.md +75 -0
- package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/charts.md +58 -0
- package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/compositions.md +146 -0
- package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/display-captions.md +126 -0
- package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/extract-frames.md +229 -0
- package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/fonts.md +152 -0
- package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/get-audio-duration.md +58 -0
- package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/get-video-dimensions.md +68 -0
- package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/get-video-duration.md +58 -0
- package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/gifs.md +138 -0
- package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/images.md +130 -0
- package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/import-srt-captions.md +67 -0
- package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/lottie.md +67 -0
- package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/measuring-dom-nodes.md +34 -0
- package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/measuring-text.md +143 -0
- package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/sequencing.md +106 -0
- package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/tailwind.md +11 -0
- package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/text-animations.md +20 -0
- package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/timing.md +179 -0
- package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/transcribe-captions.md +19 -0
- package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/transitions.md +122 -0
- package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/trimming.md +52 -0
- package/vendor/theus-arsenal/skills/creacion-video-remotion/rules/videos.md +171 -0
- package/vendor/theus-arsenal/skills/cumplimiento-aduanero/SKILL.md +270 -0
- package/vendor/theus-arsenal/skills/cumplimiento-hipaa/SKILL.md +78 -0
- package/vendor/theus-arsenal/skills/datos-sensibles-salud/SKILL.md +149 -0
- package/vendor/theus-arsenal/skills/decimales-tokens-evm/SKILL.md +128 -0
- package/vendor/theus-arsenal/skills/decisiones-arquitectura/SKILL.md +206 -0
- package/vendor/theus-arsenal/skills/demos-ui/SKILL.md +469 -0
- package/vendor/theus-arsenal/skills/desarrollo-por-intencion/SKILL.md +369 -0
- package/vendor/theus-arsenal/skills/descubrimiento-marca/SKILL.md +149 -0
- package/vendor/theus-arsenal/skills/descubrimiento-marca/references/10_proposito-porque.md +42 -0
- package/vendor/theus-arsenal/skills/descubrimiento-marca/references/20_posicionamiento.md +47 -0
- package/vendor/theus-arsenal/skills/descubrimiento-marca/references/30_audiencia-nicho.md +53 -0
- package/vendor/theus-arsenal/skills/descubrimiento-marca/references/40_personalidad-arquetipo.md +61 -0
- package/vendor/theus-arsenal/skills/descubrimiento-marca/references/50_voz-tono.md +62 -0
- package/vendor/theus-arsenal/skills/descubrimiento-marca/references/60_narrativa-historia.md +54 -0
- package/vendor/theus-arsenal/skills/descubrimiento-marca/references/70_tension-fundador.md +50 -0
- package/vendor/theus-arsenal/skills/descubrimiento-marca/references/90_SINTESIS.md +133 -0
- package/vendor/theus-arsenal/skills/descubrimiento-plugins-laravel/SKILL.md +230 -0
- package/vendor/theus-arsenal/skills/destilado-reglas/SKILL.md +263 -0
- package/vendor/theus-arsenal/skills/destilado-reglas/scripts/scan-rules.sh +58 -0
- package/vendor/theus-arsenal/skills/destilado-reglas/scripts/scan-skills.sh +129 -0
- package/vendor/theus-arsenal/skills/diagnostico-bgp/SKILL.md +170 -0
- package/vendor/theus-arsenal/skills/direccion-estetica/SKILL.md +220 -0
- package/vendor/theus-arsenal/skills/direccion-estetica/references/taxonomia-generos.md +89 -0
- package/vendor/theus-arsenal/skills/diseno-api/SKILL.md +522 -0
- package/vendor/theus-arsenal/skills/diseno-liquid-glass/SKILL.md +282 -0
- package/vendor/theus-arsenal/skills/e2e-escritorio-windows/SKILL.md +879 -0
- package/vendor/theus-arsenal/skills/edicion-video/SKILL.md +289 -0
- package/vendor/theus-arsenal/skills/enfoque-producto/SKILL.md +91 -0
- package/vendor/theus-arsenal/skills/entornos-flox/SKILL.md +493 -0
- package/vendor/theus-arsenal/skills/estandares-codigo/SKILL.md +548 -0
- package/vendor/theus-arsenal/skills/estandares-cpp/SKILL.md +727 -0
- package/vendor/theus-arsenal/skills/estandares-java/SKILL.md +389 -0
- package/vendor/theus-arsenal/skills/estilo-legado/SKILL.md +149 -0
- package/vendor/theus-arsenal/skills/estructura-informes-competencia/SKILL.md +95 -0
- package/vendor/theus-arsenal/skills/evaluacion-academica/SKILL.md +165 -0
- package/vendor/theus-arsenal/skills/explorador-skills/SKILL.md +129 -0
- package/vendor/theus-arsenal/skills/flujo-git/SKILL.md +714 -0
- package/vendor/theus-arsenal/skills/flujo-ingenieria-ml/SKILL.md +343 -0
- package/vendor/theus-arsenal/skills/flujo-tdd/SKILL.md +584 -0
- package/vendor/theus-arsenal/skills/forja-personas/SKILL.md +298 -0
- package/vendor/theus-arsenal/skills/forja-personas/gacha.py +224 -0
- package/vendor/theus-arsenal/skills/forja-personas/gacha.sh +5 -0
- package/vendor/theus-arsenal/skills/forja-personas/references/avatar-style.md +123 -0
- package/vendor/theus-arsenal/skills/forja-personas/references/boundary-rules.md +53 -0
- package/vendor/theus-arsenal/skills/forja-personas/references/error-handling.md +53 -0
- package/vendor/theus-arsenal/skills/forja-personas/references/identity-tension.md +48 -0
- package/vendor/theus-arsenal/skills/forja-personas/references/naming-system.md +39 -0
- package/vendor/theus-arsenal/skills/forja-personas/references/output-template.md +166 -0
- package/vendor/theus-arsenal/skills/fundamentos-animacion/SKILL.md +296 -0
- package/vendor/theus-arsenal/skills/generacion-iconos-ios/SKILL.md +156 -0
- package/vendor/theus-arsenal/skills/generacion-iconos-ios/scripts/generate_icons.swift +258 -0
- package/vendor/theus-arsenal/skills/generacion-iconos-ios/scripts/iconify_gen.sh +235 -0
- package/vendor/theus-arsenal/skills/gestion-excepciones-logisticas/SKILL.md +208 -0
- package/vendor/theus-arsenal/skills/gestion-transportistas/SKILL.md +204 -0
- package/vendor/theus-arsenal/skills/guia-adopcion-ml/SKILL.md +64 -0
- package/vendor/theus-arsenal/skills/harness-agente-autonomo/SKILL.md +252 -0
- package/vendor/theus-arsenal/skills/harness-eval-clinico/SKILL.md +212 -0
- package/vendor/theus-arsenal/skills/harness-evaluacion/SKILL.md +296 -0
- package/vendor/theus-arsenal/skills/harness-generador-evaluador/SKILL.md +254 -0
- package/vendor/theus-arsenal/skills/homelab-diseno-red/SKILL.md +120 -0
- package/vendor/theus-arsenal/skills/homelab-dns-pihole/SKILL.md +264 -0
- package/vendor/theus-arsenal/skills/homelab-preparacion-red/SKILL.md +144 -0
- package/vendor/theus-arsenal/skills/homelab-segmentacion-vlan/SKILL.md +307 -0
- package/vendor/theus-arsenal/skills/homelab-vpn-wireguard/SKILL.md +299 -0
- package/vendor/theus-arsenal/skills/ingenieria-agentica/SKILL.md +96 -0
- package/vendor/theus-arsenal/skills/inspeccion-animaciones-blender/SKILL.md +164 -0
- package/vendor/theus-arsenal/skills/instaladores-python/SKILL.md +820 -0
- package/vendor/theus-arsenal/skills/integracion-jira/SKILL.md +307 -0
- package/vendor/theus-arsenal/skills/inteligencia-leads/SKILL.md +312 -0
- package/vendor/theus-arsenal/skills/inteligencia-leads/agents/agente-enriquecimiento.md +87 -0
- package/vendor/theus-arsenal/skills/inteligencia-leads/agents/mapeador-mutuos.md +76 -0
- package/vendor/theus-arsenal/skills/inteligencia-leads/agents/puntuador-senales.md +60 -0
- package/vendor/theus-arsenal/skills/inteligencia-leads/agents/redactor-outreach.md +102 -0
- package/vendor/theus-arsenal/skills/inteligencia-mercados-prediccion/SKILL.md +53 -0
- package/vendor/theus-arsenal/skills/introspeccion-agente/SKILL.md +150 -0
- package/vendor/theus-arsenal/skills/inventario-skills/SKILL.md +194 -0
- package/vendor/theus-arsenal/skills/inventario-skills/scripts/quick-diff.sh +87 -0
- package/vendor/theus-arsenal/skills/inventario-skills/scripts/save-results.sh +57 -0
- package/vendor/theus-arsenal/skills/inventario-skills/scripts/scan.sh +170 -0
- package/vendor/theus-arsenal/skills/investigacion-mercado/SKILL.md +87 -0
- package/vendor/theus-arsenal/skills/investigacion-oraculos-prediccion/SKILL.md +59 -0
- package/vendor/theus-arsenal/skills/investigacion-profunda/SKILL.md +161 -0
- package/vendor/theus-arsenal/skills/keccak256-nodejs/SKILL.md +100 -0
- package/vendor/theus-arsenal/skills/libro-decisiones-recursivo/SKILL.md +82 -0
- package/vendor/theus-arsenal/skills/lienzo-planes/SKILL.md +111 -0
- package/vendor/theus-arsenal/skills/limpieza-configuracion/SKILL.md +116 -0
- package/vendor/theus-arsenal/skills/logistica-inversa-devoluciones/SKILL.md +241 -0
- package/vendor/theus-arsenal/skills/manejo-errores/SKILL.md +375 -0
- package/vendor/theus-arsenal/skills/materiales-inversores/SKILL.md +101 -0
- package/vendor/theus-arsenal/skills/memoria-por-proyecto/SKILL.md +170 -0
- package/vendor/theus-arsenal/skills/memoria-por-proyecto/commands/forget.mjs +44 -0
- package/vendor/theus-arsenal/skills/memoria-por-proyecto/commands/info.mjs +24 -0
- package/vendor/theus-arsenal/skills/memoria-por-proyecto/commands/init.mjs +152 -0
- package/vendor/theus-arsenal/skills/memoria-por-proyecto/commands/list.mjs +40 -0
- package/vendor/theus-arsenal/skills/memoria-por-proyecto/commands/migrate.mjs +214 -0
- package/vendor/theus-arsenal/skills/memoria-por-proyecto/commands/resume.mjs +36 -0
- package/vendor/theus-arsenal/skills/memoria-por-proyecto/commands/save.mjs +210 -0
- package/vendor/theus-arsenal/skills/memoria-por-proyecto/commands/shared.mjs +402 -0
- package/vendor/theus-arsenal/skills/memoria-por-proyecto/hooks/session-start.mjs +238 -0
- package/vendor/theus-arsenal/skills/metodologia-benchmarks/SKILL.md +131 -0
- package/vendor/theus-arsenal/skills/migraciones-bd/SKILL.md +430 -0
- package/vendor/theus-arsenal/skills/modelos-fundacionales-en-dispositivo/SKILL.md +244 -0
- package/vendor/theus-arsenal/skills/modo-seguro/SKILL.md +86 -0
- package/vendor/theus-arsenal/skills/motion-avanzado/SKILL.md +592 -0
- package/vendor/theus-arsenal/skills/motor-de-contenido/SKILL.md +136 -0
- package/vendor/theus-arsenal/skills/no-conformidades-calidad/SKILL.md +249 -0
- package/vendor/theus-arsenal/skills/onboarding-codigo/SKILL.md +244 -0
- package/vendor/theus-arsenal/skills/operaciones-agentes-empresariales/SKILL.md +51 -0
- package/vendor/theus-arsenal/skills/operaciones-conocimiento/SKILL.md +159 -0
- package/vendor/theus-arsenal/skills/operaciones-correo/SKILL.md +123 -0
- package/vendor/theus-arsenal/skills/operaciones-facturacion/SKILL.md +142 -0
- package/vendor/theus-arsenal/skills/operaciones-flujo-proyectos/SKILL.md +110 -0
- package/vendor/theus-arsenal/skills/operaciones-github/SKILL.md +143 -0
- package/vendor/theus-arsenal/skills/operaciones-google-workspace/SKILL.md +100 -0
- package/vendor/theus-arsenal/skills/operaciones-investigacion/SKILL.md +124 -0
- package/vendor/theus-arsenal/skills/operaciones-mensajes/SKILL.md +103 -0
- package/vendor/theus-arsenal/skills/operaciones-terminal/SKILL.md +110 -0
- package/vendor/theus-arsenal/skills/optimizacion-benchmark/SKILL.md +70 -0
- package/vendor/theus-arsenal/skills/optimizacion-costos-llm/SKILL.md +182 -0
- package/vendor/theus-arsenal/skills/optimizador-conexiones/SKILL.md +191 -0
- package/vendor/theus-arsenal/skills/optimizador-paralelismo/SKILL.md +75 -0
- package/vendor/theus-arsenal/skills/optimizador-prompts/SKILL.md +374 -0
- package/vendor/theus-arsenal/skills/orq-agregar-funcionalidad/SKILL.md +37 -0
- package/vendor/theus-arsenal/skills/orq-cambiar-funcionalidad/SKILL.md +36 -0
- package/vendor/theus-arsenal/skills/orq-construir-mvp/SKILL.md +38 -0
- package/vendor/theus-arsenal/skills/orq-corregir-defecto/SKILL.md +36 -0
- package/vendor/theus-arsenal/skills/orq-pipeline/SKILL.md +134 -0
- package/vendor/theus-arsenal/skills/orq-refinar-codigo/SKILL.md +49 -0
- package/vendor/theus-arsenal/skills/orquestacion-equipos-agentes/SKILL.md +117 -0
- package/vendor/theus-arsenal/skills/pagos-agentes-x402/SKILL.md +237 -0
- package/vendor/theus-arsenal/skills/patrones-angular/SKILL.md +153 -0
- package/vendor/theus-arsenal/skills/patrones-angular/references/angular-animations.md +160 -0
- package/vendor/theus-arsenal/skills/patrones-angular/references/angular-aria.md +410 -0
- package/vendor/theus-arsenal/skills/patrones-angular/references/cli.md +86 -0
- package/vendor/theus-arsenal/skills/patrones-angular/references/component-harnesses.md +59 -0
- package/vendor/theus-arsenal/skills/patrones-angular/references/component-styling.md +91 -0
- package/vendor/theus-arsenal/skills/patrones-angular/references/components.md +117 -0
- package/vendor/theus-arsenal/skills/patrones-angular/references/creating-services.md +97 -0
- package/vendor/theus-arsenal/skills/patrones-angular/references/data-resolvers.md +69 -0
- package/vendor/theus-arsenal/skills/patrones-angular/references/define-routes.md +67 -0
- package/vendor/theus-arsenal/skills/patrones-angular/references/defining-providers.md +72 -0
- package/vendor/theus-arsenal/skills/patrones-angular/references/di-fundamentals.md +120 -0
- package/vendor/theus-arsenal/skills/patrones-angular/references/e2e-testing.md +56 -0
- package/vendor/theus-arsenal/skills/patrones-angular/references/effects.md +83 -0
- package/vendor/theus-arsenal/skills/patrones-angular/references/hierarchical-injectors.md +43 -0
- package/vendor/theus-arsenal/skills/patrones-angular/references/host-elements.md +80 -0
- package/vendor/theus-arsenal/skills/patrones-angular/references/injection-context.md +63 -0
- package/vendor/theus-arsenal/skills/patrones-angular/references/inputs.md +101 -0
- package/vendor/theus-arsenal/skills/patrones-angular/references/linked-signal.md +59 -0
- package/vendor/theus-arsenal/skills/patrones-angular/references/loading-strategies.md +61 -0
- package/vendor/theus-arsenal/skills/patrones-angular/references/mcp.md +67 -0
- package/vendor/theus-arsenal/skills/patrones-angular/references/navigate-to-routes.md +69 -0
- package/vendor/theus-arsenal/skills/patrones-angular/references/outputs.md +86 -0
- package/vendor/theus-arsenal/skills/patrones-angular/references/reactive-forms.md +122 -0
- package/vendor/theus-arsenal/skills/patrones-angular/references/rendering-strategies.md +44 -0
- package/vendor/theus-arsenal/skills/patrones-angular/references/resource.md +77 -0
- package/vendor/theus-arsenal/skills/patrones-angular/references/route-animations.md +56 -0
- package/vendor/theus-arsenal/skills/patrones-angular/references/route-guards.md +52 -0
- package/vendor/theus-arsenal/skills/patrones-angular/references/router-lifecycle.md +45 -0
- package/vendor/theus-arsenal/skills/patrones-angular/references/router-testing.md +87 -0
- package/vendor/theus-arsenal/skills/patrones-angular/references/show-routes-with-outlets.md +68 -0
- package/vendor/theus-arsenal/skills/patrones-angular/references/signal-forms.md +795 -0
- package/vendor/theus-arsenal/skills/patrones-angular/references/signals-overview.md +94 -0
- package/vendor/theus-arsenal/skills/patrones-angular/references/tailwind-css.md +69 -0
- package/vendor/theus-arsenal/skills/patrones-angular/references/template-driven-forms.md +114 -0
- package/vendor/theus-arsenal/skills/patrones-angular/references/testing-fundamentals.md +65 -0
- package/vendor/theus-arsenal/skills/patrones-animacion/SKILL.md +432 -0
- package/vendor/theus-arsenal/skills/patrones-backend/SKILL.md +560 -0
- package/vendor/theus-arsenal/skills/patrones-cdss-clinico/SKILL.md +249 -0
- package/vendor/theus-arsenal/skills/patrones-cisco-ios/SKILL.md +148 -0
- package/vendor/theus-arsenal/skills/patrones-clickhouse/SKILL.md +443 -0
- package/vendor/theus-arsenal/skills/patrones-compose-multiplatform/SKILL.md +298 -0
- package/vendor/theus-arsenal/skills/patrones-dart-flutter/SKILL.md +566 -0
- package/vendor/theus-arsenal/skills/patrones-despliegue/SKILL.md +426 -0
- package/vendor/theus-arsenal/skills/patrones-django/SKILL.md +739 -0
- package/vendor/theus-arsenal/skills/patrones-django-celery/SKILL.md +456 -0
- package/vendor/theus-arsenal/skills/patrones-docker/SKILL.md +363 -0
- package/vendor/theus-arsenal/skills/patrones-dotnet/SKILL.md +321 -0
- package/vendor/theus-arsenal/skills/patrones-emr-clinico/SKILL.md +168 -0
- package/vendor/theus-arsenal/skills/patrones-fastapi/SKILL.md +513 -0
- package/vendor/theus-arsenal/skills/patrones-frontend/SKILL.md +655 -0
- package/vendor/theus-arsenal/skills/patrones-go/SKILL.md +674 -0
- package/vendor/theus-arsenal/skills/patrones-jpa/SKILL.md +156 -0
- package/vendor/theus-arsenal/skills/patrones-kotlin/SKILL.md +717 -0
- package/vendor/theus-arsenal/skills/patrones-kotlin-exposed/SKILL.md +724 -0
- package/vendor/theus-arsenal/skills/patrones-kotlin-ktor/SKILL.md +694 -0
- package/vendor/theus-arsenal/skills/patrones-kubernetes/SKILL.md +754 -0
- package/vendor/theus-arsenal/skills/patrones-laravel/SKILL.md +414 -0
- package/vendor/theus-arsenal/skills/patrones-mcp/SKILL.md +66 -0
- package/vendor/theus-arsenal/skills/patrones-mysql/SKILL.md +420 -0
- package/vendor/theus-arsenal/skills/patrones-nestjs/SKILL.md +229 -0
- package/vendor/theus-arsenal/skills/patrones-nextjs/SKILL.md +56 -0
- package/vendor/theus-arsenal/skills/patrones-nuxt4/SKILL.md +99 -0
- package/vendor/theus-arsenal/skills/patrones-perl/SKILL.md +508 -0
- package/vendor/theus-arsenal/skills/patrones-postgres/SKILL.md +141 -0
- package/vendor/theus-arsenal/skills/patrones-prisma/SKILL.md +399 -0
- package/vendor/theus-arsenal/skills/patrones-python/SKILL.md +750 -0
- package/vendor/theus-arsenal/skills/patrones-pytorch/SKILL.md +400 -0
- package/vendor/theus-arsenal/skills/patrones-quarkus/SKILL.md +729 -0
- package/vendor/theus-arsenal/skills/patrones-react/SKILL.md +339 -0
- package/vendor/theus-arsenal/skills/patrones-react-native/SKILL.md +325 -0
- package/vendor/theus-arsenal/skills/patrones-redis/SKILL.md +401 -0
- package/vendor/theus-arsenal/skills/patrones-rust/SKILL.md +504 -0
- package/vendor/theus-arsenal/skills/patrones-springboot/SKILL.md +314 -0
- package/vendor/theus-arsenal/skills/patrones-swiftui/SKILL.md +261 -0
- package/vendor/theus-arsenal/skills/patrones-tinystruct/SKILL.md +281 -0
- package/vendor/theus-arsenal/skills/patrones-tinystruct/references/architecture.md +90 -0
- package/vendor/theus-arsenal/skills/patrones-tinystruct/references/data-handling.md +60 -0
- package/vendor/theus-arsenal/skills/patrones-tinystruct/references/database.md +99 -0
- package/vendor/theus-arsenal/skills/patrones-tinystruct/references/routing.md +64 -0
- package/vendor/theus-arsenal/skills/patrones-tinystruct/references/system-usage.md +97 -0
- package/vendor/theus-arsenal/skills/patrones-tinystruct/references/testing.md +72 -0
- package/vendor/theus-arsenal/skills/patrones-vite/SKILL.md +449 -0
- package/vendor/theus-arsenal/skills/patrones-vue/SKILL.md +469 -0
- package/vendor/theus-arsenal/skills/persistencia-actores-swift/SKILL.md +148 -0
- package/vendor/theus-arsenal/skills/pipeline-opensource/SKILL.md +254 -0
- package/vendor/theus-arsenal/skills/planificacion-demanda-inventario/SKILL.md +236 -0
- package/vendor/theus-arsenal/skills/planificador-trades-prediccion/SKILL.md +60 -0
- package/vendor/theus-arsenal/skills/plano-tecnico/SKILL.md +102 -0
- package/vendor/theus-arsenal/skills/presentaciones-html/SKILL.md +189 -0
- package/vendor/theus-arsenal/skills/presentaciones-html/STYLE_PRESETS.md +330 -0
- package/vendor/theus-arsenal/skills/presentaciones-html/animation-patterns.md +122 -0
- package/vendor/theus-arsenal/skills/presentaciones-html/html-template.md +419 -0
- package/vendor/theus-arsenal/skills/presentaciones-html/scripts/export-pdf.sh +418 -0
- package/vendor/theus-arsenal/skills/presentaciones-html/scripts/extract-pptx.py +96 -0
- package/vendor/theus-arsenal/skills/presentaciones-html/viewport-base.css +153 -0
- package/vendor/theus-arsenal/skills/presupuesto-contexto/SKILL.md +263 -0
- package/vendor/theus-arsenal/skills/procesamiento-documentos-nutrient/SKILL.md +168 -0
- package/vendor/theus-arsenal/skills/programacion-produccion/SKILL.md +220 -0
- package/vendor/theus-arsenal/skills/publicacion-cruzada/SKILL.md +117 -0
- package/vendor/theus-arsenal/skills/publicador-social/SKILL.md +121 -0
- package/vendor/theus-arsenal/skills/puerta-de-entrega/SKILL.md +164 -0
- package/vendor/theus-arsenal/skills/puerta-de-entrega/hooks/puerta-entrega.py +242 -0
- package/vendor/theus-arsenal/skills/pulir-interfaces/SKILL.md +126 -0
- package/vendor/theus-arsenal/skills/qa-navegador/SKILL.md +103 -0
- package/vendor/theus-arsenal/skills/ranking-grafo-social/SKILL.md +153 -0
- package/vendor/theus-arsenal/skills/recuperacion-iterativa/SKILL.md +236 -0
- package/vendor/theus-arsenal/skills/redaccion-articulos/SKILL.md +81 -0
- package/vendor/theus-arsenal/skills/regex-vs-llm/SKILL.md +221 -0
- package/vendor/theus-arsenal/skills/regresion-codigo-ia/SKILL.md +388 -0
- package/vendor/theus-arsenal/skills/rendimiento-react/SKILL.md +567 -0
- package/vendor/theus-arsenal/skills/revision-codigo-flutter-dart/SKILL.md +442 -0
- package/vendor/theus-arsenal/skills/revision-literatura-cientifica/SKILL.md +191 -0
- package/vendor/theus-arsenal/skills/revision-multiperspectiva/SKILL.md +302 -0
- package/vendor/theus-arsenal/skills/revision-riesgo-prediccion/SKILL.md +56 -0
- package/vendor/theus-arsenal/skills/revision-seguridad/SKILL.md +505 -0
- package/vendor/theus-arsenal/skills/revision-seguridad/cloud-infrastructure-security.md +361 -0
- package/vendor/theus-arsenal/skills/runtime-bun/SKILL.md +83 -0
- package/vendor/theus-arsenal/skills/salud-codigo-codescene/SKILL.md +163 -0
- package/vendor/theus-arsenal/skills/salud-interfaces-red/SKILL.md +143 -0
- package/vendor/theus-arsenal/skills/seguimiento-costos/SKILL.md +122 -0
- package/vendor/theus-arsenal/skills/seguridad-agentes-trading/SKILL.md +145 -0
- package/vendor/theus-arsenal/skills/seguridad-amm-defi/SKILL.md +166 -0
- package/vendor/theus-arsenal/skills/seguridad-django/SKILL.md +648 -0
- package/vendor/theus-arsenal/skills/seguridad-laravel/SKILL.md +945 -0
- package/vendor/theus-arsenal/skills/seguridad-perl/SKILL.md +507 -0
- package/vendor/theus-arsenal/skills/seguridad-quarkus/SKILL.md +474 -0
- package/vendor/theus-arsenal/skills/seguridad-springboot/SKILL.md +279 -0
- package/vendor/theus-arsenal/skills/seo/SKILL.md +166 -0
- package/vendor/theus-arsenal/skills/sistema-diseno/SKILL.md +81 -0
- package/vendor/theus-arsenal/skills/sistema-operativo-agentico/SKILL.md +375 -0
- package/vendor/theus-arsenal/skills/sistemas-latencia-critica/SKILL.md +65 -0
- package/vendor/theus-arsenal/skills/tdd-django/SKILL.md +735 -0
- package/vendor/theus-arsenal/skills/tdd-laravel/SKILL.md +673 -0
- package/vendor/theus-arsenal/skills/tdd-quarkus/SKILL.md +817 -0
- package/vendor/theus-arsenal/skills/tdd-springboot/SKILL.md +165 -0
- package/vendor/theus-arsenal/skills/testing-cpp/SKILL.md +328 -0
- package/vendor/theus-arsenal/skills/testing-csharp/SKILL.md +321 -0
- package/vendor/theus-arsenal/skills/testing-e2e/SKILL.md +325 -0
- package/vendor/theus-arsenal/skills/testing-go/SKILL.md +719 -0
- package/vendor/theus-arsenal/skills/testing-kotlin/SKILL.md +829 -0
- package/vendor/theus-arsenal/skills/testing-perl/SKILL.md +479 -0
- package/vendor/theus-arsenal/skills/testing-protocolos-di-swift/SKILL.md +196 -0
- package/vendor/theus-arsenal/skills/testing-python/SKILL.md +815 -0
- package/vendor/theus-arsenal/skills/testing-react/SKILL.md +421 -0
- package/vendor/theus-arsenal/skills/testing-rust/SKILL.md +506 -0
- package/vendor/theus-arsenal/skills/tours-de-codigo/SKILL.md +252 -0
- package/vendor/theus-arsenal/skills/traduccion-documentos-visado/SKILL.md +121 -0
- package/vendor/theus-arsenal/skills/ui-a-vue/SKILL.md +141 -0
- package/vendor/theus-arsenal/skills/validacion-config-red/SKILL.md +211 -0
- package/vendor/theus-arsenal/skills/verificacion-django/SKILL.md +470 -0
- package/vendor/theus-arsenal/skills/verificacion-factual/SKILL.md +142 -0
- package/vendor/theus-arsenal/skills/verificacion-laravel/SKILL.md +184 -0
- package/vendor/theus-arsenal/skills/verificacion-quarkus/SKILL.md +485 -0
- package/vendor/theus-arsenal/skills/verificacion-springboot/SKILL.md +237 -0
- package/vendor/theus-arsenal/skills/videodb/SKILL.md +374 -0
- package/vendor/theus-arsenal/skills/videodb/reference/api-reference.md +550 -0
- package/vendor/theus-arsenal/skills/videodb/reference/capture-reference.md +407 -0
- package/vendor/theus-arsenal/skills/videodb/reference/capture.md +101 -0
- package/vendor/theus-arsenal/skills/videodb/reference/editor.md +443 -0
- package/vendor/theus-arsenal/skills/videodb/reference/generative.md +331 -0
- package/vendor/theus-arsenal/skills/videodb/reference/rtstream-reference.md +564 -0
- package/vendor/theus-arsenal/skills/videodb/reference/rtstream.md +65 -0
- package/vendor/theus-arsenal/skills/videodb/reference/search.md +230 -0
- package/vendor/theus-arsenal/skills/videodb/reference/streaming.md +406 -0
- package/vendor/theus-arsenal/skills/videodb/reference/use-cases.md +118 -0
- package/vendor/theus-arsenal/skills/videodb/scripts/ws_listener.py +279 -0
- package/vendor/theus-arsenal/skills/videos-manim/SKILL.md +91 -0
- package/vendor/theus-arsenal/skills/videos-manim/assets/network_graph_scene.py +52 -0
- package/vendor/theus-arsenal/skills/vigilancia-canary/SKILL.md +108 -0
- package/vendor/theus-arsenal/skills/voz-de-marca/SKILL.md +106 -0
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Revisión integral de código Go en busca de patrones idiomáticos, seguridad en concurrencia, manejo de errores y vulnerabilidades. Invoca al agente revisor-go.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Revisión de código Go
|
|
6
|
+
|
|
7
|
+
Este comando invoca al agente **revisor-go** para una revisión integral específica de Go.
|
|
8
|
+
|
|
9
|
+
## Qué hace este comando
|
|
10
|
+
|
|
11
|
+
1. **Identifica los cambios en Go**: encuentra los archivos `.go` modificados vía `git diff`
|
|
12
|
+
2. **Ejecuta análisis estático**: corre `go vet`, `staticcheck` y `golangci-lint`
|
|
13
|
+
3. **Escaneo de seguridad**: busca inyección SQL, inyección de comandos y condiciones de carrera
|
|
14
|
+
4. **Revisión de concurrencia**: analiza la seguridad de goroutines, el uso de canales y los patrones de mutex
|
|
15
|
+
5. **Verificación de Go idiomático**: comprueba que el código siga las convenciones y buenas prácticas de Go
|
|
16
|
+
6. **Genera un informe**: clasifica los problemas por severidad
|
|
17
|
+
|
|
18
|
+
## Cuándo usarlo
|
|
19
|
+
|
|
20
|
+
Usa /revisar-go cuando:
|
|
21
|
+
- Acabas de escribir o modificar código Go
|
|
22
|
+
- Antes de commitear cambios en Go
|
|
23
|
+
- Revisas pull requests con código Go
|
|
24
|
+
- Te incorporas a un codebase Go nuevo
|
|
25
|
+
- Estás aprendiendo patrones idiomáticos de Go
|
|
26
|
+
|
|
27
|
+
## Categorías de revisión
|
|
28
|
+
|
|
29
|
+
### CRÍTICO (corrección obligatoria)
|
|
30
|
+
- Vulnerabilidades de inyección SQL o de comandos
|
|
31
|
+
- Condiciones de carrera sin sincronización
|
|
32
|
+
- Fugas de goroutines
|
|
33
|
+
- Credenciales hardcodeadas
|
|
34
|
+
- Uso inseguro de punteros
|
|
35
|
+
- Errores ignorados en rutas críticas
|
|
36
|
+
|
|
37
|
+
### ALTO (debería corregirse)
|
|
38
|
+
- Falta envolver errores con contexto
|
|
39
|
+
- Panic en lugar de retornar errores
|
|
40
|
+
- Context no propagado
|
|
41
|
+
- Canales sin buffer que causan deadlocks
|
|
42
|
+
- Errores de interfaz no satisfecha
|
|
43
|
+
- Falta protección con mutex
|
|
44
|
+
|
|
45
|
+
### MEDIO (a considerar)
|
|
46
|
+
- Patrones de código no idiomáticos
|
|
47
|
+
- Faltan comentarios godoc en símbolos exportados
|
|
48
|
+
- Concatenación de strings ineficiente
|
|
49
|
+
- Slices sin preasignar
|
|
50
|
+
- No se usan tests tabulares
|
|
51
|
+
|
|
52
|
+
## Verificaciones automatizadas ejecutadas
|
|
53
|
+
|
|
54
|
+
```bash
|
|
55
|
+
# Análisis estático
|
|
56
|
+
go vet ./...
|
|
57
|
+
|
|
58
|
+
# Verificaciones avanzadas (si están instaladas)
|
|
59
|
+
staticcheck ./...
|
|
60
|
+
golangci-lint run
|
|
61
|
+
|
|
62
|
+
# Detección de carreras
|
|
63
|
+
go build -race ./...
|
|
64
|
+
|
|
65
|
+
# Vulnerabilidades de seguridad
|
|
66
|
+
govulncheck ./...
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
## Ejemplo de uso
|
|
70
|
+
|
|
71
|
+
```text
|
|
72
|
+
Usuario: /revisar-go
|
|
73
|
+
|
|
74
|
+
Agente:
|
|
75
|
+
# Informe de revisión de código Go
|
|
76
|
+
|
|
77
|
+
## Archivos revisados
|
|
78
|
+
- internal/handler/user.go (modificado)
|
|
79
|
+
- internal/service/auth.go (modificado)
|
|
80
|
+
|
|
81
|
+
## Resultados del análisis estático
|
|
82
|
+
✓ go vet: sin problemas
|
|
83
|
+
✓ staticcheck: sin problemas
|
|
84
|
+
|
|
85
|
+
## Problemas encontrados
|
|
86
|
+
|
|
87
|
+
[CRÍTICO] Condición de carrera
|
|
88
|
+
Archivo: internal/service/auth.go:45
|
|
89
|
+
Problema: mapa compartido accedido sin sincronización
|
|
90
|
+
```go
|
|
91
|
+
var cache = map[string]*Session{} // ¡Acceso concurrente!
|
|
92
|
+
|
|
93
|
+
func GetSession(id string) *Session {
|
|
94
|
+
return cache[id] // Condición de carrera
|
|
95
|
+
}
|
|
96
|
+
```
|
|
97
|
+
Arreglo: usar sync.RWMutex o sync.Map
|
|
98
|
+
```go
|
|
99
|
+
var (
|
|
100
|
+
cache = map[string]*Session{}
|
|
101
|
+
cacheMu sync.RWMutex
|
|
102
|
+
)
|
|
103
|
+
|
|
104
|
+
func GetSession(id string) *Session {
|
|
105
|
+
cacheMu.RLock()
|
|
106
|
+
defer cacheMu.RUnlock()
|
|
107
|
+
return cache[id]
|
|
108
|
+
}
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
[ALTO] Falta contexto en el error
|
|
112
|
+
Archivo: internal/handler/user.go:28
|
|
113
|
+
Problema: error retornado sin contexto
|
|
114
|
+
```go
|
|
115
|
+
return err // Sin contexto
|
|
116
|
+
```
|
|
117
|
+
Arreglo: envolver con contexto
|
|
118
|
+
```go
|
|
119
|
+
return fmt.Errorf("get user %s: %w", userID, err)
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
## Resumen
|
|
123
|
+
- CRÍTICO: 1
|
|
124
|
+
- ALTO: 1
|
|
125
|
+
- MEDIO: 0
|
|
126
|
+
|
|
127
|
+
Recomendación: RECHAZADO: bloquear el merge hasta corregir el problema CRÍTICO
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
## Criterios de aprobación
|
|
131
|
+
|
|
132
|
+
| Estado | Condición |
|
|
133
|
+
|--------|-----------|
|
|
134
|
+
| APROBADO: aprobar | Sin problemas CRÍTICOS ni ALTOS |
|
|
135
|
+
| ADVERTENCIA: precaución | Solo problemas MEDIOS (mergear con cautela) |
|
|
136
|
+
| RECHAZADO: bloquear | Se encontraron problemas CRÍTICOS o ALTOS |
|
|
137
|
+
|
|
138
|
+
## Integración con otros comandos
|
|
139
|
+
|
|
140
|
+
- Usa /test-go primero para asegurar que los tests pasen
|
|
141
|
+
- Usa /build-go si hay errores de build
|
|
142
|
+
- Usa /revisar-go antes de commitear
|
|
143
|
+
- Usa /revisar-codigo para aspectos no específicos de Go
|
|
144
|
+
|
|
145
|
+
## Relacionados
|
|
146
|
+
|
|
147
|
+
- Agente: `agents/revisor-go.md`
|
|
148
|
+
- Skills: `skills/patrones-go/`, `skills/testing-go/`
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Revisión integral de código Kotlin orientada a patrones idiomáticos, null safety, seguridad de corrutinas y seguridad. Invoca al agente revisor-kotlin.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Revisión de código Kotlin
|
|
6
|
+
|
|
7
|
+
Este comando invoca al agente **revisor-kotlin** para una revisión integral específica de Kotlin.
|
|
8
|
+
|
|
9
|
+
## Qué hace este comando
|
|
10
|
+
|
|
11
|
+
1. **Identifica cambios de Kotlin**: encuentra archivos `.kt` y `.kts` modificados vía `git diff`
|
|
12
|
+
2. **Ejecuta build y análisis estático**: corre `./gradlew build`, `detekt`, `ktlintCheck`
|
|
13
|
+
3. **Escaneo de seguridad**: busca inyección SQL, inyección de comandos, secretos hardcodeados
|
|
14
|
+
4. **Revisión de null safety**: analiza el uso de `!!`, manejo de tipos de plataforma, casts inseguros
|
|
15
|
+
5. **Revisión de corrutinas**: comprueba concurrencia estructurada, uso de dispatchers, cancelación
|
|
16
|
+
6. **Genera un informe**: categoriza los hallazgos por severidad
|
|
17
|
+
|
|
18
|
+
## Cuándo usarlo
|
|
19
|
+
|
|
20
|
+
Usa `/revisar-kotlin` cuando:
|
|
21
|
+
- Acabas de escribir o modificar código Kotlin
|
|
22
|
+
- Antes de hacer commit de cambios en Kotlin
|
|
23
|
+
- Al revisar pull requests con código Kotlin
|
|
24
|
+
- Al incorporarte a un código base Kotlin nuevo
|
|
25
|
+
- Estás aprendiendo patrones idiomáticos de Kotlin
|
|
26
|
+
|
|
27
|
+
## Categorías de revisión
|
|
28
|
+
|
|
29
|
+
### CRÍTICO (obligatorio corregir)
|
|
30
|
+
- Vulnerabilidades de inyección SQL/de comandos
|
|
31
|
+
- Desempaquetado forzado `!!` sin justificación
|
|
32
|
+
- Violaciones de null safety en tipos de plataforma
|
|
33
|
+
- Uso de GlobalScope (violación de concurrencia estructurada)
|
|
34
|
+
- Credenciales hardcodeadas
|
|
35
|
+
- Deserialización insegura
|
|
36
|
+
|
|
37
|
+
### ALTO (debería corregirse)
|
|
38
|
+
- Estado mutable donde basta con inmutable
|
|
39
|
+
- Llamadas bloqueantes dentro de un contexto de corrutina
|
|
40
|
+
- Falta de chequeos de cancelación en bucles largos
|
|
41
|
+
- `when` no exhaustivo sobre tipos sellados
|
|
42
|
+
- Funciones grandes (>50 líneas)
|
|
43
|
+
- Anidamiento profundo (>4 niveles)
|
|
44
|
+
|
|
45
|
+
### MEDIO (a considerar)
|
|
46
|
+
- Kotlin no idiomático (patrones estilo Java)
|
|
47
|
+
- Falta de comas finales
|
|
48
|
+
- Mal uso o anidamiento de funciones de alcance (scope functions)
|
|
49
|
+
- Falta de secuencias en cadenas largas sobre colecciones grandes
|
|
50
|
+
- Tipos explícitos redundantes
|
|
51
|
+
|
|
52
|
+
## Chequeos automáticos ejecutados
|
|
53
|
+
|
|
54
|
+
```bash
|
|
55
|
+
# Chequeo de build
|
|
56
|
+
./gradlew build
|
|
57
|
+
|
|
58
|
+
# Análisis estático
|
|
59
|
+
./gradlew detekt
|
|
60
|
+
|
|
61
|
+
# Chequeo de formato
|
|
62
|
+
./gradlew ktlintCheck
|
|
63
|
+
|
|
64
|
+
# Tests
|
|
65
|
+
./gradlew test
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
## Ejemplo de uso
|
|
69
|
+
|
|
70
|
+
````text
|
|
71
|
+
Usuario: /revisar-kotlin
|
|
72
|
+
|
|
73
|
+
Agente:
|
|
74
|
+
# Informe de revisión de código Kotlin
|
|
75
|
+
|
|
76
|
+
## Archivos revisados
|
|
77
|
+
- src/main/kotlin/com/example/service/UserService.kt (modificado)
|
|
78
|
+
- src/main/kotlin/com/example/routes/UserRoutes.kt (modificado)
|
|
79
|
+
|
|
80
|
+
## Resultados del análisis estático
|
|
81
|
+
✓ Build: exitoso
|
|
82
|
+
✓ detekt: sin hallazgos
|
|
83
|
+
WARNING: ktlint: 2 advertencias de formato
|
|
84
|
+
|
|
85
|
+
## Hallazgos
|
|
86
|
+
|
|
87
|
+
[CRÍTICO] Desempaquetado forzado (null safety)
|
|
88
|
+
Archivo: src/main/kotlin/com/example/service/UserService.kt:28
|
|
89
|
+
Problema: uso de !! sobre un resultado anulable del repositorio
|
|
90
|
+
```kotlin
|
|
91
|
+
val user = repository.findById(id)!! // Riesgo de NPE
|
|
92
|
+
```
|
|
93
|
+
Arreglo: usar llamada segura con manejo de errores
|
|
94
|
+
```kotlin
|
|
95
|
+
val user = repository.findById(id)
|
|
96
|
+
?: throw UserNotFoundException("Usuario $id no encontrado")
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
[ALTO] Uso de GlobalScope
|
|
100
|
+
Archivo: src/main/kotlin/com/example/routes/UserRoutes.kt:45
|
|
101
|
+
Problema: GlobalScope rompe la concurrencia estructurada
|
|
102
|
+
```kotlin
|
|
103
|
+
GlobalScope.launch {
|
|
104
|
+
notificationService.sendWelcome(user)
|
|
105
|
+
}
|
|
106
|
+
```
|
|
107
|
+
Arreglo: usar el scope de corrutina de la llamada
|
|
108
|
+
```kotlin
|
|
109
|
+
launch {
|
|
110
|
+
notificationService.sendWelcome(user)
|
|
111
|
+
}
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
## Resumen
|
|
115
|
+
- CRÍTICO: 1
|
|
116
|
+
- ALTO: 1
|
|
117
|
+
- MEDIO: 0
|
|
118
|
+
|
|
119
|
+
Recomendación: FAIL: Bloquear el merge hasta corregir el hallazgo CRÍTICO
|
|
120
|
+
````
|
|
121
|
+
|
|
122
|
+
## Criterios de aprobación
|
|
123
|
+
|
|
124
|
+
| Estado | Condición |
|
|
125
|
+
|--------|-----------|
|
|
126
|
+
| PASS: Aprobar | Sin hallazgos CRÍTICOS ni ALTOS |
|
|
127
|
+
| WARNING: Advertencia | Solo hallazgos MEDIOS (merge con cautela) |
|
|
128
|
+
| FAIL: Bloquear | Hay hallazgos CRÍTICOS o ALTOS |
|
|
129
|
+
|
|
130
|
+
## Integración con otros comandos
|
|
131
|
+
|
|
132
|
+
- Usa `/test-kotlin` primero para asegurar que los tests pasan
|
|
133
|
+
- Usa `/build-kotlin` si aparecen errores de build
|
|
134
|
+
- Usa `/revisar-kotlin` antes de hacer commit
|
|
135
|
+
- Usa `/revisar-codigo` para aspectos no específicos de Kotlin
|
|
136
|
+
|
|
137
|
+
## Relacionados
|
|
138
|
+
|
|
139
|
+
- Agente: `agents/revisor-kotlin.md`
|
|
140
|
+
- Skills: `skills/patrones-kotlin/`, `skills/testing-kotlin/`
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Revisión integral de un PR usando agentes especializados
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
Ejecuta una revisión integral y multiperspectiva de un pull request.
|
|
6
|
+
|
|
7
|
+
## Uso
|
|
8
|
+
|
|
9
|
+
`/revisar-pr [número-de-PR-o-URL] [--focus=comments|tests|errors|types|code|simplify]`
|
|
10
|
+
|
|
11
|
+
Si no se especifica un PR, revisa el PR de la rama actual. Si no se especifica un foco, ejecuta la pila completa de revisión.
|
|
12
|
+
|
|
13
|
+
## Pasos
|
|
14
|
+
|
|
15
|
+
1. Identificar el PR:
|
|
16
|
+
- usa `gh pr view` para obtener los detalles del PR, los archivos modificados y el diff
|
|
17
|
+
2. Buscar las guías del proyecto:
|
|
18
|
+
- busca `THEUS.md`, la configuración del linter, la configuración de TypeScript y las convenciones del repositorio
|
|
19
|
+
3. Ejecutar los agentes de revisión especializados:
|
|
20
|
+
- `revisor-codigo`
|
|
21
|
+
- `analista-comentarios`
|
|
22
|
+
- `analista-tests-pr`
|
|
23
|
+
- `cazador-fallos-silenciosos`
|
|
24
|
+
- `analista-tipos`
|
|
25
|
+
- `simplificador-codigo`
|
|
26
|
+
4. Agregar los resultados:
|
|
27
|
+
- deduplica los hallazgos que se solapan
|
|
28
|
+
- ordénalos por severidad
|
|
29
|
+
5. Reportar los hallazgos agrupados por severidad
|
|
30
|
+
|
|
31
|
+
## Regla de confianza
|
|
32
|
+
|
|
33
|
+
Reporta solo problemas con confianza >= 80:
|
|
34
|
+
|
|
35
|
+
- Crítico: bugs, seguridad, pérdida de datos
|
|
36
|
+
- Importante: tests faltantes, problemas de calidad, violaciones de estilo
|
|
37
|
+
- Consultivo: sugerencias solo cuando se soliciten explícitamente
|
|
@@ -0,0 +1,297 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: "Revisión integral de código Python: cumplimiento de PEP 8, type hints, seguridad e idiomas pythónicos. Invoca al agente revisor-python."
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Revisión de código Python
|
|
6
|
+
|
|
7
|
+
Este comando invoca al agente **revisor-python** para una revisión integral específica de Python.
|
|
8
|
+
|
|
9
|
+
## Qué hace este comando
|
|
10
|
+
|
|
11
|
+
1. **Identificar cambios en Python**: encontrar los archivos `.py` modificados vía `git diff`
|
|
12
|
+
2. **Ejecutar análisis estático**: correr `ruff`, `mypy`, `pylint`, `black --check`
|
|
13
|
+
3. **Escaneo de seguridad**: buscar inyección SQL, inyección de comandos, deserialización insegura
|
|
14
|
+
4. **Revisión de seguridad de tipos**: analizar los type hints y los errores de mypy
|
|
15
|
+
5. **Verificación de código pythónico**: comprobar que el código sigue PEP 8 y las buenas prácticas de Python
|
|
16
|
+
6. **Generar reporte**: categorizar los problemas por severidad
|
|
17
|
+
|
|
18
|
+
## Cuándo usarlo
|
|
19
|
+
|
|
20
|
+
Usa `/revisar-python` cuando:
|
|
21
|
+
- Acabes de escribir o modificar código Python
|
|
22
|
+
- Antes de commitear cambios en Python
|
|
23
|
+
- Revises pull requests con código Python
|
|
24
|
+
- Te incorpores a un código Python nuevo
|
|
25
|
+
- Estés aprendiendo patrones e idiomas pythónicos
|
|
26
|
+
|
|
27
|
+
## Categorías de revisión
|
|
28
|
+
|
|
29
|
+
### CRÍTICO (obligatorio corregir)
|
|
30
|
+
- Vulnerabilidades de inyección SQL/de comandos
|
|
31
|
+
- Uso inseguro de eval/exec
|
|
32
|
+
- Deserialización insegura con pickle
|
|
33
|
+
- Credenciales hardcodeadas
|
|
34
|
+
- Carga insegura de YAML
|
|
35
|
+
- Cláusulas `except` desnudas que ocultan errores
|
|
36
|
+
|
|
37
|
+
### ALTO (debería corregirse)
|
|
38
|
+
- Type hints ausentes en funciones públicas
|
|
39
|
+
- Argumentos por defecto mutables
|
|
40
|
+
- Excepciones tragadas silenciosamente
|
|
41
|
+
- No usar context managers para recursos
|
|
42
|
+
- Bucles al estilo C en vez de comprensiones
|
|
43
|
+
- Usar type() en lugar de isinstance()
|
|
44
|
+
- Condiciones de carrera sin locks
|
|
45
|
+
|
|
46
|
+
### MEDIO (a considerar)
|
|
47
|
+
- Violaciones de formato PEP 8
|
|
48
|
+
- Docstrings ausentes en funciones públicas
|
|
49
|
+
- Sentencias print en lugar de logging
|
|
50
|
+
- Operaciones de strings ineficientes
|
|
51
|
+
- Números mágicos sin constantes con nombre
|
|
52
|
+
- No usar f-strings para formatear
|
|
53
|
+
- Creación innecesaria de listas
|
|
54
|
+
|
|
55
|
+
## Verificaciones automatizadas que se ejecutan
|
|
56
|
+
|
|
57
|
+
```bash
|
|
58
|
+
# Verificación de tipos
|
|
59
|
+
mypy .
|
|
60
|
+
|
|
61
|
+
# Linting y formato
|
|
62
|
+
ruff check .
|
|
63
|
+
black --check .
|
|
64
|
+
isort --check-only .
|
|
65
|
+
|
|
66
|
+
# Escaneo de seguridad
|
|
67
|
+
bandit -r .
|
|
68
|
+
|
|
69
|
+
# Auditoría de dependencias
|
|
70
|
+
pip-audit
|
|
71
|
+
safety check
|
|
72
|
+
|
|
73
|
+
# Tests
|
|
74
|
+
pytest --cov=app --cov-report=term-missing
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
## Ejemplo de uso
|
|
78
|
+
|
|
79
|
+
```text
|
|
80
|
+
Usuario: /revisar-python
|
|
81
|
+
|
|
82
|
+
Agente:
|
|
83
|
+
# Reporte de revisión de código Python
|
|
84
|
+
|
|
85
|
+
## Archivos revisados
|
|
86
|
+
- app/routes/user.py (modificado)
|
|
87
|
+
- app/services/auth.py (modificado)
|
|
88
|
+
|
|
89
|
+
## Resultados del análisis estático
|
|
90
|
+
✓ ruff: sin problemas
|
|
91
|
+
✓ mypy: sin errores
|
|
92
|
+
ADVERTENCIA: black: 2 archivos requieren reformateo
|
|
93
|
+
✓ bandit: sin problemas de seguridad
|
|
94
|
+
|
|
95
|
+
## Problemas encontrados
|
|
96
|
+
|
|
97
|
+
[CRÍTICO] Vulnerabilidad de inyección SQL
|
|
98
|
+
Archivo: app/routes/user.py:42
|
|
99
|
+
Problema: entrada del usuario interpolada directamente en la consulta SQL
|
|
100
|
+
```python
|
|
101
|
+
query = f"SELECT * FROM users WHERE id = {user_id}" # Mal
|
|
102
|
+
```
|
|
103
|
+
Corrección: usar una consulta parametrizada
|
|
104
|
+
```python
|
|
105
|
+
query = "SELECT * FROM users WHERE id = %s" # Bien
|
|
106
|
+
cursor.execute(query, (user_id,))
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
[ALTO] Argumento por defecto mutable
|
|
110
|
+
Archivo: app/services/auth.py:18
|
|
111
|
+
Problema: un argumento por defecto mutable provoca estado compartido
|
|
112
|
+
```python
|
|
113
|
+
def process_items(items=[]): # Mal
|
|
114
|
+
items.append("new")
|
|
115
|
+
return items
|
|
116
|
+
```
|
|
117
|
+
Corrección: usar None como valor por defecto
|
|
118
|
+
```python
|
|
119
|
+
def process_items(items=None): # Bien
|
|
120
|
+
if items is None:
|
|
121
|
+
items = []
|
|
122
|
+
items.append("new")
|
|
123
|
+
return items
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
[MEDIO] Type hints ausentes
|
|
127
|
+
Archivo: app/services/auth.py:25
|
|
128
|
+
Problema: función pública sin anotaciones de tipo
|
|
129
|
+
```python
|
|
130
|
+
def get_user(user_id): # Mal
|
|
131
|
+
return db.find(user_id)
|
|
132
|
+
```
|
|
133
|
+
Corrección: añadir type hints
|
|
134
|
+
```python
|
|
135
|
+
def get_user(user_id: str) -> Optional[User]: # Bien
|
|
136
|
+
return db.find(user_id)
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
[MEDIO] No se usa context manager
|
|
140
|
+
Archivo: app/routes/user.py:55
|
|
141
|
+
Problema: el archivo no se cierra si hay una excepción
|
|
142
|
+
```python
|
|
143
|
+
f = open("config.json") # Mal
|
|
144
|
+
data = f.read()
|
|
145
|
+
f.close()
|
|
146
|
+
```
|
|
147
|
+
Corrección: usar un context manager
|
|
148
|
+
```python
|
|
149
|
+
with open("config.json") as f: # Bien
|
|
150
|
+
data = f.read()
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
## Resumen
|
|
154
|
+
- CRÍTICO: 1
|
|
155
|
+
- ALTO: 1
|
|
156
|
+
- MEDIO: 2
|
|
157
|
+
|
|
158
|
+
Recomendación: FALLA — bloquear el merge hasta corregir el problema CRÍTICO
|
|
159
|
+
|
|
160
|
+
## Formateo requerido
|
|
161
|
+
Ejecutar: `black app/routes/user.py app/services/auth.py`
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
## Criterios de aprobación
|
|
165
|
+
|
|
166
|
+
| Estado | Condición |
|
|
167
|
+
|--------|-----------|
|
|
168
|
+
| PASA: aprobar | Sin problemas CRÍTICOS ni ALTOS |
|
|
169
|
+
| ADVERTENCIA | Solo problemas MEDIOS (merge con cautela) |
|
|
170
|
+
| FALLA: bloquear | Se encontraron problemas CRÍTICOS o ALTOS |
|
|
171
|
+
|
|
172
|
+
## Integración con otros comandos
|
|
173
|
+
|
|
174
|
+
- Usa primero la skill `flujo-tdd` para asegurar que los tests pasan
|
|
175
|
+
- Usa el agente `revisor-codigo` para aspectos no específicos de Python
|
|
176
|
+
- Usa `/revisar-python` antes de commitear
|
|
177
|
+
- Usa `/arreglar-build` si las herramientas de análisis estático fallan
|
|
178
|
+
|
|
179
|
+
## Revisiones específicas por framework
|
|
180
|
+
|
|
181
|
+
### Proyectos Django
|
|
182
|
+
El revisor verifica:
|
|
183
|
+
- Problemas de consultas N+1 (usar `select_related` y `prefetch_related`)
|
|
184
|
+
- Migraciones ausentes tras cambios en los modelos
|
|
185
|
+
- Uso de SQL crudo cuando el ORM bastaría
|
|
186
|
+
- Falta de `transaction.atomic()` en operaciones de varios pasos
|
|
187
|
+
|
|
188
|
+
### Proyectos FastAPI
|
|
189
|
+
El revisor verifica:
|
|
190
|
+
- Configuración incorrecta de CORS
|
|
191
|
+
- Modelos Pydantic para validar las peticiones
|
|
192
|
+
- Corrección de los modelos de respuesta
|
|
193
|
+
- Uso apropiado de async/await
|
|
194
|
+
- Patrones de inyección de dependencias
|
|
195
|
+
|
|
196
|
+
### Proyectos Flask
|
|
197
|
+
El revisor verifica:
|
|
198
|
+
- Gestión de contextos (contexto de aplicación, contexto de petición)
|
|
199
|
+
- Manejo de errores apropiado
|
|
200
|
+
- Organización de blueprints
|
|
201
|
+
- Gestión de la configuración
|
|
202
|
+
|
|
203
|
+
## Relacionado
|
|
204
|
+
|
|
205
|
+
- Agente: `agents/revisor-python.md`
|
|
206
|
+
- Skills: `skills/patrones-python/`, `skills/testing-python/`
|
|
207
|
+
|
|
208
|
+
## Correcciones habituales
|
|
209
|
+
|
|
210
|
+
### Añadir type hints
|
|
211
|
+
```python
|
|
212
|
+
# Antes
|
|
213
|
+
def calculate(x, y):
|
|
214
|
+
return x + y
|
|
215
|
+
|
|
216
|
+
# Después
|
|
217
|
+
from typing import Union
|
|
218
|
+
|
|
219
|
+
def calculate(x: Union[int, float], y: Union[int, float]) -> Union[int, float]:
|
|
220
|
+
return x + y
|
|
221
|
+
```
|
|
222
|
+
|
|
223
|
+
### Usar context managers
|
|
224
|
+
```python
|
|
225
|
+
# Antes
|
|
226
|
+
f = open("file.txt")
|
|
227
|
+
data = f.read()
|
|
228
|
+
f.close()
|
|
229
|
+
|
|
230
|
+
# Después
|
|
231
|
+
with open("file.txt") as f:
|
|
232
|
+
data = f.read()
|
|
233
|
+
```
|
|
234
|
+
|
|
235
|
+
### Usar comprensiones de listas
|
|
236
|
+
```python
|
|
237
|
+
# Antes
|
|
238
|
+
result = []
|
|
239
|
+
for item in items:
|
|
240
|
+
if item.active:
|
|
241
|
+
result.append(item.name)
|
|
242
|
+
|
|
243
|
+
# Después
|
|
244
|
+
result = [item.name for item in items if item.active]
|
|
245
|
+
```
|
|
246
|
+
|
|
247
|
+
### Corregir argumentos por defecto mutables
|
|
248
|
+
```python
|
|
249
|
+
# Antes
|
|
250
|
+
def append(value, items=[]):
|
|
251
|
+
items.append(value)
|
|
252
|
+
return items
|
|
253
|
+
|
|
254
|
+
# Después
|
|
255
|
+
def append(value, items=None):
|
|
256
|
+
if items is None:
|
|
257
|
+
items = []
|
|
258
|
+
items.append(value)
|
|
259
|
+
return items
|
|
260
|
+
```
|
|
261
|
+
|
|
262
|
+
### Usar f-strings (Python 3.6+)
|
|
263
|
+
```python
|
|
264
|
+
# Antes
|
|
265
|
+
name = "Alice"
|
|
266
|
+
greeting = "Hello, " + name + "!"
|
|
267
|
+
greeting2 = "Hello, {}".format(name)
|
|
268
|
+
|
|
269
|
+
# Después
|
|
270
|
+
greeting = f"Hello, {name}!"
|
|
271
|
+
```
|
|
272
|
+
|
|
273
|
+
### Corregir la concatenación de strings en bucles
|
|
274
|
+
```python
|
|
275
|
+
# Antes
|
|
276
|
+
result = ""
|
|
277
|
+
for item in items:
|
|
278
|
+
result += str(item)
|
|
279
|
+
|
|
280
|
+
# Después
|
|
281
|
+
result = "".join(str(item) for item in items)
|
|
282
|
+
```
|
|
283
|
+
|
|
284
|
+
## Compatibilidad de versiones de Python
|
|
285
|
+
|
|
286
|
+
El revisor señala cuándo el código usa funcionalidades de versiones más recientes de Python:
|
|
287
|
+
|
|
288
|
+
| Funcionalidad | Python mínimo |
|
|
289
|
+
|---------|----------------|
|
|
290
|
+
| Type hints | 3.5+ |
|
|
291
|
+
| f-strings | 3.6+ |
|
|
292
|
+
| Operador walrus (`:=`) | 3.8+ |
|
|
293
|
+
| Parámetros solo-posicionales | 3.8+ |
|
|
294
|
+
| Sentencias match | 3.10+ |
|
|
295
|
+
| Uniones de tipos (`x | None`) | 3.10+ |
|
|
296
|
+
|
|
297
|
+
Asegúrate de que el `pyproject.toml` o `setup.py` de tu proyecto especifique la versión mínima de Python correcta.
|