···11+# Peek Extensibility Model
22+33+Balance minimal install/development/distribution barriers with web-level safety at runtime.
44+55+- Extensions are a folder with a PWA manifest and web content files
66+- They're opened under the peek:// protocol, each in a web content process
77+- Their main window is hidden, like the Peek background content process
88+- Extensions are run directly from their local folder (wherever the user selected)
99+- Hot reloading, Peek watches folder for changes, and reloads
1010+- Extensions are managed in the settings app, eg add/remove, enable/disable
1111+- User can open/close devtools for a given extension
1212+1313+Capabilities:
1414+1515+- Window management
1616+- Datastore access
1717+- Command registration
1818+- Hotkey registration
1919+- Pubsub messaging
2020+2121+2222+Open questions for later:
2323+2424+- Trade off exfiltration-proof-ness for sensitive access, eg history?
2525+- How to provide authorship verification?
2626+- How to provide tamper detection?
2727+- How to do extension-specific settings? Manifest link to bundled settings UI? Or a api for placement into Settings app?
2828+- How to allow for maximal unloading vs always persistent
2929+- How to do remixes, eg take verified extension X, copy and hack