Windows CI / windows ([bun run --cwd packages/app-core test bun run --cwd packages/elizaos test bun run --cwd packages/cloud/shared test], app-and-cli) (push) Has been cancelled
Windows CI / windows ([bun run --cwd packages/scenario-runner test bun run --cwd packages/vault test bun run --cwd packages/security test bun run --cwd plugins/plugin-coding-tools test], framework-packages) (push) Has been cancelled
Windows CI / windows ([bun run --cwd plugins/plugin-elizacloud test bun run --cwd plugins/plugin-discord test bun run --cwd plugins/plugin-anthropic test bun run --cwd plugins/plugin-openai test bun run --cwd plugins/plugin-app-control test bun run --cwd plugins/pl… (push) Has been cancelled
Windows CI / windows ([node packages/scripts/run-turbo.mjs run build --filter=@elizaos/core --filter=@elizaos/shared --filter=@elizaos/agent --concurrency=4 node packages/scripts/run-bash-linux-only.mjs scripts/verify-riscv64-buildpaths.sh node packages/scripts/run… (push) Has been cancelled
Windows CI / windows ([node packages/scripts/run-turbo.mjs run typecheck --filter=@elizaos/core --filter=@elizaos/shared --filter=@elizaos/cloud-shared --concurrency=4 bun run --cwd packages/core test bun run --cwd packages/shared test], core-runtime, 75) (push) Has been cancelled
Workspace Capacitor plugins that give the Eliza mobile app access to native iOS and Android capabilities.
The Eliza mobile app ships custom Capacitor plugins plus core @capacitor/* plugins. Each custom plugin is an independent package under packages/native/plugins/<name>/ and must be compiled before the web app can bundle it (bun run --cwd packages/app plugin:build from packages/app). Platform availability differs by package: some plugins ship Swift and Kotlin implementations, some are iOS-only or Android-only, and some are web or TypeScript facades used by the app shell.
Most plugins follow the same structure: a TypeScript interface describing the web-facing API, a web implementation used in browser environments, and native implementations for iOS (Swift) or Android (Kotlin) when the platform allows the feature. Platform-specific gaps are intentional for phone, SMS, contacts, Wi-Fi, system settings, Apple Calendar, and iOS Screen Time surfaces.
Plugin Bridge
The bridge is the single entry point for all plugin access. It initializes at app startup, probes each plugin for availability, and exposes the results at window.Eliza.plugins and window.Eliza.pluginCapabilities.
Use waitForBridge() before accessing any plugin, then check isFeatureAvailable() for platform-specific features before calling them:
Capability map — keys accepted by isFeatureAvailable():
Key
Plugin
gateway
@elizaos/capacitor-gateway
voiceWake
@elizaos/capacitor-swabble
talkMode
@elizaos/capacitor-talkmode
camera
@elizaos/capacitor-camera
location
@elizaos/capacitor-location
screenCapture
@elizaos/capacitor-screencapture
canvas
@elizaos/capacitor-canvas
desktop
@elizaos/capacitor-desktop
@elizaos/capacitor-gateway
WebSocket RPC connection to a Eliza gateway with mDNS/Bonjour discovery of local gateways on the same network. Handles token or password authentication, automatic reconnection, and session continuity via session keys.
Methods
Method
Parameters
Returns
Description
startDiscovery
—
Promise<void>
Begin mDNS scanning for gateways on the local network
A gateway was discovered, lost, or its metadata changed
@elizaos/capacitor-swabble
Continuous background wake-word detection. Uses the native Speech framework on iOS and SpeechRecognizer on Android. Desktop and browser environments use Web Speech or explicitly configured local-inference ASR.
Real-time microphone amplitude (0–1) for UI indicators
error
{ message: string, code?: string }
Detection or permission error
@elizaos/capacitor-talkmode
Full speech pipeline integrating STT, chat relay to the agent, and TTS output. STT uses native recognition on mobile, Web Speech on web/desktop, or local-inference ASR when a verified Gemma bundle is configured; TTS uses ElevenLabs streaming or native speech synthesis. The pipeline is stateful — only one phase is active at a time.
Camera enumeration, live preview rendering into an HTML element, photo capture, video recording, and manual controls. On web, falls back to getUserMedia.
Drawing primitives, layer management, embedded web view control, JavaScript evaluation, A2UI directive injection, and eliza:// deep link interception. The canvas layer renders natively on iOS and Android and sits above the Capacitor web view.
An A2UI action was triggered from within the web view
@elizaos/capacitor-agent
Agent lifecycle management. Communicates with the Eliza agent process via IPC on Electrobun and via HTTP on iOS, Android, and web.
Methods
Method
Parameters
Returns
Description
start
—
Promise<void>
Start the agent process
stop
—
Promise<void>
Stop the agent process
getStatus
—
Promise<{ state: AgentState }>
Return the current agent state
chat
text: string
Promise<void>
Send a text message to the running agent
Agent States
State
Description
not_started
Agent has never been started in this session
starting
Agent process is initializing
running
Agent is active and accepting messages
stopped
Agent was stopped cleanly
error
Agent encountered a fatal error
@elizaos/capacitor-desktop
Electrobun-only plugin for desktop integration. All methods are no-ops on iOS and Android. Check isFeatureAvailable("desktop") before calling any method.
Tray Methods
Method
Parameters
Description
createTray
config: TrayConfig
Create the system tray icon
updateTray
config: Partial<TrayConfig>
Update the tray icon or tooltip
destroyTray
—
Remove the system tray icon
setTrayMenu
items: MenuItem[]
Set the tray context menu items
Global Shortcut Methods
Method
Parameters
Description
registerShortcut
accelerator: string, id: string
Register a global keyboard shortcut
unregisterShortcut
accelerator: string
Unregister a specific shortcut
unregisterAllShortcuts
—
Unregister all shortcuts registered by this app
isShortcutRegistered
accelerator: string
Check whether a shortcut is currently registered
Auto Launch Methods
Method
Parameters
Description
setAutoLaunch
enabled: boolean
Enable or disable launch at login
getAutoLaunchStatus
—
Return whether auto launch is currently enabled
Window Methods
Method
Parameters
Description
minimize
—
Minimize the window
maximize
—
Maximize the window
unmaximize
—
Restore the window from maximized state
isMaximized
—
Check whether the window is maximized
hide
—
Hide the window
show
—
Show the window
focus
—
Bring the window to focus
close
—
Close the window
setFullscreen
fullscreen: boolean
Enter or exit fullscreen mode
isFullscreen
—
Check whether the window is fullscreen
getBounds
—
Return { x, y, width, height } for the window
setBounds
bounds: Partial<Rectangle>
Set the window position and/or size
setOpacity
opacity: number
Set window opacity (0–1)
getOpacity
—
Return the current window opacity
setAlwaysOnTop
flag: boolean
Pin or unpin the window above others
isAlwaysOnTop
—
Check whether always-on-top is active
center
—
Move the window to the center of the screen
setTitle
title: string
Set the window title bar text
Notification Methods
Method
Parameters
Description
showNotification
config: NotificationConfig
Show a system notification
closeNotification
id: string
Dismiss a specific notification
Power Methods
Method
Parameters
Description
getPowerState
—
Return battery level, charging state, and power source
App Methods
Method
Parameters
Description
quit
—
Quit the Electrobun application
relaunch
—
Relaunch the Electrobun application
getVersion
—
Return the application version string
isPackaged
—
Return whether the app is running from a packaged build
getPath
name: string
Return an Electrobun app path (e.g., userData, logs)
Clipboard Methods
Method
Parameters
Description
writeToClipboard
text: string
Write text to the system clipboard
readFromClipboard
—
Read text from the system clipboard
clearClipboard
—
Clear the system clipboard
Shell Methods
Method
Parameters
Description
openExternal
url: string
Open a URL in the default browser
showItemInFolder
path: string
Reveal a file in Finder/Explorer
beep
—
Play the system alert sound
@capacitor/haptics
Standard Capacitor haptics plugin. Provides impact, notification, and selection feedback patterns on iOS and Android. Inactive on web and desktop.