Ciclo de vida
Versionamento e restart-to-load
O DeskSSH versiona cinco coisas de forma independente: o Desk, o Contract, o app-runtime, cada app e cada adaptador. Os plugins declaram as faixas que precisam; o Desk as resolve ao carregar.
Sob 0.x, um salto minor é tratado como potencialmente incompatível — uma faixa caret como ^0.1.0 não admite 0.2.0. Então um app fixa uma faixa contract e uma faixa desk; um adaptador fixa uma faixa contract. Se uma junção não resolve, o plugin é recusado com um motivo legível em vez de carregar quebrado.
Os plugins vivem em ~/.deskssh/plugins/. Você adiciona ou atualiza um por Configurações → Importar e ele carrega no próximo reinício — um ciclo previsível e auditável, nunca injeção de código a quente numa sessão em andamento.
~/.deskssh/plugins/
├── adapters/ # .json — OS adapters (declarative)
└── apps/ # .zip — app plugins (bundled)