Extension UI
Svelte and Vite in a sandboxed iframe
Build · For builders
Turn specialized knowledge into a focused product. Reuse ISA Warden for agents, models, identity, projects, files, audio, and other host services—then package the value you create.
Extension architecture
Normal extension code runs in an iframe and calls only the host commands it declared. Native logic is optional and should be reserved for work that genuinely needs local binaries or operating-system access.
Svelte and Vite in a sandboxed iframe
Capability discovery and permission checks
Projects, files, chat, documents, audio and themes
Verified repository workflow
The current CLI is installed from a checked-out ISA Warden repository. A standalone public registry install is not documented yet.
What you need
Result: The build produces the dist/acme-review.isax package directory. It contains the public extension.json manifest and a compressed payload whose SHA-256 digest is recorded for integrity verification.
Next: Mount the generated source directory through ISA Warden’s developer extension installation flow, then test it in the workspace and group contexts it supports.
Repository access is currently required. Contact developer support.
# From a checked-out ISA Warden repository
cargo install --path chat-ui-3/extensions/isa-ext
# Create a minimal extension
isa-ext scaffold --name "Acme Review" --author "Acme" --directory acme-review
cd acme-review
# Validate and produce the .isax package
npm run buildconst info = await window.isaExtensionBridge.invoke('get_app_info', {});
if (!info.projects?.canRead) {
showUnavailable('Projects are not available in this group.');
return;
}
const { projects } = await window.isaExtensionBridge.listProjects({
includeArchived: false
});Discover before use
A manifest permission is a request, not a guarantee. Check the current launch context and advertised commands before showing a feature, and provide a useful unavailable state.
Host capabilities
Choose only the capabilities the workflow needs and discover their availability at runtime.
Stream host chat and attach only documents that the host has ingested and approved for the current extension thread.
Store extension-owned group data or ask the user to grant access to a specific workspace file or folder.
List and create stable project identities shared by every project-aware extension in the active group.
Use host-owned microphone recordings and group-authorized speech-to-text providers without receiving local audio paths or credentials.
Follow light and dark mode with the extension theme bridge and stable extension-facing design tokens.
Package target-specific binaries only when browser and host capabilities cannot do the job.
Security by construction
An extension is not independently privileged. The host combines user rights, contextual visibility, declared permissions and host policy for every operation.
One identity, isolated content
The Shared Project Registry provides one stable identity and name for the active group. Each extension stores its own content in its own group folder, keyed by that shared project ID.
Planned extension marketplace
Prepare a listing that explains the outcome, earns trust, and will make the value of your expertise easy to evaluate when the marketplace launches.
Show the problem, intended audience, workflow, screenshots, and example outcomes.
Declare permissions, models, providers, data behavior, compatibility, and native-code boundaries.
Prepare possible pricing, licensing, trial, subscription, or organizational terms for launch.
Define compatible updates, customer support, and a feedback process for the workflow.
Extension store availability and commercial terms are subject to launch.
Product lifecycle
Create the manifest, entry page and build script.
Compile the UI and any optional native assets.
List the minimum permissions and compatibility version.
Use developer installation to test the source directory locally.
Run the build and inspect the generated .isax package directory.
Prepare the listing, support plan and possible commercial model ahead of marketplace launch.
A strong listing explains both the value of the workflow and the trust requirements of the extension. Marketplace availability and commercial terms remain subject to launch.
Before distribution
Package checks protect integrity; interface and fallback checks protect the people using the extension.
Build · Publish · Monetize
Start with one valuable job, reuse the host capabilities it needs, and prepare your specialist knowledge for distribution and future marketplace launch.