Docs menu
DocsAPI reference

Install & preview apps

Package an app folder into a .aip and mount a live sandboxed preview of it.

The Create-app loop, available to any app: package a folder into a .aip and install it into the OS, or mount a live sandboxed preview of one. Both are prompt-gated escalations — first use prompts; appInstall never auto-allows even for a Trusted app.

Installing an app from an app (capability: appInstall)

const { install, fileName } = await window.chatoss.appInstall.install(folderPath);
// folderPath = an absolute path inside a folder from files.pickFolder(); its
// CONTENTS become the app root.

The installed app's own permission disclosure still shows — installing is never silent.

Live previews (capability: preview)

Mount a sandboxed live preview of an app folder — with the REAL window.chatoss bridge injected — in a host-owned overlay over your app's section:

const { id } = await window.chatoss.preview.launch(folderPath); // folderPath inside a picked folder
await window.chatoss.preview.reload(id);   // re-read the folder after edits
await window.chatoss.preview.close(id);

A previewed app gets real namespaced databases and storage, so you can build and test the whole app before publishing. See What is a .aip? for the packaging rules.