Skip to content
| Marketplace
Sign in
Visual Studio Code>Machine Learning>RossetaNew to Visual Studio Code? Get it now.
Rosseta

Rosseta

mimarec

|
1 install
| (0) | Free
Edit AI assets in your native language while committing a canonical English source.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Rosseta

Rosseta permite editar prompts, agentes y skills Markdown en tu idioma, manteniendo en disco una versión canónica en inglés.

Arranque rápido

  1. Abre esta carpeta en Visual Studio Code de escritorio.
  2. Pulsa F5 para iniciar el Extension Development Host.
  3. Abre un archivo Markdown y pulsa el icono Stone de Rosseta en la esquina superior derecha.
  4. Si todavía falta configuración, Rosseta abrirá el centro de control: elige OpenAI, Anthropic o Gemini, introduce su clave y pulsa Actualizar modelos.
  5. Selecciona un modelo y guarda. A partir de entonces, el icono Stone traduce y abre directamente el editor localizado.

El centro de control es global y no está asociado al último archivo abierto. Indica si cada proveedor tiene una clave almacenada, sin revelar su contenido, y permite eliminar una credencial antigua. Antes de abrir el editor localizado, Rosseta consulta al proveedor para validar la clave y comprobar que el modelo sigue disponible. Los fallos de autenticación se muestran en una notificación nativa y llevan de nuevo a configuración. Rosseta no accede a credenciales ni hace peticiones de traducción mientras el workspace no sea de confianza.

También están disponibles estos comandos en la paleta:

  • Rosseta: Open control center
  • Rosseta: Open localized editor
  • Rosseta: Select translation provider
  • Rosseta: Set provider API key
  • Rosseta: Select translation models
  • Rosseta: Clear translation cache

Proveedores y modelos

Rosseta integra las APIs nativas de:

  • OpenAI, mediante Models y Chat Completions.
  • Anthropic, mediante Models y Messages.
  • Google Gemini, mediante Models y generateContent.
  • Identity, que no hace llamadas de red y sirve para probar el flujo de edición.

Cada proveedor conserva de forma independiente su clave y sus modelos. El centro de control configura un modelo activo mediante un selector compacto. Para una configuración avanzada con varios modelos y fallback ordenado se puede usar Rosseta: Select translation models desde la paleta de comandos. Las claves se guardan en Secret Storage de VS Code y nunca se escriben en la configuración de Rosseta.

Las peticiones autenticadas solo se envían mediante HTTPS a los endpoints oficiales de OpenAI, Anthropic y Google Gemini. El workspace no puede cambiar esos destinos y las redirecciones HTTP se rechazan. Los endpoints personalizados no están soportados.

La clave global en texto plano de versiones anteriores se migra una vez a Secret Storage y se elimina de la configuración. Una clave encontrada en la configuración de un workspace nunca se utiliza ni se migra silenciosamente: Rosseta ofrece eliminarla y recomienda rotarla si el archivo pudo compartirse o confirmarse en Git. rosseta.model se conserva únicamente para migrar selecciones de modelo antiguas.

Protección del contenido

Rosseta construye un AST de bloques Markdown y conserva una instantánea de cada editor localizado. Al guardar, compara esa instantánea con el documento editado y traduce únicamente los nodos modificados, siempre como bloques completos: si cambia una palabra de un párrafo, se retraduce el párrafo entero y los párrafos sin cambios se copian directamente desde el original canónico.

Frontmatter y bloques de código se sincronizan literalmente. Dentro de un bloque traducible, código inline, variables como ${NAME} y {{ value }}, enlaces, etiquetas XML/HTML y marcadores Markdown se reemplazan temporalmente por placeholders validados. Si un proveedor altera o elimina uno, el guardado se cancela para evitar corromper la sintaxis.

La caché incorpora proveedor, modelos, idiomas y contenido para no reutilizar traducciones incompatibles. Es exclusivamente de sesión y se mantiene en memoria; al activar esta versión también se elimina la caché persistente utilizada por versiones anteriores.

Los bloques Markdown traducibles se envían al proveedor seleccionado y quedan sujetos a sus políticas de tratamiento de datos. Frontmatter y bloques de código no se envían para traducción. Usa Identity si quieres probar el flujo sin realizar peticiones de red.

Catálogo de errores

Rosseta convierte los fallos conocidos en errores estables con código, mensaje en inglés y una acción contextual. El catálogo cubre:

  • configuración incompleta o inválida (CONFIG_*);
  • credenciales, permisos y facturación (AUTH_*);
  • cuota, rate limit y tamaño de contexto (LIMIT_*);
  • conexión, TLS, timeout y disponibilidad (NETWORK_*, PROVIDER_UNAVAILABLE);
  • respuestas vacías, bloqueadas o inválidas de los modelos (MODEL_*);
  • lectura, escritura y sincronización segura del Markdown (FILE_*, SYNC_*, TRANSLATION_STRUCTURE_INVALID);
  • almacenamiento de configuración o caché (STORAGE_FAILURE).

Los casos no clasificados utilizan UNEXPECTED_ERROR. La notificación nativa solo muestra un mensaje seguro y botones como Manage Workspace Trust, Open Settings, Replace API Key, Refresh Models, Retry, Reopen Editor o Show Details. El canal de salida Rosseta conserva únicamente metadatos permitidos de las respuestas de los proveedores y aplica un redactado centralizado a claves conocidas, cabeceras, URLs y errores inesperados.

Si todos los modelos configurados fallan por la misma causa, se conserva el error específico. Si fallan por causas distintas, se utiliza MODEL_ALL_FAILED. Una traducción que altere la estructura protegida del Markdown nunca se guarda en caché ni modifica el archivo original.

Arquitectura

src/
├── commands/          # Registro de comandos de VS Code
├── controlCenter/     # Vista HTML del centro de control
├── domain/            # Markdown, contratos y motor de traducción
├── filesystem/        # Sistema de archivos virtual localizado
├── infrastructure/    # Configuración y Secret Storage de VS Code
└── providers/         # Adaptadores OpenAI, Anthropic, Gemini e Identity
test/                  # Tests unitarios con node:test

El dominio y los adaptadores no importan vscode, por lo que se pueden probar sin iniciar un Extension Host.

Desarrollo

npm install
npm run check

npm run check ejecuta ESLint, TypeScript y todos los tests unitarios. npm run watch deja el compilador activo durante el desarrollo.

Créditos

El icono de la acción del editor es Stone de Lucide, publicado bajo licencia ISC.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft