Arquitectura
El ecosistema de traducción de Champollion consta de tres herramientas independientes que funcionan juntas a través de contratos bien definidos. Ninguna de ellas depende de las otras en tiempo de compilación. Se comunican a través de un formato de plugin de método compartido y un contrato de API REST.
Las Tres Piezas
champollion (este proyecto)
La herramienta de desarrollador de código abierto. Traduce archivos de configuración regional usando métodos conectables. Cero dependencias, configuración opcional, funciona de inmediato.
Métodos integrados:
llm→ OpenRouter / cualquier LLM (200+ modelos)llm-coached→ LLM + coaching de gramática/diccionarioopenai→ API directa de OpenAI (GPT-4o, GPT-4o-mini)anthropic→ API directa de Anthropic (Claude Sonnet, Haiku, Opus)gemini→ API directa de Google Gemini (Flash, Pro — nivel gratuito disponible)google-translate→ API de Google Cloud Translation v2deepl→ API de DeepL con soporte de glosariomicrosoft-translator→ Azure Cognitive Services Translatorlibretranslate→ LibreTranslate autohospedado (AGPL, gratuito)api→ Tubería delgada a cualquier punto final REST remoto
Eval Harness (proyecto complementario)
Una herramienta de investigación para desarrollar, probar y comparar métodos de traducción. Cuando un método alcanza una calidad aceptable, el harness exporta un plugin de método — un manifiesto method.json y archivos de datos de coaching opcionales.
El harness nunca se ejecuta dentro de champollion. Es una herramienta separada que produce salida estática (archivos JSON). Champollion simplemente lee esos archivos.
Champollion Translate (planeado)
Un servicio de API medido que aloja métodos de traducción propietarios del lado del servidor — los prompts, datos de coaching y tuberías lingüísticas nunca salen del servidor.
Cómo Se Conectan
Eval Harness → champollion (exportación unidireccional)
Contrato: Especificación de Plugin
Champollion Translate → champollion (API en tiempo de ejecución)
El APIMethod de Champollion es una tubería sin inteligencia. Envía claves y recibe traducciones de vuelta. No contiene lógica de traducción ni contenido propietario.
Lo Que Cada Pieza Sabe Sobre Las Otras
| Herramienta | ¿Sabe sobre champollion? | ¿Sabe sobre Champollion Translate? | ¿Sabe sobre el harness? |
|---|---|---|---|
| champollion | (es champollion) | Sí — api método la llama | No — solo lee exportaciones de plugin |
| Champollion Translate | Sí — sirve sus solicitudes | (es Champollion Translate) | No — recibe métodos desplegados |
| Eval Harness | Sí — exporta formato de plugin | No — métodos desplegados por separado | (es el harness) |
Escenarios de Usuario
Escenario 1: Gratuito, sin configuración (la mayoría de usuarios)
export OPENROUTER_API_KEY=sk-...
npx champollion sync
Usa el método llm integrado. Sin plugins, sin Champollion Translate, sin harness.
Escenario 2: Línea base de Google Translate
export GOOGLE_TRANSLATE_API_KEY=AIza...
npx champollion sync
Usa el método google-translate integrado. No se necesitan plugins.
Escenario 3: Plugin abierto con coaching incluido
champollion plugin install ./french-formal-v1/
champollion sync
El plugin tiene type: "llm-coached" → champollion usa la clave OpenRouter del usuario. Los datos de coaching son locales (sin llamada al servidor).
Escenario 4: Coaching DIY (sin plugin, sin harness)
{
"pairs": {
"en:fr": { "method": "llm-coached" }
}
}
El usuario mantiene sus propias reglas de gramática y diccionario en .champollion/coaching/fr.json.
Tarjetas de Idioma
Cada idioma en champollion se configura a través de una Tarjeta de Idioma — un archivo JSON unificado que contiene presets de registro, reglas de formalidad, banderas de soporte de método, convenciones tipográficas, clasificación genealógica y datos de referencia lingüística.
Las tarjetas se cargan con entusiasmo en la importación. Cada tarjeta contiene todos los metadatos que el motor de traducción y la documentación del desarrollador necesitan — no hay un nivel de referencia separado. Las tarjetas se generan a partir de fuentes autorizadas (IANA, CLDR, Glottolog, WALS) usando scripts/generate-language-card.mjs y scripts/build-language-tree.mjs, luego se curan manualmente para precisión lingüística.
Principios de Diseño
- Sin dependencias circulares. Los puentes son unidireccionales.
- Champollion es el núcleo ligero. Cero dependencias, configuración opcional. Los plugins y la API son aditivos.
- La protección de IP es arquitectónica. Las técnicas propietarias permanecen del lado del servidor. El paquete npm no incluye nada propietario.
- El formato de plugin es el contrato. Todo fluye a través de
method.json. - Cada herramienta tiene un trabajo. Harness → desarrollar métodos. Champollion Translate → alojar métodos. Champollion → traducir archivos.
Véase También
- Métodos de Traducción — cómo funciona cada método integrado
- Especificación de Plugin — el formato del manifiesto method.json
- Eval Harness — la herramienta de investigación complementaria
- Servir un Método a través de API — alojar tuberías de traducción personalizadas
- Apoyar un Idioma de Recursos Limitados — el caso de uso que impulsó esta arquitectura