@saulwade/swl-ses 1.0.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/CLAUDE.md +238 -0
- package/README.md +560 -0
- package/_userland/agentes/.gitkeep +0 -0
- package/_userland/habilidades/.gitkeep +0 -0
- package/agentes/.evolved.json +9 -0
- package/agentes/accesibilidad-wcag-swl.md +692 -0
- package/agentes/arquitecto-swl.md +238 -0
- package/agentes/auto-evolucion-swl.md +854 -0
- package/agentes/backend-api-swl.md +470 -0
- package/agentes/backend-csharp-swl.md +418 -0
- package/agentes/backend-go-swl.md +388 -0
- package/agentes/backend-java-swl.md +279 -0
- package/agentes/backend-node-swl.md +477 -0
- package/agentes/backend-python-swl.md +608 -0
- package/agentes/backend-rust-swl.md +362 -0
- package/agentes/backend-workers-swl.md +480 -0
- package/agentes/cloud-infra-swl.md +485 -0
- package/agentes/consolidador-swl.md +539 -0
- package/agentes/datos-swl.md +584 -0
- package/agentes/depurador-swl.md +349 -0
- package/agentes/devops-ci-swl.md +374 -0
- package/agentes/disenador-ui-swl.md +558 -0
- package/agentes/documentador-swl.md +343 -0
- package/agentes/evals/arquitecto-swl.evals.json +56 -0
- package/agentes/evals/auto-evolucion-swl.evals.json +68 -0
- package/agentes/evals/implementador-swl.evals.json +56 -0
- package/agentes/evals/orquestador-swl.evals.json +60 -0
- package/agentes/evals/perfilador-usuario-swl.evals.json +60 -0
- package/agentes/evals/red-team-swl.evals.json +59 -0
- package/agentes/evals/revisor-codigo-swl.evals.json +59 -0
- package/agentes/frontend-angular-swl.md +627 -0
- package/agentes/frontend-css-swl.md +720 -0
- package/agentes/frontend-react-swl.md +696 -0
- package/agentes/frontend-swl.md +500 -0
- package/agentes/frontend-tailwind-swl.md +830 -0
- package/agentes/implementador-swl.md +328 -0
- package/agentes/investigador-swl.md +430 -0
- package/agentes/investigador-ux-swl.md +500 -0
- package/agentes/llm-apps-swl.md +276 -0
- package/agentes/migrador-swl.md +417 -0
- package/agentes/mobile-android-swl.md +509 -0
- package/agentes/mobile-cross-swl.md +539 -0
- package/agentes/mobile-ios-swl.md +500 -0
- package/agentes/mobile-testing-swl.md +300 -0
- package/agentes/notificador-swl.md +916 -0
- package/agentes/observabilidad-swl.md +436 -0
- package/agentes/orquestador-swl.md +884 -0
- package/agentes/pagos-swl.md +283 -0
- package/agentes/perfilador-usuario-swl.md +306 -0
- package/agentes/planificador-swl.md +402 -0
- package/agentes/producto-prd-swl.md +587 -0
- package/agentes/red-team-swl.md +216 -0
- package/agentes/release-manager-swl.md +568 -0
- package/agentes/rendimiento-swl.md +714 -0
- package/agentes/resolutor-build-swl.md +243 -0
- package/agentes/revisor-angular-swl.md +276 -0
- package/agentes/revisor-codigo-swl.md +348 -0
- package/agentes/revisor-csharp-swl.md +262 -0
- package/agentes/revisor-go-swl.md +257 -0
- package/agentes/revisor-java-swl.md +255 -0
- package/agentes/revisor-kotlin-swl.md +271 -0
- package/agentes/revisor-nextjs-swl.md +279 -0
- package/agentes/revisor-php-swl.md +269 -0
- package/agentes/revisor-react-swl.md +276 -0
- package/agentes/revisor-rust-swl.md +344 -0
- package/agentes/revisor-seguridad-swl.md +390 -0
- package/agentes/revisor-swift-swl.md +266 -0
- package/agentes/revisor-typescript-swl.md +344 -0
- package/agentes/sre-swl.md +265 -0
- package/agentes/tdd-qa-swl.md +354 -0
- package/agentes/ux-disenador-swl.md +501 -0
- package/bin/lib/bot-comandos.js +1030 -0
- package/bin/lib/bot-discovery.js +182 -0
- package/bin/lib/bot-git.js +142 -0
- package/bin/swl-ses.js +325 -0
- package/bin/swl-telegram-bot.js +442 -0
- package/bin/swl-telegram-bot.plist +21 -0
- package/bin/swl-telegram-bot.service +14 -0
- package/comandos/swl/.evolved.json +23 -0
- package/comandos/swl/actualizar.md +174 -0
- package/comandos/swl/adoptar-proyecto.md +207 -0
- package/comandos/swl/aprender.md +701 -0
- package/comandos/swl/auditar-deps.md +134 -0
- package/comandos/swl/autoresearch.md +170 -0
- package/comandos/swl/ayuda.md +224 -0
- package/comandos/swl/brainstorm.md +50 -0
- package/comandos/swl/checkpoint.md +330 -0
- package/comandos/swl/compactar.md +283 -0
- package/comandos/swl/configurar-ci.md +227 -0
- package/comandos/swl/contexto.md +112 -0
- package/comandos/swl/contribuir.md +233 -0
- package/comandos/swl/crear-skill.md +292 -0
- package/comandos/swl/cron.md +196 -0
- package/comandos/swl/dashboard.md +146 -0
- package/comandos/swl/discutir-fase.md +230 -0
- package/comandos/swl/ejecutar-fase.md +135 -0
- package/comandos/swl/evaluar-skill.md +487 -0
- package/comandos/swl/evolucion-estado.md +142 -0
- package/comandos/swl/evolucionar.md +259 -0
- package/comandos/swl/exportar-vault.md +189 -0
- package/comandos/swl/gateway.md +158 -0
- package/comandos/swl/inbox.md +116 -0
- package/comandos/swl/instalar.md +220 -0
- package/comandos/swl/instintos.md +86 -0
- package/comandos/swl/mapear-codebase.md +312 -0
- package/comandos/swl/mcp-status.md +175 -0
- package/comandos/swl/metricas.md +270 -0
- package/comandos/swl/modelo.md +102 -0
- package/comandos/swl/notificaciones.md +396 -0
- package/comandos/swl/nuevo-proyecto.md +154 -0
- package/comandos/swl/planear-fase.md +221 -0
- package/comandos/swl/plugins.md +256 -0
- package/comandos/swl/reflect-skills.md +125 -0
- package/comandos/swl/release.md +217 -0
- package/comandos/swl/revisar-impacto.md +206 -0
- package/comandos/swl/revisar.md +330 -0
- package/comandos/swl/salud.md +363 -0
- package/comandos/swl/sesiones.md +200 -0
- package/comandos/swl/skill-search.md +113 -0
- package/comandos/swl/verificar.md +585 -0
- package/comandos/swl/wiki.md +620 -0
- package/contextos/dev.md +32 -0
- package/contextos/research.md +30 -0
- package/contextos/review.md +31 -0
- package/habilidades/accesibilidad-a11y/SKILL.md +201 -0
- package/habilidades/accesibilidad-a11y/evals/evals.json +56 -0
- package/habilidades/accesibilidad-a11y/recursos/ejemplos-y-checklist-completo.md +441 -0
- package/habilidades/agent-browser/SKILL.md +218 -0
- package/habilidades/agentes-como-servicio/SKILL.md +218 -0
- package/habilidades/ai-runtime-security/SKILL.md +273 -0
- package/habilidades/angular-avanzado/SKILL.md +164 -0
- package/habilidades/angular-avanzado/recursos/ejemplos-avanzados.md +219 -0
- package/habilidades/angular-moderno/SKILL.md +186 -0
- package/habilidades/angular-moderno/evals/evals.json +45 -0
- package/habilidades/angular-moderno/recursos/ejemplos-avanzados.md +106 -0
- package/habilidades/api-rest-diseno/SKILL.md +191 -0
- package/habilidades/api-rest-diseno/recursos/openapi-template.yaml +506 -0
- package/habilidades/api-rest-diseno/recursos/referencia-api.md +140 -0
- package/habilidades/aprendizaje-continuo/SKILL.md +151 -0
- package/habilidades/aprendizaje-continuo/evals/evals.json +53 -0
- package/habilidades/aprendizaje-continuo/recursos/referencia-instintos.md +290 -0
- package/habilidades/async-python/SKILL.md +149 -0
- package/habilidades/async-python/evals/evals.json +47 -0
- package/habilidades/async-python/recursos/patrones-y-ejemplos-completos.md +292 -0
- package/habilidades/auth-patrones/.evolved.json +9 -0
- package/habilidades/auth-patrones/SKILL.md +413 -0
- package/habilidades/auth-patrones/recursos/implementaciones-completas.md +229 -0
- package/habilidades/auto-evolucion-protocolo/SKILL.md +276 -0
- package/habilidades/auto-evolucion-protocolo/evals/evals.json +55 -0
- package/habilidades/auto-evolucion-protocolo/recursos/referencia-completa.md +145 -0
- package/habilidades/autoresearch/SKILL.md +268 -0
- package/habilidades/autoresearch/evals/evals.json +41 -0
- package/habilidades/autoresearch/recursos/checklist-template.md +191 -0
- package/habilidades/autoresearch/scripts/calcular-score.js +88 -0
- package/habilidades/azure-cloud/SKILL.md +308 -0
- package/habilidades/azure-cloud/recursos/aks.md +327 -0
- package/habilidades/backend-mcp-servidor/SKILL.md +270 -0
- package/habilidades/backend-production-resilience/SKILL.md +288 -0
- package/habilidades/brainstorming/SKILL.md +295 -0
- package/habilidades/brainstorming/recursos/componentes-html.md +247 -0
- package/habilidades/build-errors-cpp/SKILL.md +270 -0
- package/habilidades/build-errors-csharp/SKILL.md +265 -0
- package/habilidades/build-errors-go/SKILL.md +306 -0
- package/habilidades/build-errors-java/SKILL.md +278 -0
- package/habilidades/build-errors-kotlin/SKILL.md +303 -0
- package/habilidades/build-errors-nextjs/SKILL.md +312 -0
- package/habilidades/build-errors-php/SKILL.md +270 -0
- package/habilidades/build-errors-python/SKILL.md +292 -0
- package/habilidades/build-errors-rust/SKILL.md +284 -0
- package/habilidades/build-errors-swift/SKILL.md +272 -0
- package/habilidades/build-errors-typescript/SKILL.md +369 -0
- package/habilidades/checklist-calidad/SKILL.md +271 -0
- package/habilidades/checklist-calidad/recursos/quality-report-template.md +148 -0
- package/habilidades/checklist-seguridad/SKILL.md +285 -0
- package/habilidades/checkpoints-verificacion/SKILL.md +298 -0
- package/habilidades/checkpoints-verificacion/recursos/checkpoint-templates.md +360 -0
- package/habilidades/ci-cd-pipelines/SKILL.md +157 -0
- package/habilidades/ci-cd-pipelines/recursos/github-actions-template.yaml +403 -0
- package/habilidades/ci-cd-pipelines/recursos/pipelines-completos.md +487 -0
- package/habilidades/cloud-aws/SKILL.md +142 -0
- package/habilidades/cloud-aws/recursos/servicios-aws-referencia.md +321 -0
- package/habilidades/compactacion-contexto/SKILL.md +247 -0
- package/habilidades/contenedores-docker/SKILL.md +137 -0
- package/habilidades/contenedores-docker/recursos/dockerfile-template.dockerfile +160 -0
- package/habilidades/contenedores-docker/recursos/ejemplos-y-configuraciones.md +327 -0
- package/habilidades/context-builder/SKILL.md +170 -0
- package/habilidades/control-profundidad/SKILL.md +128 -0
- package/habilidades/csharp-experto/SKILL.md +322 -0
- package/habilidades/csharp-patrones/SKILL.md +316 -0
- package/habilidades/csharp-testing/SKILL.md +286 -0
- package/habilidades/css-moderno/SKILL.md +166 -0
- package/habilidades/css-moderno/evals/evals.json +43 -0
- package/habilidades/css-moderno/recursos/ejemplos-y-patrones-completos.md +337 -0
- package/habilidades/datos-etl/SKILL.md +129 -0
- package/habilidades/datos-etl/recursos/implementaciones-completas.md +322 -0
- package/habilidades/dbml-experto/SKILL.md +339 -0
- package/habilidades/dbml-experto/evals/evals.json +56 -0
- package/habilidades/dependencias-auditoria/SKILL.md +320 -0
- package/habilidades/deprecacion-migracion/SKILL.md +169 -0
- package/habilidades/deprecacion-migracion/recursos/implementaciones-completas.md +220 -0
- package/habilidades/design-tokens/SKILL.md +158 -0
- package/habilidades/design-tokens/recursos/tokens-y-configuracion.md +363 -0
- package/habilidades/devsecops-pipeline-security/SKILL.md +309 -0
- package/habilidades/diagrama-arquitectura/SKILL.md +165 -0
- package/habilidades/diagrama-arquitectura/assets/template.html +276 -0
- package/habilidades/discutir-fase/SKILL.md +188 -0
- package/habilidades/diseno-herramientas-agente/SKILL.md +199 -0
- package/habilidades/diseno-responsivo/SKILL.md +186 -0
- package/habilidades/diseno-responsivo/recursos/ejemplos-layouts.md +156 -0
- package/habilidades/django-experto/SKILL.md +205 -0
- package/habilidades/django-experto/recursos/async-django.md +390 -0
- package/habilidades/django-experto/recursos/drf-patrones.md +438 -0
- package/habilidades/django-experto/recursos/orm-avanzado.md +382 -0
- package/habilidades/django-experto/recursos/referencia-completa.md +188 -0
- package/habilidades/django-experto/recursos/testing-django.md +415 -0
- package/habilidades/doc-sync/SKILL.md +280 -0
- package/habilidades/drift-detection/SKILL.md +179 -0
- package/habilidades/ejecutar-fase/SKILL.md +468 -0
- package/habilidades/estilo-sin-ai-isms/SKILL.md +775 -0
- package/habilidades/estilo-sin-ai-isms/evals/evals.json +63 -0
- package/habilidades/estilo-sin-ai-isms/scripts/detectar_aiisms.py +500 -0
- package/habilidades/estructura-proyecto-claude/SKILL.md +215 -0
- package/habilidades/estructura-proyecto-claude/recursos/claude-md-template.md +261 -0
- package/habilidades/estructura-proyecto-claude/recursos/configuracion-y-extensiones.md +176 -0
- package/habilidades/estructura-proyecto-claude/recursos/frontmatter-y-hooks-referencia.md +289 -0
- package/habilidades/estructura-proyecto-claude/recursos/mcp-json-template.json +77 -0
- package/habilidades/estructura-proyecto-claude/recursos/variantes-por-stack.md +177 -0
- package/habilidades/evaluacion-agentes/SKILL.md +314 -0
- package/habilidades/event-driven/SKILL.md +153 -0
- package/habilidades/event-driven/recursos/implementaciones-completas.md +423 -0
- package/habilidades/extraccion-documentos/SKILL.md +221 -0
- package/habilidades/extractor-de-aprendizajes/.evolved.json +9 -0
- package/habilidades/extractor-de-aprendizajes/SKILL.md +311 -0
- package/habilidades/extractor-de-aprendizajes/evals/evals.json +55 -0
- package/habilidades/fastapi-experto/SKILL.md +221 -0
- package/habilidades/fastapi-experto/recursos/async-patterns.md +438 -0
- package/habilidades/fastapi-experto/recursos/dependency-injection.md +330 -0
- package/habilidades/fastapi-experto/recursos/referencia-completa.md +79 -0
- package/habilidades/fastapi-experto/recursos/testing-httpx.md +420 -0
- package/habilidades/filament-admin/SKILL.md +290 -0
- package/habilidades/frontend-avanzado/SKILL.md +257 -0
- package/habilidades/frontend-avanzado/recursos/apis-nativas-ejemplos.md +341 -0
- package/habilidades/gcp-cloud/SKILL.md +260 -0
- package/habilidades/gcp-cloud/recursos/gke.md +234 -0
- package/habilidades/gcp-cloud/recursos/terraform-gcp.md +307 -0
- package/habilidades/generacion-mermaid/SKILL.md +229 -0
- package/habilidades/git-worktrees-paralelo/SKILL.md +270 -0
- package/habilidades/go-experto/SKILL.md +305 -0
- package/habilidades/go-patrones/SKILL.md +299 -0
- package/habilidades/go-testing/SKILL.md +291 -0
- package/habilidades/graphql-experto/SKILL.md +323 -0
- package/habilidades/guardrail-semantico/SKILL.md +282 -0
- package/habilidades/harness-claude-code/SKILL.md +299 -0
- package/habilidades/iam-secretos/SKILL.md +265 -0
- package/habilidades/iam-secretos/recursos/implementaciones-completas.md +356 -0
- package/habilidades/infra-github-actions/SKILL.md +166 -0
- package/habilidades/instalar-sistema/.evolved.json +9 -0
- package/habilidades/instalar-sistema/SKILL.md +221 -0
- package/habilidades/java-experto/SKILL.md +290 -0
- package/habilidades/java-patrones/SKILL.md +275 -0
- package/habilidades/java-testing/SKILL.md +288 -0
- package/habilidades/kotlin-compose/SKILL.md +278 -0
- package/habilidades/kotlin-compose/recursos/animaciones-performance.md +93 -0
- package/habilidades/kotlin-experto/SKILL.md +318 -0
- package/habilidades/kotlin-testing/SKILL.md +267 -0
- package/habilidades/kotlin-testing/recursos/testing-avanzado.md +74 -0
- package/habilidades/kubernetes-orquestacion/SKILL.md +152 -0
- package/habilidades/kubernetes-orquestacion/recursos/manifiestos-completos.md +452 -0
- package/habilidades/langchain-langraph/SKILL.md +386 -0
- package/habilidades/langchain-langraph/recursos/evaluacion-rag.md +321 -0
- package/habilidades/langchain-langraph/recursos/rag-maturity-model.md +225 -0
- package/habilidades/langchain-langraph/recursos/vectorstores.md +306 -0
- package/habilidades/legacy-code-rescue/SKILL.md +267 -0
- package/habilidades/likec4-experto/SKILL.md +412 -0
- package/habilidades/likec4-experto/evals/evals.json +69 -0
- package/habilidades/manejo-errores/.evolved.json +9 -0
- package/habilidades/manejo-errores/SKILL.md +407 -0
- package/habilidades/manejo-errores/recursos/implementaciones-completas.md +248 -0
- package/habilidades/mapear-codebase/SKILL.md +275 -0
- package/habilidades/memoria-busqueda/SKILL.md +194 -0
- package/habilidades/memoria-busqueda/evals/evals.json +44 -0
- package/habilidades/meta-skills-estandar/SKILL.md +298 -0
- package/habilidades/meta-skills-estandar/recursos/anti-patrones-y-leyes.md +205 -0
- package/habilidades/meta-skills-estandar/recursos/frameworks-seguridad.md +107 -0
- package/habilidades/meta-skills-estandar/recursos/idiomas-framework.md +60 -0
- package/habilidades/meta-skills-estandar/recursos/skills-as-agents.md +163 -0
- package/habilidades/microservicios/SKILL.md +155 -0
- package/habilidades/microservicios/recursos/patrones-y-ejemplos-completos.md +325 -0
- package/habilidades/mobile-flutter/SKILL.md +199 -0
- package/habilidades/mobile-flutter/recursos/ejemplos-completos.md +319 -0
- package/habilidades/mobile-react-native/SKILL.md +176 -0
- package/habilidades/mobile-react-native/recursos/ejemplos-completos.md +216 -0
- package/habilidades/mongodb-experto/SKILL.md +302 -0
- package/habilidades/monitoring-alertas/SKILL.md +201 -0
- package/habilidades/monitoring-alertas/recursos/instrumentacion-y-alertas.md +301 -0
- package/habilidades/nestjs-experto/SKILL.md +307 -0
- package/habilidades/nestjs-experto/recursos/guards-interceptors.md +339 -0
- package/habilidades/nestjs-experto/recursos/modulos-di.md +287 -0
- package/habilidades/nestjs-experto/recursos/testing-nestjs.md +354 -0
- package/habilidades/nextjs-experto/SKILL.md +335 -0
- package/habilidades/nextjs-patrones/SKILL.md +303 -0
- package/habilidades/nextjs-testing/SKILL.md +331 -0
- package/habilidades/node-experto/.evolved.json +9 -0
- package/habilidades/node-experto/SKILL.md +266 -0
- package/habilidades/node-experto/recursos/patrones-completos.md +283 -0
- package/habilidades/notificaciones-multicanal/SKILL.md +159 -0
- package/habilidades/notificaciones-multicanal/recursos/config-template.json +115 -0
- package/habilidades/notificaciones-multicanal/recursos/configuracion-y-templates.md +303 -0
- package/habilidades/nuevo-proyecto/SKILL.md +204 -0
- package/habilidades/orquestacion-async/SKILL.md +303 -0
- package/habilidades/paid-media-tracking/SKILL.md +269 -0
- package/habilidades/paid-media-tracking/recursos/auditoria-tracking.md +220 -0
- package/habilidades/paid-media-tracking/recursos/google-ads-api.md +215 -0
- package/habilidades/patrones-python/SKILL.md +228 -0
- package/habilidades/patrones-python/evals/evals.json +56 -0
- package/habilidades/patrones-python/recursos/patrones-avanzados.md +469 -0
- package/habilidades/patrones-python/recursos/referencia-completa.md +202 -0
- package/habilidades/perfil-usuario/SKILL.md +200 -0
- package/habilidades/perfil-usuario/evals/evals.json +55 -0
- package/habilidades/performance-baseline/SKILL.md +297 -0
- package/habilidades/php-experto/SKILL.md +291 -0
- package/habilidades/php-patrones/SKILL.md +306 -0
- package/habilidades/php-testing/SKILL.md +280 -0
- package/habilidades/planear-fase/SKILL.md +269 -0
- package/habilidades/postgresql-experto/SKILL.md +151 -0
- package/habilidades/postgresql-experto/evals/evals.json +53 -0
- package/habilidades/postgresql-experto/recursos/referencia-completa.md +215 -0
- package/habilidades/prevencion-racionalizacion/SKILL.md +175 -0
- package/habilidades/prevencion-sobreingenieria/SKILL.md +323 -0
- package/habilidades/privacy-memoria/SKILL.md +141 -0
- package/habilidades/privacy-memoria/evals/evals.json +43 -0
- package/habilidades/prompt-engineering/SKILL.md +518 -0
- package/habilidades/prompt-engineering/recursos/patrones-avanzados.md +467 -0
- package/habilidades/rag-arquitectura/SKILL.md +338 -0
- package/habilidades/rails-experto/SKILL.md +237 -0
- package/habilidades/rails-experto/recursos/active-record.md +260 -0
- package/habilidades/rails-experto/recursos/hotwire-turbo.md +293 -0
- package/habilidades/rails-experto/recursos/testing-rspec.md +362 -0
- package/habilidades/react-experto/SKILL.md +209 -0
- package/habilidades/react-experto/evals/evals.json +55 -0
- package/habilidades/react-experto/recursos/patrones-y-ejemplos-completos.md +240 -0
- package/habilidades/react-optimizacion/SKILL.md +174 -0
- package/habilidades/react-optimizacion/recursos/patrones-avanzados.md +138 -0
- package/habilidades/redis-experto/SKILL.md +305 -0
- package/habilidades/release-semver/.evolved.json +9 -0
- package/habilidades/release-semver/SKILL.md +248 -0
- package/habilidades/release-semver/scripts/generar-changelog.sh +238 -0
- package/habilidades/rust-experto/SKILL.md +400 -0
- package/habilidades/rust-patrones/SKILL.md +296 -0
- package/habilidades/rust-testing/SKILL.md +311 -0
- package/habilidades/seguridad-skills-ia/SKILL.md +262 -0
- package/habilidades/sql-optimizacion/SKILL.md +200 -0
- package/habilidades/sql-optimizacion/evals/evals.json +54 -0
- package/habilidades/sql-optimizacion/recursos/patrones-sql-avanzados.md +131 -0
- package/habilidades/sre-patrones/SKILL.md +333 -0
- package/habilidades/sre-patrones/recursos/chaos-engineering.md +241 -0
- package/habilidades/sre-patrones/recursos/oncall-design.md +236 -0
- package/habilidades/stripe-pagos/SKILL.md +550 -0
- package/habilidades/stripe-pagos/recursos/errores-reintentos.md +390 -0
- package/habilidades/stripe-pagos/recursos/stripe-connect.md +290 -0
- package/habilidades/structured-outputs/SKILL.md +343 -0
- package/habilidades/swift-experto/SKILL.md +320 -0
- package/habilidades/swift-experto/recursos/keychain-y-wrappers.md +110 -0
- package/habilidades/swift-patrones/SKILL.md +313 -0
- package/habilidades/swift-patrones/recursos/tca-ejemplo-completo.md +113 -0
- package/habilidades/swift-testing/SKILL.md +254 -0
- package/habilidades/swift-testing/recursos/xcuitest-planes.md +143 -0
- package/habilidades/swl-dashboard/SKILL.md +370 -0
- package/habilidades/swl-markitdown/SKILL.md +285 -0
- package/habilidades/swl-markitdown/evals/evals.json +52 -0
- package/habilidades/swl-revisar-impacto/SKILL.md +233 -0
- package/habilidades/tailwind-experto/SKILL.md +240 -0
- package/habilidades/tailwind-experto/recursos/referencia-completa.md +184 -0
- package/habilidades/tdd-workflow/SKILL.md +293 -0
- package/habilidades/terraform-experto/SKILL.md +321 -0
- package/habilidades/testing-python/SKILL.md +340 -0
- package/habilidades/testing-python/recursos/ejemplos-completos.md +167 -0
- package/habilidades/threat-model-lite/SKILL.md +246 -0
- package/habilidades/tracing-processor/SKILL.md +212 -0
- package/habilidades/tracking-measurement/SKILL.md +239 -0
- package/habilidades/tracking-measurement/recursos/consent-mode.md +231 -0
- package/habilidades/tracking-measurement/recursos/gtm-datalayer.md +216 -0
- package/habilidades/tracking-measurement/recursos/meta-capi.md +262 -0
- package/habilidades/typescript-avanzado/SKILL.md +144 -0
- package/habilidades/typescript-avanzado/evals/evals.json +55 -0
- package/habilidades/typescript-avanzado/recursos/patrones-y-ejemplos-completos.md +298 -0
- package/habilidades/typescript-diagnosticos/SKILL.md +513 -0
- package/habilidades/ux-diseno/SKILL.md +116 -0
- package/habilidades/ux-diseno/evals/evals.json +43 -0
- package/habilidades/ux-diseno/recursos/patrones-ux-referencia.md +214 -0
- package/habilidades/validacion-ci-sistema/SKILL.md +136 -0
- package/habilidades/validacion-ci-sistema/recursos/validadores-completos.md +369 -0
- package/habilidades/validacion-ci-sistema/scripts/validar-sistema.sh +286 -0
- package/habilidades/verificacion-evidencia/SKILL.md +160 -0
- package/habilidades/verificar-trabajo/SKILL.md +303 -0
- package/habilidades/verificar-trabajo/recursos/plantilla-verificacion.md +60 -0
- package/habilidades/wiki-conocimiento/SKILL.md +276 -0
- package/habilidades/wireframes-flujos/SKILL.md +212 -0
- package/habilidades/wireframes-flujos/recursos/referencia-completa.md +192 -0
- package/habilidades/workflow-claude-code/SKILL.md +260 -0
- package/habilidades/workflow-claude-code/recursos/referencia-completa.md +109 -0
- package/hooks/_run-hook.sh +57 -0
- package/hooks/actualizar-perfil-usuario.js +364 -0
- package/hooks/agente-lifecycle.js +71 -0
- package/hooks/aiisms-detector.js +173 -0
- package/hooks/audit-trail.js +204 -0
- package/hooks/auto-background.js +97 -0
- package/hooks/auto-consolidacion.js +178 -0
- package/hooks/auto-evolucion.js +666 -0
- package/hooks/auto-restaurar-settings.js +360 -0
- package/hooks/calidad-pre-commit.js +929 -0
- package/hooks/calidad-typescript.js +511 -0
- package/hooks/captura-feedback-usuario.js +148 -0
- package/hooks/check-update.js +211 -0
- package/hooks/clasificador-mensajes.js +271 -0
- package/hooks/degradacion-instintos.js +272 -0
- package/hooks/escaneo-secretos.js +389 -0
- package/hooks/extraccion-aprendizajes.js +763 -0
- package/hooks/grafo-contexto.js +129 -0
- package/hooks/graph-update.js +67 -0
- package/hooks/guardrail-modelo.js +247 -0
- package/hooks/inbox-aviso.js +75 -0
- package/hooks/inyeccion-contexto.js +246 -0
- package/hooks/lib/abort-registry.js +214 -0
- package/hooks/lib/agent-backend.js +210 -0
- package/hooks/lib/agent-comms.js +263 -0
- package/hooks/lib/agent-issue-codes.js +284 -0
- package/hooks/lib/agent-matcher.js +189 -0
- package/hooks/lib/async-hook-registry.js +252 -0
- package/hooks/lib/atomic-write.js +130 -0
- package/hooks/lib/auto-consolidator.js +335 -0
- package/hooks/lib/canary-skills.js +187 -0
- package/hooks/lib/consolidation-lock.js +291 -0
- package/hooks/lib/context-builder.js +430 -0
- package/hooks/lib/context-compressor.js +657 -0
- package/hooks/lib/convergence-detector.js +105 -0
- package/hooks/lib/delegation-tracker.js +198 -0
- package/hooks/lib/detectar-package-manager.js +423 -0
- package/hooks/lib/edit-accumulator.js +171 -0
- package/hooks/lib/error-classifier.js +308 -0
- package/hooks/lib/event-bus.js +112 -0
- package/hooks/lib/evolution-tracker.js +442 -0
- package/hooks/lib/execution-state.js +316 -0
- package/hooks/lib/fingerprint-id.js +135 -0
- package/hooks/lib/gateway-notify.js +116 -0
- package/hooks/lib/graph-security.js +75 -0
- package/hooks/lib/guardrail-metrics.js +202 -0
- package/hooks/lib/hook-circuit-breaker.js +206 -0
- package/hooks/lib/loop-detector.js +267 -0
- package/hooks/lib/mcp-health.js +184 -0
- package/hooks/lib/mcp-pool.js +436 -0
- package/hooks/lib/memory-search.js +506 -0
- package/hooks/lib/merkle-audit.js +96 -0
- package/hooks/lib/model-router.js +222 -0
- package/hooks/lib/normalize-error.js +324 -0
- package/hooks/lib/normalize-input.js +65 -0
- package/hooks/lib/nudge-tracker.js +306 -0
- package/hooks/lib/otlp-exporter.js +365 -0
- package/hooks/lib/performance-marks.js +239 -0
- package/hooks/lib/privacy-filter.js +128 -0
- package/hooks/lib/prompt-injection-scanner.js +209 -0
- package/hooks/lib/provenance-tracker.js +183 -0
- package/hooks/lib/rate-limit-tracker.js +253 -0
- package/hooks/lib/reflect-classifier.js +164 -0
- package/hooks/lib/resource-quota.js +122 -0
- package/hooks/lib/retry-jitter.js +165 -0
- package/hooks/lib/risk-engine.js +368 -0
- package/hooks/lib/run-log.js +408 -0
- package/hooks/lib/session-fts.js +379 -0
- package/hooks/lib/session-store.js +293 -0
- package/hooks/lib/singleton-guard.js +159 -0
- package/hooks/lib/skill-auditor.js +588 -0
- package/hooks/lib/sync-status.js +228 -0
- package/hooks/lib/taint-tracker.js +107 -0
- package/hooks/lib/task-service.js +295 -0
- package/hooks/lib/tech-skills-map.js +146 -0
- package/hooks/lib/telegram-cliente.js +159 -0
- package/hooks/lib/telegram-config.js +170 -0
- package/hooks/lib/token-budget.js +156 -0
- package/hooks/lib/token-estimator.js +420 -0
- package/hooks/lib/toon-compressor.js +245 -0
- package/hooks/lib/usage-model.js +183 -0
- package/hooks/lib/variable-resolver.js +230 -0
- package/hooks/linea-estado.js +324 -0
- package/hooks/metricas-evolucion.js +209 -0
- package/hooks/monitor-contexto.js +325 -0
- package/hooks/notificacion-sesion-stop.js +198 -0
- package/hooks/notificacion-telegram-notification.js +4 -0
- package/hooks/notificacion-telegram-subagent.js +4 -0
- package/hooks/notificacion-telegram.js +267 -0
- package/hooks/preservar-estado-pre-compact.js +150 -0
- package/hooks/proteccion-rutas.js +366 -0
- package/hooks/registro-turnos.js +209 -0
- package/hooks/resumen-sesion.js +249 -0
- package/hooks/risk-scoring.js +323 -0
- package/hooks/rotar-audit-auto.js +122 -0
- package/hooks/sugerir-regenerar-inventario.js +170 -0
- package/hooks/telemetria-agentes.js +167 -0
- package/hooks/tracking-costos.js +688 -0
- package/instintos/global.yaml +8 -0
- package/instintos/perfil-usuario.yaml +53 -0
- package/instintos/prompt-appendices.yaml +57 -0
- package/instintos/proyecto.yaml +372 -0
- package/manifiestos/gateway-config.json +77 -0
- package/manifiestos/handoff-context.json +223 -0
- package/manifiestos/hook-profiles.json +44 -0
- package/manifiestos/hooks-config.json +360 -0
- package/manifiestos/modulos.json +1173 -0
- package/manifiestos/perfiles.json +404 -0
- package/package.json +86 -0
- package/plantillas/ESTADO.md +109 -0
- package/plantillas/HOJA-RUTA.md +143 -0
- package/plantillas/PROYECTO.md +122 -0
- package/plantillas/REQUISITOS.md +132 -0
- package/plantillas/auditor-veto-template.md +105 -0
- package/plantillas/github-workflows/README.md +47 -0
- package/plantillas/github-workflows/release-please.yml +44 -0
- package/plantillas/github-workflows/swl-ci.yml +107 -0
- package/plantillas/github-workflows/swl-security.yml +51 -0
- package/plantillas/mcp-mineru.json +13 -0
- package/plantillas/research/ARQUITECTURA.md +220 -0
- package/plantillas/research/FUNCIONALIDADES.md +175 -0
- package/plantillas/research/RESUMEN.md +165 -0
- package/plantillas/research/STACK.md +233 -0
- package/plantillas/research/TRAMPAS.md +299 -0
- package/plantillas/skill-evals-template.json +44 -0
- package/plugin.json +343 -0
- package/reglas/accesibilidad.md +269 -0
- package/reglas/api-diseno.md +400 -0
- package/reglas/arquitectura.md +352 -0
- package/reglas/brevedad-output.md +124 -0
- package/reglas/cloud-infra.md +247 -0
- package/reglas/docs.md +245 -0
- package/reglas/estilo-codigo.md +201 -0
- package/reglas/git-workflow.md +245 -0
- package/reglas/gobernanza.md +271 -0
- package/reglas/harness-claude-code.md +213 -0
- package/reglas/hooks.md +186 -0
- package/reglas/lenguajes/csharp/estilo-codigo.md +231 -0
- package/reglas/lenguajes/csharp/hooks.md +281 -0
- package/reglas/lenguajes/csharp/patrones.md +226 -0
- package/reglas/lenguajes/csharp/seguridad.md +258 -0
- package/reglas/lenguajes/csharp/testing.md +176 -0
- package/reglas/lenguajes/go/estilo-codigo.md +195 -0
- package/reglas/lenguajes/go/hooks.md +249 -0
- package/reglas/lenguajes/go/patrones.md +249 -0
- package/reglas/lenguajes/go/seguridad.md +225 -0
- package/reglas/lenguajes/go/testing.md +272 -0
- package/reglas/lenguajes/java/estilo-codigo.md +217 -0
- package/reglas/lenguajes/java/hooks.md +251 -0
- package/reglas/lenguajes/java/patrones.md +226 -0
- package/reglas/lenguajes/java/seguridad.md +233 -0
- package/reglas/lenguajes/java/testing.md +238 -0
- package/reglas/lenguajes/kotlin/estilo-codigo.md +208 -0
- package/reglas/lenguajes/kotlin/hooks.md +245 -0
- package/reglas/lenguajes/kotlin/patrones.md +201 -0
- package/reglas/lenguajes/kotlin/seguridad.md +202 -0
- package/reglas/lenguajes/kotlin/testing.md +236 -0
- package/reglas/lenguajes/nextjs/estilo-codigo.md +175 -0
- package/reglas/lenguajes/nextjs/hooks.md +186 -0
- package/reglas/lenguajes/nextjs/patrones.md +225 -0
- package/reglas/lenguajes/nextjs/seguridad.md +216 -0
- package/reglas/lenguajes/nextjs/testing.md +193 -0
- package/reglas/lenguajes/php/estilo-codigo.md +228 -0
- package/reglas/lenguajes/php/hooks.md +165 -0
- package/reglas/lenguajes/php/patrones.md +233 -0
- package/reglas/lenguajes/php/seguridad.md +186 -0
- package/reglas/lenguajes/php/testing.md +205 -0
- package/reglas/lenguajes/rust/estilo-codigo.md +207 -0
- package/reglas/lenguajes/rust/hooks.md +240 -0
- package/reglas/lenguajes/rust/patrones.md +250 -0
- package/reglas/lenguajes/rust/seguridad.md +221 -0
- package/reglas/lenguajes/rust/testing.md +194 -0
- package/reglas/lenguajes/swift/estilo-codigo.md +238 -0
- package/reglas/lenguajes/swift/hooks.md +257 -0
- package/reglas/lenguajes/swift/patrones.md +235 -0
- package/reglas/lenguajes/swift/seguridad.md +248 -0
- package/reglas/lenguajes/swift/testing.md +242 -0
- package/reglas/markitdown.md +60 -0
- package/reglas/memoria-consolidada.md +209 -0
- package/reglas/patrones.md +225 -0
- package/reglas/performance.md +195 -0
- package/reglas/pruebas.md +159 -0
- package/reglas/seguridad-agentes.md +351 -0
- package/reglas/seguridad.md +151 -0
- package/reglas/skills-estandar.md +373 -0
- package/reglas/testing.md +193 -0
- package/schemas/agent-contract.json +176 -0
- package/schemas/agent-frontmatter.schema.json +149 -0
- package/schemas/agent-message.schema.json +53 -0
- package/schemas/agent-output-implementacion.schema.json +85 -0
- package/schemas/agent-output-planificacion.schema.json +113 -0
- package/schemas/agent-output-review.schema.json +78 -0
- package/schemas/diary-entry.schema.json +80 -0
- package/schemas/hook-profiles.schema.json +39 -0
- package/schemas/hooks-config.schema.json +74 -0
- package/schemas/instinct.schema.json +115 -0
- package/schemas/modulos.schema.json +29 -0
- package/schemas/perfiles.schema.json +28 -0
- package/schemas/plugin.schema.json +64 -0
- package/schemas/skill-evals.schema.json +95 -0
- package/schemas/skill-frontmatter.schema.json +170 -0
- package/scripts/actualizar.js +145 -0
- package/scripts/audit-skills.sh +78 -0
- package/scripts/auditar-agentes-gaps.js +149 -0
- package/scripts/auditar-cobertura-frameworks.js +241 -0
- package/scripts/auditar-skills-gaps.js +206 -0
- package/scripts/bootstrap-instintos.js +259 -0
- package/scripts/check-update.js +109 -0
- package/scripts/comandos/agents.js +105 -0
- package/scripts/comandos/info.js +108 -0
- package/scripts/comandos/install-asistido.js +186 -0
- package/scripts/comandos/skills.js +211 -0
- package/scripts/configurar-branch-protection.js +418 -0
- package/scripts/daemon-swl.py +388 -0
- package/scripts/desinstalar.js +130 -0
- package/scripts/doctor.js +559 -0
- package/scripts/field-report.js +199 -0
- package/scripts/generar-inventario.js +317 -0
- package/scripts/inbox-tmux-inject.js +161 -0
- package/scripts/inferir-herramientas-permitidas.js +586 -0
- package/scripts/inicializar.js +133 -0
- package/scripts/instalador.js +1031 -0
- package/scripts/instalar-git-hook.js +122 -0
- package/scripts/lib/agp-frontmatter.js +222 -0
- package/scripts/lib/append-con-marcadores.js +199 -0
- package/scripts/lib/artefactos-python.js +43 -0
- package/scripts/lib/audit-query.js +221 -0
- package/scripts/lib/autostart-linux.js +347 -0
- package/scripts/lib/autostart-macos.js +360 -0
- package/scripts/lib/autostart-windows.js +307 -0
- package/scripts/lib/budget-enforcer.js +252 -0
- package/scripts/lib/claude-sessions.js +285 -0
- package/scripts/lib/configurar-ci.js +380 -0
- package/scripts/lib/console-span-exporter.js +92 -0
- package/scripts/lib/contadores-inventario.js +217 -0
- package/scripts/lib/dashboard-widgets.js +290 -0
- package/scripts/lib/detectar-runtime.js +279 -0
- package/scripts/lib/detectar-stack.js +187 -0
- package/scripts/lib/diary-entry.js +234 -0
- package/scripts/lib/drift-detector.js +545 -0
- package/scripts/lib/estado.js +124 -0
- package/scripts/lib/gestor-componentes.js +243 -0
- package/scripts/lib/gitignore-manifest.js +305 -0
- package/scripts/lib/graph-analyze.py +556 -0
- package/scripts/lib/graph-builder.py +485 -0
- package/scripts/lib/graph-cluster.py +259 -0
- package/scripts/lib/health-row.js +168 -0
- package/scripts/lib/hooks-settings.js +789 -0
- package/scripts/lib/manifiestos.js +138 -0
- package/scripts/lib/mc-client.js +137 -0
- package/scripts/lib/notificaciones-telegram.js +1107 -0
- package/scripts/lib/npm-version.js +261 -0
- package/scripts/lib/paquetes-conocidos.js +50 -0
- package/scripts/lib/preservar-usuario.js +586 -0
- package/scripts/lib/prompt-builder.js +264 -0
- package/scripts/lib/resolver-externo.js +332 -0
- package/scripts/lib/schedule-parser.js +305 -0
- package/scripts/lib/scoring-instintos.js +240 -0
- package/scripts/lib/seguridad.js +160 -0
- package/scripts/lib/selector-interactivo.js +152 -0
- package/scripts/lib/semantic-search.js +242 -0
- package/scripts/lib/skill-discovery.js +234 -0
- package/scripts/lib/skill-metrics.js +246 -0
- package/scripts/lib/skill-normalizer.js +112 -0
- package/scripts/lib/skills-hub.js +340 -0
- package/scripts/lib/span-schema.js +134 -0
- package/scripts/lib/tool-cost-analyzer.js +255 -0
- package/scripts/lib/tracing-processor-interface.js +286 -0
- package/scripts/lib/transformadores/base.js +80 -0
- package/scripts/lib/transformadores/claude.js +124 -0
- package/scripts/lib/transformadores/codex.js +115 -0
- package/scripts/lib/transformadores/copilot.js +106 -0
- package/scripts/lib/transformadores/gemini.js +74 -0
- package/scripts/lib/transformadores/index.js +35 -0
- package/scripts/lib/transformadores/opencode.js +75 -0
- package/scripts/lib/ui.js +259 -0
- package/scripts/limpiar-artefactos-python.js +131 -0
- package/scripts/mcp-orchestrator.py +386 -0
- package/scripts/mcp-pool-manager.py +352 -0
- package/scripts/mcp-telemetry.py +378 -0
- package/scripts/poblar-evolvable.js +226 -0
- package/scripts/publicar.js +287 -0
- package/scripts/reflect-skills.js +403 -0
- package/scripts/rotar-audit-logs.js +185 -0
- package/scripts/run-skill-evals.js +242 -0
- package/scripts/smoke-test.js +374 -0
- package/scripts/token-analysis.py +471 -0
- package/scripts/validar-manifest.js +195 -0
- package/scripts/validar-memoria.js +321 -0
- package/scripts/validar-tests-aislamiento.js +184 -0
- package/scripts/validar-tokens-test.js +208 -0
- package/scripts/validar.js +147 -0
- package/scripts/validate-markdown.py +339 -0
- package/scripts/validate-skills.py +385 -0
- package/scripts/vendor/claude-usage/README.md +116 -0
- package/scripts/vendor/claude-usage/cli.py +334 -0
- package/scripts/vendor/claude-usage/dashboard.py +795 -0
- package/scripts/vendor/claude-usage/scanner.py +467 -0
- package/scripts/vendor/markitdown/cli.py +194 -0
- package/scripts/verificar-evolucion.js +289 -0
- package/scripts/verificar-release.js +494 -0
|
@@ -0,0 +1,775 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: estilo-sin-ai-isms
|
|
3
|
+
description: >
|
|
4
|
+
Audita y reescribe texto en español de México para eliminar "AI-isms" — patrones
|
|
5
|
+
que delatan escritura por IA: aperturas de chatbot, inflación significativa,
|
|
6
|
+
transiciones genéricas, inflación de vocabulario, sinonimia forzada, conclusiones
|
|
7
|
+
formulaicas, uniformidad rítmica. Cargar cuando un agente SWL genere documentación,
|
|
8
|
+
ADRs, resúmenes, mensajes de commit, PLAN.md, RESUMEN.md, APRENDIZAJES.md, o
|
|
9
|
+
cualquier prosa destinada a humanos. Dos modos: rewrite (reescribe) y detect
|
|
10
|
+
(solo señala). NO cargar para código fuente, JSON de configuración, schemas,
|
|
11
|
+
o salida estrictamente determinista.
|
|
12
|
+
version: "1.1.0"
|
|
13
|
+
herramientasPermitidas: [Read, Bash]
|
|
14
|
+
exclusiones:
|
|
15
|
+
- "No cargar para reescribir código fuente, JSON de configuración, schemas, trazas JSONL, mensajes de error del sistema o cualquier salida determinista — este skill opera solo sobre prosa destinada a humanos."
|
|
16
|
+
- "No cargar para mejorar brevedad o eliminar repetición en output entre agentes — eso cae bajo `brevedad-output.md`; este skill detecta patrones semánticos de generación IA, no verbosidad genérica."
|
|
17
|
+
- "No cargar cuando el texto a auditar ya fue validado como correcto por el usuario en esta sesión — re-auditar introduce cambios sobre texto que el usuario aprobó."
|
|
18
|
+
- "No cargar para traducir o corregir gramática — este skill no valida ortografía ni sintaxis, asume texto bien escrito y detecta solo patrones de escritura por IA."
|
|
19
|
+
evolvable: true # default para skill estandar
|
|
20
|
+
---
|
|
21
|
+
# Estilo sin AI-isms — Auditoría y reescritura de prosa generada
|
|
22
|
+
|
|
23
|
+
Editas texto en **español de México** para eliminar patrones que hacen que la prosa
|
|
24
|
+
suene a máquina. El objetivo es que el texto producido por agentes SWL suene escrito
|
|
25
|
+
por una persona técnica: directo, específico, con voz propia y variedad rítmica.
|
|
26
|
+
|
|
27
|
+
## Cuándo cargar esta skill
|
|
28
|
+
|
|
29
|
+
- Antes de emitir documentación, ADRs, `PROYECTO.md`, `RESUMEN.md`, `VERIFICACION.md`,
|
|
30
|
+
`APRENDIZAJES.md`, o mensajes de commit largos.
|
|
31
|
+
- Como segunda pasada obligatoria al final de `/swl:aprender`, `/swl:ejecutar-fase`
|
|
32
|
+
o `/swl:release`.
|
|
33
|
+
- Cuando el usuario pida "reescribe esto sin muletillas de IA" o similar.
|
|
34
|
+
- Antes de contribuir un skill nuevo al core (`/swl:contribuir`).
|
|
35
|
+
|
|
36
|
+
**No cargar** para código, JSON, YAML, CSV, logs, traces, schemas, ni para salidas
|
|
37
|
+
estrictamente deterministas (outputs de tool, comandos CLI, mensajes de error
|
|
38
|
+
del sistema).
|
|
39
|
+
|
|
40
|
+
---
|
|
41
|
+
|
|
42
|
+
## Modos de operación
|
|
43
|
+
|
|
44
|
+
**`rewrite`** (default) — Detecta AI-isms **y reescribe** el texto. Incluye segunda
|
|
45
|
+
pasada sobre la reescritura para cazar patrones que sobrevivieron la primera edición.
|
|
46
|
+
|
|
47
|
+
**`detect`** — Solo señala AI-isms sin modificar el texto. Útil cuando:
|
|
48
|
+
- El usuario quiere ver qué está marcado y decide qué cambiar.
|
|
49
|
+
- Los patrones detectados podrían ser intencionales (no todo AI-ism es malo).
|
|
50
|
+
- Se audita texto del usuario que NO queremos alterar (contenido publicado,
|
|
51
|
+
referencia, otro autor).
|
|
52
|
+
- Se quiere un escaneo rápido sin esperar la reescritura completa.
|
|
53
|
+
|
|
54
|
+
Disparadores de modo `detect`: el usuario dice "detecta", "solo señala",
|
|
55
|
+
"audita", "escanea", "qué AI-isms tiene esto". Default: `rewrite`.
|
|
56
|
+
|
|
57
|
+
---
|
|
58
|
+
|
|
59
|
+
## Qué remover o corregir
|
|
60
|
+
|
|
61
|
+
### Formato
|
|
62
|
+
|
|
63
|
+
- **Em dash (— y --)**: remplazar por comas, puntos, paréntesis, o dividir en
|
|
64
|
+
dos oraciones. Objetivo: cero. Máximo duro: 1 por cada 1,000 palabras. Aplica
|
|
65
|
+
a encabezados y títulos, no solo a prosa. Detectar tanto `—` (Unicode) como
|
|
66
|
+
`--` (sustituto de doble guión).
|
|
67
|
+
- **Uso excesivo de negritas**: una frase en negrita por sección mayor, o
|
|
68
|
+
ninguna. Si algo es importante suficiente para negrita, reestructurar la
|
|
69
|
+
oración para que encabece.
|
|
70
|
+
- **Emojis en encabezados**: eliminar. Excepción: posts sociales pueden usar
|
|
71
|
+
uno o dos al final de línea.
|
|
72
|
+
- **Listas con viñetas abusivas**: convertir secciones hiper-enumeradas en
|
|
73
|
+
prosa. Viñetas solo para contenido realmente listable (parámetros de API,
|
|
74
|
+
pasos secuenciales, tabla de comparación).
|
|
75
|
+
|
|
76
|
+
### Estructura de oraciones
|
|
77
|
+
|
|
78
|
+
- **"No es X — es Y" / "No se trata de X, se trata de Y"**: reescribir como
|
|
79
|
+
afirmación positiva directa. Máximo una vez por documento.
|
|
80
|
+
- **Intensificadores huecos**: cortar "realmente", "verdaderamente", "francamente",
|
|
81
|
+
"para ser honesto", "cabe mencionar que", "es importante destacar que".
|
|
82
|
+
Afirmar el hecho directamente.
|
|
83
|
+
- **Respaldo vago ("vale la pena + verbo")**: cortar o remplazar "vale la pena
|
|
84
|
+
leer", "vale la pena considerar", "vale la pena explorar", "vale la pena
|
|
85
|
+
revisar". Dicen "está bien" genéricamente en vez de decir *por qué* importa.
|
|
86
|
+
- **Hedging**: cortar "quizás", "tal vez", "podría potencialmente", "es importante
|
|
87
|
+
notar que", "para ser claros". Ir al punto directamente.
|
|
88
|
+
- **Oraciones puente ausentes**: cada párrafo debe conectar con el anterior. Si
|
|
89
|
+
los párrafos pudieran reordenarse sin que el lector lo note, falta tejido
|
|
90
|
+
conectivo.
|
|
91
|
+
- **Regla de tres compulsiva**: variar agrupaciones. Usar dos items, cuatro,
|
|
92
|
+
o una oración completa. Máximo una construcción "adjetivo, adjetivo y
|
|
93
|
+
adjetivo" por pieza.
|
|
94
|
+
|
|
95
|
+
### Tabla de reemplazo de palabras
|
|
96
|
+
|
|
97
|
+
Tres tiers según qué tan fuerte señalan texto generado por IA en español.
|
|
98
|
+
|
|
99
|
+
#### Tier 1 — Siempre marcar y reemplazar
|
|
100
|
+
|
|
101
|
+
| Remplazar | Por |
|
|
102
|
+
|---|---|
|
|
103
|
+
| adentrarse / adentrémonos | ver, explorar, revisar |
|
|
104
|
+
| panorama (como metáfora) | campo, área, sector, industria |
|
|
105
|
+
| paisaje (como metáfora) | campo, espacio, industria |
|
|
106
|
+
| tapiz / entramado | (describir la complejidad real) |
|
|
107
|
+
| ámbito (vago) | área, campo, dominio |
|
|
108
|
+
| reino (metáfora) | área, espacio |
|
|
109
|
+
| paradigma | modelo, enfoque, marco |
|
|
110
|
+
| embarcarse en | comenzar, iniciar |
|
|
111
|
+
| faro (metáfora) | (reescribir completo) |
|
|
112
|
+
| testimonio de / prueba fehaciente de | muestra, prueba, demuestra |
|
|
113
|
+
| robusto | sólido, estable, confiable |
|
|
114
|
+
| integral / comprensivo | completo, total, exhaustivo |
|
|
115
|
+
| vanguardia / de vanguardia | más reciente, nuevo, avanzado |
|
|
116
|
+
| aprovechar (verbo inflado) | usar |
|
|
117
|
+
| pivotal | importante, clave, crítico |
|
|
118
|
+
| recalca / subraya (inflado) | muestra, señala, destaca |
|
|
119
|
+
| meticuloso / meticulosamente | cuidadoso, detallado, preciso |
|
|
120
|
+
| sin fisuras / sin problemas (metáfora) | fluido, simple, sin fricción |
|
|
121
|
+
| revolucionario / disruptivo | describir *qué* cambió y por qué importa |
|
|
122
|
+
| utilizar | usar |
|
|
123
|
+
| momento clave / punto de inflexión | (decir qué cambió) |
|
|
124
|
+
| el futuro es prometedor | (cortar — decir algo específico o nada) |
|
|
125
|
+
| solo el tiempo dirá | (cortar — decir algo específico o nada) |
|
|
126
|
+
| enclavado en | está en, se ubica en |
|
|
127
|
+
| vibrante | (describir qué lo hace activo, o cortar) |
|
|
128
|
+
| floreciente / próspero | creciendo, activo (o citar un número) |
|
|
129
|
+
| a pesar de los desafíos... sigue prosperando | (nombrar el desafío y la respuesta, o cortar) |
|
|
130
|
+
| mostrando / exhibiendo | muestra, demuestra (o cortar la cláusula) |
|
|
131
|
+
| inmersión profunda / profundicemos | revisar, examinar, explorar |
|
|
132
|
+
| desentrañar / desglosemos | explicar, descomponer |
|
|
133
|
+
| bullicioso | ocupado, activo (o citar qué lo hace ocupado) |
|
|
134
|
+
| intrincado / intrincadas | complejo, detallado (o nombrar la complejidad específica) |
|
|
135
|
+
| en constante evolución | cambiando, creciendo (o describir cómo) |
|
|
136
|
+
| perdurable | duradero, de largo plazo (o citar cuánto) |
|
|
137
|
+
| abrumador / desalentador | difícil, complicado |
|
|
138
|
+
| holístico / holísticamente | completo, total, integral (describir qué se incluye) |
|
|
139
|
+
| accionable | práctico, útil, concreto |
|
|
140
|
+
| impactante | efectivo, significativo (o describir el impacto) |
|
|
141
|
+
| aprendizajes (como sustantivo) | lecciones, hallazgos, conclusiones |
|
|
142
|
+
| líder de opinión / pensamiento de vanguardia | experto, autoridad (o describir su contribución real) |
|
|
143
|
+
| mejores prácticas | lo que funciona, métodos probados, enfoque estándar |
|
|
144
|
+
| en esencia / en su núcleo | (cortar — solo decir la cosa) |
|
|
145
|
+
| sinergia / sinergias | (describir el efecto combinado real) |
|
|
146
|
+
| interacción / interjuego | relación, conexión |
|
|
147
|
+
| con el fin de | para |
|
|
148
|
+
| debido al hecho de que | porque |
|
|
149
|
+
| sirve como / funciona como | es |
|
|
150
|
+
| cuenta con / presenta (inflado) | tiene, incluye |
|
|
151
|
+
| ostenta / alardea | tiene |
|
|
152
|
+
| llevar a cabo | hacer, ejecutar |
|
|
153
|
+
| proceder a / se procederá a | (cortar el puente, decir la acción) |
|
|
154
|
+
| efectuar / realizar (inflado) | hacer |
|
|
155
|
+
| ascertainar / determinar (inflado) | saber, averiguar |
|
|
156
|
+
| empeño / emprendimiento (inflado) | esfuerzo, intento |
|
|
157
|
+
| sinfonía (metáfora) | (describir la coordinación o combinación real) |
|
|
158
|
+
| abrazar / adoptar (metáfora) | adoptar, aceptar, cambiar a |
|
|
159
|
+
|
|
160
|
+
#### Tier 2 — Marcar cuando aparezcan 2 o más en el mismo párrafo
|
|
161
|
+
|
|
162
|
+
Son legítimas por sí solas. Cuando aparecen dos o más juntas, el párrafo
|
|
163
|
+
probablemente necesita reescritura.
|
|
164
|
+
|
|
165
|
+
| Remplazar | Por |
|
|
166
|
+
|---|---|
|
|
167
|
+
| aprovechar (sustantivo raro en tecnología) | usar, sacar provecho |
|
|
168
|
+
| navegar / navegando (metáfora) | atravesar, manejar, tratar |
|
|
169
|
+
| fomentar | alentar, apoyar, construir |
|
|
170
|
+
| elevar (metáfora) | mejorar, subir, fortalecer |
|
|
171
|
+
| desatar (metáfora) | liberar, habilitar |
|
|
172
|
+
| agilizar / optimizar (inflado) | simplificar, acelerar |
|
|
173
|
+
| empoderar (en contextos no sociales) | habilitar, permitir |
|
|
174
|
+
| reforzar (inflado) | apoyar, sostener |
|
|
175
|
+
| encabezar / liderar (inflado) | dirigir, guiar |
|
|
176
|
+
| resonar con | conectar con, atraer a, importar a |
|
|
177
|
+
| revolucionar | cambiar, transformar (o describir qué cambió) |
|
|
178
|
+
| facilitar | permitir, ayudar, habilitar |
|
|
179
|
+
| sustentar / subyacer | apoyar, formar la base de |
|
|
180
|
+
| matizado / con matices | específico, sutil, detallado |
|
|
181
|
+
| crucial | importante, clave, necesario |
|
|
182
|
+
| multifacético | (describir las facetas reales, o cortar) |
|
|
183
|
+
| ecosistema (metáfora) | sistema, comunidad, red, mercado |
|
|
184
|
+
| miríada | muchos, numerosos (o dar un número) |
|
|
185
|
+
| plétora | muchos, gran cantidad (o dar un número) |
|
|
186
|
+
| abarcar | incluir, cubrir, contener |
|
|
187
|
+
| catalizar | iniciar, desencadenar, acelerar |
|
|
188
|
+
| reimaginar | repensar, rediseñar, reconstruir |
|
|
189
|
+
| galvanizar | motivar, reunir, impulsar |
|
|
190
|
+
| aumentar / ampliar (inflado) | agregar, expandir |
|
|
191
|
+
| cultivar (metáfora) | construir, desarrollar, hacer crecer |
|
|
192
|
+
| iluminar (metáfora) | clarificar, explicar, mostrar |
|
|
193
|
+
| dilucidar | explicar, aclarar |
|
|
194
|
+
| yuxtaponer | comparar, contrastar |
|
|
195
|
+
| paradigmático | (describir qué lo hace ejemplar) |
|
|
196
|
+
| transformador / transformación | (describir qué cambió y cómo) |
|
|
197
|
+
| piedra angular / pilar fundamental | base, fundamento, parte clave |
|
|
198
|
+
| primordial / paramount | más importante, prioridad |
|
|
199
|
+
| dispuesto a (metáfora) | listo, a punto de |
|
|
200
|
+
| en ciernes / emergente | nuevo, creciendo (o citar número) |
|
|
201
|
+
| naciente | nuevo, en etapa temprana |
|
|
202
|
+
| por excelencia / quintaesencia | típico, clásico, definitorio |
|
|
203
|
+
| general / abarcador (inflado) | principal, central, amplio |
|
|
204
|
+
| subyacente / base fundante | base, fundamento |
|
|
205
|
+
|
|
206
|
+
#### Tier 3 — Marcar solo en alta densidad
|
|
207
|
+
|
|
208
|
+
Palabras normales. Solo marcar cuando saturan el texto — señal de que la IA
|
|
209
|
+
llenó espacio con alabanza vaga en vez de datos.
|
|
210
|
+
|
|
211
|
+
| Palabra | Qué hacer |
|
|
212
|
+
|---|---|
|
|
213
|
+
| significativo / significativamente | Remplazar algunas con específicos: números, comparaciones, ejemplos |
|
|
214
|
+
| innovador / innovación | Describir qué es realmente nuevo |
|
|
215
|
+
| efectivo / efectivamente | Decir cómo o citar una métrica |
|
|
216
|
+
| dinámico / dinámicas | Nombrar las fuerzas o cambios reales |
|
|
217
|
+
| escalable / escalabilidad | Describir qué escala y hasta qué punto |
|
|
218
|
+
| convincente / atractivo | Decir por qué convence |
|
|
219
|
+
| sin precedentes | Nombrar el precedente que rompe (o cortar) |
|
|
220
|
+
| excepcional / excepcionalmente | Citar qué lo hace excepción |
|
|
221
|
+
| notable / notablemente | Decir qué vale la pena notar |
|
|
222
|
+
| sofisticado | Describir la sofisticación |
|
|
223
|
+
| clase mundial / de última generación | Citar un benchmark o comparación |
|
|
224
|
+
| fundamental | Decir qué papel jugó |
|
|
225
|
+
|
|
226
|
+
### Frases plantilla (evitar)
|
|
227
|
+
|
|
228
|
+
Construcciones con huecos que delatan que la oración fue generada. Si una
|
|
229
|
+
frase tiene un blank donde un sustantivo/adjetivo podría ir y sonaría igual,
|
|
230
|
+
es demasiado genérica.
|
|
231
|
+
|
|
232
|
+
- "un paso [adjetivo] hacia [adjetivo] infraestructura" → describir la capacidad
|
|
233
|
+
específica, benchmark, resultado.
|
|
234
|
+
- "un paso adelante para [sustantivo]" → misma regla: decir qué cambió.
|
|
235
|
+
- "ya seas [X] o [Y]" → falsa-amplitud. Elegir la audiencia real o cortar.
|
|
236
|
+
"Ya seas desarrollador o arquitecto" = nada — es "todos".
|
|
237
|
+
- "recientemente tuve el placer de [verbo]" → patrón de reseña/social. Decir
|
|
238
|
+
qué pasó: "hablé con", "leí", "asistí a".
|
|
239
|
+
- "en la actualidad, donde X" / "en la era de Y" → cortar o dar contexto específico.
|
|
240
|
+
|
|
241
|
+
### Transiciones a remover o reescribir
|
|
242
|
+
|
|
243
|
+
- "Por otra parte" / "Además" / "Adicionalmente" → reestructurar o usar "y",
|
|
244
|
+
"también".
|
|
245
|
+
- "Por otro lado" (abusivo) → usar solo cuando hay contraste real.
|
|
246
|
+
- "En la actualidad" / "Hoy en día" / "En un mundo donde" → cortar o dar
|
|
247
|
+
contexto específico.
|
|
248
|
+
- "Cabe destacar que" / "Cabe mencionar que" / "Cabe resaltar que" → solo
|
|
249
|
+
afirmar el hecho.
|
|
250
|
+
- "Aquí lo interesante es" / "Lo que destaca es" → dejar que el contenido se
|
|
251
|
+
haga cargo de su propia importancia.
|
|
252
|
+
- "En conclusión" / "En resumen" / "Para resumir" → la conclusión debe ser obvia.
|
|
253
|
+
- "Cuando se trata de" → hablar directamente del tema.
|
|
254
|
+
- "Al final del día" → cortar.
|
|
255
|
+
- "Dicho esto" / "Habiendo dicho lo anterior" → cortar o usar "pero", "sin embargo".
|
|
256
|
+
- "Por ende" / "Por consiguiente" / "En consecuencia" → usar solo cuando la
|
|
257
|
+
causalidad no es obvia; alternativas: "entonces", "así que".
|
|
258
|
+
|
|
259
|
+
### Inflación significativa
|
|
260
|
+
|
|
261
|
+
Frases como "marcando un momento decisivo en la evolución de..." o "un hito
|
|
262
|
+
en la industria" inflan eventos rutinarios. Declarar qué pasó y dejar que
|
|
263
|
+
el lector juzgue importancia. Si la oración funciona al borrar la cláusula
|
|
264
|
+
inflada, borrarla.
|
|
265
|
+
|
|
266
|
+
### Evitación de cópula
|
|
267
|
+
|
|
268
|
+
IA evita "es" y "tiene" usando verbos fancy: "sirve como", "cuenta con",
|
|
269
|
+
"ostenta", "presenta", "representa". Suenan a boletín de prensa. Default:
|
|
270
|
+
"es" / "tiene" salvo que un verbo más específico agregue significado real.
|
|
271
|
+
|
|
272
|
+
### Ciclado de sinónimos
|
|
273
|
+
|
|
274
|
+
IA rota sinónimos para evitar repetir: "desarrolladores... ingenieros...
|
|
275
|
+
profesionales... constructores" en el mismo párrafo. Los humanos repiten la
|
|
276
|
+
palabra más clara. Si el mismo sustantivo/verbo aparece tres veces en un
|
|
277
|
+
párrafo y es la palabra correcta, las tres veces se quedan.
|
|
278
|
+
|
|
279
|
+
### Atribuciones vagas
|
|
280
|
+
|
|
281
|
+
"Los expertos creen", "Los estudios muestran", "La investigación sugiere",
|
|
282
|
+
"Los líderes de la industria coinciden" — sin nombrar al experto, estudio o
|
|
283
|
+
líder. Citar fuente específica o afirmar directamente sin la atribución.
|
|
284
|
+
|
|
285
|
+
### Frases relleno
|
|
286
|
+
|
|
287
|
+
- "Es importante notar que" → (solo afirmarlo)
|
|
288
|
+
- "En términos de" → (reescribir)
|
|
289
|
+
- "La realidad es que" → (cortar o afirmar directo)
|
|
290
|
+
- "De cierta manera" / "En cierta forma" → cortar
|
|
291
|
+
- "Por así decirlo" → cortar
|
|
292
|
+
|
|
293
|
+
### Conclusiones genéricas
|
|
294
|
+
|
|
295
|
+
"El futuro es prometedor", "Solo el tiempo dirá", "Una cosa es clara",
|
|
296
|
+
"A medida que avancemos", "Queda mucho camino por recorrer" — relleno
|
|
297
|
+
disfrazado de conclusión. Cortar. Si la pieza necesita cierre, hacerlo
|
|
298
|
+
específico al argumento.
|
|
299
|
+
|
|
300
|
+
### Artefactos de chatbot
|
|
301
|
+
|
|
302
|
+
"¡Espero que esto ayude!", "¡Por supuesto!", "¡Claro!", "¡Excelente pregunta!",
|
|
303
|
+
"¡No dudes en contactarme!", "Déjame saber si necesitas algo más", "¡Con gusto!",
|
|
304
|
+
"¡Con todo gusto!" — tics conversacionales de interfaces de chat. Remover.
|
|
305
|
+
|
|
306
|
+
También: "En este artículo, exploraremos..." / "¡Adentrémonos!" → meta-narración
|
|
307
|
+
generada. Cortar o reescribir con apertura directa.
|
|
308
|
+
|
|
309
|
+
### Construcciones "Vamos a / Exploremos"
|
|
310
|
+
|
|
311
|
+
"Exploremos", "Veamos", "Analicemos", "Desglosemos" — IA usa "vamos/mos" como
|
|
312
|
+
apertura falso-colaborativa. Es relleno que demora el punto real. Empezar
|
|
313
|
+
con el punto.
|
|
314
|
+
|
|
315
|
+
### Name-dropping de notoriedad
|
|
316
|
+
|
|
317
|
+
Citas prestigiosas apiladas para fabricar credibilidad: "citado en El País, BBC,
|
|
318
|
+
Financial Times y The Hindu". Una referencia específica con contexto vence a
|
|
319
|
+
cuatro name-drops: "En una entrevista de 2024 con El País, ella argumentó...".
|
|
320
|
+
|
|
321
|
+
### Análisis superficiales con gerundio
|
|
322
|
+
|
|
323
|
+
Cadenas de gerundios como pseudo-análisis: "simbolizando el compromiso de la
|
|
324
|
+
región con el progreso, reflejando décadas de inversión, y mostrando una nueva
|
|
325
|
+
era de colaboración". No dicen nada. Remplazar con hechos específicos o cortar.
|
|
326
|
+
|
|
327
|
+
### Lenguaje promocional
|
|
328
|
+
|
|
329
|
+
IA usa prosa de folleto turístico: "enclavado en los pintorescos valles",
|
|
330
|
+
"un hub vibrante de innovación", "un ecosistema próspero". Remplazar con
|
|
331
|
+
descripción llana: "es una ciudad en la región X", "tiene 12 startups".
|
|
332
|
+
|
|
333
|
+
### Desafíos formulaicos
|
|
334
|
+
|
|
335
|
+
"A pesar de los desafíos, [X] sigue prosperando" / "Aunque enfrenta
|
|
336
|
+
obstáculos, [Y] se mantiene firme". No dice nada. Nombrar el desafío real
|
|
337
|
+
y la respuesta real, o cortar.
|
|
338
|
+
|
|
339
|
+
### Rangos falsos
|
|
340
|
+
|
|
341
|
+
IA crea amplitud falsa emparejando extremos no relacionados: "del Big Bang a
|
|
342
|
+
la materia oscura", "de civilizaciones antiguas a startups modernas". Suenan
|
|
343
|
+
abarcadores pero no dicen nada. Listar los temas reales o elegir el que importa.
|
|
344
|
+
|
|
345
|
+
### Encabezados en "Title Case" (mayúsculas cada palabra)
|
|
346
|
+
|
|
347
|
+
IA sobre-capitaliza: "Estrategias De Negocio Y Alianzas Clave" en vez de
|
|
348
|
+
"Estrategias de negocio y alianzas clave". Español usa mayúscula en la
|
|
349
|
+
primera palabra y sustantivos propios; no en cada palabra. Aplicar SIEMPRE
|
|
350
|
+
case de oración.
|
|
351
|
+
|
|
352
|
+
### Disclaimers de corte de conocimiento
|
|
353
|
+
|
|
354
|
+
"Según la información disponible", "Hasta mi última actualización", "No
|
|
355
|
+
tengo acceso a datos en tiempo real". Limitaciones del modelo que se filtran
|
|
356
|
+
en la prosa. Investigar el dato o cortar. NUNCA publicar una oración que
|
|
357
|
+
admite que quien escribió no se fijó.
|
|
358
|
+
|
|
359
|
+
### Inflación de novedad
|
|
360
|
+
|
|
361
|
+
IA trata conceptos establecidos como si el hablante los hubiera inventado:
|
|
362
|
+
"introdujo un término", "acuñó la frase", "un concepto que nadie nombra".
|
|
363
|
+
La mayoría de ideas son aplicaciones de conceptos existentes.
|
|
364
|
+
|
|
365
|
+
Arreglo: describir qué *hizo* la persona con el concepto, no que lo descubrió.
|
|
366
|
+
"Michel explicó cómo funciona el envenenamiento de contexto en la práctica"
|
|
367
|
+
en vez de "Michel introdujo un término que no había escuchado: envenenamiento
|
|
368
|
+
de contexto".
|
|
369
|
+
|
|
370
|
+
Patrones relacionados a marcar: "el modo de falla que nadie nombra", "el
|
|
371
|
+
problema del que nadie habla", "la clave que todos se pierden", "lo que nadie
|
|
372
|
+
te dice sobre X". Son framings para atraer engagement fingiendo escasez
|
|
373
|
+
de conocimiento.
|
|
374
|
+
|
|
375
|
+
### Emoción plana
|
|
376
|
+
|
|
377
|
+
IA declara emociones como muleta estructural sin transmitirlas: "lo que más
|
|
378
|
+
me sorprendió", "me fascinó descubrir", "lo que me llamó la atención".
|
|
379
|
+
|
|
380
|
+
Arreglo: si algo es genuinamente sorprendente, el lector debe sentirlo desde
|
|
381
|
+
el contenido. Si afirmas la emoción, la prosa alrededor debe ganársela. Si no,
|
|
382
|
+
cortar la declaración y presentar la cosa directamente.
|
|
383
|
+
|
|
384
|
+
### Estructura de falsa concesión
|
|
385
|
+
|
|
386
|
+
"Aunque X es impresionante, Y sigue siendo un reto" / "Si bien X ha avanzado,
|
|
387
|
+
Y aún está pendiente". IA usa esto para sonar balanceada sin sopesar nada.
|
|
388
|
+
Ambas mitades son vagas. Concretar la concesión o tomar partido.
|
|
389
|
+
|
|
390
|
+
### Preguntas retóricas como apertura
|
|
391
|
+
|
|
392
|
+
"¿Pero qué significa esto para los desarrolladores?" / "¿Por qué debería
|
|
393
|
+
importarte?" / "¿Qué sigue?" → IA usa preguntas retóricas para demorar el
|
|
394
|
+
punto real. Si sabes la respuesta, darla.
|
|
395
|
+
|
|
396
|
+
### Hedging entre paréntesis
|
|
397
|
+
|
|
398
|
+
"(y, cada vez más, Z)" / "(o, más precisamente, Y)" / "(y, quizás más
|
|
399
|
+
importante, W)" → IA inserta asides entre paréntesis para sonar con matices
|
|
400
|
+
sin comprometerse. Si el aside importa, oración propia. Si no, cortar.
|
|
401
|
+
|
|
402
|
+
### Inflación de listas numeradas
|
|
403
|
+
|
|
404
|
+
"Tres conclusiones clave" / "Cinco cosas que saber" / "Aquí las principales
|
|
405
|
+
siete" → IA default a listas numeradas porque son estructuralmente seguras.
|
|
406
|
+
Solo usar cuando hay esa cantidad de items discretos y paralelos.
|
|
407
|
+
|
|
408
|
+
### Artefactos de cadena de razonamiento
|
|
409
|
+
|
|
410
|
+
"Pensemos paso a paso", "Desglosando esto", "Para abordar esto
|
|
411
|
+
sistemáticamente", "Paso 1:", "Primero, consideremos" → artefactos de
|
|
412
|
+
chain-of-thought filtrándose en prosa publicada. El lector no necesita ver
|
|
413
|
+
el andamiaje. Afirmar la conclusión, luego la evidencia.
|
|
414
|
+
|
|
415
|
+
### Tono adulador
|
|
416
|
+
|
|
417
|
+
"¡Excelente pregunta!", "¡Excelente punto!", "Tienes toda la razón",
|
|
418
|
+
"¡Qué observación tan perspicaz!" → recompensas conversacionales de
|
|
419
|
+
interfaces de chat. Remover.
|
|
420
|
+
|
|
421
|
+
### Bucles de reconocimiento
|
|
422
|
+
|
|
423
|
+
"Estás preguntando sobre", "La cuestión de si", "Para responder tu pregunta",
|
|
424
|
+
"Esa es una gran pregunta. La..." → IA reformula el prompt antes de responder.
|
|
425
|
+
En escritura, es puro relleno. El lector sabe qué preguntó. Responder.
|
|
426
|
+
|
|
427
|
+
### Frases de calibración de confianza
|
|
428
|
+
|
|
429
|
+
"Cabe señalar que", "Interesantemente", "Sorprendentemente", "Importantemente",
|
|
430
|
+
"Notablemente", "Ciertamente", "Sin duda", "Indudablemente" → IA usa estas
|
|
431
|
+
para señalar cómo el lector debe sentirse sobre un hecho en vez de dejar que
|
|
432
|
+
el hecho hable. Un "notablemente" en 2,000 palabras es tolerable. Tres en
|
|
433
|
+
500 es apilamiento de énfasis al estilo IA.
|
|
434
|
+
|
|
435
|
+
### Estructura excesiva
|
|
436
|
+
|
|
437
|
+
- Demasiados headers en texto corto: más de 3 headings en <300 palabras casi
|
|
438
|
+
siempre es IA intentando verse organizada.
|
|
439
|
+
- Demasiadas viñetas: 8+ bullets en <200 palabras = el contenido debería ser
|
|
440
|
+
párrafo.
|
|
441
|
+
- Headers formulaicos: "Resumen", "Puntos clave", "Conclusión", "Introducción"
|
|
442
|
+
→ scaffolding default de IA. Usar headers que digan algo específico.
|
|
443
|
+
|
|
444
|
+
### Ritmo y uniformidad
|
|
445
|
+
|
|
446
|
+
Estos no son problemas de palabra individual — son patrones de cómo fluye
|
|
447
|
+
el texto.
|
|
448
|
+
|
|
449
|
+
**La estructura es la señal #1 de detección de IA.** Consistencia en
|
|
450
|
+
construcción de oraciones, pacing uniforme y simetría son más difíciles de
|
|
451
|
+
enmascarar que cambiar palabras marcadas. Si arreglas todo el Tier 1 pero
|
|
452
|
+
dejas el ritmo intacto, el texto sigue leyéndose como IA.
|
|
453
|
+
|
|
454
|
+
- **Uniformidad de longitud de oraciones**: si la mayoría miden 15–25
|
|
455
|
+
palabras, suena robótico. Mezclar oraciones cortas (3–8 palabras) con
|
|
456
|
+
largas (20+). Los fragmentos funcionan.
|
|
457
|
+
- **Uniformidad de párrafos**: si cada párrafo es 3–5 oraciones y mismo
|
|
458
|
+
tamaño, variar deliberadamente. Algunos deben ser una oración; otros
|
|
459
|
+
más largos.
|
|
460
|
+
- **Repetición vs. ciclado**: IA o repite mecánicamente o cicla sinónimos
|
|
461
|
+
conspicuamente. Escritores humanos repiten cuando la palabra es correcta
|
|
462
|
+
y varían cuando es natural — no hay fórmula.
|
|
463
|
+
- **Prueba de lectura en voz alta**: si el texto podría ser leído por TTS
|
|
464
|
+
sin sonar raro, probablemente es demasiado uniforme.
|
|
465
|
+
- **Falta de primera persona (donde aplica)**: donde es apropiado, el escritor
|
|
466
|
+
debe tener opiniones, preferencias, reacciones. IA es relentlessmente neutral.
|
|
467
|
+
En prosa que debe tener voz, la ausencia de "creo que", "en mi experiencia"
|
|
468
|
+
es ella misma una señal de IA.
|
|
469
|
+
- **Sobre-pulido**: editar agresivamente cada irregularidad empuja el texto
|
|
470
|
+
humano *hacia* el perfil estadístico de IA. Disfluencia natural, opciones
|
|
471
|
+
idiosincráticas de palabras y pacing disparejo son lo que mantiene el
|
|
472
|
+
texto fuera de la clasificación "AI-generated". **No pulir hasta eliminar
|
|
473
|
+
toda personalidad.**
|
|
474
|
+
|
|
475
|
+
### Cuándo reescribir desde cero vs. parchar
|
|
476
|
+
|
|
477
|
+
Si el texto tiene 5+ hits de vocabulario en múltiples categorías, 3+
|
|
478
|
+
categorías de patrón distintas y longitud uniforme de oración/párrafo,
|
|
479
|
+
parchar frases individuales no arreglará — la estructura misma es IA-generada.
|
|
480
|
+
Recomendar reescritura completa: declarar el punto central en una oración,
|
|
481
|
+
reconstruir desde ahí.
|
|
482
|
+
|
|
483
|
+
---
|
|
484
|
+
|
|
485
|
+
## Tiers de severidad
|
|
486
|
+
|
|
487
|
+
Al hacer pasada rápida o triage de documento grande, priorizar por tier:
|
|
488
|
+
|
|
489
|
+
### P0 — Mata credibilidad (arreglar de inmediato)
|
|
490
|
+
- Disclaimers de corte ("Según mi última actualización")
|
|
491
|
+
- Artefactos de chatbot ("¡Espero que esto ayude!", "¡Por supuesto!")
|
|
492
|
+
- Atribuciones vagas sin fuente ("Los expertos creen")
|
|
493
|
+
- Inflación significativa en eventos rutinarios
|
|
494
|
+
|
|
495
|
+
### P1 — Olor obvio a IA (arreglar antes de publicar)
|
|
496
|
+
- Violaciones de tabla de vocabulario (adentrarse, aprovechar, robusto, etc.)
|
|
497
|
+
- Frases plantilla y construcciones slot-fill
|
|
498
|
+
- Aperturas con "exploremos/veamos"
|
|
499
|
+
- Ciclado de sinónimos dentro de un párrafo
|
|
500
|
+
- Aperturas formulaicas ("En el mundo en constante evolución de...")
|
|
501
|
+
- Sobre-uso de negritas
|
|
502
|
+
- Frecuencia de em dash (arriba de 1 por 1,000 palabras)
|
|
503
|
+
|
|
504
|
+
### P2 — Pulido estilístico (arreglar si hay tiempo)
|
|
505
|
+
- Conclusiones genéricas ("El futuro es prometedor")
|
|
506
|
+
- Regla de tres compulsiva
|
|
507
|
+
- Uniformidad de párrafo
|
|
508
|
+
- Evitación de cópula (sirve como, cuenta con, ostenta)
|
|
509
|
+
- Transiciones formulaicas (Además, Adicionalmente, Por otra parte)
|
|
510
|
+
|
|
511
|
+
Pasadas rápidas: P0+P1. Auditoría completa: los tres tiers.
|
|
512
|
+
|
|
513
|
+
---
|
|
514
|
+
|
|
515
|
+
## Detector automatizado (v1.1.0)
|
|
516
|
+
|
|
517
|
+
El script `scripts/detectar_aiisms.py` automatiza el modo `detect` con
|
|
518
|
+
patrones es-MX alineados a la tabla de reemplazos Tier 1 del propio
|
|
519
|
+
SKILL.md. Cobertura aproximada: 35-40% de los patrones detectables por
|
|
520
|
+
regex (el resto requiere juicio semántico — para eso está el modo
|
|
521
|
+
`rewrite` del skill).
|
|
522
|
+
|
|
523
|
+
**Requisitos:** Python 3.10+, solo stdlib (sin dependencias externas).
|
|
524
|
+
|
|
525
|
+
**Uso:**
|
|
526
|
+
|
|
527
|
+
```bash
|
|
528
|
+
# Modo detect (default) — lista hallazgos con línea y snippet
|
|
529
|
+
echo "$TEXTO" | python habilidades/estilo-sin-ai-isms/scripts/detectar_aiisms.py
|
|
530
|
+
|
|
531
|
+
# Modo metrics — solo resumen cuantitativo
|
|
532
|
+
echo "$TEXTO" | python scripts/detectar_aiisms.py --modo metrics
|
|
533
|
+
|
|
534
|
+
# Salida JSON estructurada para CI/orquestación
|
|
535
|
+
echo "$TEXTO" | python scripts/detectar_aiisms.py --json
|
|
536
|
+
|
|
537
|
+
# Lectura desde archivo
|
|
538
|
+
python scripts/detectar_aiisms.py --archivo RESUMEN.md
|
|
539
|
+
```
|
|
540
|
+
|
|
541
|
+
**Exit codes:**
|
|
542
|
+
|
|
543
|
+
- `0` — texto OK (sin P0; P1/P2 tolerables)
|
|
544
|
+
- `1` — al menos un P0 detectado (BLOQUEA publicación)
|
|
545
|
+
- `2` — error de lectura/parsing
|
|
546
|
+
|
|
547
|
+
**Enmascaramiento de citas (intocables):** el detector respeta texto
|
|
548
|
+
entre comillas dobles (`"..."`), bloques de código triple-backtick
|
|
549
|
+
(` ``` `) y code spans (`` ` ``) — los reemplaza por espacios antes de
|
|
550
|
+
buscar patrones. Esto resuelve falsos positivos cuando un documento cita
|
|
551
|
+
normativa, API o ejemplos ilustrativos:
|
|
552
|
+
|
|
553
|
+
```text
|
|
554
|
+
La regla dice: "es importante señalar que el sistema debe validar".
|
|
555
|
+
```
|
|
556
|
+
|
|
557
|
+
La frase `"es importante señalar"` NO se marca como P0 porque es cita
|
|
558
|
+
textual, no prosa del autor.
|
|
559
|
+
|
|
560
|
+
**Heurística de probabilidad agregada:**
|
|
561
|
+
|
|
562
|
+
| Condición | probabilidad_generacion_llm |
|
|
563
|
+
|---|---|
|
|
564
|
+
| p0_count ≥ 1 | `muy_alta` |
|
|
565
|
+
| densidad ≥ 2.0 por párrafo | `alta` |
|
|
566
|
+
| densidad ≥ 1.0 o p1_count ≥ 5 | `media` |
|
|
567
|
+
| hallazgos > 0 con densidad baja | `baja` |
|
|
568
|
+
| Sin hallazgos | `muy_baja` |
|
|
569
|
+
|
|
570
|
+
**Contrato JSON estable (`_version_contrato: "1.0"`):**
|
|
571
|
+
|
|
572
|
+
```json
|
|
573
|
+
{
|
|
574
|
+
"_version_contrato": "1.0",
|
|
575
|
+
"p0_count": 3,
|
|
576
|
+
"p1_count": 7,
|
|
577
|
+
"p2_count": 1,
|
|
578
|
+
"parrafos": 4,
|
|
579
|
+
"palabras": 62,
|
|
580
|
+
"densidad_aiism": 2.75,
|
|
581
|
+
"probabilidad_generacion_llm": "muy_alta",
|
|
582
|
+
"hallazgos": [
|
|
583
|
+
{
|
|
584
|
+
"severidad": "P0",
|
|
585
|
+
"categoria": "preambulo_cortesia",
|
|
586
|
+
"linea": 1,
|
|
587
|
+
"texto": "Claro, con gusto respondo..."
|
|
588
|
+
}
|
|
589
|
+
]
|
|
590
|
+
}
|
|
591
|
+
```
|
|
592
|
+
|
|
593
|
+
**Uso en pipelines:**
|
|
594
|
+
|
|
595
|
+
- Pre-commit / CI: bloquear commits de `.md` cuando `exit != 0`.
|
|
596
|
+
- `/swl:release`: validar notas de release antes de publicar.
|
|
597
|
+
- `/swl:aprender`: auditar APRENDIZAJES.md antes de consolidar.
|
|
598
|
+
- `verificar-release.js`: integración opt-in vía variable de entorno.
|
|
599
|
+
|
|
600
|
+
**Limitaciones conocidas:**
|
|
601
|
+
|
|
602
|
+
- No detecta uniformidad rítmica ni sobrepulido (requiere análisis
|
|
603
|
+
semántico fuera de alcance de regex).
|
|
604
|
+
- No aplica Tier 2/3 con lógica de densidad cross-párrafo (solo
|
|
605
|
+
categorías individuales).
|
|
606
|
+
- El modo `rewrite` del skill NO está automatizado — el script solo
|
|
607
|
+
marca; la reescritura requiere LLM.
|
|
608
|
+
- Origen: adaptado selectivamente del detector v2.1 del ecosistema
|
|
609
|
+
EMAIA (OIC-INE); los ejemplos específicos de auditoría gubernamental
|
|
610
|
+
fueron descartados por filtro de dominio SWL.
|
|
611
|
+
|
|
612
|
+
---
|
|
613
|
+
|
|
614
|
+
## Escape: auto-referencia
|
|
615
|
+
|
|
616
|
+
Cuando escribas *sobre* AI-isms (como este mismo skill), los ejemplos citados
|
|
617
|
+
son exentos de marcar. Texto entre comillas, bloques de código, o explícitamente
|
|
618
|
+
marcado como ilustrativo ("por ejemplo, IA podría escribir...") no se reescribe.
|
|
619
|
+
Solo marcar patrones en prosa propia del autor, no en ejemplos citados.
|
|
620
|
+
|
|
621
|
+
---
|
|
622
|
+
|
|
623
|
+
## Perfiles de contexto
|
|
624
|
+
|
|
625
|
+
Si no se especifica, auto-detectar: código + "commit" = `commit-msg`; docs +
|
|
626
|
+
CLAUDE.md/README = `docs`; discusión técnica = `technical-blog`.
|
|
627
|
+
|
|
628
|
+
### Definiciones
|
|
629
|
+
|
|
630
|
+
- **`swl-docs`** (default del sistema): documentación interna SWL, ADRs,
|
|
631
|
+
RESUMEN.md, VERIFICACION.md, PLAN.md. Todas las reglas en full strictness.
|
|
632
|
+
Prioridad: precisión técnica + concisión.
|
|
633
|
+
- **`commit-msg`**: mensajes de commit. Extra strict en concisión; permitir
|
|
634
|
+
fragmentos técnicos; saltar reglas de uniformidad (son cortos de por sí).
|
|
635
|
+
- **`adr`**: Architecture Decision Records. Full strictness en todas las
|
|
636
|
+
reglas; extra strict en evitación de cópula y conclusiones genéricas.
|
|
637
|
+
- **`skill-md`**: contenido de SKILL.md nuevo. Full strictness; extra strict
|
|
638
|
+
en estructura excesiva (las skills deben ser densas).
|
|
639
|
+
- **`technical-blog`**: post técnico largo. Términos técnicos pasan; ver
|
|
640
|
+
exceptions abajo.
|
|
641
|
+
- **`casual`**: mensajes internos. Solo P0.
|
|
642
|
+
|
|
643
|
+
### Matriz de tolerancia
|
|
644
|
+
|
|
645
|
+
| Regla | swl-docs | commit-msg | adr | skill-md | technical-blog | casual |
|
|
646
|
+
|---|---|---|---|---|---|---|
|
|
647
|
+
| Em dashes | strict | strict | strict | strict | strict | skip |
|
|
648
|
+
| Negrita excesiva | strict | skip | strict | strict | strict | skip |
|
|
649
|
+
| Emojis en headers | strict | strict | strict | strict | strict | skip |
|
|
650
|
+
| Viñetas excesivas | strict | skip | strict | strict | relaxed | skip |
|
|
651
|
+
| Hedging | strict | strict | strict | strict | relaxed | skip |
|
|
652
|
+
| Tabla de palabras completa | strict | strict | strict | strict | **parcial** | P0 only |
|
|
653
|
+
| Lenguaje promocional | strict | strict | **extra strict** | strict | strict | skip |
|
|
654
|
+
| Inflación significativa | strict | strict | **extra strict** | strict | strict | skip |
|
|
655
|
+
| Evitación de cópula | strict | skip | **extra strict** | strict | relaxed | skip |
|
|
656
|
+
| Uniformidad de párrafo | strict | skip | strict | strict | strict | skip |
|
|
657
|
+
| Preguntas retóricas | strict | strict | strict | strict | strict | skip |
|
|
658
|
+
| Transiciones | strict | skip | strict | strict | strict | skip |
|
|
659
|
+
| Conclusiones genéricas | strict | skip | **extra strict** | strict | strict | skip |
|
|
660
|
+
|
|
661
|
+
**Excepciones de `technical-blog`**: `robusto`, `integral`, `sin fisuras`,
|
|
662
|
+
`ecosistema`, `aprovechar` (cuando se habla de aprovechar una API real),
|
|
663
|
+
`facilitar`, `sustentar` — permitidos en contexto técnico. Siempre marcar:
|
|
664
|
+
`adentrarse`, `tapiz`, `faro`, `embarcarse`, `revolucionario`, `aprovechar`
|
|
665
|
+
(metafórico).
|
|
666
|
+
|
|
667
|
+
---
|
|
668
|
+
|
|
669
|
+
## Formato de salida
|
|
670
|
+
|
|
671
|
+
### Modo `rewrite` (default)
|
|
672
|
+
|
|
673
|
+
Responder en **cuatro secciones**:
|
|
674
|
+
|
|
675
|
+
**1. Issues encontrados**
|
|
676
|
+
Lista con viñetas de cada AI-ism identificado, citando el texto ofensor.
|
|
677
|
+
|
|
678
|
+
**2. Versión reescrita**
|
|
679
|
+
Contenido completo reescrito. Preservar estructura original, intención y
|
|
680
|
+
todos los detalles técnicos específicos. Solo cambiar lo que las reglas
|
|
681
|
+
requieren.
|
|
682
|
+
|
|
683
|
+
**3. Qué cambió**
|
|
684
|
+
Resumen breve de las ediciones mayores. No cada palabra, solo los cambios
|
|
685
|
+
significativos.
|
|
686
|
+
|
|
687
|
+
**4. Auditoría de segunda pasada**
|
|
688
|
+
Re-leer la reescritura de la sección 2. Identificar cualquier AI-ism
|
|
689
|
+
sobreviviente: transiciones reciclades, inflación que quedó, evitación de
|
|
690
|
+
cópula, frases relleno. Corregir in-line y notar qué cambió en esta pasada.
|
|
691
|
+
Si la reescritura está limpia, decirlo.
|
|
692
|
+
|
|
693
|
+
### Modo `detect`
|
|
694
|
+
|
|
695
|
+
Responder en **dos secciones**:
|
|
696
|
+
|
|
697
|
+
**1. Issues encontrados**
|
|
698
|
+
Lista con viñetas de cada AI-ism identificado, citando el texto. Agrupar
|
|
699
|
+
por severidad (P0, P1, P2).
|
|
700
|
+
|
|
701
|
+
**2. Evaluación**
|
|
702
|
+
Para cada flag, notar si es problema claro o llamada de juicio. Algunos
|
|
703
|
+
patrones asociados a IA son técnicas efectivas en contexto. Decir cuáles
|
|
704
|
+
definitivamente arreglar vs. cuáles valen segunda mirada pero pueden estar
|
|
705
|
+
bien. Si el texto está limpio, decirlo.
|
|
706
|
+
|
|
707
|
+
---
|
|
708
|
+
|
|
709
|
+
## Calibración de tono
|
|
710
|
+
|
|
711
|
+
La meta: escritura que suene a persona escribiendo. Directa. Específica.
|
|
712
|
+
La prosa debe *demostrar* confianza, no afirmarla.
|
|
713
|
+
|
|
714
|
+
Cinco principios para reescrituras que suenan humanas:
|
|
715
|
+
|
|
716
|
+
1. **Variar longitud de oración** — mezclar corto con largo. Fragmentos ok.
|
|
717
|
+
2. **Ser concreto** — remplazar claims vagos con números, nombres, fechas, ejemplos.
|
|
718
|
+
3. **Tener voz** — donde aplique, primera persona, preferencias, reacciones.
|
|
719
|
+
4. **Cortar la neutralidad** — los humanos tienen opiniones. Si la pieza debe
|
|
720
|
+
tomar postura, tomarla.
|
|
721
|
+
5. **Ganarse el énfasis** — no decirle al lector que algo es interesante.
|
|
722
|
+
Hacerlo interesante.
|
|
723
|
+
|
|
724
|
+
Si el original ya es fuerte, decirlo y hacer solo los cortes necesarios.
|
|
725
|
+
No sobre-editar por deporte.
|
|
726
|
+
|
|
727
|
+
**La tabla de reemplazos da defaults, no mandatos.** Si una palabra marcada
|
|
728
|
+
es claramente la correcta en contexto, preservarla.
|
|
729
|
+
|
|
730
|
+
---
|
|
731
|
+
|
|
732
|
+
## Integración con SWL
|
|
733
|
+
|
|
734
|
+
- **`documentador-swl`**: cargar antes de escribir docs, ADRs, READMEs.
|
|
735
|
+
- **`consolidador-swl`**: cargar antes de resumir fase.
|
|
736
|
+
- **`/swl:aprender`**: pasada obligatoria al final.
|
|
737
|
+
- **`/swl:release`**: auditar notas de release antes de publicar.
|
|
738
|
+
- **`reglas/brevedad-output.md`**: regla general de brevedad; esta skill es
|
|
739
|
+
el mecanismo específico y testable.
|
|
740
|
+
|
|
741
|
+
---
|
|
742
|
+
|
|
743
|
+
## Lo que esta skill NO hace
|
|
744
|
+
|
|
745
|
+
- **No reescribe código** — solo prosa.
|
|
746
|
+
- **No traduce** — opera dentro de un mismo idioma (es-MX).
|
|
747
|
+
- **No valida gramática normativa** — asume texto ya está bien escrito;
|
|
748
|
+
detecta patrones de generación por IA, no errores ortográficos.
|
|
749
|
+
- **No sustituye revisión humana** — asiste, no decide.
|
|
750
|
+
|
|
751
|
+
---
|
|
752
|
+
|
|
753
|
+
## Origen y licencia
|
|
754
|
+
|
|
755
|
+
Este skill adapta y expande al español de México el skill original
|
|
756
|
+
`avoid-ai-writing` de **Conor Bronsdon** (MIT License), cuyos 36 categorías
|
|
757
|
+
de patrones y estructura de modos/severidad/perfiles son la base intelectual
|
|
758
|
+
de este documento. La tabla de reemplazos en español es trabajo propio —
|
|
759
|
+
los AI-isms del inglés no traducen literal.
|
|
760
|
+
|
|
761
|
+
Repo origen: https://github.com/conorbronsdon/avoid-ai-writing
|
|
762
|
+
|
|
763
|
+
## Cuándo NO cargar
|
|
764
|
+
|
|
765
|
+
- El texto a procesar es código fuente, JSON, YAML, CSV, logs, trazas, schemas o salida de comandos CLI — este skill solo opera sobre prosa en español destinada a lectores humanos; en texto técnico determinista los patrones de AI-ism no aplican.
|
|
766
|
+
- El objetivo es reducir verbosidad o eliminar repetición en output entre agentes — eso es `brevedad-output.md`; este skill detecta marcadores semánticos de generación IA (inflación de vocabulario, AI-isms), no volumen de tokens.
|
|
767
|
+
- El texto fue aprobado explícitamente por el usuario en esta sesión — re-auditar introduce modificaciones sobre prosa que ya pasó revisión humana.
|
|
768
|
+
- El objetivo es corregir ortografía, gramática o traducir entre idiomas — este skill asume texto bien escrito y no realiza corrección gramatical.
|
|
769
|
+
|
|
770
|
+
## Gotchas / Errores comunes no obvios
|
|
771
|
+
|
|
772
|
+
- **Modo `rewrite` aplicado a documentación técnica con términos marcados que son correctos en contexto**: el agente reemplaza "robusto" por "estable" en una sección de arquitectura donde "robusto" es la palabra técnica exacta. Causa: la tabla de reemplazos da defaults, no mandatos — el skill especifica "si una palabra marcada es claramente la correcta en contexto, preservarla". Solución: al reescribir, verificar si la palabra marcada tiene un reemplazo más preciso; si no existe un sustituto más específico en el contexto técnico, dejarla.
|
|
773
|
+
- **Segunda pasada de auditoría omitida en modo `rewrite`**: la reescritura pasa P0 y P1 pero deja transiciones recicladas ("Por otra parte", "Además") sin corregir. Causa: solo se hace una pasada de edición. Solución: el modo `rewrite` define explícitamente 4 secciones de output; la sección 4 es la "Auditoría de segunda pasada" — omitirla viola el protocolo del skill y es el momento donde se capturan los patrones que sobrevivieron la primera edición.
|
|
774
|
+
- **AI-isms en ejemplos citados marcados como problemas**: el agente marca como error "adentrarse" cuando aparece en un bloque de ejemplo ilustrativo de cómo NO escribir. Causa: no aplicar la cláusula de escape "auto-referencia" del skill. Solución: texto entre comillas, en bloques de código o marcado explícitamente como ilustrativo ("por ejemplo, IA podría escribir...") está exento — solo se audita prosa propia del autor.
|
|
775
|
+
- **Perfil `swl-docs` aplicado a mensaje de commit corto**: el agente aplica la matrix completa de reglas (viñetas, uniformidad de párrafo, regla de tres) a un commit de una sola línea. Causa: no detectar automáticamente el contexto `commit-msg`. Solución: el skill define detección automática de perfil — texto con "commit" en contexto o < 72 caracteres activa `commit-msg` con extra-strict en concisión y skip en reglas de uniformidad de párrafo.
|