Saltar al contenido
DeskSSH

Tipo de plugin · .zip

Apps — añade una ventana al escritorio

Una app es una aplicación empaquetada que aparece en el escritorio como los Archivos, la Terminal o el Monitor integrados. Es un .zip: un manifiesto más un punto de entrada empaquetado.

El manifiesto declara qué es la app y los rangos de versión a los que apunta: un rango contract (qué capacidades necesita) y un rango desk (contra qué app-runtime compila). DeskSSH resuelve ambos al cargar y degrada con elegancia si el adaptador del host carece de una capacidad.

Una app nunca inventa comandos del host. Llama a capacidades del Contract a través del SDK, así que cada acción se mantiene dentro del mismo camino auditado y transparente que el resto del escritorio.

El build empaqueta tu entrada en un solo archivo y arma el .zip; lo importas desde Ajustes → Importar.

apps/services/manifest.json json
{
  "schema": 1,
  "kind": "app",
  "id": "services",
  "name": "Services",
  "version": "0.1.0",
  "author": { "name": "you", "github": "you" },
  "license": "AGPL-3.0-or-later",
  "contract": "^0.1.0",
  "desk": "^0.2.0",
  "capabilities": ["listServices", "serviceAction"],
  "entry": "index.js",
  "icon": "ServerCog",
  "category": "system"
}
capabilities
Capacidades del Contract que usa la app, para degradar en hosts que no las tengan.
contract
Rango del Contract que requiere la app, p. ej. ^0.1.0.
desk
Rango del app-runtime (SDK) contra el que compila, p. ej. ^0.2.0.
entry
El archivo de entrada empaquetado dentro del .zip, p. ej. index.js.