@saulwade/swl-ses 1.7.0 → 1.7.1
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 +2 -2
- package/README.md +1 -1
- package/package.json +92 -92
- package/plugin.json +371 -371
- package/scripts/lib/reglas-globales-conocidas.json +73 -5
package/CLAUDE.md
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# CLAUDE.md — @saulwade/swl-ses v1.7.
|
|
1
|
+
# CLAUDE.md — @saulwade/swl-ses v1.7.1
|
|
2
2
|
|
|
3
3
|
## Reglas de máxima prioridad (aplican SIEMPRE, sin excepción)
|
|
4
4
|
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
Aplican las reglas globales `@~/.claude/rules/brevedad-output.md` (español de México, brevedad, sin AI-isms) y `@~/.claude/rules/git-coauthor.md` (sin co-autores en commits) — cargadas automáticamente en cada sesión. NO duplicar su contenido inline en este archivo (regla `@reglas/sin-duplicacion-reglas-globales.md`).
|
|
7
7
|
|
|
8
8
|
### Uso obligatorio del sistema SWL
|
|
9
|
-
|
|
9
|
+
Aplica la regla global `@~/.claude/rules/usar-sistema-swl.md` — matriz operacional completa (qué agente/skill/comando usar por tipo de tarea, excepciones legítimas, anti-patrones). Cargar skills con `Skill("nombre")` antes de implementar.
|
|
10
10
|
|
|
11
11
|
### Cuatro principios de implementación (Karpathy)
|
|
12
12
|
Antes de implementar, refactorizar o corregir bugs: (1) **pensar antes de codificar** (no asumir en silencio), (2) **simplicidad primero** (sin abstracciones especulativas), (3) **cambios quirúrgicos** (leer archivo completo antes de editar, no refactor de oportunidad), (4) **ejecución orientada a metas** (criterios verificables, test que reproduce bugs antes del fix). Tabla operativa + mapeo a agentes SWL en `@docs/karpathy-principios.md`. Detalle + 9 ejemplos MAL→BIEN: `Skill("prevencion-sobreingenieria")` + `recursos/EXAMPLES.md`.
|
package/README.md
CHANGED
package/package.json
CHANGED
|
@@ -1,92 +1,92 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@saulwade/swl-ses",
|
|
3
|
-
"version": "1.7.
|
|
4
|
-
"description": "Sistema de ingenieria de software auto-evolutivo multi-runtime polyglot con 61 agentes, 177 habilidades, 44 comandos, 71 reglas y 43 hooks. Soporta 11 lenguajes y 7 runtimes: Claude Code, OpenClaude, OpenCode, Gemini CLI, Cursor, Codex CLI (soporte completo); GitHub Copilot (soporte parcial). 100% en espanol (Mexico). Multi-target install (--target CSV / --all-runtimes), autoconfig MCP en Cursor/Codex con --with-mcp, agentes Codex en TOML, hooks Cursor (17 eventos) y Codex (6 eventos). Gateway bidireccional con relay Telegram y auditoria profunda Nemesis con loop evaluator-optimizer opt-in (ADR-0021) y 8 tools ejecutables. v1.7.
|
|
5
|
-
"bin": {
|
|
6
|
-
"swl-ses": "bin/swl-ses.js",
|
|
7
|
-
"swl-telegram-bot": "bin/swl-telegram-bot.js",
|
|
8
|
-
"swl-mcp-server": "bin/swl-mcp-server.js",
|
|
9
|
-
"swl-webhook-server": "bin/swl-webhook-server.js"
|
|
10
|
-
},
|
|
11
|
-
"files": [
|
|
12
|
-
"bin",
|
|
13
|
-
"scripts",
|
|
14
|
-
"manifiestos",
|
|
15
|
-
"agentes",
|
|
16
|
-
"habilidades",
|
|
17
|
-
"comandos",
|
|
18
|
-
"reglas",
|
|
19
|
-
"hooks",
|
|
20
|
-
"gateway",
|
|
21
|
-
"plantillas",
|
|
22
|
-
"contextos",
|
|
23
|
-
"instintos",
|
|
24
|
-
"schemas",
|
|
25
|
-
"_userland",
|
|
26
|
-
"plugin.json",
|
|
27
|
-
"CLAUDE.md"
|
|
28
|
-
],
|
|
29
|
-
"scripts": {
|
|
30
|
-
"postinstall": "echo '\n swl-software-engineering-system instalado.\n Ejecuta: npx swl-ses init\n'",
|
|
31
|
-
"test": "node --test tests/lib/*.test.js tests/scripts/*.test.js tests/scripts/lib/*.test.js tests/scripts/tui/*.test.js tests/hooks/*.test.js tests/hooks/lib/*.test.js tests/habilidades/*.test.js tests/gateway/*.test.js tests/bin/*.test.js tests/transformadores/*.test.js tests/mcp-server/*.test.js",
|
|
32
|
-
"test:validate": "node scripts/validar.js",
|
|
33
|
-
"test:manifest": "node scripts/validar-manifest.js",
|
|
34
|
-
"test:docs": "node scripts/verificar-docs-vs-codigo.js",
|
|
35
|
-
"test:smoke": "node scripts/smoke-test.js",
|
|
36
|
-
"test:aislamiento": "node scripts/validar-tests-aislamiento.js",
|
|
37
|
-
"test:all": "npm test && node scripts/validar.js && node scripts/validar-manifest.js && node scripts/verificar-docs-vs-codigo.js && node scripts/derivar-feature-list.js --check",
|
|
38
|
-
"test:userland": "node scripts/validar-userland-vacio.js",
|
|
39
|
-
"test:release": "npm run test:all && npm run test:userland && npm run test:smoke",
|
|
40
|
-
"doctor": "node scripts/doctor.js",
|
|
41
|
-
"prepack": "node scripts/limpiar-artefactos-python.js && node scripts/validar-userland-vacio.js",
|
|
42
|
-
"prepublishOnly": "npm run test:release",
|
|
43
|
-
"publish:all": "node scripts/publicar.js",
|
|
44
|
-
"publish:github": "node scripts/publicar.js --solo-github",
|
|
45
|
-
"publish:npmjs": "node scripts/publicar.js --solo-npmjs",
|
|
46
|
-
"publish:dry": "node scripts/publicar.js --dry-run",
|
|
47
|
-
"generate:docs": "node scripts/generar-inventario.js",
|
|
48
|
-
"gen-checklists": "node scripts/generar-checklists-consolidados.js",
|
|
49
|
-
"gen-checklists:check": "node scripts/generar-checklists-consolidados.js --check",
|
|
50
|
-
"gen:feature-list": "node scripts/derivar-feature-list.js",
|
|
51
|
-
"gen:feature-list:check": "node scripts/derivar-feature-list.js --check",
|
|
52
|
-
"field-report": "node scripts/field-report.js",
|
|
53
|
-
"configure:branch-protection": "node scripts/configurar-branch-protection.js"
|
|
54
|
-
},
|
|
55
|
-
"engines": {
|
|
56
|
-
"node": ">=22.0.0"
|
|
57
|
-
},
|
|
58
|
-
"keywords": [
|
|
59
|
-
"claude-code",
|
|
60
|
-
"github-copilot",
|
|
61
|
-
"gemini-cli",
|
|
62
|
-
"opencode",
|
|
63
|
-
"codex-cli",
|
|
64
|
-
"agentes",
|
|
65
|
-
"skills",
|
|
66
|
-
"multi-runtime",
|
|
67
|
-
"spec-driven",
|
|
68
|
-
"orquestacion",
|
|
69
|
-
"ingenieria-software"
|
|
70
|
-
],
|
|
71
|
-
"author": "Saul Wade Leon",
|
|
72
|
-
"license": "MIT",
|
|
73
|
-
"repository": {
|
|
74
|
-
"type": "git",
|
|
75
|
-
"url": "git+https://github.com/saul-wade/swl-ses.git"
|
|
76
|
-
},
|
|
77
|
-
"homepage": "https://github.com/saul-wade/swl-ses#readme",
|
|
78
|
-
"bugs": {
|
|
79
|
-
"url": "https://github.com/saul-wade/swl-ses/issues"
|
|
80
|
-
},
|
|
81
|
-
"publishConfig": {
|
|
82
|
-
"registry": "https://registry.npmjs.org/",
|
|
83
|
-
"access": "public"
|
|
84
|
-
},
|
|
85
|
-
"dependencies": {
|
|
86
|
-
"docx": "^9.6.1"
|
|
87
|
-
},
|
|
88
|
-
"overrides": {
|
|
89
|
-
"pako": "^2.1.0",
|
|
90
|
-
"readable-stream": "^4.7.0"
|
|
91
|
-
}
|
|
92
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "@saulwade/swl-ses",
|
|
3
|
+
"version": "1.7.1",
|
|
4
|
+
"description": "Sistema de ingenieria de software auto-evolutivo multi-runtime polyglot con 61 agentes, 177 habilidades, 44 comandos, 71 reglas y 43 hooks. Soporta 11 lenguajes y 7 runtimes: Claude Code, OpenClaude, OpenCode, Gemini CLI, Cursor, Codex CLI (soporte completo); GitHub Copilot (soporte parcial). 100% en espanol (Mexico). Multi-target install (--target CSV / --all-runtimes), autoconfig MCP en Cursor/Codex con --with-mcp, agentes Codex en TOML, hooks Cursor (17 eventos) y Codex (6 eventos). Gateway bidireccional con relay Telegram y auditoria profunda Nemesis con loop evaluator-optimizer opt-in (ADR-0021) y 8 tools ejecutables. v1.7.1 introduce dimension 8 del auditor CLAUDE.md (deteccion de duplicacion de reglas globales) + hook PostToolUse claudemd-duplicacion-detector + regla sin-duplicacion-reglas-globales.md + catalogo declarativo reglas-globales-conocidas.json con 6 reglas (idioma, brevedad, git-coauthor, arreglar-al-detectar, debatir, context7).",
|
|
5
|
+
"bin": {
|
|
6
|
+
"swl-ses": "bin/swl-ses.js",
|
|
7
|
+
"swl-telegram-bot": "bin/swl-telegram-bot.js",
|
|
8
|
+
"swl-mcp-server": "bin/swl-mcp-server.js",
|
|
9
|
+
"swl-webhook-server": "bin/swl-webhook-server.js"
|
|
10
|
+
},
|
|
11
|
+
"files": [
|
|
12
|
+
"bin",
|
|
13
|
+
"scripts",
|
|
14
|
+
"manifiestos",
|
|
15
|
+
"agentes",
|
|
16
|
+
"habilidades",
|
|
17
|
+
"comandos",
|
|
18
|
+
"reglas",
|
|
19
|
+
"hooks",
|
|
20
|
+
"gateway",
|
|
21
|
+
"plantillas",
|
|
22
|
+
"contextos",
|
|
23
|
+
"instintos",
|
|
24
|
+
"schemas",
|
|
25
|
+
"_userland",
|
|
26
|
+
"plugin.json",
|
|
27
|
+
"CLAUDE.md"
|
|
28
|
+
],
|
|
29
|
+
"scripts": {
|
|
30
|
+
"postinstall": "echo '\n swl-software-engineering-system instalado.\n Ejecuta: npx swl-ses init\n'",
|
|
31
|
+
"test": "node --test tests/lib/*.test.js tests/scripts/*.test.js tests/scripts/lib/*.test.js tests/scripts/tui/*.test.js tests/hooks/*.test.js tests/hooks/lib/*.test.js tests/habilidades/*.test.js tests/gateway/*.test.js tests/bin/*.test.js tests/transformadores/*.test.js tests/mcp-server/*.test.js",
|
|
32
|
+
"test:validate": "node scripts/validar.js",
|
|
33
|
+
"test:manifest": "node scripts/validar-manifest.js",
|
|
34
|
+
"test:docs": "node scripts/verificar-docs-vs-codigo.js",
|
|
35
|
+
"test:smoke": "node scripts/smoke-test.js",
|
|
36
|
+
"test:aislamiento": "node scripts/validar-tests-aislamiento.js",
|
|
37
|
+
"test:all": "npm test && node scripts/validar.js && node scripts/validar-manifest.js && node scripts/verificar-docs-vs-codigo.js && node scripts/derivar-feature-list.js --check",
|
|
38
|
+
"test:userland": "node scripts/validar-userland-vacio.js",
|
|
39
|
+
"test:release": "npm run test:all && npm run test:userland && npm run test:smoke",
|
|
40
|
+
"doctor": "node scripts/doctor.js",
|
|
41
|
+
"prepack": "node scripts/limpiar-artefactos-python.js && node scripts/validar-userland-vacio.js",
|
|
42
|
+
"prepublishOnly": "npm run test:release",
|
|
43
|
+
"publish:all": "node scripts/publicar.js",
|
|
44
|
+
"publish:github": "node scripts/publicar.js --solo-github",
|
|
45
|
+
"publish:npmjs": "node scripts/publicar.js --solo-npmjs",
|
|
46
|
+
"publish:dry": "node scripts/publicar.js --dry-run",
|
|
47
|
+
"generate:docs": "node scripts/generar-inventario.js",
|
|
48
|
+
"gen-checklists": "node scripts/generar-checklists-consolidados.js",
|
|
49
|
+
"gen-checklists:check": "node scripts/generar-checklists-consolidados.js --check",
|
|
50
|
+
"gen:feature-list": "node scripts/derivar-feature-list.js",
|
|
51
|
+
"gen:feature-list:check": "node scripts/derivar-feature-list.js --check",
|
|
52
|
+
"field-report": "node scripts/field-report.js",
|
|
53
|
+
"configure:branch-protection": "node scripts/configurar-branch-protection.js"
|
|
54
|
+
},
|
|
55
|
+
"engines": {
|
|
56
|
+
"node": ">=22.0.0"
|
|
57
|
+
},
|
|
58
|
+
"keywords": [
|
|
59
|
+
"claude-code",
|
|
60
|
+
"github-copilot",
|
|
61
|
+
"gemini-cli",
|
|
62
|
+
"opencode",
|
|
63
|
+
"codex-cli",
|
|
64
|
+
"agentes",
|
|
65
|
+
"skills",
|
|
66
|
+
"multi-runtime",
|
|
67
|
+
"spec-driven",
|
|
68
|
+
"orquestacion",
|
|
69
|
+
"ingenieria-software"
|
|
70
|
+
],
|
|
71
|
+
"author": "Saul Wade Leon",
|
|
72
|
+
"license": "MIT",
|
|
73
|
+
"repository": {
|
|
74
|
+
"type": "git",
|
|
75
|
+
"url": "git+https://github.com/saul-wade/swl-ses.git"
|
|
76
|
+
},
|
|
77
|
+
"homepage": "https://github.com/saul-wade/swl-ses#readme",
|
|
78
|
+
"bugs": {
|
|
79
|
+
"url": "https://github.com/saul-wade/swl-ses/issues"
|
|
80
|
+
},
|
|
81
|
+
"publishConfig": {
|
|
82
|
+
"registry": "https://registry.npmjs.org/",
|
|
83
|
+
"access": "public"
|
|
84
|
+
},
|
|
85
|
+
"dependencies": {
|
|
86
|
+
"docx": "^9.6.1"
|
|
87
|
+
},
|
|
88
|
+
"overrides": {
|
|
89
|
+
"pako": "^2.1.0",
|
|
90
|
+
"readable-stream": "^4.7.0"
|
|
91
|
+
}
|
|
92
|
+
}
|
package/plugin.json
CHANGED
|
@@ -1,371 +1,371 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "swl-ses",
|
|
3
|
-
"version": "1.7.
|
|
4
|
-
"description": "Sistema de ingenieria de software auto-evolutivo multi-runtime polyglot. 61 agentes, 177 habilidades, 44 comandos, 71 reglas y 43 hooks. 62 librerias. 11 lenguajes. Soporta Claude Code, Copilot, OpenCode, Codex y Gemini CLI. Loop evaluator-optimizer en /swl:nemesis (ADR-0021). v1.7.
|
|
5
|
-
"author": "Saul Wade Leon",
|
|
6
|
-
"license": "MIT",
|
|
7
|
-
"repository": "https://github.com/saul-wade/swl-ses",
|
|
8
|
-
"skills": [
|
|
9
|
-
"habilidades/accesibilidad-a11y",
|
|
10
|
-
"habilidades/agent-browser",
|
|
11
|
-
"habilidades/agent-deep-links",
|
|
12
|
-
"habilidades/agentes-como-servicio",
|
|
13
|
-
"habilidades/ai-runtime-security",
|
|
14
|
-
"habilidades/angular-avanzado",
|
|
15
|
-
"habilidades/angular-moderno",
|
|
16
|
-
"habilidades/api-rest-diseno",
|
|
17
|
-
"habilidades/aprender-de-git-diff",
|
|
18
|
-
"habilidades/aprendizaje-continuo",
|
|
19
|
-
"habilidades/async-python",
|
|
20
|
-
"habilidades/auth-patrones",
|
|
21
|
-
"habilidades/auto-evolucion-protocolo",
|
|
22
|
-
"habilidades/autoresearch",
|
|
23
|
-
"habilidades/azure-cloud",
|
|
24
|
-
"habilidades/backend-async-postgres-testing",
|
|
25
|
-
"habilidades/backend-error-design",
|
|
26
|
-
"habilidades/backend-mcp-servidor",
|
|
27
|
-
"habilidades/backend-production-resilience",
|
|
28
|
-
"habilidades/benchmark-memoria",
|
|
29
|
-
"habilidades/brainstorming",
|
|
30
|
-
"habilidades/browser-interaction-patterns",
|
|
31
|
-
"habilidades/browser-research-domains",
|
|
32
|
-
"habilidades/build-errors-cpp",
|
|
33
|
-
"habilidades/build-errors-csharp",
|
|
34
|
-
"habilidades/build-errors-go",
|
|
35
|
-
"habilidades/build-errors-java",
|
|
36
|
-
"habilidades/build-errors-kotlin",
|
|
37
|
-
"habilidades/build-errors-nextjs",
|
|
38
|
-
"habilidades/build-errors-php",
|
|
39
|
-
"habilidades/build-errors-python",
|
|
40
|
-
"habilidades/build-errors-rust",
|
|
41
|
-
"habilidades/build-errors-swift",
|
|
42
|
-
"habilidades/build-errors-typescript",
|
|
43
|
-
"habilidades/changelog-generator",
|
|
44
|
-
"habilidades/checklist-calidad",
|
|
45
|
-
"habilidades/checklist-seguridad",
|
|
46
|
-
"habilidades/checkpoints-verificacion",
|
|
47
|
-
"habilidades/ci-cd-pipelines",
|
|
48
|
-
"habilidades/cloud-aws",
|
|
49
|
-
"habilidades/compactacion-contexto",
|
|
50
|
-
"habilidades/contenedores-docker",
|
|
51
|
-
"habilidades/context-builder",
|
|
52
|
-
"habilidades/control-profundidad",
|
|
53
|
-
"habilidades/csharp-experto",
|
|
54
|
-
"habilidades/csharp-patrones",
|
|
55
|
-
"habilidades/csharp-testing",
|
|
56
|
-
"habilidades/css-moderno",
|
|
57
|
-
"habilidades/datos-etl",
|
|
58
|
-
"habilidades/dbml-experto",
|
|
59
|
-
"habilidades/dependencias-auditoria",
|
|
60
|
-
"habilidades/deprecacion-migracion",
|
|
61
|
-
"habilidades/design-tokens",
|
|
62
|
-
"habilidades/devsecops-pipeline-security",
|
|
63
|
-
"habilidades/diagrama-arquitectura",
|
|
64
|
-
"habilidades/discutir-fase",
|
|
65
|
-
"habilidades/diseno-herramientas-agente",
|
|
66
|
-
"habilidades/diseno-responsivo",
|
|
67
|
-
"habilidades/django-experto",
|
|
68
|
-
"habilidades/doc-sync",
|
|
69
|
-
"habilidades/doubt-driven-review",
|
|
70
|
-
"habilidades/drift-detection",
|
|
71
|
-
"habilidades/ejecutar-fase",
|
|
72
|
-
"habilidades/ejecutar-task-iterativo",
|
|
73
|
-
"habilidades/estilo-sin-ai-isms",
|
|
74
|
-
"habilidades/estructura-proyecto-claude",
|
|
75
|
-
"habilidades/eval-framework",
|
|
76
|
-
"habilidades/evaluacion-agentes",
|
|
77
|
-
"habilidades/event-driven",
|
|
78
|
-
"habilidades/extraccion-documentos",
|
|
79
|
-
"habilidades/extractor-de-aprendizajes",
|
|
80
|
-
"habilidades/fastapi-experto",
|
|
81
|
-
"habilidades/feynman-auditor-swl",
|
|
82
|
-
"habilidades/filament-admin",
|
|
83
|
-
"habilidades/frontend-avanzado",
|
|
84
|
-
"habilidades/gcp-cloud",
|
|
85
|
-
"habilidades/generacion-mermaid",
|
|
86
|
-
"habilidades/git-worktrees-paralelo",
|
|
87
|
-
"habilidades/go-experto",
|
|
88
|
-
"habilidades/go-patrones",
|
|
89
|
-
"habilidades/go-testing",
|
|
90
|
-
"habilidades/graphql-experto",
|
|
91
|
-
"habilidades/guardrail-semantico",
|
|
92
|
-
"habilidades/harness-claude-code",
|
|
93
|
-
"habilidades/iam-secretos",
|
|
94
|
-
"habilidades/infra-github-actions",
|
|
95
|
-
"habilidades/instalar-sistema",
|
|
96
|
-
"habilidades/java-experto",
|
|
97
|
-
"habilidades/java-patrones",
|
|
98
|
-
"habilidades/java-testing",
|
|
99
|
-
"habilidades/kotlin-compose",
|
|
100
|
-
"habilidades/kotlin-experto",
|
|
101
|
-
"habilidades/kotlin-testing",
|
|
102
|
-
"habilidades/kubernetes-orquestacion",
|
|
103
|
-
"habilidades/langchain-langraph",
|
|
104
|
-
"habilidades/legacy-code-rescue",
|
|
105
|
-
"habilidades/likec4-experto",
|
|
106
|
-
"habilidades/manejo-errores",
|
|
107
|
-
"habilidades/mapear-codebase",
|
|
108
|
-
"habilidades/memoria-busqueda",
|
|
109
|
-
"habilidades/meta-skills-estandar",
|
|
110
|
-
"habilidades/microservicios",
|
|
111
|
-
"habilidades/mobile-flutter",
|
|
112
|
-
"habilidades/mobile-react-native",
|
|
113
|
-
"habilidades/mongodb-experto",
|
|
114
|
-
"habilidades/monitoring-alertas",
|
|
115
|
-
"habilidades/nemesis-evaluacion-json",
|
|
116
|
-
"habilidades/nemesis-redistribuir",
|
|
117
|
-
"habilidades/nestjs-experto",
|
|
118
|
-
"habilidades/nextjs-experto",
|
|
119
|
-
"habilidades/nextjs-patrones",
|
|
120
|
-
"habilidades/nextjs-testing",
|
|
121
|
-
"habilidades/node-experto",
|
|
122
|
-
"habilidades/notificaciones-multicanal",
|
|
123
|
-
"habilidades/nuevo-proyecto",
|
|
124
|
-
"habilidades/orquestacion-async",
|
|
125
|
-
"habilidades/paid-media-tracking",
|
|
126
|
-
"habilidades/patrones-python",
|
|
127
|
-
"habilidades/perfil-usuario",
|
|
128
|
-
"habilidades/performance-baseline",
|
|
129
|
-
"habilidades/php-experto",
|
|
130
|
-
"habilidades/php-patrones",
|
|
131
|
-
"habilidades/php-testing",
|
|
132
|
-
"habilidades/planear-fase",
|
|
133
|
-
"habilidades/postgresql-experto",
|
|
134
|
-
"habilidades/prevencion-racionalizacion",
|
|
135
|
-
"habilidades/prevencion-sobreingenieria",
|
|
136
|
-
"habilidades/privacy-memoria",
|
|
137
|
-
"habilidades/proceso-autoverificacion-evidencias",
|
|
138
|
-
"habilidades/proceso-confianza-pre-implementacion",
|
|
139
|
-
"habilidades/proceso-ddia-fundamentos",
|
|
140
|
-
"habilidades/proceso-ddia-streaming",
|
|
141
|
-
"habilidades/proceso-discovery-machote",
|
|
142
|
-
"habilidades/proceso-intent-engineering",
|
|
143
|
-
"habilidades/proceso-modular-split",
|
|
144
|
-
"habilidades/prompt-engineering",
|
|
145
|
-
"habilidades/protocolo-revision-swl",
|
|
146
|
-
"habilidades/rag-arquitectura",
|
|
147
|
-
"habilidades/rails-experto",
|
|
148
|
-
"habilidades/react-experto",
|
|
149
|
-
"habilidades/react-optimizacion",
|
|
150
|
-
"habilidades/redis-experto",
|
|
151
|
-
"habilidades/reducir-entropia",
|
|
152
|
-
"habilidades/release-semver",
|
|
153
|
-
"habilidades/rust-experto",
|
|
154
|
-
"habilidades/rust-patrones",
|
|
155
|
-
"habilidades/rust-testing",
|
|
156
|
-
"habilidades/seguridad-skills-ia",
|
|
157
|
-
"habilidades/sql-optimizacion",
|
|
158
|
-
"habilidades/sre-patrones",
|
|
159
|
-
"habilidades/state-inconsistency-auditor-swl",
|
|
160
|
-
"habilidades/stripe-pagos",
|
|
161
|
-
"habilidades/structured-outputs",
|
|
162
|
-
"habilidades/swift-experto",
|
|
163
|
-
"habilidades/swift-patrones",
|
|
164
|
-
"habilidades/swift-testing",
|
|
165
|
-
"habilidades/swl-claudemd",
|
|
166
|
-
"habilidades/swl-dashboard",
|
|
167
|
-
"habilidades/swl-markitdown",
|
|
168
|
-
"habilidades/swl-revisar-impacto",
|
|
169
|
-
"habilidades/tailwind-experto",
|
|
170
|
-
"habilidades/tdd-workflow",
|
|
171
|
-
"habilidades/terraform-experto",
|
|
172
|
-
"habilidades/testing-python",
|
|
173
|
-
"habilidades/threat-model-lite",
|
|
174
|
-
"habilidades/tracing-processor",
|
|
175
|
-
"habilidades/tracking-measurement",
|
|
176
|
-
"habilidades/typescript-avanzado",
|
|
177
|
-
"habilidades/typescript-diagnosticos",
|
|
178
|
-
"habilidades/ux-diseno",
|
|
179
|
-
"habilidades/validacion-ci-sistema",
|
|
180
|
-
"habilidades/verificacion-evidencia",
|
|
181
|
-
"habilidades/verificar-trabajo",
|
|
182
|
-
"habilidades/web-fetcher-routing",
|
|
183
|
-
"habilidades/wiki-conocimiento",
|
|
184
|
-
"habilidades/wireframes-flujos",
|
|
185
|
-
"habilidades/workflow-claude-code"
|
|
186
|
-
],
|
|
187
|
-
"agents": [
|
|
188
|
-
"agentes/accesibilidad-wcag-swl.md",
|
|
189
|
-
"agentes/arquitecto-swl.md",
|
|
190
|
-
"agentes/auto-evolucion-swl.md",
|
|
191
|
-
"agentes/backend-api-swl.md",
|
|
192
|
-
"agentes/backend-csharp-swl.md",
|
|
193
|
-
"agentes/backend-go-swl.md",
|
|
194
|
-
"agentes/backend-java-swl.md",
|
|
195
|
-
"agentes/backend-node-swl.md",
|
|
196
|
-
"agentes/backend-python-swl.md",
|
|
197
|
-
"agentes/backend-rust-swl.md",
|
|
198
|
-
"agentes/backend-workers-swl.md",
|
|
199
|
-
"agentes/cloud-infra-swl.md",
|
|
200
|
-
"agentes/consolidador-swl.md",
|
|
201
|
-
"agentes/datos-swl.md",
|
|
202
|
-
"agentes/depurador-swl.md",
|
|
203
|
-
"agentes/devops-ci-swl.md",
|
|
204
|
-
"agentes/disenador-ui-swl.md",
|
|
205
|
-
"agentes/documentador-swl.md",
|
|
206
|
-
"agentes/frontend-angular-swl.md",
|
|
207
|
-
"agentes/frontend-css-swl.md",
|
|
208
|
-
"agentes/frontend-react-swl.md",
|
|
209
|
-
"agentes/frontend-swl.md",
|
|
210
|
-
"agentes/frontend-tailwind-swl.md",
|
|
211
|
-
"agentes/gh-fix-ci-swl.md",
|
|
212
|
-
"agentes/implementador-swl.md",
|
|
213
|
-
"agentes/investigador-swl.md",
|
|
214
|
-
"agentes/investigador-ux-swl.md",
|
|
215
|
-
"agentes/llm-apps-swl.md",
|
|
216
|
-
"agentes/migrador-swl.md",
|
|
217
|
-
"agentes/mobile-android-swl.md",
|
|
218
|
-
"agentes/mobile-cross-swl.md",
|
|
219
|
-
"agentes/mobile-ios-swl.md",
|
|
220
|
-
"agentes/mobile-testing-swl.md",
|
|
221
|
-
"agentes/nemesis-auditor-swl.md",
|
|
222
|
-
"agentes/notificador-swl.md",
|
|
223
|
-
"agentes/observabilidad-swl.md",
|
|
224
|
-
"agentes/orquestador-swl.md",
|
|
225
|
-
"agentes/pagos-swl.md",
|
|
226
|
-
"agentes/perfilador-usuario-swl.md",
|
|
227
|
-
"agentes/planificador-swl.md",
|
|
228
|
-
"agentes/producto-prd-swl.md",
|
|
229
|
-
"agentes/red-team-swl.md",
|
|
230
|
-
"agentes/release-manager-swl.md",
|
|
231
|
-
"agentes/rendimiento-swl.md",
|
|
232
|
-
"agentes/resolutor-build-swl.md",
|
|
233
|
-
"agentes/revisor-angular-swl.md",
|
|
234
|
-
"agentes/revisor-codigo-swl.md",
|
|
235
|
-
"agentes/revisor-csharp-swl.md",
|
|
236
|
-
"agentes/revisor-go-swl.md",
|
|
237
|
-
"agentes/revisor-java-swl.md",
|
|
238
|
-
"agentes/revisor-kotlin-swl.md",
|
|
239
|
-
"agentes/revisor-nextjs-swl.md",
|
|
240
|
-
"agentes/revisor-php-swl.md",
|
|
241
|
-
"agentes/revisor-react-swl.md",
|
|
242
|
-
"agentes/revisor-rust-swl.md",
|
|
243
|
-
"agentes/revisor-seguridad-swl.md",
|
|
244
|
-
"agentes/revisor-swift-swl.md",
|
|
245
|
-
"agentes/revisor-typescript-swl.md",
|
|
246
|
-
"agentes/sre-swl.md",
|
|
247
|
-
"agentes/tdd-qa-swl.md",
|
|
248
|
-
"agentes/ux-disenador-swl.md"
|
|
249
|
-
],
|
|
250
|
-
"hooks": {
|
|
251
|
-
"PreToolUse": [
|
|
252
|
-
{
|
|
253
|
-
"matcher": "Write|Edit",
|
|
254
|
-
"type": "command",
|
|
255
|
-
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/escaneo-secretos.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
256
|
-
},
|
|
257
|
-
{
|
|
258
|
-
"matcher": "Write|Edit",
|
|
259
|
-
"type": "command",
|
|
260
|
-
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/proteccion-rutas.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
261
|
-
},
|
|
262
|
-
{
|
|
263
|
-
"matcher": "Bash",
|
|
264
|
-
"type": "command",
|
|
265
|
-
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/calidad-pre-commit.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
266
|
-
},
|
|
267
|
-
{
|
|
268
|
-
"type": "command",
|
|
269
|
-
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/risk-scoring.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
270
|
-
},
|
|
271
|
-
{
|
|
272
|
-
"matcher": "Bash",
|
|
273
|
-
"type": "command",
|
|
274
|
-
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/calidad-typescript.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
275
|
-
},
|
|
276
|
-
{
|
|
277
|
-
"matcher": "Glob|Grep|Read",
|
|
278
|
-
"type": "command",
|
|
279
|
-
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/grafo-contexto.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
280
|
-
},
|
|
281
|
-
{
|
|
282
|
-
"matcher": "Bash",
|
|
283
|
-
"type": "command",
|
|
284
|
-
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/auto-background.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
285
|
-
}
|
|
286
|
-
],
|
|
287
|
-
"PostToolUse": [
|
|
288
|
-
{
|
|
289
|
-
"type": "command",
|
|
290
|
-
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/linea-estado.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
291
|
-
},
|
|
292
|
-
{
|
|
293
|
-
"type": "command",
|
|
294
|
-
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/monitor-contexto.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
295
|
-
},
|
|
296
|
-
{
|
|
297
|
-
"matcher": "Bash|Write|Edit",
|
|
298
|
-
"type": "command",
|
|
299
|
-
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/extraccion-aprendizajes.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
300
|
-
},
|
|
301
|
-
{
|
|
302
|
-
"matcher": "Bash|Write|Edit",
|
|
303
|
-
"type": "command",
|
|
304
|
-
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/degradacion-instintos.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
305
|
-
},
|
|
306
|
-
{
|
|
307
|
-
"type": "command",
|
|
308
|
-
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/tracking-costos.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
309
|
-
},
|
|
310
|
-
{
|
|
311
|
-
"type": "command",
|
|
312
|
-
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/inyeccion-contexto.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
313
|
-
},
|
|
314
|
-
{
|
|
315
|
-
"matcher": "Write|Edit",
|
|
316
|
-
"type": "command",
|
|
317
|
-
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/graph-update.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
318
|
-
},
|
|
319
|
-
{
|
|
320
|
-
"type": "command",
|
|
321
|
-
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/auto-consolidacion.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
322
|
-
},
|
|
323
|
-
{
|
|
324
|
-
"matcher": "Agent",
|
|
325
|
-
"type": "command",
|
|
326
|
-
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/telemetria-agentes.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
327
|
-
},
|
|
328
|
-
{
|
|
329
|
-
"type": "command",
|
|
330
|
-
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/audit-trail.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
331
|
-
},
|
|
332
|
-
{
|
|
333
|
-
"matcher": "Agent",
|
|
334
|
-
"type": "command",
|
|
335
|
-
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/agente-lifecycle.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
336
|
-
}
|
|
337
|
-
],
|
|
338
|
-
"UserPromptSubmit": [
|
|
339
|
-
{
|
|
340
|
-
"type": "command",
|
|
341
|
-
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/clasificador-mensajes.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
342
|
-
}
|
|
343
|
-
],
|
|
344
|
-
"Stop": [
|
|
345
|
-
{
|
|
346
|
-
"type": "command",
|
|
347
|
-
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/resumen-sesion.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
348
|
-
},
|
|
349
|
-
{
|
|
350
|
-
"type": "command",
|
|
351
|
-
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/actualizar-perfil-usuario.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
352
|
-
},
|
|
353
|
-
{
|
|
354
|
-
"type": "command",
|
|
355
|
-
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/metricas-evolucion.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
356
|
-
}
|
|
357
|
-
],
|
|
358
|
-
"SubagentStop": [
|
|
359
|
-
{
|
|
360
|
-
"type": "command",
|
|
361
|
-
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/auto-evolucion.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
362
|
-
}
|
|
363
|
-
],
|
|
364
|
-
"PreCompact": [
|
|
365
|
-
{
|
|
366
|
-
"type": "command",
|
|
367
|
-
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/preservar-estado-pre-compact.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
368
|
-
}
|
|
369
|
-
]
|
|
370
|
-
}
|
|
371
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "swl-ses",
|
|
3
|
+
"version": "1.7.1",
|
|
4
|
+
"description": "Sistema de ingenieria de software auto-evolutivo multi-runtime polyglot. 61 agentes, 177 habilidades, 44 comandos, 71 reglas y 43 hooks. 62 librerias. 11 lenguajes. Soporta Claude Code, Copilot, OpenCode, Codex y Gemini CLI. Loop evaluator-optimizer en /swl:nemesis (ADR-0021). v1.7.1 introduce dimension 8 del auditor CLAUDE.md (deteccion de duplicacion de reglas globales), hook PostToolUse claudemd-duplicacion-detector, regla sin-duplicacion-reglas-globales y catalogo declarativo de 6 reglas globales conocidas (idioma, brevedad, git-coauthor, arreglar-al-detectar, debatir, context7).",
|
|
5
|
+
"author": "Saul Wade Leon",
|
|
6
|
+
"license": "MIT",
|
|
7
|
+
"repository": "https://github.com/saul-wade/swl-ses",
|
|
8
|
+
"skills": [
|
|
9
|
+
"habilidades/accesibilidad-a11y",
|
|
10
|
+
"habilidades/agent-browser",
|
|
11
|
+
"habilidades/agent-deep-links",
|
|
12
|
+
"habilidades/agentes-como-servicio",
|
|
13
|
+
"habilidades/ai-runtime-security",
|
|
14
|
+
"habilidades/angular-avanzado",
|
|
15
|
+
"habilidades/angular-moderno",
|
|
16
|
+
"habilidades/api-rest-diseno",
|
|
17
|
+
"habilidades/aprender-de-git-diff",
|
|
18
|
+
"habilidades/aprendizaje-continuo",
|
|
19
|
+
"habilidades/async-python",
|
|
20
|
+
"habilidades/auth-patrones",
|
|
21
|
+
"habilidades/auto-evolucion-protocolo",
|
|
22
|
+
"habilidades/autoresearch",
|
|
23
|
+
"habilidades/azure-cloud",
|
|
24
|
+
"habilidades/backend-async-postgres-testing",
|
|
25
|
+
"habilidades/backend-error-design",
|
|
26
|
+
"habilidades/backend-mcp-servidor",
|
|
27
|
+
"habilidades/backend-production-resilience",
|
|
28
|
+
"habilidades/benchmark-memoria",
|
|
29
|
+
"habilidades/brainstorming",
|
|
30
|
+
"habilidades/browser-interaction-patterns",
|
|
31
|
+
"habilidades/browser-research-domains",
|
|
32
|
+
"habilidades/build-errors-cpp",
|
|
33
|
+
"habilidades/build-errors-csharp",
|
|
34
|
+
"habilidades/build-errors-go",
|
|
35
|
+
"habilidades/build-errors-java",
|
|
36
|
+
"habilidades/build-errors-kotlin",
|
|
37
|
+
"habilidades/build-errors-nextjs",
|
|
38
|
+
"habilidades/build-errors-php",
|
|
39
|
+
"habilidades/build-errors-python",
|
|
40
|
+
"habilidades/build-errors-rust",
|
|
41
|
+
"habilidades/build-errors-swift",
|
|
42
|
+
"habilidades/build-errors-typescript",
|
|
43
|
+
"habilidades/changelog-generator",
|
|
44
|
+
"habilidades/checklist-calidad",
|
|
45
|
+
"habilidades/checklist-seguridad",
|
|
46
|
+
"habilidades/checkpoints-verificacion",
|
|
47
|
+
"habilidades/ci-cd-pipelines",
|
|
48
|
+
"habilidades/cloud-aws",
|
|
49
|
+
"habilidades/compactacion-contexto",
|
|
50
|
+
"habilidades/contenedores-docker",
|
|
51
|
+
"habilidades/context-builder",
|
|
52
|
+
"habilidades/control-profundidad",
|
|
53
|
+
"habilidades/csharp-experto",
|
|
54
|
+
"habilidades/csharp-patrones",
|
|
55
|
+
"habilidades/csharp-testing",
|
|
56
|
+
"habilidades/css-moderno",
|
|
57
|
+
"habilidades/datos-etl",
|
|
58
|
+
"habilidades/dbml-experto",
|
|
59
|
+
"habilidades/dependencias-auditoria",
|
|
60
|
+
"habilidades/deprecacion-migracion",
|
|
61
|
+
"habilidades/design-tokens",
|
|
62
|
+
"habilidades/devsecops-pipeline-security",
|
|
63
|
+
"habilidades/diagrama-arquitectura",
|
|
64
|
+
"habilidades/discutir-fase",
|
|
65
|
+
"habilidades/diseno-herramientas-agente",
|
|
66
|
+
"habilidades/diseno-responsivo",
|
|
67
|
+
"habilidades/django-experto",
|
|
68
|
+
"habilidades/doc-sync",
|
|
69
|
+
"habilidades/doubt-driven-review",
|
|
70
|
+
"habilidades/drift-detection",
|
|
71
|
+
"habilidades/ejecutar-fase",
|
|
72
|
+
"habilidades/ejecutar-task-iterativo",
|
|
73
|
+
"habilidades/estilo-sin-ai-isms",
|
|
74
|
+
"habilidades/estructura-proyecto-claude",
|
|
75
|
+
"habilidades/eval-framework",
|
|
76
|
+
"habilidades/evaluacion-agentes",
|
|
77
|
+
"habilidades/event-driven",
|
|
78
|
+
"habilidades/extraccion-documentos",
|
|
79
|
+
"habilidades/extractor-de-aprendizajes",
|
|
80
|
+
"habilidades/fastapi-experto",
|
|
81
|
+
"habilidades/feynman-auditor-swl",
|
|
82
|
+
"habilidades/filament-admin",
|
|
83
|
+
"habilidades/frontend-avanzado",
|
|
84
|
+
"habilidades/gcp-cloud",
|
|
85
|
+
"habilidades/generacion-mermaid",
|
|
86
|
+
"habilidades/git-worktrees-paralelo",
|
|
87
|
+
"habilidades/go-experto",
|
|
88
|
+
"habilidades/go-patrones",
|
|
89
|
+
"habilidades/go-testing",
|
|
90
|
+
"habilidades/graphql-experto",
|
|
91
|
+
"habilidades/guardrail-semantico",
|
|
92
|
+
"habilidades/harness-claude-code",
|
|
93
|
+
"habilidades/iam-secretos",
|
|
94
|
+
"habilidades/infra-github-actions",
|
|
95
|
+
"habilidades/instalar-sistema",
|
|
96
|
+
"habilidades/java-experto",
|
|
97
|
+
"habilidades/java-patrones",
|
|
98
|
+
"habilidades/java-testing",
|
|
99
|
+
"habilidades/kotlin-compose",
|
|
100
|
+
"habilidades/kotlin-experto",
|
|
101
|
+
"habilidades/kotlin-testing",
|
|
102
|
+
"habilidades/kubernetes-orquestacion",
|
|
103
|
+
"habilidades/langchain-langraph",
|
|
104
|
+
"habilidades/legacy-code-rescue",
|
|
105
|
+
"habilidades/likec4-experto",
|
|
106
|
+
"habilidades/manejo-errores",
|
|
107
|
+
"habilidades/mapear-codebase",
|
|
108
|
+
"habilidades/memoria-busqueda",
|
|
109
|
+
"habilidades/meta-skills-estandar",
|
|
110
|
+
"habilidades/microservicios",
|
|
111
|
+
"habilidades/mobile-flutter",
|
|
112
|
+
"habilidades/mobile-react-native",
|
|
113
|
+
"habilidades/mongodb-experto",
|
|
114
|
+
"habilidades/monitoring-alertas",
|
|
115
|
+
"habilidades/nemesis-evaluacion-json",
|
|
116
|
+
"habilidades/nemesis-redistribuir",
|
|
117
|
+
"habilidades/nestjs-experto",
|
|
118
|
+
"habilidades/nextjs-experto",
|
|
119
|
+
"habilidades/nextjs-patrones",
|
|
120
|
+
"habilidades/nextjs-testing",
|
|
121
|
+
"habilidades/node-experto",
|
|
122
|
+
"habilidades/notificaciones-multicanal",
|
|
123
|
+
"habilidades/nuevo-proyecto",
|
|
124
|
+
"habilidades/orquestacion-async",
|
|
125
|
+
"habilidades/paid-media-tracking",
|
|
126
|
+
"habilidades/patrones-python",
|
|
127
|
+
"habilidades/perfil-usuario",
|
|
128
|
+
"habilidades/performance-baseline",
|
|
129
|
+
"habilidades/php-experto",
|
|
130
|
+
"habilidades/php-patrones",
|
|
131
|
+
"habilidades/php-testing",
|
|
132
|
+
"habilidades/planear-fase",
|
|
133
|
+
"habilidades/postgresql-experto",
|
|
134
|
+
"habilidades/prevencion-racionalizacion",
|
|
135
|
+
"habilidades/prevencion-sobreingenieria",
|
|
136
|
+
"habilidades/privacy-memoria",
|
|
137
|
+
"habilidades/proceso-autoverificacion-evidencias",
|
|
138
|
+
"habilidades/proceso-confianza-pre-implementacion",
|
|
139
|
+
"habilidades/proceso-ddia-fundamentos",
|
|
140
|
+
"habilidades/proceso-ddia-streaming",
|
|
141
|
+
"habilidades/proceso-discovery-machote",
|
|
142
|
+
"habilidades/proceso-intent-engineering",
|
|
143
|
+
"habilidades/proceso-modular-split",
|
|
144
|
+
"habilidades/prompt-engineering",
|
|
145
|
+
"habilidades/protocolo-revision-swl",
|
|
146
|
+
"habilidades/rag-arquitectura",
|
|
147
|
+
"habilidades/rails-experto",
|
|
148
|
+
"habilidades/react-experto",
|
|
149
|
+
"habilidades/react-optimizacion",
|
|
150
|
+
"habilidades/redis-experto",
|
|
151
|
+
"habilidades/reducir-entropia",
|
|
152
|
+
"habilidades/release-semver",
|
|
153
|
+
"habilidades/rust-experto",
|
|
154
|
+
"habilidades/rust-patrones",
|
|
155
|
+
"habilidades/rust-testing",
|
|
156
|
+
"habilidades/seguridad-skills-ia",
|
|
157
|
+
"habilidades/sql-optimizacion",
|
|
158
|
+
"habilidades/sre-patrones",
|
|
159
|
+
"habilidades/state-inconsistency-auditor-swl",
|
|
160
|
+
"habilidades/stripe-pagos",
|
|
161
|
+
"habilidades/structured-outputs",
|
|
162
|
+
"habilidades/swift-experto",
|
|
163
|
+
"habilidades/swift-patrones",
|
|
164
|
+
"habilidades/swift-testing",
|
|
165
|
+
"habilidades/swl-claudemd",
|
|
166
|
+
"habilidades/swl-dashboard",
|
|
167
|
+
"habilidades/swl-markitdown",
|
|
168
|
+
"habilidades/swl-revisar-impacto",
|
|
169
|
+
"habilidades/tailwind-experto",
|
|
170
|
+
"habilidades/tdd-workflow",
|
|
171
|
+
"habilidades/terraform-experto",
|
|
172
|
+
"habilidades/testing-python",
|
|
173
|
+
"habilidades/threat-model-lite",
|
|
174
|
+
"habilidades/tracing-processor",
|
|
175
|
+
"habilidades/tracking-measurement",
|
|
176
|
+
"habilidades/typescript-avanzado",
|
|
177
|
+
"habilidades/typescript-diagnosticos",
|
|
178
|
+
"habilidades/ux-diseno",
|
|
179
|
+
"habilidades/validacion-ci-sistema",
|
|
180
|
+
"habilidades/verificacion-evidencia",
|
|
181
|
+
"habilidades/verificar-trabajo",
|
|
182
|
+
"habilidades/web-fetcher-routing",
|
|
183
|
+
"habilidades/wiki-conocimiento",
|
|
184
|
+
"habilidades/wireframes-flujos",
|
|
185
|
+
"habilidades/workflow-claude-code"
|
|
186
|
+
],
|
|
187
|
+
"agents": [
|
|
188
|
+
"agentes/accesibilidad-wcag-swl.md",
|
|
189
|
+
"agentes/arquitecto-swl.md",
|
|
190
|
+
"agentes/auto-evolucion-swl.md",
|
|
191
|
+
"agentes/backend-api-swl.md",
|
|
192
|
+
"agentes/backend-csharp-swl.md",
|
|
193
|
+
"agentes/backend-go-swl.md",
|
|
194
|
+
"agentes/backend-java-swl.md",
|
|
195
|
+
"agentes/backend-node-swl.md",
|
|
196
|
+
"agentes/backend-python-swl.md",
|
|
197
|
+
"agentes/backend-rust-swl.md",
|
|
198
|
+
"agentes/backend-workers-swl.md",
|
|
199
|
+
"agentes/cloud-infra-swl.md",
|
|
200
|
+
"agentes/consolidador-swl.md",
|
|
201
|
+
"agentes/datos-swl.md",
|
|
202
|
+
"agentes/depurador-swl.md",
|
|
203
|
+
"agentes/devops-ci-swl.md",
|
|
204
|
+
"agentes/disenador-ui-swl.md",
|
|
205
|
+
"agentes/documentador-swl.md",
|
|
206
|
+
"agentes/frontend-angular-swl.md",
|
|
207
|
+
"agentes/frontend-css-swl.md",
|
|
208
|
+
"agentes/frontend-react-swl.md",
|
|
209
|
+
"agentes/frontend-swl.md",
|
|
210
|
+
"agentes/frontend-tailwind-swl.md",
|
|
211
|
+
"agentes/gh-fix-ci-swl.md",
|
|
212
|
+
"agentes/implementador-swl.md",
|
|
213
|
+
"agentes/investigador-swl.md",
|
|
214
|
+
"agentes/investigador-ux-swl.md",
|
|
215
|
+
"agentes/llm-apps-swl.md",
|
|
216
|
+
"agentes/migrador-swl.md",
|
|
217
|
+
"agentes/mobile-android-swl.md",
|
|
218
|
+
"agentes/mobile-cross-swl.md",
|
|
219
|
+
"agentes/mobile-ios-swl.md",
|
|
220
|
+
"agentes/mobile-testing-swl.md",
|
|
221
|
+
"agentes/nemesis-auditor-swl.md",
|
|
222
|
+
"agentes/notificador-swl.md",
|
|
223
|
+
"agentes/observabilidad-swl.md",
|
|
224
|
+
"agentes/orquestador-swl.md",
|
|
225
|
+
"agentes/pagos-swl.md",
|
|
226
|
+
"agentes/perfilador-usuario-swl.md",
|
|
227
|
+
"agentes/planificador-swl.md",
|
|
228
|
+
"agentes/producto-prd-swl.md",
|
|
229
|
+
"agentes/red-team-swl.md",
|
|
230
|
+
"agentes/release-manager-swl.md",
|
|
231
|
+
"agentes/rendimiento-swl.md",
|
|
232
|
+
"agentes/resolutor-build-swl.md",
|
|
233
|
+
"agentes/revisor-angular-swl.md",
|
|
234
|
+
"agentes/revisor-codigo-swl.md",
|
|
235
|
+
"agentes/revisor-csharp-swl.md",
|
|
236
|
+
"agentes/revisor-go-swl.md",
|
|
237
|
+
"agentes/revisor-java-swl.md",
|
|
238
|
+
"agentes/revisor-kotlin-swl.md",
|
|
239
|
+
"agentes/revisor-nextjs-swl.md",
|
|
240
|
+
"agentes/revisor-php-swl.md",
|
|
241
|
+
"agentes/revisor-react-swl.md",
|
|
242
|
+
"agentes/revisor-rust-swl.md",
|
|
243
|
+
"agentes/revisor-seguridad-swl.md",
|
|
244
|
+
"agentes/revisor-swift-swl.md",
|
|
245
|
+
"agentes/revisor-typescript-swl.md",
|
|
246
|
+
"agentes/sre-swl.md",
|
|
247
|
+
"agentes/tdd-qa-swl.md",
|
|
248
|
+
"agentes/ux-disenador-swl.md"
|
|
249
|
+
],
|
|
250
|
+
"hooks": {
|
|
251
|
+
"PreToolUse": [
|
|
252
|
+
{
|
|
253
|
+
"matcher": "Write|Edit",
|
|
254
|
+
"type": "command",
|
|
255
|
+
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/escaneo-secretos.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
256
|
+
},
|
|
257
|
+
{
|
|
258
|
+
"matcher": "Write|Edit",
|
|
259
|
+
"type": "command",
|
|
260
|
+
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/proteccion-rutas.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
261
|
+
},
|
|
262
|
+
{
|
|
263
|
+
"matcher": "Bash",
|
|
264
|
+
"type": "command",
|
|
265
|
+
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/calidad-pre-commit.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
266
|
+
},
|
|
267
|
+
{
|
|
268
|
+
"type": "command",
|
|
269
|
+
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/risk-scoring.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
270
|
+
},
|
|
271
|
+
{
|
|
272
|
+
"matcher": "Bash",
|
|
273
|
+
"type": "command",
|
|
274
|
+
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/calidad-typescript.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
275
|
+
},
|
|
276
|
+
{
|
|
277
|
+
"matcher": "Glob|Grep|Read",
|
|
278
|
+
"type": "command",
|
|
279
|
+
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/grafo-contexto.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
280
|
+
},
|
|
281
|
+
{
|
|
282
|
+
"matcher": "Bash",
|
|
283
|
+
"type": "command",
|
|
284
|
+
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/auto-background.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
285
|
+
}
|
|
286
|
+
],
|
|
287
|
+
"PostToolUse": [
|
|
288
|
+
{
|
|
289
|
+
"type": "command",
|
|
290
|
+
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/linea-estado.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
291
|
+
},
|
|
292
|
+
{
|
|
293
|
+
"type": "command",
|
|
294
|
+
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/monitor-contexto.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
295
|
+
},
|
|
296
|
+
{
|
|
297
|
+
"matcher": "Bash|Write|Edit",
|
|
298
|
+
"type": "command",
|
|
299
|
+
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/extraccion-aprendizajes.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
300
|
+
},
|
|
301
|
+
{
|
|
302
|
+
"matcher": "Bash|Write|Edit",
|
|
303
|
+
"type": "command",
|
|
304
|
+
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/degradacion-instintos.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
305
|
+
},
|
|
306
|
+
{
|
|
307
|
+
"type": "command",
|
|
308
|
+
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/tracking-costos.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
309
|
+
},
|
|
310
|
+
{
|
|
311
|
+
"type": "command",
|
|
312
|
+
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/inyeccion-contexto.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
313
|
+
},
|
|
314
|
+
{
|
|
315
|
+
"matcher": "Write|Edit",
|
|
316
|
+
"type": "command",
|
|
317
|
+
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/graph-update.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
318
|
+
},
|
|
319
|
+
{
|
|
320
|
+
"type": "command",
|
|
321
|
+
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/auto-consolidacion.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
322
|
+
},
|
|
323
|
+
{
|
|
324
|
+
"matcher": "Agent",
|
|
325
|
+
"type": "command",
|
|
326
|
+
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/telemetria-agentes.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
327
|
+
},
|
|
328
|
+
{
|
|
329
|
+
"type": "command",
|
|
330
|
+
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/audit-trail.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
331
|
+
},
|
|
332
|
+
{
|
|
333
|
+
"matcher": "Agent",
|
|
334
|
+
"type": "command",
|
|
335
|
+
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/agente-lifecycle.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
336
|
+
}
|
|
337
|
+
],
|
|
338
|
+
"UserPromptSubmit": [
|
|
339
|
+
{
|
|
340
|
+
"type": "command",
|
|
341
|
+
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/clasificador-mensajes.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
342
|
+
}
|
|
343
|
+
],
|
|
344
|
+
"Stop": [
|
|
345
|
+
{
|
|
346
|
+
"type": "command",
|
|
347
|
+
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/resumen-sesion.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
348
|
+
},
|
|
349
|
+
{
|
|
350
|
+
"type": "command",
|
|
351
|
+
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/actualizar-perfil-usuario.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
352
|
+
},
|
|
353
|
+
{
|
|
354
|
+
"type": "command",
|
|
355
|
+
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/metricas-evolucion.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
356
|
+
}
|
|
357
|
+
],
|
|
358
|
+
"SubagentStop": [
|
|
359
|
+
{
|
|
360
|
+
"type": "command",
|
|
361
|
+
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/auto-evolucion.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
362
|
+
}
|
|
363
|
+
],
|
|
364
|
+
"PreCompact": [
|
|
365
|
+
{
|
|
366
|
+
"type": "command",
|
|
367
|
+
"command": "PATH=\"/c/Program Files/nodejs:/c/Program Files (x86)/nodejs:$PATH\" node -e \"try{require('./hooks/preservar-estado-pre-compact.js')}catch(e){if(e.code!=='MODULE_NOT_FOUND')throw e}\""
|
|
368
|
+
}
|
|
369
|
+
]
|
|
370
|
+
}
|
|
371
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema-version": "1.0.0",
|
|
3
3
|
"description": "Catálogo de reglas globales ~/.claude/rules/ que NO deben duplicarse inline en CLAUDE.md de proyectos. Consumido por scripts/lib/detector-reglas-duplicadas.js y por scripts/auditar-claudemd.js dimensión 'duplicacion-reglas-globales'. Cada entrada lista: nombre canónico, archivo origen, sección canónica para referenciar, patrones de detección (regex), y reemplazo sugerido.",
|
|
4
|
-
"version": "1.
|
|
4
|
+
"version": "1.1.0",
|
|
5
5
|
"actualizado": "2026-05-22",
|
|
6
6
|
"reglas": [
|
|
7
7
|
{
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
"\\bgram[aá]tica\\s+normativa\\b",
|
|
18
18
|
"\\bevitar\\s+anglicismos\\b",
|
|
19
19
|
"^\\s*#+\\s*Language\\s*$",
|
|
20
|
-
"\\bdomain\\s+terms\\b.*\\bin\\s+\\*?\\*?Spanish
|
|
20
|
+
"\\bdomain\\s+terms\\b.*\\bin\\s+\\*?\\*?Spanish\\b",
|
|
21
21
|
"\\bmensajes?\\s+de\\s+commit.*siempre\\s+en\\s+español\\b"
|
|
22
22
|
],
|
|
23
23
|
"min_matches": 2,
|
|
@@ -48,9 +48,10 @@
|
|
|
48
48
|
"descripcion": "Los commits NO deben incluir Co-Authored-By de Claude/IA. Ya cubierto globalmente.",
|
|
49
49
|
"patrones": [
|
|
50
50
|
"\\bSin\\s+co-?autores\\s+en\\s+commits\\b",
|
|
51
|
-
"\\bNO\\s+incluir\\s
|
|
52
|
-
"\\bnunca\\s+incluir\\s+[\"']?Co-Authored-By
|
|
53
|
-
"\\bsin\\s+atribuci[oó]n\\s+a\\s+Claude\\b"
|
|
51
|
+
"\\bNO\\s+incluir\\s+\\W?Co-?Authored-?By\\b",
|
|
52
|
+
"\\bnunca\\s+incluir\\s+[\"'`]?Co-Authored-By:?\\s+Claude",
|
|
53
|
+
"\\bsin\\s+atribuci[oó]n\\s+a\\s+Claude\\b",
|
|
54
|
+
"\\bcommits?\\s+son\\s+del\\s+desarrollador\\b"
|
|
54
55
|
],
|
|
55
56
|
"min_matches": 1,
|
|
56
57
|
"scope": "project-level",
|
|
@@ -100,6 +101,73 @@
|
|
|
100
101
|
"min_matches": 1,
|
|
101
102
|
"scope": "project-level",
|
|
102
103
|
"remediacion_sugerida": "Eliminar el bloque local. La regla global aplica."
|
|
104
|
+
},
|
|
105
|
+
{
|
|
106
|
+
"id": "usar-sistema-swl",
|
|
107
|
+
"regla_global": "usar-sistema-swl.md",
|
|
108
|
+
"seccion_canonica": "Uso obligatorio del sistema SWL",
|
|
109
|
+
"referencia_canonica": "@~/.claude/rules/usar-sistema-swl.md",
|
|
110
|
+
"descripcion": "Uso obligatorio del sistema SWL: invocar agentes/skills/comandos especializados en lugar de trabajo directo con Read/Write/Edit. Ya cubierto globalmente.",
|
|
111
|
+
"patrones": [
|
|
112
|
+
"\\bSIEMPRE\\s+usar\\s+el\\s+sistema\\s+SWL\\b",
|
|
113
|
+
"\\busar\\s+el\\s+sistema\\s+SWL\\s+completo\\b",
|
|
114
|
+
"\\bNO\\s+hacer\\s+trabajo\\s+directo\\s+que\\s+un\\s+agente\\s+SWL\\b",
|
|
115
|
+
"\\bagentes?\\s+especializados?\\b.*\\borquestador-swl\\b",
|
|
116
|
+
"\\binvocar\\s+`?orquestador-swl`?\\b.*\\bpunto\\s+de\\s+entrada\\b",
|
|
117
|
+
"\\bFlujo\\s+de\\s+trabajo\\s+obligatorio\\s*[—\\-]\\s*Sistema\\s+SWL\\b"
|
|
118
|
+
],
|
|
119
|
+
"min_matches": 2,
|
|
120
|
+
"scope": "project-level",
|
|
121
|
+
"remediacion_sugerida": "Eliminar el bloque local de flujo de trabajo SWL. La regla global `~/.claude/rules/usar-sistema-swl.md` cubre el principio y la matriz operacional completa (qué componente usar para cada tipo de tarea, excepciones legítimas, anti-patrones). Si el proyecto tiene matices propios (ej: agentes específicos del dominio, ejemplos de invocaciones validadas, casos edge), conservar SOLO esos matices con frase corta + referencia: \"Ver @~/.claude/rules/usar-sistema-swl.md. En este proyecto, además: <matiz>\"."
|
|
122
|
+
},
|
|
123
|
+
{
|
|
124
|
+
"id": "analisis-previo-tareas-grandes",
|
|
125
|
+
"regla_global": "analisis-previo-tareas-grandes.md",
|
|
126
|
+
"seccion_canonica": "Análisis previo ante tareas grandes",
|
|
127
|
+
"referencia_canonica": "@~/.claude/rules/analisis-previo-tareas-grandes.md",
|
|
128
|
+
"descripcion": "Tareas grandes (>10 archivos, >500 LOC, cross-módulo, replicar/portar todo) requieren tabla comparativa + 3 opciones (mínima/media/completa) + recomendación + confirmación. Ya cubierto globalmente.",
|
|
129
|
+
"patrones": [
|
|
130
|
+
"\\btabla\\s+comparativa\\b.*\\bgap\\b",
|
|
131
|
+
"\\btres\\s+opciones\\s+de\\s+alcance\\b",
|
|
132
|
+
"\\b(mínima|minima)\\s*[\\/\\|]\\s*media\\s*[\\/\\|]\\s*completa\\b",
|
|
133
|
+
"\\breplicar\\s+íntegramente\\b.*\\banálisis\\s+comparativo\\b"
|
|
134
|
+
],
|
|
135
|
+
"min_matches": 2,
|
|
136
|
+
"scope": "project-level",
|
|
137
|
+
"remediacion_sugerida": "Eliminar el bloque local. La regla global cubre el protocolo de auditoría previa + 3 opciones + recomendación + confirmación. Si el proyecto tiene umbrales propios (ej: >5 archivos en lugar de >10), conservar solo el umbral con referencia."
|
|
138
|
+
},
|
|
139
|
+
{
|
|
140
|
+
"id": "registro-componentes-nuevos",
|
|
141
|
+
"regla_global": "registro-componentes-nuevos.md",
|
|
142
|
+
"seccion_canonica": "Registro obligatorio de componentes nuevos en manifiestos",
|
|
143
|
+
"referencia_canonica": "@~/.claude/rules/registro-componentes-nuevos.md",
|
|
144
|
+
"descripcion": "Todo componente nuevo (agente/skill/comando/hook/regla) DEBE registrarse en manifiestos + plugin.json + INVENTARIO en el mismo commit. Ya cubierto globalmente.",
|
|
145
|
+
"patrones": [
|
|
146
|
+
"\\btodo\\s+componente\\s+nuevo\\b.*\\bregistr(?:ar(?:se)?|o|ado)\\b",
|
|
147
|
+
"\\bregistro\\s+obligatorio\\s+(de\\s+)?componentes?\\s+nuevos\\b",
|
|
148
|
+
"\\bmanifiestos?\\s*\\/\\s*modulos\\.json\\b.*\\bplugin\\.json\\b",
|
|
149
|
+
"\\bplugin\\.json\\b.*\\bmanifiestos?\\s*\\/\\s*modulos\\.json\\b",
|
|
150
|
+
"\\bregistro\\s+obligatorio\\s+en\\s+manifiestos\\b",
|
|
151
|
+
"\\ben\\s+el\\s+mismo\\s+commit\\b.*\\bmanifiestos?\\b"
|
|
152
|
+
],
|
|
153
|
+
"min_matches": 2,
|
|
154
|
+
"scope": "project-level",
|
|
155
|
+
"remediacion_sugerida": "Eliminar el bloque local. La regla global `~/.claude/rules/registro-componentes-nuevos.md` cubre la tabla de propagación obligatoria (qué archivos tocar por tipo de componente) y los gates de CI que la enforzan. Si el proyecto tiene componentes propios además de los del sistema, conservar SOLO esos matices."
|
|
156
|
+
},
|
|
157
|
+
{
|
|
158
|
+
"id": "consultar-vault-primero",
|
|
159
|
+
"regla_global": "consultar-vault-primero.md",
|
|
160
|
+
"seccion_canonica": "Consultar el vault Obsidian antes de leer múltiples archivos",
|
|
161
|
+
"referencia_canonica": "@~/.claude/rules/consultar-vault-primero.md",
|
|
162
|
+
"descripcion": "Antes de leer 3+ archivos del codebase para construir contexto general, consultar el vault Obsidian con obsidian_simple_search. Ya cubierto globalmente.",
|
|
163
|
+
"patrones": [
|
|
164
|
+
"\\bconsultar\\s+el\\s+vault\\s+Obsidian\\s+primero\\b",
|
|
165
|
+
"\\bantes\\s+de\\s+leer\\s+3\\+?\\s+archivos\\b.*\\bvault\\b",
|
|
166
|
+
"\\bobsidian_simple_search\\b.*\\bantes\\b"
|
|
167
|
+
],
|
|
168
|
+
"min_matches": 1,
|
|
169
|
+
"scope": "project-level",
|
|
170
|
+
"remediacion_sugerida": "Eliminar el bloque local. La regla global aplica a cualquier proyecto con vault Obsidian disponible."
|
|
103
171
|
}
|
|
104
172
|
],
|
|
105
173
|
"configuracion": {
|