You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
v1.0.3: Full Treatment — brand logo, coverage, proper translations
- Logo URL from mcp-tool-shop-org/brand (not local file)
- Codecov badge + c8 coverage in CI (Node 22 matrix entry)
- Translations re-done via polyglot-mcp (TranslateGemma 12B)
- .gitignore: site/.astro/, site/dist/, .polyglot-cache.json
- package-lock.json in CI paths filter
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Enrutador de conocimiento contextual para agentes de IA.
16
18
17
-
`ai-loadout` es el formato de tabla de despacho y motor de coincidencia que permite a los agentes de IA cargar el conocimiento adecuado para la tarea en cuestión. En lugar de volcar todo en el contexto, mantienes un índice pequeño y cargas los contenidos bajo demanda.
19
+
`ai-loadout` es el formato de la tabla de distribución y el motor de coincidencia que permite a los agentes de IA cargar el conocimiento adecuado para la tarea en cuestión. En lugar de incluir todo en el contexto, se mantiene un índice pequeño y se cargan los datos según sea necesario.
18
20
19
-
Piensa en ello como un equipamiento de videojuego — equipas al agente con exactamente el conocimiento que necesita antes de cada misión.
21
+
Piénselo como la configuración de un juego: se equipa al agente con exactamente el conocimiento que necesita antes de cada misión.
20
22
21
23
## Instalación
22
24
23
25
```bash
24
26
npm install @mcptoolshop/ai-loadout
25
27
```
26
28
27
-
## Conceptos Fundamentales
29
+
## Conceptos básicos
28
30
29
-
### La Tabla de Despacho
31
+
### La tabla de distribución
30
32
31
-
Un `LoadoutIndex` es un índice estructurado de contenidos de conocimiento:
33
+
Un `LoadoutIndex` es un índice estructurado de datos de conocimiento:
32
34
33
35
```json
34
36
{
@@ -56,17 +58,17 @@ Un `LoadoutIndex` es un índice estructurado de contenidos de conocimiento:
56
58
}
57
59
```
58
60
59
-
### Niveles de Prioridad
61
+
### Niveles de prioridad
60
62
61
63
| Nivel | Comportamiento | Ejemplo |
62
-
|-------|---------------|---------|
63
-
|`core`|Siempre cargado| "nunca omitas tests para que CI pase" |
64
-
|`domain`| Cargado cuando las palabras clave de la tarea coinciden | Reglas de CI al editar workflows|
65
-
|`manual`| Nunca se carga automáticamente, solo búsqueda explícita |Problemas oscuros de plataforma |
64
+
|------|----------|---------|
65
+
|`core`|Cargado siempre| "nunca omitir pruebas para que la integración continua sea exitosa" |
66
+
|`domain`| Cargado cuando las palabras clave de la tarea coinciden | Reglas de integración continua al editar flujos de trabajo|
67
+
|`manual`| Nunca se carga automáticamente, solo búsqueda explícita |Aspectos técnicos de la plataforma que pueden ser difíciles de entender|
66
68
67
-
### Frontmatter del Contenido
69
+
### Metadatos del archivo de datos
68
70
69
-
Cada archivo de contenido lleva sus propios metadatos de enrutamiento:
71
+
Cada archivo de datos contiene sus propios metadatos de enrutamiento:
70
72
71
73
```markdown
72
74
---
@@ -84,13 +86,13 @@ triggers:
84
86
CI minutes are finite...
85
87
```
86
88
87
-
El frontmatter es la fuente de verdad. El índice se deriva de él.
89
+
El metadato es la fuente de la verdad. El índice se deriva de él.
88
90
89
91
## API
90
92
91
-
### `matchLoadout(task, index)`
93
+
### `matchLoadout(tarea, índice)`
92
94
93
-
Compara una descripción de tarea contra un índice de loadout. Devuelve las entradas que deben cargarse, ordenadas por fuerza de coincidencia.
95
+
Compara una descripción de la tarea con un índice de configuración. Devuelve las entradas que deben cargarse, clasificadas por la fuerza de la coincidencia.
Verifica: campos requeridos, IDs únicos, formato kebab-case, límites de resumen, presencia de palabras clave para entradas domain, prioridades válidas, presupuestos no negativos.
150
+
Comprobaciones: campos obligatorios, IDs únicos, formato kebab-case, límites del resumen, presencia de palabras clave para entradas de dominio, prioridades válidas, presupuestos no negativos.
149
151
150
-
### `estimateTokens(text)`
152
+
### `estimateTokens(texto)`
151
153
152
-
Estima el conteo de tokens de un texto. Usa la heurística de caracteres/4.
154
+
Estima el número de tokens a partir de un texto. Utiliza la heurística de chars/4.
-**[@mcptoolshop/claude-rules](https://github.com/mcp-tool-shop-org/claude-rules)** — Optimizador de CLAUDE.md para Claude Code. Usa ai-loadout para la tabla de despacho y el motor de coincidencia.
179
+
-**[@mcptoolshop/claude-rules](https://github.com/mcp-tool-shop-org/claude-rules)** — Optimizador de CLAUDE.md para Claude Code. Utiliza ai-loadout para la tabla de distribución y la coincidencia.
178
180
179
181
## Seguridad
180
182
181
-
Este paquete es una biblioteca de datos pura. No accede al sistema de archivos, no realiza solicitudes de red ni recopila telemetría. Todo el I/O es responsabilidad del consumidor.
183
+
Este paquete es una biblioteca de datos pura. No accede al sistema de archivos, realiza solicitudes de red ni recopila datos de telemetría. Toda la entrada/salida es responsabilidad del consumidor.
182
184
183
-
### Modelo de Amenazas
185
+
### Modelo de amenazas
184
186
185
187
| Amenaza | Mitigación |
186
-
|---------|------------|
187
-
|Entrada de frontmatter malformado |`parseFrontmatter()` devuelve `null`ante entrada inválida — sin excepciones, sin eval |
188
-
| Contaminación de prototipo| El parser manual usa literales de objeto planos, sin`JSON.parse` de estructuras anidadas no confiables |
189
-
| Índice con datos incorrectos |`validateIndex()` detecta problemas estructurales antes de que se propaguen |
190
-
|DoS por Regex | Sin regex proporcionado por el usuario — los patrones se comparan como búsquedas de texto plano|
188
+
|--------|------------|
189
+
|Metadato de entrada con formato incorrecto |`parseFrontmatter()` devuelve `null`en caso de entrada no válida; no se generan excepciones ni se utiliza `eval`|
190
+
| Contaminación de prototipos| El analizador personalizado utiliza literales de objetos simples, no`JSON.parse` de estructuras anidadas no confiables.|
191
+
| Índice con datos incorrectos |`validateIndex()` detecta problemas estructurales antes de que se propaguen.|
192
+
|Ataque de denegación de servicio con expresiones regulares | No se utilizan expresiones regulares proporcionadas por el usuario; los patrones se comparan como búsquedas de cadenas simples.|
191
193
192
-
Consulta[SECURITY.md](SECURITY.md) para la política de seguridad completa.
194
+
Consulte[SECURITY.md](SECURITY.md) para obtener la política de seguridad completa.
0 commit comments