@saulwade/swl-ses 2.6.0 → 2.8.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 +209 -197
- package/README.md +647 -600
- package/agentes/accesibilidad-wcag-swl.md +690 -690
- package/agentes/arquitecto-swl.md +267 -267
- package/agentes/auto-evolucion-swl.md +932 -932
- package/agentes/backend-csharp-swl.md +420 -420
- package/agentes/backend-go-swl.md +390 -390
- package/agentes/backend-java-swl.md +281 -281
- package/agentes/backend-rust-swl.md +364 -364
- package/agentes/backend-workers-swl.md +482 -482
- package/agentes/cloud-infra-swl.md +509 -509
- package/agentes/consolidador-swl.md +541 -541
- package/agentes/depurador-swl.md +352 -352
- package/agentes/devops-ci-swl.md +400 -400
- package/agentes/disenador-ui-swl.md +569 -569
- package/agentes/documentador-swl.md +345 -345
- package/agentes/frontend-angular-swl.md +621 -621
- package/agentes/frontend-css-swl.md +716 -716
- package/agentes/frontend-react-swl.md +692 -692
- package/agentes/frontend-swl.md +496 -496
- package/agentes/frontend-tailwind-swl.md +826 -826
- package/agentes/investigador-swl.md +432 -432
- package/agentes/investigador-ux-swl.md +505 -505
- package/agentes/migrador-swl.md +442 -442
- package/agentes/mobile-android-swl.md +511 -511
- package/agentes/mobile-cross-swl.md +541 -541
- package/agentes/mobile-ios-swl.md +502 -502
- package/agentes/mobile-testing-swl.md +302 -302
- package/agentes/nemesis-auditor-swl.md +285 -285
- package/agentes/observabilidad-swl.md +438 -438
- package/agentes/pagos-swl.md +310 -310
- package/agentes/perfilador-usuario-swl.md +321 -321
- package/agentes/planificador-swl.md +399 -399
- package/agentes/producto-prd-swl.md +589 -589
- package/agentes/red-team-swl.md +218 -218
- package/agentes/release-manager-swl.md +590 -590
- package/agentes/rendimiento-swl.md +713 -713
- package/agentes/revisor-angular-swl.md +278 -278
- package/agentes/revisor-csharp-swl.md +264 -264
- package/agentes/revisor-go-swl.md +259 -259
- package/agentes/revisor-java-swl.md +257 -257
- package/agentes/revisor-kotlin-swl.md +273 -273
- package/agentes/revisor-nextjs-swl.md +281 -281
- package/agentes/revisor-php-swl.md +271 -271
- package/agentes/revisor-react-swl.md +278 -278
- package/agentes/revisor-rust-swl.md +346 -346
- package/agentes/revisor-seguridad-swl.md +399 -399
- package/agentes/revisor-swift-swl.md +268 -268
- package/agentes/revisor-typescript-swl.md +346 -346
- package/agentes/tdd-qa-swl.md +393 -393
- package/bin/swl-ses.js +10 -0
- package/comandos/swl/actualizar.md +174 -174
- package/comandos/swl/adoptar-proyecto.md +265 -265
- package/comandos/swl/aprender.md +836 -836
- package/comandos/swl/aprobar-plan.md +146 -146
- package/comandos/swl/auditar-deps.md +134 -134
- package/comandos/swl/autoresearch.md +264 -264
- package/comandos/swl/ayuda.md +224 -224
- package/comandos/swl/brainstorm.md +52 -51
- package/comandos/swl/checkpoint.md +325 -325
- package/comandos/swl/claudemd.md +234 -234
- package/comandos/swl/compactar.md +310 -310
- package/comandos/swl/configurar-ci.md +235 -235
- package/comandos/swl/contexto.md +110 -110
- package/comandos/swl/crear-skill.md +292 -292
- package/comandos/swl/cron.md +194 -194
- package/comandos/swl/deuda-codigo.md +97 -97
- package/comandos/swl/discutir-fase.md +169 -169
- package/comandos/swl/ejecutar-fase.md +233 -233
- package/comandos/swl/evaluar-skill.md +520 -520
- package/comandos/swl/evolucion-continua.md +73 -73
- package/comandos/swl/evolucionar.md +267 -267
- package/comandos/swl/exportar-vault.md +583 -583
- package/comandos/swl/fix.md +118 -118
- package/comandos/swl/gateway.md +158 -158
- package/comandos/swl/inbox.md +116 -116
- package/comandos/swl/instalar.md +220 -220
- package/comandos/swl/instintos.md +86 -86
- package/comandos/swl/mapear-codebase.md +312 -312
- package/comandos/swl/mcp-status.md +176 -175
- package/comandos/swl/modelo.md +100 -100
- package/comandos/swl/nemesis.md +433 -433
- package/comandos/swl/notificaciones.md +299 -299
- package/comandos/swl/nuevo-proyecto.md +251 -251
- package/comandos/swl/planear-fase.md +263 -263
- package/comandos/swl/plugins.md +256 -256
- package/comandos/swl/predecir.md +169 -169
- package/comandos/swl/reflect-skills.md +125 -125
- package/comandos/swl/release.md +450 -450
- package/comandos/swl/revisar-impacto.md +201 -201
- package/comandos/swl/revisar.md +330 -330
- package/comandos/swl/seguridad.md +189 -189
- package/comandos/swl/sesiones.md +200 -200
- package/comandos/swl/skill-search.md +113 -113
- package/comandos/swl/status.md +345 -345
- package/comandos/swl/verificar.md +817 -817
- package/comandos/swl/wiki.md +620 -620
- package/gateway/cron/jobs.example.json +12 -12
- package/gateway/lib/event-channel.js +191 -191
- package/habilidades/agent-deep-links/SKILL.md +148 -148
- package/habilidades/auto-evolucion-protocolo/SKILL.md +294 -294
- package/habilidades/backend-async-postgres-testing/SKILL.md +216 -215
- package/habilidades/backend-error-design/SKILL.md +221 -221
- package/habilidades/backend-production-resilience/SKILL.md +288 -288
- package/habilidades/calidad-anti-patrones-universales/SKILL.md +105 -1
- package/habilidades/calidad-contract-testing/SKILL.md +165 -165
- package/habilidades/calidad-mutation-testing/SKILL.md +25 -1
- package/habilidades/changelog-generator/SKILL.md +174 -174
- package/habilidades/checklist-seguridad/recursos/stride-cobertura.md +60 -60
- package/habilidades/ci-cd-pipelines/SKILL.md +5 -1
- package/habilidades/compactacion-contexto/SKILL.md +2 -1
- package/habilidades/contenedores-docker/SKILL.md +4 -2
- package/habilidades/css-moderno/SKILL.md +7 -1
- package/habilidades/diagrama-arquitectura/assets/template.html +276 -276
- package/habilidades/doubt-driven-review/SKILL.md +207 -207
- package/habilidades/doubt-driven-review/recursos/EXAMPLES.md +130 -130
- package/habilidades/drift-detection/SKILL.md +1 -1
- package/habilidades/ejecutar-task-iterativo/SKILL.md +278 -278
- package/habilidades/estructura-proyecto-claude/recursos/mcp-json-template.json +57 -57
- package/habilidades/extractor-de-aprendizajes/SKILL.md +12 -2
- package/habilidades/feynman-auditor-swl/recursos/preguntas-language-agnostic.md +108 -108
- package/habilidades/git-worktrees-paralelo/SKILL.md +19 -1
- package/habilidades/harness-claude-code/SKILL.md +315 -314
- package/habilidades/instalar-sistema/SKILL.md +227 -227
- package/habilidades/meta-skills-estandar/recursos/convencion-examples.md +93 -93
- package/habilidades/patrones-python/recursos/patrones-avanzados.md +469 -469
- package/habilidades/perfil-usuario/SKILL.md +200 -200
- package/habilidades/planear-fase/SKILL.md +358 -358
- package/habilidades/prevencion-sobreingenieria/recursos/EXAMPLES.md +580 -580
- package/habilidades/proceso-ddia-streaming/SKILL.md +231 -231
- package/habilidades/proceso-discovery-machote/SKILL.md +157 -157
- package/habilidades/proceso-dynamic-workflows/SKILL.md +60 -0
- package/habilidades/proceso-dynamic-workflows/recursos/template-adversarial-verify.js +65 -65
- package/habilidades/proceso-dynamic-workflows/recursos/template-triage.js +65 -65
- package/habilidades/proceso-ingenieria-requerimientos/SKILL.md +147 -147
- package/habilidades/proceso-intent-engineering/SKILL.md +269 -269
- package/habilidades/proceso-modular-split/SKILL.md +256 -256
- package/habilidades/release-semver/SKILL.md +2 -2
- package/habilidades/state-inconsistency-auditor-swl/recursos/coupled-state-patterns.md +147 -147
- package/habilidades/swl-claudemd/recursos/contrato-aprender.md +83 -83
- package/habilidades/swl-claudemd/recursos/duplicacion-reglas-globales.md +85 -85
- package/habilidades/swl-claudemd/recursos/plantillas-init.md +94 -94
- package/habilidades/tdd-workflow/SKILL.md +749 -749
- package/habilidades/tdd-workflow/recursos/gherkin-bdd.md +111 -111
- package/hooks/agente-lifecycle.js +1 -1
- package/hooks/audit-trail.js +1 -1
- package/hooks/auto-consolidacion.js +1 -1
- package/hooks/calidad-pre-commit.js +159 -10
- package/hooks/captura-acciones-post.js +1 -1
- package/hooks/captura-acciones-session.js +1 -1
- package/hooks/captura-feedback-usuario.js +1 -1
- package/hooks/ciclo-evolucion-subagente.js +26 -26
- package/hooks/ciclo-evolucion.js +26 -26
- package/hooks/contexto-iteracion.js +1 -1
- package/hooks/degradacion-instintos.js +1 -1
- package/hooks/grafo-contexto.js +1 -1
- package/hooks/guardrail-modelo.js +1 -1
- package/hooks/inbox-aviso.js +1 -1
- package/hooks/inyeccion-contexto.js +1 -1
- package/hooks/lib/agent-matcher.js +1 -1
- package/hooks/lib/agent-routing.js +1 -1
- package/hooks/lib/auto-consolidator.js +335 -335
- package/hooks/lib/captura-acciones.js +1 -1
- package/hooks/lib/ciclo-evolucion.js +47 -47
- package/hooks/lib/deep-links.js +185 -185
- package/hooks/lib/error-classifier.js +308 -308
- package/hooks/lib/etapa-metricas.js +1 -1
- package/hooks/lib/evolution-tracker.js +1 -1
- package/hooks/lib/gateway-notify.js +193 -193
- package/hooks/lib/mcp-health.js +1 -1
- package/hooks/lib/notificacion-formato.js +92 -0
- package/hooks/lib/nudge-tracker.js +1 -1
- package/hooks/lib/otlp-exporter.js +1 -1
- package/hooks/lib/propose-step.js +1 -1
- package/hooks/lib/provenance-tracker.js +191 -191
- package/hooks/lib/raiz-proyecto.js +158 -102
- package/hooks/lib/resource-quota.js +122 -122
- package/hooks/lib/retry-jitter.js +165 -165
- package/hooks/lib/run-log.js +1 -1
- package/hooks/lib/security-net.js +201 -201
- package/hooks/lib/singleton-guard.js +20 -13
- package/hooks/lib/skill-auditor.js +588 -588
- package/hooks/lib/sync-status.js +228 -228
- package/hooks/lib/taint-tracker.js +107 -107
- package/hooks/lib/telegram-cliente.js +11 -3
- package/hooks/lib/text-similarity.js +241 -241
- package/hooks/lib/toon-compressor.js +245 -245
- package/hooks/notificacion-telegram.js +17 -13
- package/hooks/preservar-estado-pre-compact.js +1 -1
- package/hooks/registro-turnos.js +1 -1
- package/hooks/resumen-sesion.js +1 -1
- package/hooks/risk-scoring.js +1 -1
- package/hooks/session-briefing.js +13 -5
- package/hooks/spec-gate.js +1 -1
- package/hooks/sugerir-regenerar-inventario.js +1 -1
- package/hooks/tdd-gate.js +1 -1
- package/hooks/telemetria-agentes.js +1 -1
- package/hooks/telemetria-skill-routing.js +1 -1
- package/hooks/tracking-costos.js +1 -1
- package/hooks/validar-formato-post-subagente.js +1 -1
- package/hooks/validar-intent-spec.js +1 -1
- package/hooks/validar-planning-paths.js +1 -1
- package/instintos/autonomia.yaml +27 -27
- package/instintos/prompt-appendices.yaml +57 -57
- package/llms.txt +29 -29
- package/manifiestos/agent-output-schemas.json +57 -57
- package/manifiestos/canonical-hashes.json +6250 -5257
- package/manifiestos/harness-ir.json +47536 -0
- package/manifiestos/modulos.json +1429 -1428
- package/manifiestos/policy-bundle.json +2065 -0
- package/manifiestos/policy-corpus-w2.json +3926 -0
- package/manifiestos/runtime-adapters-core3.json +208 -0
- package/manifiestos/runtime-conformance.json +139 -0
- package/manifiestos/skills-lock.json +1275 -1275
- package/package.json +94 -94
- package/plantillas/auditor-veto-template.md +105 -105
- package/plantillas/github-workflows/release-please.yml +44 -44
- package/plantillas/github-workflows/swl-ci.yml +107 -107
- package/plantillas/github-workflows/swl-security.yml +51 -51
- package/plugin.json +369 -369
- package/reglas/accesibilidad.md +10 -10
- package/reglas/auditorias-documentales-estructurales.md +7 -7
- package/reglas/cloud-infra.md +8 -8
- package/reglas/consultar-vault-primero.md +195 -195
- package/reglas/git-workflow.md +1 -0
- package/reglas/hooks.md +6 -6
- package/reglas/intent-engineering.md +218 -218
- package/reglas/markitdown.md +8 -8
- package/reglas/monitor-ci.md +12 -0
- package/reglas/patrones.md +6 -6
- package/reglas/testing.md +7 -7
- package/reglas/tests-cleanup.md +224 -224
- package/schemas/agent-message.schema.json +73 -73
- package/schemas/agent-output-implementacion.schema.json +114 -114
- package/schemas/agent-output-planificacion.schema.json +150 -150
- package/schemas/agent-output-review.schema.json +98 -98
- package/schemas/diary-entry.schema.json +112 -112
- package/schemas/gate-state.schema.json +76 -0
- package/schemas/harness-ir.schema.json +369 -0
- package/schemas/hook-profiles.schema.json +54 -54
- package/schemas/hooks-config.schema.json +89 -89
- package/schemas/legacy-gates.schema.json +45 -0
- package/schemas/modulos.schema.json +38 -38
- package/schemas/perfiles.schema.json +36 -36
- package/schemas/plugin.schema.json +77 -77
- package/schemas/policy-bundle.schema.json +140 -0
- package/schemas/policy-enforcement.schema.json +117 -0
- package/schemas/policy-operation.schema.json +261 -0
- package/schemas/runtime-adapter.schema.json +176 -0
- package/schemas/runtime-build-attestation.schema.json +100 -0
- package/schemas/runtime-conformance.schema.json +239 -0
- package/schemas/runtime-diagnostic.schema.json +395 -0
- package/schemas/skill-evals.schema.json +119 -119
- package/schemas/skill-frontmatter.schema.json +245 -245
- package/schemas/w4-certification-request.schema.json +72 -0
- package/schemas/w4-certification-verdict.schema.json +224 -0
- package/schemas/w4-corpus.schema.json +172 -0
- package/schemas/w4-mutation-report.schema.json +116 -0
- package/schemas/w4-replay-result.schema.json +164 -0
- package/schemas/w4-scoring-report.schema.json +89 -0
- package/scripts/audit-tools/audit-history.js +330 -330
- package/scripts/audit-tools/bundle-tracker.js +290 -290
- package/scripts/audit-tools/canary-monitor.js +352 -352
- package/scripts/audit-tools/code-profiler.js +605 -605
- package/scripts/audit-tools/dep-doctor.js +320 -320
- package/scripts/audit-tools/env-validator.js +206 -206
- package/scripts/audit-tools/lib/fs-walk.js +48 -48
- package/scripts/audit-tools/lib/output.js +23 -23
- package/scripts/audit-tools/migration-checker.js +392 -392
- package/scripts/audit-tools/pentest-scanner.js +1436 -1436
- package/scripts/auditar-clases-conocidas.js +134 -134
- package/scripts/bootstrap-instintos.js +88 -14
- package/scripts/canario-hooks.js +166 -166
- package/scripts/cli/aprobar-plan.js +73 -73
- package/scripts/cli/autonomia.js +23 -23
- package/scripts/cli/benchmark-memoria.js +37 -37
- package/scripts/cli/briefing.js +23 -23
- package/scripts/cli/ciclo-autonomo.js +73 -73
- package/scripts/cli/ciclo-evolucion.js +26 -26
- package/scripts/cli/ciclo-fase-b.js +102 -102
- package/scripts/cli/derivar-feature-list.js +25 -25
- package/scripts/cli/detectar-host.js +27 -27
- package/scripts/cli/diary-entry.js +69 -69
- package/scripts/cli/execution-state.js +18 -18
- package/scripts/cli/gateway-notify.js +41 -41
- package/scripts/cli/guardrail-metrics.js +39 -39
- package/scripts/cli/liberar-fase.js +42 -42
- package/scripts/cli/mark-evolved.js +56 -56
- package/scripts/cli/memoria-search.js +69 -69
- package/scripts/cli/metricas-dora.js +26 -26
- package/scripts/cli/near-duplicate.js +55 -55
- package/scripts/cli/notificaciones.js +123 -123
- package/scripts/cli/nudge-accionar.js +39 -39
- package/scripts/cli/propose-step.js +29 -29
- package/scripts/cli/run-eval.js +38 -38
- package/scripts/cli/schedule-parse.js +19 -19
- package/scripts/cli/sugerir-modelo.js +20 -20
- package/scripts/cli/verificar-plan.js +36 -36
- package/scripts/cli/verificar-trazabilidad.js +35 -35
- package/scripts/comandos/install-asistido.js +8 -7
- package/scripts/configurar-branch-protection.js +418 -418
- package/scripts/detectar-aprendizajes-duplicados.js +151 -151
- package/scripts/doctor.js +61 -13
- package/scripts/evidencia-valor.js +101 -101
- package/scripts/field-report.js +16 -16
- package/scripts/generar-checklists-consolidados.js +273 -273
- package/scripts/generar-claims-runtime.js +1342 -0
- package/scripts/generar-harness-ir.js +257 -0
- package/scripts/generar-inventario.js +52 -54
- package/scripts/generar-policy-bundle.js +202 -0
- package/scripts/instalador.js +39 -7
- package/scripts/lib/activar-hooks-proyecto.js +116 -116
- package/scripts/lib/approval-receipts.js +190 -0
- package/scripts/lib/artefactos-python.js +43 -43
- package/scripts/lib/benchmark-metrics.js +160 -160
- package/scripts/lib/budget-enforcer.js +252 -252
- package/scripts/lib/certificacion-loop-state.js +421 -0
- package/scripts/lib/ci-reader.js +193 -193
- package/scripts/lib/ciclo-autonomo/candidatos.js +174 -174
- package/scripts/lib/ciclo-autonomo/config.js +165 -165
- package/scripts/lib/ciclo-autonomo/drenador-feedback.js +174 -174
- package/scripts/lib/ciclo-autonomo/fallback.js +77 -77
- package/scripts/lib/ciclo-autonomo/guard-convivencia.js +139 -139
- package/scripts/lib/ciclo-autonomo/higiene-nudges.js +112 -112
- package/scripts/lib/ciclo-autonomo/index.js +301 -301
- package/scripts/lib/ciclo-autonomo/lock.js +124 -124
- package/scripts/lib/ciclo-autonomo/presupuesto.js +122 -122
- package/scripts/lib/ciclo-autonomo/puente-degradacion.js +240 -240
- package/scripts/lib/ciclo-autonomo/runner-fase-b.js +248 -248
- package/scripts/lib/ciclo-autonomo/writer-instintos.js +190 -190
- package/scripts/lib/ciclo-autonomo/yaml-instintos.js +591 -535
- package/scripts/lib/clasificar-directorio.js +92 -0
- package/scripts/lib/contadores-inventario.js +217 -217
- package/scripts/lib/detectar-host-swl.js +175 -175
- package/scripts/lib/detectar-runtime.js +29 -20
- package/scripts/lib/detectar-stack-detallado.js +307 -307
- package/scripts/lib/detector-autoduplicacion-intra-archivo.js +234 -234
- package/scripts/lib/detector-reglas-duplicadas.js +220 -220
- package/scripts/lib/eval-metrics-store.js +218 -218
- package/scripts/lib/eval-quality.js +171 -171
- package/scripts/lib/eval-schemas.js +144 -144
- package/scripts/lib/eval-self-correct.js +106 -106
- package/scripts/lib/eval-validator.js +185 -185
- package/scripts/lib/evidence-verifier.js +192 -0
- package/scripts/lib/evidencia-release.js +322 -322
- package/scripts/lib/evidencia-valor.js +228 -228
- package/scripts/lib/expandir-targets.js +71 -71
- package/scripts/lib/frontmatter-canonico.js +509 -0
- package/scripts/lib/gate-engine.js +871 -0
- package/scripts/lib/gate-hooks-requires.js +249 -249
- package/scripts/lib/gate-licencias.js +212 -212
- package/scripts/lib/git-config-preflight.js +48 -0
- package/scripts/lib/git-metricas.js +257 -257
- package/scripts/lib/harness-ir.js +778 -0
- package/scripts/lib/harness-source-snapshot.js +309 -0
- package/scripts/lib/integrity-ledger.js +1147 -0
- package/scripts/lib/jaccard-similarity.js +98 -98
- package/scripts/lib/legacy-gate-migration.js +324 -0
- package/scripts/lib/limpiar-basura-global.js +204 -0
- package/scripts/lib/longmemeval-runner.js +125 -125
- package/scripts/lib/metricas-dora.js +204 -204
- package/scripts/lib/notificaciones-telegram.js +1 -0
- package/scripts/lib/npm-version.js +1 -0
- package/scripts/lib/paquetes-conocidos.js +50 -50
- package/scripts/lib/plan-lock.js +61 -13
- package/scripts/lib/policy-broker.js +338 -0
- package/scripts/lib/policy-bundle.js +342 -0
- package/scripts/lib/policy-context-provider.js +310 -0
- package/scripts/lib/policy-contract.js +479 -0
- package/scripts/lib/policy-verifier-utils.js +65 -0
- package/scripts/lib/pr-analyzer.js +399 -399
- package/scripts/lib/principal-verifier.js +178 -0
- package/scripts/lib/prompt-builder.js +264 -264
- package/scripts/lib/resolver-plan-fase.js +37 -37
- package/scripts/lib/rrf-fusion.js +175 -175
- package/scripts/lib/runtime-adapter-contract.js +267 -0
- package/scripts/lib/runtime-artifact-verifier.js +426 -0
- package/scripts/lib/runtime-build-attestation.js +127 -0
- package/scripts/lib/runtime-bundle-installer.js +586 -0
- package/scripts/lib/runtime-compiler.js +327 -0
- package/scripts/lib/runtime-conformance.js +202 -0
- package/scripts/lib/runtime-doctor-core3.js +567 -0
- package/scripts/lib/runtime-doctor-input.js +59 -0
- package/scripts/lib/runtime-operation-adapter.js +267 -0
- package/scripts/lib/schema-version.js +164 -164
- package/scripts/lib/semantic-search.js +252 -252
- package/scripts/lib/signed-envelope.js +545 -0
- package/scripts/lib/single-use-store.js +359 -0
- package/scripts/lib/skills-externas.js +31 -0
- package/scripts/lib/toml-merge.js +204 -204
- package/scripts/lib/transformadores/codex.js +15 -8
- package/scripts/lib/transformadores/gemini.js +79 -5
- package/scripts/lib/w4-attestation-adapter.js +158 -0
- package/scripts/lib/w4-canario.js +337 -0
- package/scripts/lib/w4-claims.js +182 -0
- package/scripts/lib/w4-corpus-generador.js +542 -0
- package/scripts/lib/w4-gate-c5.js +115 -0
- package/scripts/lib/w4-harness-bajo-prueba.js +155 -0
- package/scripts/lib/w4-matriz-combos.js +55 -0
- package/scripts/lib/w4-motor-mutacion.js +1348 -0
- package/scripts/lib/w4-motor-replay.js +735 -0
- package/scripts/lib/w4-pin-origen.js +54 -0
- package/scripts/lib/w4-publicar-request.js +132 -0
- package/scripts/lib/w4-revocacion.js +62 -0
- package/scripts/lib/w4-runtimes-core3.js +38 -0
- package/scripts/lib/w4-scorer-certificacion.js +692 -0
- package/scripts/lib/w4-superficie-candidato.js +49 -0
- package/scripts/lib/w4-veredicto.js +452 -0
- package/scripts/lib/w4-verificar-veredicto.js +302 -0
- package/scripts/limpiar-artefactos-python.js +131 -131
- package/scripts/mcp-server/auth.js +105 -105
- package/scripts/mcp-server/cache.js +106 -106
- package/scripts/migrar-csv-a-array.js +168 -168
- package/scripts/migrar-fase-dominio.js +200 -200
- package/scripts/migrar-gates-legacy.js +108 -0
- package/scripts/publicar-certification-request.js +115 -0
- package/scripts/runtime-doctor.js +107 -0
- package/scripts/tui/componentes/selector-multi.js +189 -189
- package/scripts/tui/componentes/selector-unico.js +158 -158
- package/scripts/tui/ejecutores.js +375 -375
- package/scripts/tui/lib/colores.js +129 -129
- package/scripts/tui/lib/render.js +264 -264
- package/scripts/tui/lib/teclas.js +113 -113
- package/scripts/tui/pantallas/install-wizard.js +408 -403
- package/scripts/tui/pantallas/menu-principal.js +52 -52
- package/scripts/tui/pantallas/progreso.js +274 -274
- package/scripts/tui/pantallas/resumen.js +132 -132
- package/scripts/validar-userland-vacio.js +110 -110
- package/scripts/verificar-aislamiento-swl-eval.js +87 -0
- package/scripts/verificar-empaquetado-downstream.js +375 -0
- package/scripts/verificar-loop-constructor.js +215 -0
- package/scripts/verificar-trazabilidad.js +13 -6
- package/scripts/verificar-veredicto-real.js +84 -0
- package/instintos/.backups/perfil-usuario.yaml.2026-07-10-165128.bak +0 -53
- package/instintos/.backups/proyecto.yaml.2026-07-10-165128.bak +0 -372
|
@@ -1,235 +1,235 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: swl:configurar-ci
|
|
3
|
-
description: Instala y gestiona los workflows CI/CD de swl-ses en proyectos de usuarios. Subcomandos init (flujo interactivo completo), status (muestra qué está instalado) y uninstall (quita los workflows). Para setup automatizado de GitHub Actions con revisión de seguridad Claude, CI genérico y release automatizado.
|
|
4
|
-
allowed_tools: ["Read", "Write", "Edit", "Bash", "Glob", "Grep"]
|
|
5
|
-
user-invocable: true
|
|
6
|
-
version: "1.0.0"
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
# /swl:configurar-ci — Setup de CI/CD en tu proyecto
|
|
10
|
-
|
|
11
|
-
Orquesta la instalación de los workflows GitHub Actions de swl-ses en el proyecto donde estés trabajando.
|
|
12
|
-
|
|
13
|
-
## Subcomandos
|
|
14
|
-
|
|
15
|
-
| Subcomando | Descripción |
|
|
16
|
-
|-----------|-------------|
|
|
17
|
-
| `init` | Flujo interactivo completo (default) |
|
|
18
|
-
| `status` | Muestra qué workflows están instalados y qué secrets se necesitan |
|
|
19
|
-
| `uninstall` | Quita los workflows SWL del proyecto |
|
|
20
|
-
|
|
21
|
-
Si se invoca sin subcomando, ejecutar `init`.
|
|
22
|
-
|
|
23
|
-
---
|
|
24
|
-
|
|
25
|
-
## /swl:configurar-ci init
|
|
26
|
-
|
|
27
|
-
Flujo interactivo paso a paso. Detecta el proyecto en el directorio actual.
|
|
28
|
-
|
|
29
|
-
### Paso 1 — Verificar contexto
|
|
30
|
-
|
|
31
|
-
```bash
|
|
32
|
-
node -e "const p=require('./package.json');console.log('Proyecto:',p.name,'v'+p.version)" 2>/dev/null || echo "Sin package.json"
|
|
33
|
-
ls .github/workflows/ 2>/dev/null && echo "Directorio .github/workflows existe" || echo "Directorio .github/workflows no existe"
|
|
34
|
-
```
|
|
35
|
-
|
|
36
|
-
Mostrar al usuario qué se detectó y confirmar que es el proyecto correcto.
|
|
37
|
-
|
|
38
|
-
### Paso 2 — Preguntar qué workflows instalar (si TTY)
|
|
39
|
-
|
|
40
|
-
```
|
|
41
|
-
¿Qué workflows quieres instalar? (Enter para activar, espacio para omitir)
|
|
42
|
-
|
|
43
|
-
[x] swl-security.yml — Revisión de seguridad con Claude en cada PR
|
|
44
|
-
REQUIERE: secret CLAUDE_API_KEY en GitHub Settings → Secrets
|
|
45
|
-
|
|
46
|
-
[x] swl-ci.yml — CI estándar (lint + test) en push y PRs
|
|
47
|
-
Sin secrets adicionales
|
|
48
|
-
|
|
49
|
-
[ ] release-please.yml — Releases automáticos desde conventional commits
|
|
50
|
-
Sin secrets adicionales. Requiere conventional commits.
|
|
51
|
-
|
|
52
|
-
[ ] swl-devsecops.yml — Gates de seguridad del pipeline: gitleaks (secretos,
|
|
53
|
-
historial completo) + auditoría de dependencias por ecosistema (npm/pip/cargo)
|
|
54
|
-
Sin secrets en repos personales; en repos de ORGANIZACIÓN gitleaks exige
|
|
55
|
-
GITLEAKS_LICENSE (gratuita para individuos). Los gates avanzados
|
|
56
|
-
(SAST/Trivy/DAST) se configuran por proyecto — ver Skill("devsecops-pipeline-security").
|
|
57
|
-
```
|
|
58
|
-
|
|
59
|
-
Si el usuario omite `init` e invoca con flags directos, respetar esos flags sin preguntar:
|
|
60
|
-
- `--with-security` / `--no-security`
|
|
61
|
-
- `--with-ci` / `--no-ci`
|
|
62
|
-
- `--with-release-please`
|
|
63
|
-
- `--with-devsecops`
|
|
64
|
-
- `--dry-run`
|
|
65
|
-
- `--force`
|
|
66
|
-
|
|
67
|
-
### Paso 3 — Copiar workflows
|
|
68
|
-
|
|
69
|
-
Invocar el subcomando del CLI (resuelve cross-scope; ver
|
|
70
|
-
`docs/invocacion-cli-cross-scope.md`). Imprime el resultado como JSON
|
|
71
|
-
(`copiados`, `existentes`, `error`):
|
|
72
|
-
|
|
73
|
-
```bash
|
|
74
|
-
swl-ses configurar-ci init
|
|
75
|
-
# flags: --no-security --no-ci --with-release-please --with-devsecops --dry-run --force
|
|
76
|
-
# fallback: npx -y @saulwade/swl-ses@latest configurar-ci init
|
|
77
|
-
```
|
|
78
|
-
|
|
79
|
-
Si hay archivos existentes en `resultado.existentes`, preguntar:
|
|
80
|
-
```
|
|
81
|
-
Los siguientes workflows ya existen en .github/workflows/:
|
|
82
|
-
- swl-security.yml
|
|
83
|
-
¿Sobreescribir? (s/N)
|
|
84
|
-
```
|
|
85
|
-
|
|
86
|
-
Si el usuario dice que sí, volver a llamar el subcomando con `--force`.
|
|
87
|
-
|
|
88
|
-
### Paso 4 — Configurar CLAUDE_API_KEY (solo si se instaló swl-security.yml)
|
|
89
|
-
|
|
90
|
-
Preguntar:
|
|
91
|
-
```
|
|
92
|
-
swl-security.yml requiere el secret CLAUDE_API_KEY en GitHub.
|
|
93
|
-
|
|
94
|
-
¿Quieres configurarlo ahora con gh CLI? (s/N)
|
|
95
|
-
```
|
|
96
|
-
|
|
97
|
-
Si dice sí, verificar que `gh` esté disponible:
|
|
98
|
-
|
|
99
|
-
```bash
|
|
100
|
-
gh auth status 2>&1 | head -3
|
|
101
|
-
```
|
|
102
|
-
|
|
103
|
-
Si está autenticado, guiar al usuario para que pegue su API key (sin almacenarla):
|
|
104
|
-
|
|
105
|
-
```
|
|
106
|
-
Pega tu CLAUDE_API_KEY (la input estará oculta):
|
|
107
|
-
```
|
|
108
|
-
|
|
109
|
-
Luego ejecutar:
|
|
110
|
-
```bash
|
|
111
|
-
gh secret set CLAUDE_API_KEY
|
|
112
|
-
# gh leerá el valor desde stdin de forma segura
|
|
113
|
-
```
|
|
114
|
-
|
|
115
|
-
Si `gh` no está disponible o el usuario dice que no, mostrar el link para hacerlo manualmente:
|
|
116
|
-
```
|
|
117
|
-
Para configurar manualmente:
|
|
118
|
-
https://github.com/<owner>/<repo>/settings/secrets/actions/new
|
|
119
|
-
Nombre: CLAUDE_API_KEY
|
|
120
|
-
Valor: tu clave de https://console.anthropic.com
|
|
121
|
-
```
|
|
122
|
-
|
|
123
|
-
### Paso 5 — Configurar branch protection (opcional)
|
|
124
|
-
|
|
125
|
-
Preguntar:
|
|
126
|
-
```
|
|
127
|
-
¿Aplicar branch protection en main?
|
|
128
|
-
Esto requiere gh CLI autenticado y permisos de admin en el repo.
|
|
129
|
-
(s/N)
|
|
130
|
-
```
|
|
131
|
-
|
|
132
|
-
Si dice sí:
|
|
133
|
-
```bash
|
|
134
|
-
npx -y @saulwade/swl-ses@latest configure-branch-protection --dry-run
|
|
135
|
-
# Mostrar el plan al usuario
|
|
136
|
-
# Si confirma:
|
|
137
|
-
npx -y @saulwade/swl-ses@latest configure-branch-protection
|
|
138
|
-
```
|
|
139
|
-
|
|
140
|
-
El subcomando `configure-branch-protection` del CLI funciona desde cualquier proyecto: detecta el repo actual con `gh repo view`, aplica las reglas a su rama `main` y reporta resultado. No depende de la ubicación del paquete swl-ses.
|
|
141
|
-
|
|
142
|
-
### Paso 6 — Resumen final
|
|
143
|
-
|
|
144
|
-
```
|
|
145
|
-
Setup completado:
|
|
146
|
-
✓ .github/workflows/swl-security.yml
|
|
147
|
-
✓ .github/workflows/swl-ci.yml
|
|
148
|
-
- release-please.yml (omitido)
|
|
149
|
-
|
|
150
|
-
Próximos pasos:
|
|
151
|
-
1. git add .github/workflows/ && git commit -m "ci: agregar workflows CI/CD swl-ses"
|
|
152
|
-
2. Abrir un PR para ver el workflow en acción
|
|
153
|
-
3. Verificar que CLAUDE_API_KEY esté en GitHub Settings → Secrets
|
|
154
|
-
```
|
|
155
|
-
|
|
156
|
-
---
|
|
157
|
-
|
|
158
|
-
## /swl:configurar-ci status
|
|
159
|
-
|
|
160
|
-
Muestra el estado actual de los workflows SWL en el proyecto. Subcomando del CLI
|
|
161
|
-
(salida JSON con `instalados`, `faltantes`, `secretsFaltantes`):
|
|
162
|
-
|
|
163
|
-
```bash
|
|
164
|
-
swl-ses configurar-ci status
|
|
165
|
-
# fallback: npx -y @saulwade/swl-ses@latest configurar-ci status
|
|
166
|
-
```
|
|
167
|
-
|
|
168
|
-
Formato de salida (presentar al usuario a partir del JSON):
|
|
169
|
-
|
|
170
|
-
```
|
|
171
|
-
Workflows SWL en .github/workflows/:
|
|
172
|
-
|
|
173
|
-
Instalados:
|
|
174
|
-
✓ swl-security.yml
|
|
175
|
-
Secrets requeridos: CLAUDE_API_KEY (verificar en GitHub Settings)
|
|
176
|
-
✓ swl-ci.yml
|
|
177
|
-
Sin secrets adicionales
|
|
178
|
-
|
|
179
|
-
No instalados:
|
|
180
|
-
- release-please.yml
|
|
181
|
-
|
|
182
|
-
Para instalar los faltantes: /swl:configurar-ci init
|
|
183
|
-
```
|
|
184
|
-
|
|
185
|
-
Si `gh` está disponible, intentar verificar si el secret existe:
|
|
186
|
-
```bash
|
|
187
|
-
gh secret list 2>/dev/null | grep CLAUDE_API_KEY
|
|
188
|
-
```
|
|
189
|
-
|
|
190
|
-
---
|
|
191
|
-
|
|
192
|
-
## /swl:configurar-ci uninstall
|
|
193
|
-
|
|
194
|
-
Elimina los workflows gestionados por swl-ses. No toca branch protection ni otros workflows.
|
|
195
|
-
|
|
196
|
-
Subcomando del CLI (salida JSON). Primero listar qué se eliminaría (sin
|
|
197
|
-
confirmar), luego repetir con `--confirmar`:
|
|
198
|
-
|
|
199
|
-
```bash
|
|
200
|
-
swl-ses configurar-ci uninstall # plan (confirmar: false)
|
|
201
|
-
swl-ses configurar-ci uninstall --confirmar # ejecuta la eliminación
|
|
202
|
-
# fallback: npx -y @saulwade/swl-ses@latest configurar-ci uninstall [--confirmar]
|
|
203
|
-
```
|
|
204
|
-
|
|
205
|
-
Mostrar:
|
|
206
|
-
```
|
|
207
|
-
Los siguientes workflows serán eliminados:
|
|
208
|
-
- .github/workflows/swl-security.yml
|
|
209
|
-
- .github/workflows/swl-ci.yml
|
|
210
|
-
|
|
211
|
-
¿Confirmar? (s/N)
|
|
212
|
-
```
|
|
213
|
-
|
|
214
|
-
Si el usuario confirma:
|
|
215
|
-
```javascript
|
|
216
|
-
const resultado = uninstall({ confirmar: true });
|
|
217
|
-
```
|
|
218
|
-
|
|
219
|
-
Mostrar confirmación de archivos eliminados. Recordar que la branch protection NO se toca.
|
|
220
|
-
|
|
221
|
-
---
|
|
222
|
-
|
|
223
|
-
## Flags globales
|
|
224
|
-
|
|
225
|
-
| Flag | Descripción |
|
|
226
|
-
|------|-------------|
|
|
227
|
-
| `--dry-run` | Muestra qué se haría sin modificar nada |
|
|
228
|
-
| `--force` | Sobreescribe archivos existentes sin preguntar |
|
|
229
|
-
| `--with-release-please` | Incluir release-please.yml |
|
|
230
|
-
| `--no-security` | Omitir swl-security.yml |
|
|
231
|
-
| `--no-ci` | Omitir swl-ci.yml |
|
|
232
|
-
|
|
233
|
-
## Skill de referencia
|
|
234
|
-
|
|
235
|
-
Para troubleshooting, gotchas y guía avanzada: `Skill("infra-github-actions")`.
|
|
1
|
+
---
|
|
2
|
+
name: swl:configurar-ci
|
|
3
|
+
description: Instala y gestiona los workflows CI/CD de swl-ses en proyectos de usuarios. Subcomandos init (flujo interactivo completo), status (muestra qué está instalado) y uninstall (quita los workflows). Para setup automatizado de GitHub Actions con revisión de seguridad Claude, CI genérico y release automatizado.
|
|
4
|
+
allowed_tools: ["Read", "Write", "Edit", "Bash", "Glob", "Grep"]
|
|
5
|
+
user-invocable: true
|
|
6
|
+
version: "1.0.0"
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# /swl:configurar-ci — Setup de CI/CD en tu proyecto
|
|
10
|
+
|
|
11
|
+
Orquesta la instalación de los workflows GitHub Actions de swl-ses en el proyecto donde estés trabajando.
|
|
12
|
+
|
|
13
|
+
## Subcomandos
|
|
14
|
+
|
|
15
|
+
| Subcomando | Descripción |
|
|
16
|
+
|-----------|-------------|
|
|
17
|
+
| `init` | Flujo interactivo completo (default) |
|
|
18
|
+
| `status` | Muestra qué workflows están instalados y qué secrets se necesitan |
|
|
19
|
+
| `uninstall` | Quita los workflows SWL del proyecto |
|
|
20
|
+
|
|
21
|
+
Si se invoca sin subcomando, ejecutar `init`.
|
|
22
|
+
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
## /swl:configurar-ci init
|
|
26
|
+
|
|
27
|
+
Flujo interactivo paso a paso. Detecta el proyecto en el directorio actual.
|
|
28
|
+
|
|
29
|
+
### Paso 1 — Verificar contexto
|
|
30
|
+
|
|
31
|
+
```bash
|
|
32
|
+
node -e "const p=require('./package.json');console.log('Proyecto:',p.name,'v'+p.version)" 2>/dev/null || echo "Sin package.json"
|
|
33
|
+
ls .github/workflows/ 2>/dev/null && echo "Directorio .github/workflows existe" || echo "Directorio .github/workflows no existe"
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
Mostrar al usuario qué se detectó y confirmar que es el proyecto correcto.
|
|
37
|
+
|
|
38
|
+
### Paso 2 — Preguntar qué workflows instalar (si TTY)
|
|
39
|
+
|
|
40
|
+
```
|
|
41
|
+
¿Qué workflows quieres instalar? (Enter para activar, espacio para omitir)
|
|
42
|
+
|
|
43
|
+
[x] swl-security.yml — Revisión de seguridad con Claude en cada PR
|
|
44
|
+
REQUIERE: secret CLAUDE_API_KEY en GitHub Settings → Secrets
|
|
45
|
+
|
|
46
|
+
[x] swl-ci.yml — CI estándar (lint + test) en push y PRs
|
|
47
|
+
Sin secrets adicionales
|
|
48
|
+
|
|
49
|
+
[ ] release-please.yml — Releases automáticos desde conventional commits
|
|
50
|
+
Sin secrets adicionales. Requiere conventional commits.
|
|
51
|
+
|
|
52
|
+
[ ] swl-devsecops.yml — Gates de seguridad del pipeline: gitleaks (secretos,
|
|
53
|
+
historial completo) + auditoría de dependencias por ecosistema (npm/pip/cargo)
|
|
54
|
+
Sin secrets en repos personales; en repos de ORGANIZACIÓN gitleaks exige
|
|
55
|
+
GITLEAKS_LICENSE (gratuita para individuos). Los gates avanzados
|
|
56
|
+
(SAST/Trivy/DAST) se configuran por proyecto — ver Skill("devsecops-pipeline-security").
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
Si el usuario omite `init` e invoca con flags directos, respetar esos flags sin preguntar:
|
|
60
|
+
- `--with-security` / `--no-security`
|
|
61
|
+
- `--with-ci` / `--no-ci`
|
|
62
|
+
- `--with-release-please`
|
|
63
|
+
- `--with-devsecops`
|
|
64
|
+
- `--dry-run`
|
|
65
|
+
- `--force`
|
|
66
|
+
|
|
67
|
+
### Paso 3 — Copiar workflows
|
|
68
|
+
|
|
69
|
+
Invocar el subcomando del CLI (resuelve cross-scope; ver
|
|
70
|
+
`docs/invocacion-cli-cross-scope.md`). Imprime el resultado como JSON
|
|
71
|
+
(`copiados`, `existentes`, `error`):
|
|
72
|
+
|
|
73
|
+
```bash
|
|
74
|
+
swl-ses configurar-ci init
|
|
75
|
+
# flags: --no-security --no-ci --with-release-please --with-devsecops --dry-run --force
|
|
76
|
+
# fallback: npx -y @saulwade/swl-ses@latest configurar-ci init
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
Si hay archivos existentes en `resultado.existentes`, preguntar:
|
|
80
|
+
```
|
|
81
|
+
Los siguientes workflows ya existen en .github/workflows/:
|
|
82
|
+
- swl-security.yml
|
|
83
|
+
¿Sobreescribir? (s/N)
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
Si el usuario dice que sí, volver a llamar el subcomando con `--force`.
|
|
87
|
+
|
|
88
|
+
### Paso 4 — Configurar CLAUDE_API_KEY (solo si se instaló swl-security.yml)
|
|
89
|
+
|
|
90
|
+
Preguntar:
|
|
91
|
+
```
|
|
92
|
+
swl-security.yml requiere el secret CLAUDE_API_KEY en GitHub.
|
|
93
|
+
|
|
94
|
+
¿Quieres configurarlo ahora con gh CLI? (s/N)
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
Si dice sí, verificar que `gh` esté disponible:
|
|
98
|
+
|
|
99
|
+
```bash
|
|
100
|
+
gh auth status 2>&1 | head -3
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
Si está autenticado, guiar al usuario para que pegue su API key (sin almacenarla):
|
|
104
|
+
|
|
105
|
+
```
|
|
106
|
+
Pega tu CLAUDE_API_KEY (la input estará oculta):
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
Luego ejecutar:
|
|
110
|
+
```bash
|
|
111
|
+
gh secret set CLAUDE_API_KEY
|
|
112
|
+
# gh leerá el valor desde stdin de forma segura
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
Si `gh` no está disponible o el usuario dice que no, mostrar el link para hacerlo manualmente:
|
|
116
|
+
```
|
|
117
|
+
Para configurar manualmente:
|
|
118
|
+
https://github.com/<owner>/<repo>/settings/secrets/actions/new
|
|
119
|
+
Nombre: CLAUDE_API_KEY
|
|
120
|
+
Valor: tu clave de https://console.anthropic.com
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
### Paso 5 — Configurar branch protection (opcional)
|
|
124
|
+
|
|
125
|
+
Preguntar:
|
|
126
|
+
```
|
|
127
|
+
¿Aplicar branch protection en main?
|
|
128
|
+
Esto requiere gh CLI autenticado y permisos de admin en el repo.
|
|
129
|
+
(s/N)
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
Si dice sí:
|
|
133
|
+
```bash
|
|
134
|
+
npx -y @saulwade/swl-ses@latest configure-branch-protection --dry-run
|
|
135
|
+
# Mostrar el plan al usuario
|
|
136
|
+
# Si confirma:
|
|
137
|
+
npx -y @saulwade/swl-ses@latest configure-branch-protection
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
El subcomando `configure-branch-protection` del CLI funciona desde cualquier proyecto: detecta el repo actual con `gh repo view`, aplica las reglas a su rama `main` y reporta resultado. No depende de la ubicación del paquete swl-ses.
|
|
141
|
+
|
|
142
|
+
### Paso 6 — Resumen final
|
|
143
|
+
|
|
144
|
+
```
|
|
145
|
+
Setup completado:
|
|
146
|
+
✓ .github/workflows/swl-security.yml
|
|
147
|
+
✓ .github/workflows/swl-ci.yml
|
|
148
|
+
- release-please.yml (omitido)
|
|
149
|
+
|
|
150
|
+
Próximos pasos:
|
|
151
|
+
1. git add .github/workflows/ && git commit -m "ci: agregar workflows CI/CD swl-ses"
|
|
152
|
+
2. Abrir un PR para ver el workflow en acción
|
|
153
|
+
3. Verificar que CLAUDE_API_KEY esté en GitHub Settings → Secrets
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
---
|
|
157
|
+
|
|
158
|
+
## /swl:configurar-ci status
|
|
159
|
+
|
|
160
|
+
Muestra el estado actual de los workflows SWL en el proyecto. Subcomando del CLI
|
|
161
|
+
(salida JSON con `instalados`, `faltantes`, `secretsFaltantes`):
|
|
162
|
+
|
|
163
|
+
```bash
|
|
164
|
+
swl-ses configurar-ci status
|
|
165
|
+
# fallback: npx -y @saulwade/swl-ses@latest configurar-ci status
|
|
166
|
+
```
|
|
167
|
+
|
|
168
|
+
Formato de salida (presentar al usuario a partir del JSON):
|
|
169
|
+
|
|
170
|
+
```
|
|
171
|
+
Workflows SWL en .github/workflows/:
|
|
172
|
+
|
|
173
|
+
Instalados:
|
|
174
|
+
✓ swl-security.yml
|
|
175
|
+
Secrets requeridos: CLAUDE_API_KEY (verificar en GitHub Settings)
|
|
176
|
+
✓ swl-ci.yml
|
|
177
|
+
Sin secrets adicionales
|
|
178
|
+
|
|
179
|
+
No instalados:
|
|
180
|
+
- release-please.yml
|
|
181
|
+
|
|
182
|
+
Para instalar los faltantes: /swl:configurar-ci init
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
Si `gh` está disponible, intentar verificar si el secret existe:
|
|
186
|
+
```bash
|
|
187
|
+
gh secret list 2>/dev/null | grep CLAUDE_API_KEY
|
|
188
|
+
```
|
|
189
|
+
|
|
190
|
+
---
|
|
191
|
+
|
|
192
|
+
## /swl:configurar-ci uninstall
|
|
193
|
+
|
|
194
|
+
Elimina los workflows gestionados por swl-ses. No toca branch protection ni otros workflows.
|
|
195
|
+
|
|
196
|
+
Subcomando del CLI (salida JSON). Primero listar qué se eliminaría (sin
|
|
197
|
+
confirmar), luego repetir con `--confirmar`:
|
|
198
|
+
|
|
199
|
+
```bash
|
|
200
|
+
swl-ses configurar-ci uninstall # plan (confirmar: false)
|
|
201
|
+
swl-ses configurar-ci uninstall --confirmar # ejecuta la eliminación
|
|
202
|
+
# fallback: npx -y @saulwade/swl-ses@latest configurar-ci uninstall [--confirmar]
|
|
203
|
+
```
|
|
204
|
+
|
|
205
|
+
Mostrar:
|
|
206
|
+
```
|
|
207
|
+
Los siguientes workflows serán eliminados:
|
|
208
|
+
- .github/workflows/swl-security.yml
|
|
209
|
+
- .github/workflows/swl-ci.yml
|
|
210
|
+
|
|
211
|
+
¿Confirmar? (s/N)
|
|
212
|
+
```
|
|
213
|
+
|
|
214
|
+
Si el usuario confirma:
|
|
215
|
+
```javascript
|
|
216
|
+
const resultado = uninstall({ confirmar: true });
|
|
217
|
+
```
|
|
218
|
+
|
|
219
|
+
Mostrar confirmación de archivos eliminados. Recordar que la branch protection NO se toca.
|
|
220
|
+
|
|
221
|
+
---
|
|
222
|
+
|
|
223
|
+
## Flags globales
|
|
224
|
+
|
|
225
|
+
| Flag | Descripción |
|
|
226
|
+
|------|-------------|
|
|
227
|
+
| `--dry-run` | Muestra qué se haría sin modificar nada |
|
|
228
|
+
| `--force` | Sobreescribe archivos existentes sin preguntar |
|
|
229
|
+
| `--with-release-please` | Incluir release-please.yml |
|
|
230
|
+
| `--no-security` | Omitir swl-security.yml |
|
|
231
|
+
| `--no-ci` | Omitir swl-ci.yml |
|
|
232
|
+
|
|
233
|
+
## Skill de referencia
|
|
234
|
+
|
|
235
|
+
Para troubleshooting, gotchas y guía avanzada: `Skill("infra-github-actions")`.
|