Skip to content

Reference

Everything in this section is normative. If the documentation and the validator disagree, the validator is right and this page is a bug — report it.

PageWhat it fixes
ManifestEvery field of manifest.json, and what the validator rejects
Bridge APIThe complete sollar.* namespace
Package format.sapp layout, signing, updates
CLIsollar commands and flags
ErrorsEvery error code the bridge can throw
Compatibility baselineThe JavaScript and CSS floor you can rely on
Mini app ↔ superapp APIThe contract between your code and Sollar

The client is not an authority. Anything sollar.* hands your JavaScript — an identity, a room, a permission state — is a hint for drawing UI. Authorisation happens on your server, against a token, every time. This is the single most common way platforms in this category get breached, and it is the reason the warning is repeated on nearly every page here rather than stated once.

The signed manifest is the contract. Permissions, network destinations and agent actions are declared in a file inside a signed package. Nothing your server sends at runtime can widen them. A compromised backend cannot grant itself a permission, reach a new host, or invent an agent tool.

The bridge is versioned independently of the Sollar client. sollar.version returns the bridge version at runtime; sollar.supports('<method>') answers whether a method exists before you call it.

if (sollar.supports('actions.elicit')) {
// use it
}

Feature detection over version comparison. Version numbers tell you what shipped; supports() tells you what this device actually has, which is the question you are really asking.

MarkerMeaning
(unmarked)Stable. Breaking changes require a major bridge version and a deprecation window.
PreviewShipping, shape may still change. Safe to try, not safe to depend on.
PlannedSpecified here, not implemented. Calling it throws ERR_NOT_IMPLEMENTED.

This documentation set is itself pre-release: the platform described here is specified but not yet built. Treat every page as a design contract, not as an account of running software.