Caso de estudio · 2026

fassht

Una interfaz de terminal experimental en Go para abrir y editar archivos remotos mediante la configuración SSH existente.

Contribución
Proyecto independiente
Estado
Pre-1.0 experimental
Alcance
Configuración SSH · Interfaz de terminal · Editor local · Sesión SSH y SFTP · Un archivo remoto
Código
Públicamente visible; todavía sin licencia

Contexto

El experimento nació de una tarea recurrente: conectarse a un host SSH conocido, localizar un archivo y editarlo con un editor local familiar sin encadenar varios comandos manuales.

Qué existe hoy

El repositorio explora la selección de hosts, la navegación remota, la transferencia SFTP y el paso al editor local en una interfaz de terminal escrita en Go. Sirve como evidencia de exploración de producto orientada a sistemas, pero no es todavía una recomendación de uso estable.

Dirección y límites

El siguiente hito importante es la seguridad, no añadir más funcionalidades. La verificación estricta del host, el reemplazo atómico, la gestión acotada de permisos, los temporales únicos y las pruebas de rutas de fallo deben llegar antes que las instrucciones de instalación o una primera versión.

Vista general del sistema

  1. Configuración SSH
  2. Interfaz de terminal
  3. Editor local
  4. Sesión SSH y SFTP
  5. Un archivo remoto

Tres decisiones relevantes

Configuración SSH existente

Los hosts y la autenticación permanecen en la configuración SSH que el usuario ya mantiene.

Editor local

La edición se mantiene en la herramienta que el usuario ya conoce, en lugar de recrear un editor.

Alcance deliberadamente reducido

La dirección de producto es un flujo seguro para un archivo remoto, no un gestor SFTP generalista.

Del problema a la evidencia

  1. 1
    Problema

    Editar repetidamente un archivo remoto conocido obligaba a encadenar la misma secuencia de comandos SSH y transferencia.

  2. 2
    Restricción

    El flujo debía reutilizar la configuración SSH y el editor local del usuario sin convertirse en un gestor de archivos generalista.

  3. 3
    Decisión

    Construir una interfaz de terminal acotada para seleccionar el host, transferir por SFTP y delegar la edición al editor local.

  4. 4
    Evidencia

    El prototipo público en Go implementa el recorrido completo y explicita el trabajo de seguridad todavía pendiente.

Notas técnicas

Confianza en el host

El fallback actual no es suficientemente seguro; una futura versión debe exigir verificación explícita mediante known_hosts.

Escrituras atómicas

Una versión fiable debe subir a una ruta temporal única y renombrar únicamente después de una escritura completa y correcta.

Permisos y limpieza

La elevación de privilegios, los archivos temporales y las salidas del editor necesitan límites claros y pruebas automatizadas de fallo.

Limitaciones actuales