Release the screenpipe monorepo. Bumps versions, generates changelog, triggers GitHub Actions for app, CLI, MCP, and JS packages.
View on GitHubFebruary 1, 2026
Select agents to install to:
npx add-skill https://github.com/mediar-ai/screenpipe/blob/d8deaa9c0f7bd6afd2a6f82b3654f0ef37612d75/.claude/skills/release/SKILL.md -a claude-code --skill releaseInstallation paths:
.claude/skills/release/# Screenpipe Monorepo Release Skill Automate releasing all components of the screenpipe monorepo. ## Components & Versions | Component | Version File | Current Pattern | Workflow | |-----------|--------------|-----------------|----------| | Desktop App | `screenpipe-app-tauri/src-tauri/Cargo.toml` | `version = "X.Y.Z"` | `release-app.yml` | | CLI/Server | `Cargo.toml` (workspace.package) | `version = "0.2.X"` | `release-cli.yml` | | MCP | `screenpipe-integrations/screenpipe-mcp/package.json` | `"version": "X.Y.Z"` | `release-mcp.yml` | | JS Browser SDK | `screenpipe-js/browser-sdk/package.json` | `"version": "X.Y.Z"` | npm publish | | JS Node SDK | `screenpipe-js/node-sdk/package.json` | `"version": "X.Y.Z"` | npm publish | | JS CLI | `screenpipe-js/cli/package.json` | `"version": "X.Y.Z"` | npm publish | ## When to Release What **Always release CLI** when there are changes to core screenpipe code: - `screenpipe-core/` - `screenpipe-vision/` - `screenpipe-audio/` - `screenpipe-server/` - `screenpipe-db/` - `screenpipe-events/` - `screenpipe-integrations/` **App-only release** is fine when changes are only in: - `screenpipe-app-tauri/` (UI/frontend changes) To check what changed since last CLI release: ```bash # Find last CLI release commit git log --oneline --all | grep -E "CLI to v" | head -1 # Check if core code changed since then git diff <COMMIT>..HEAD --stat -- screenpipe-core screenpipe-vision screenpipe-audio screenpipe-server screenpipe-db screenpipe-events screenpipe-integrations ``` ## Release Workflow ### 1. Check Current Versions ```bash echo "=== App ===" && grep '^version' screenpipe-app-tauri/src-tauri/Cargo.toml | head -1 echo "=== CLI ===" && grep '^version' Cargo.toml | head -1 echo "=== MCP ===" && grep '"version"' screenpipe-integrations/screenpipe-mcp/package.json | head -1 ``` ### 2. Generate Changelog Get commits since last release and generate a user-friendly changelog: ```bash # Get last release tag LAST_TAG=$(git describe --tag