🚧 VeloxKit is pre-release software. APIs may change before v1.0. Get started β†’
Documentation
Configuration
Capabilities Reference

Capabilities Reference

Declare capabilities in veloxkit.config.ts under capabilities: [].

CapabilityAPIs unlockedNotes
fsvelox.fs β€” read, write, watch, stat files and directoriesβ€”
dbvelox.db β€” SQLite queries, migrations, vector searchβ€”
networkvelox.network β€” fetch, WebSocket, mDNSβ€”
aivelox.ai β€” embed, generate, transcribe (on-device)Requires model download on first use
audiovelox.audio β€” playback and recordingβ€”
videovelox.video β€” video file playbackβ€”
cameravelox.camera β€” camera device enumeration and captureβ€”
microphonevelox.audio recording β€” microphone inputβ€”
dialogvelox.dialog β€” open/save file dialogs, message boxesβ€”
clipboardvelox.clipboard β€” read and write text (readText, writeText)Image clipboard not yet supported
notificationvelox.notification β€” OS notificationsmacOS requires app bundle
credentialsvelox.credentials β€” OS keychain (Keychain, Credential Manager, libsecret)β€”
deeplinkvelox.deeplink β€” URL scheme registration and handlingRequires identifier field
updatervelox.updater β€” in-app update checks and installationβ€”
crashvelox.crash β€” crash report capture and retrievalβ€”
perfvelox.perf β€” frame timing, memory stats, CPU usageDev / diagnostics
systemvelox.system β€” display info, OS infoβ€”
batteryvelox.system.battery β€” battery level and charging stateβ€”
storagevelox.system.storage β€” disk usage and app data directoryβ€”
gamepadsvelox.system.gamepads β€” gamepad / controller inputβ€”
globalShortcutsvelox.globalShortcuts β€” OS-level keyboard shortcut registrationβ€”
powerPower sleep/wake eventsβ€”
shellSpawn shell commandsUse with care β€” broad OS access
usbUSB device enumerationβ€”
mdnsmDNS service discovery and advertisementβ€”
hidHID device access (joysticks, custom peripherals)β€”

Requesting only what you need

Each capability you declare is a commitment that your app uses that API. Declare only what you genuinely need:

  • Fewer capabilities = smaller attack surface
  • Capability list is visible to users who inspect the binary
  • Future versions may require user consent for sensitive capabilities

Checking capabilities at runtime

import { velox } from 'veloxkit'
 
if (velox.hasCapability('camera')) {
  // camera features available
}

Capability scoping (planned for v0.4)

More granular scoping is tracked in GitHub #142 (opens in a new tab):

// Planned β€” not yet available
capabilities: [
  { name: 'fs', paths: ['~/Documents/my-app/**'] },
  { name: 'network', origins: ['https://api.myservice.com'] },
]