Screenpipe provides two CLI tools for development:Documentation Index
Fetch the complete documentation index at: https://mintlify.com/screenpipe/screenpipe/llms.txt
Use this file to discover all available pages before exploring further.
screenpipe- Core server and capture enginescreenpipe-dev- Development tools for building pipes and apps
Screenpipe Server
The mainscreenpipe CLI runs the capture engine and API server.
Basic Usage
- API server on
http://localhost:3030 - Default audio and video capture enabled
- Data stored in
~/.screenpipe/
Common Options
Port for the API server
Directory for storing captured data and database
Disable audio capture
Disable screen capture
Examples
Screenpipe Dev CLI
Thescreenpipe-dev CLI provides tools for building applications and plugins.
Installation
Commands
login
Authenticate with Screenpipe services.- Browser - OAuth flow via browser
- API Key - Direct API key input
logout
Remove stored credentials.Pipe Commands
Pipes are lightweight plugins that process Screenpipe data.pipe create
Create a new pipe from a template.- Pipe name
- Target directory
- TypeScript configuration
- Example code with
@screenpipe/jsSDK package.jsonwith dependencies- Development server setup
pipe register
Register a pipe with the Screenpipe store.- Valid authentication (run
screenpipe-dev loginfirst) pipe.jsonin current directory
pipe publish
Publish a new version of your pipe.- Registered pipe
- Valid authentication
pipe list-versions
List all published versions of a pipe.App Commands
Create full desktop applications that embed Screenpipe.app create
Create a new desktop app from templates.Name of your app (optional, prompts if not provided)
Type of desktop app:
electron or tauri- Electron
- Tauri
Electron Template
- Modern Electron + React setup
- TypeScript support
- Screenpipe SDK pre-configured
Components Commands
Manage UI components (uses shadcn/ui registry).components add
Add UI components to your project.- Detects your project configuration
- Downloads the component from the registry
- Installs required dependencies
- Adds the component to your project
Testing & Development
Running Tests
For Rust code:Development Build
Build the core engine:Running from Source
Run Screenpipe directly from source:Desktop App Development
Build the Tauri desktop app:Environment Variables
Override default data directory
Override default API port
Set log level:
error, warn, info, debug, traceDebugging
Memory Debugging
Using tokio-console:Address Sanitizer
Leak Sanitizer
Database Migrations
Create Migration
Fix Migration Issues
If you encounter missing migration errors:Performance Monitoring
Usingcargo-instruments on macOS:
Benchmarks
Run performance benchmarks:Next Steps
JavaScript SDK
Build with the TypeScript SDK
Contributing
Contribute to Screenpipe
API Reference
Complete API documentation
Examples
Code examples and tutorials