
Screenpipe Tauri
Add or change Tauri commands and TypeScript bindings in the screenpipe desktop app.
Install
npx skills add screenpipe/screenpipe --skill screenpipe-tauri -g -a claude-code -y- Repository
- screenpipe/screenpipe22.2k
- Category
- Design
- Updated
- 4d ago
- License
- See repository
- Context cost
- Lightabout 356 tokens
- Runs scripts
- No, instructions only
What it does
Add or change Tauri commands and TypeScript bindings in the screenpipe desktop app. Use when editing #[tauri::command] handlers, lib/utils/tauri.ts, or Rust types exported to the frontend.
Screenpipe Tauri (desktop app)
Path: apps/screenpipe-app-tauri/
Command registration is automated via the tauri-helper crate. Do not edit manual invoke-handler or specta command lists in main.rs.
Adding a command
- Add both markers to the handler function in any
src-tauri/src/**/*.rsmodule:#[tauri::command] #[specta::specta] // required, without this the command is skipped in tauri.ts pub async fn your_command(...) { ... } - From
apps/screenpipe-app-tauri/:
bun run bindings:generate # write lib/utils/tauri.ts
bun run bindings:check # verify no drift
bun run typecheck # verify frontend types
- Commit Rust +
lib/utils/tauri.tstogether
Scripts
| Command | Purpose |
|---|---|
bun run bindings:check | Fail if checked-in lib/utils/tauri.ts does not match Rust |
bun run bindings:generate | Regenerate lib/utils/tauri.ts after command/type changes |
bun run typecheck | Frontend TypeScript check |
Key files
src-tauri/build.rs,tauri_helper::generate_command_file(build-time scan)src-tauri/src/main.rs,specta_collect_commands!()/tauri_collect_commands!()src-tauri/src/specta_bindings.rs, export helpers and drift testslib/utils/tauri.ts, generated TypeScript bindings (checked in)
Debug builds also auto-export bindings on startup when content changes.


