pub enum Permission {
Show 29 variants
DatabaseReadAll,
DatabaseRead(String),
DatabaseWrite(String),
DatabaseCreateTables,
FilesystemRead,
FilesystemReadAppData,
FilesystemWrite,
FilesystemWriteAppData,
NetworkHttp,
NetworkHttpDomain(String),
IpcRegister,
EventsEmit,
EventsListen,
UiInject,
ProcessSpawn,
ProcessSpawnWhitelist(Vec<String>),
Notifications,
ClipboardRead,
ClipboardWrite,
HostNavigation,
HostAppStateRead,
HostFileIntents,
HostFileDialogs,
HostAIChatAccess,
HostEnterpriseGatewayAccess,
HostDeepLinks,
HostThemeRead,
HostEventSubscribe,
AppConfigRead,
}Expand description
Fine-grained permissions a plugin must declare in its manifest. The host checks these at install time (user approval) and at runtime (sandbox enforcement).
Variants§
DatabaseReadAll
Read any host table.
DatabaseRead(String)
Read a specific host table (e.g. “launch_profiles”).
DatabaseWrite(String)
Write to a specific host table. Restricted tier.
DatabaseCreateTables
Create tables in the plugin’s own namespace.
FilesystemRead
Read any filesystem path (prompts user on first use).
FilesystemReadAppData
Read within the HaloForge app-data directory only.
FilesystemWrite
Write any filesystem path (prompts user on first use).
FilesystemWriteAppData
Write within the HaloForge app-data directory only.
NetworkHttp
Make outbound HTTP requests to any URL.
NetworkHttpDomain(String)
Make outbound HTTP requests to a specific domain only.
IpcRegister
Register new Tauri IPC commands.
EventsEmit
Emit events on the app event bus.
EventsListen
Listen to app lifecycle events.
UiInject
Inject into UI slots (implied by capability_levels 1/2).
ProcessSpawn
Spawn any child process (high risk — Restricted tier).
ProcessSpawnWhitelist(Vec<String>)
Spawn only executables from a declared whitelist.
Notifications
Show desktop toast notifications.
ClipboardRead
Read the clipboard.
ClipboardWrite
Write to the clipboard.
Navigate within the host UI (module switches, opening settings tabs).
HostAppStateRead
Read stable host UI state such as the active module or settings tab.
HostFileIntents
Consume file-open intents routed by the host shell.
HostFileDialogs
Open stable host file and directory picker dialogs.
HostAIChatAccess
Reuse the host AIChat transport and model selection.
HostEnterpriseGatewayAccess
Call managed image gateway endpoints through the host session.
HostDeepLinks
Receive plugin-scoped haloforge:// deep links routed by the host.
HostThemeRead
Read the active host theme and design tokens.
HostEventSubscribe
Subscribe to stable host events exposed to plugins.
AppConfigRead
Read app config (theme, language).
Implementations§
Source§impl Permission
impl Permission
Sourcepub fn tier(&self) -> PermissionTier
pub fn tier(&self) -> PermissionTier
Approval tier for this permission.
Sourcepub fn description(&self) -> String
pub fn description(&self) -> String
Human-readable description shown in the permission prompt.
Trait Implementations§
Source§impl Clone for Permission
impl Clone for Permission
Source§fn clone(&self) -> Permission
fn clone(&self) -> Permission
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for Permission
impl Debug for Permission
Source§impl<'de> Deserialize<'de> for Permission
impl<'de> Deserialize<'de> for Permission
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
impl Eq for Permission
Source§impl Hash for Permission
impl Hash for Permission
Source§impl PartialEq for Permission
impl PartialEq for Permission
Source§fn eq(&self, other: &Permission) -> bool
fn eq(&self, other: &Permission) -> bool
self and other values to be equal, and is used by ==.