navori 0.2.18 → 0.2.20

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.
@@ -3,6 +3,7 @@ name: auditor
3
3
  description: Auditoría profunda read-only de código existente. Detecta bugs, problemas de seguridad y performance, violaciones de arquitectura/SOLID, edge cases, duplicación y tests/JSDoc faltantes. Seguridad y performance son ejes obligatorios. Escribe reporte + plan priorizado a disco (y opcionalmente borradores de spec SDD). Nunca edita código de producción. Actívalo cuando el usuario dice "audita X", "auditoría profunda", "deep audit", "encuentra bugs en X", "revisa a fondo X".
4
4
  tools: Read, Glob, Grep, Bash, Write, WebFetch, WebSearch
5
5
  model: {{models.auditor}}
6
+ effort: {{effort.auditor}}
6
7
  ---
7
8
 
8
9
  # Agente Auditor
@@ -3,6 +3,7 @@ name: commit-pr-pilot
3
3
  description: Redacta commit messages y abre PRs con título + body siguiendo el formato del repo. Corre pre-flight contra git/gh antes de tocar la red.
4
4
  tools: Read, Glob, Grep, Bash
5
5
  model: {{models.commitPrPilot}}
6
+ effort: {{effort.commitPrPilot}}
6
7
  ---
7
8
 
8
9
  # Agente Commit & PR Pilot
@@ -3,6 +3,7 @@ name: explorer
3
3
  description: Mapa amplio de un área o módulo del repo. Devuelve estructura, dependencias y entry points. No modifica código.
4
4
  tools: Read, Glob, Grep, Bash
5
5
  model: {{models.explorer}}
6
+ effort: {{effort.explorer}}
6
7
  ---
7
8
 
8
9
  # Agente Explorador
@@ -3,6 +3,7 @@ name: implementer
3
3
  description: Trabajador. Implementa UNA tarea acotada, respeta convenciones de CLAUDE.md y deja el quality gate verde antes de devolver.
4
4
  tools: Read, Write, Edit, Glob, Grep, Bash
5
5
  model: {{models.implementer}}
6
+ effort: {{effort.implementer}}
6
7
  ---
7
8
 
8
9
  # Agente Implementador
@@ -3,6 +3,7 @@ name: leader
3
3
  description: NO invocar como subagente. Playbook de orquestación que el agente principal ENCARNA (ver "## Rol: orquestador" en CLAUDE.md). Delegarlo a un subagente serializa el trabajo y tira el paralelismo.
4
4
  tools: Read, Glob, Grep, Bash, Agent
5
5
  model: {{models.leader}}
6
+ effort: {{effort.leader}}
6
7
  ---
7
8
 
8
9
  # Playbook del Orquestador (encarnado por el agente principal)
@@ -3,6 +3,7 @@ name: researcher
3
3
  description: Investigación read-only de una pregunta acotada. Lee el repo, escribe hallazgos en archivo. No modifica código.
4
4
  tools: Read, Glob, Grep, Bash
5
5
  model: {{models.researcher}}
6
+ effort: {{effort.researcher}}
6
7
  ---
7
8
 
8
9
  # Agente Investigador
@@ -3,6 +3,7 @@ name: reviewer
3
3
  description: Revisor estricto. Aprueba o rechaza el trabajo del implementador contra CLAUDE.md. No edita código.
4
4
  tools: Read, Glob, Grep, Bash
5
5
  model: {{models.reviewer}}
6
+ effort: {{effort.reviewer}}
6
7
  ---
7
8
 
8
9
  # Agente Revisor
@@ -3,6 +3,7 @@ name: ticket-audit
3
3
  description: Análisis profundo de un ticket complejo antes de implementar. Produce audit_<ID>.md con causa raíz, áreas afectadas y plan de descomposición.
4
4
  tools: Read, Glob, Grep, Bash
5
5
  model: {{models.ticketAudit}}
6
+ effort: {{effort.ticketAudit}}
6
7
  ---
7
8
 
8
9
  # Agente Ticket Audit
@@ -1,3 +1,10 @@
1
+ ## Concisión (aplica a todo: chat y subagentes)
2
+
3
+ - Lidera con el resultado: la primera línea responde "qué pasó / qué encontré", no el preámbulo.
4
+ - Cero relleno: no narres acciones de rutina ("ahora voy a…", "déjame ver…", "perfecto, entonces…") ni cierres de cortesía.
5
+ - Recorta la prosa, no la sustancia. Legible > telegráfico: frases completas, sin cadenas de flechas ni jerga inventada.
6
+ - Código, comandos, paths y mensajes de error: **intactos**, nunca los abrevies ni los parafrasees.
7
+
1
8
  ## Formato de respuesta
2
9
 
3
10
  **Bug fix** (sin intro ni cierre):
@@ -2,7 +2,7 @@
2
2
  "id": "cognitive",
3
3
  "name": "Cognitive complexity guardrails",
4
4
  "description": "Detección de complejidad cognitiva alta via ESLint rule SonarJS",
5
- "version": "0.0.3",
5
+ "version": "0.0.4",
6
6
  "managed": [
7
7
  {
8
8
  "id": "cognitive-protocol",
@@ -34,12 +34,6 @@
34
34
  "command": "bash .claude/scripts/check-cognitive.sh",
35
35
  "timeout": 180,
36
36
  "statusMessage": "navori/cognitive: complexity scan"
37
- },
38
- {
39
- "event": "Stop",
40
- "command": "bash .claude/scripts/check-cognitive.sh",
41
- "timeout": 180,
42
- "statusMessage": "navori/cognitive: complexity scan (cierre de sesión)"
43
37
  }
44
38
  ]
45
39
  }
@@ -2,7 +2,7 @@
2
2
  "id": "jscpd",
3
3
  "name": "jscpd (code duplication detector)",
4
4
  "description": "Detección de duplicación de código en el diff vs branch base",
5
- "version": "0.0.3",
5
+ "version": "0.0.4",
6
6
  "managed": [
7
7
  {
8
8
  "id": "jscpd-protocol",
@@ -33,12 +33,6 @@
33
33
  "command": "bash .claude/scripts/check-jscpd.sh",
34
34
  "timeout": 180,
35
35
  "statusMessage": "navori/jscpd: dup check"
36
- },
37
- {
38
- "event": "Stop",
39
- "command": "bash .claude/scripts/check-jscpd.sh",
40
- "timeout": 180,
41
- "statusMessage": "navori/jscpd: dup check (cierre de sesión)"
42
36
  }
43
37
  ]
44
38
  }
@@ -3,16 +3,15 @@
3
3
  # `{{branchBase}}`. Skips silently if jscpd or git are absent — the tool is
4
4
  # optional, not a hard dependency of the project.
5
5
  #
6
- # Triggered as a PreToolUse(Bash) hook (gated to git commit/push) and as a
7
- # Stop hook (runs unconditionally at session close).
6
+ # Triggered as a PreToolUse(Bash) hook, gated to git commit/push so the
7
+ # duplication check runs right before code lands, not on every turn.
8
8
 
9
9
  set -euo pipefail
10
10
 
11
- # PreToolUse(Bash) passes the command — gate to commit/push. The Stop hook
12
- # passes no command — run unconditionally at session close. Extract without
11
+ # PreToolUse(Bash) passes the command — gate to commit/push. Extract without
13
12
  # hard-depending on jq (not preinstalled on macOS): try jq, then node (Claude
14
13
  # Code's own runtime), then a best-effort sed unwrap. No command extracted →
15
- # empty $cmd → runs unconditionally.
14
+ # empty $cmd → runs unconditionally (defensive: never silently skip a commit).
16
15
  payload=$(cat)
17
16
  extract_cmd() {
18
17
  if command -v jq >/dev/null 2>&1; then
@@ -69,7 +68,7 @@ jscpd \
69
68
  --min-tokens 100 \
70
69
  --min-lines 10 \
71
70
  --mode strict \
72
- --threshold 3 \
71
+ --threshold {{jscpdThreshold}} \
73
72
  --reporters console \
74
73
  --output "$tmpdir" \
75
74
  "${files[@]}"
@@ -2,7 +2,7 @@
2
2
  "id": "semgrep",
3
3
  "name": "semgrep (security + pattern analysis)",
4
4
  "description": "Detección de vulnerabilidades y patrones inseguros local opt-in",
5
- "version": "0.0.3",
5
+ "version": "0.0.4",
6
6
  "managed": [
7
7
  {
8
8
  "id": "semgrep-protocol",
@@ -32,12 +32,6 @@
32
32
  "command": "bash .claude/scripts/check-semgrep.sh",
33
33
  "timeout": 180,
34
34
  "statusMessage": "navori/semgrep: security scan"
35
- },
36
- {
37
- "event": "Stop",
38
- "command": "bash .claude/scripts/check-semgrep.sh",
39
- "timeout": 180,
40
- "statusMessage": "navori/semgrep: security scan (cierre de sesión)"
41
35
  }
42
36
  ]
43
37
  }