OptionalbleOptional shell-mediated BLE backend (NAP-BLE). When present and
isAvailable() is true, the shell advertises ble. The host still
registers the concrete service via registerService('ble').
OptionalcapabilitiesOptional capability advertisement override. Omitted by production hosts.
OptionalcommonOptional shell-mediated common social backend (NAP-COMMON). When present
and isAvailable() is true, the shell advertises common. The host still
registers the concrete service via registerService('common').
OptionaldmOptionalintentOptional archetype intent dispatcher (NAP-INTENT). When present and
isAvailable() is true, the shell advertises the intent domain so
napplets can call window.napplet.intent. The host still registers the
concrete service via registerService('intent').
OptionallinkOptional shell-mediated link backend (NAP-LINK). When present and
isAvailable() is true, the shell advertises link. The host still
registers the concrete service via registerService('link').
OptionallistsOptional shell-mediated NIP-51 list backend (NAP-LISTS). When present and
isAvailable() is true, the shell advertises lists. The host still
registers the concrete service via registerService('lists').
OptionalonCalled on every ACL enforcement check. Both allows and denials are reported.
OptionalonCalled when aggregate hash verification fails (computed != declared).
OptionalonCalled at iframe creation for NIP-5D napplets. Returns identity metadata for originRegistry.register(). Returning null means "not NIP-5D / skip registration".
OptionalonCalled when ShellBridge.handleMessage drops an incoming postMessage because
it cannot be routed to a registered napplet window (no source window, or the
source Window is not in originRegistry). Observe-only — the message is
still dropped; this hook exists so otherwise-silent drops are diagnosable
(the FEED-02 / hyprgate#21 class of "a napplet's messages vanish" bug).
OptionalserialOptional shell-mediated serial backend (NAP-SERIAL). When present and
isAvailable() is true, the shell advertises serial. The host still
registers the concrete service via registerService('serial').
OptionalservicesOptional service extensions. Each key is a service name (e.g., 'audio', 'notifications'). Napplets discover available services via kind 29010 service discovery events.
OptionaluploadOptional shell-mediated upload backend (NAP-UPLOAD). When present, the shell
advertises the upload domain so napplets can call window.napplet.upload.
The host still registers the concrete service via registerService('upload').
OptionalwebrtcOptional shell-mediated WebRTC backend (NAP-WEBRTC). When present and
isAvailable() is true, the shell advertises webrtc. The host still
registers the concrete service via registerService('webrtc').
All adapters that the shell requires from the host application.
Example