release

Screenpipe Monorepo Release Skill

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "release" with this command: npx skills add mediar-ai/screenpipe/mediar-ai-screenpipe-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:

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

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

  1. Bump Version

Edit screenpipe-app-tauri/src-tauri/Cargo.toml to update version.

  1. Commit & Push

git add -A && git commit -m "Bump app to vX.Y.Z" && git pull --rebase && git push

  1. Trigger Release (Draft Only)

gh workflow run release-app.yml

Important: workflow_dispatch creates a draft only - does NOT auto-publish. This allows manual testing before publishing.

  1. Monitor Build Status

Get latest run ID

gh run list --workflow=release-app.yml --limit=1

Check status

gh run view <RUN_ID> --json status,conclusion,jobs --jq '{status: .status, conclusion: .conclusion, jobs: [.jobs[] | {name: (.name | split(",")[0]), status: .status, conclusion: .conclusion}]}'

  1. Test the Draft Release
  • Download from https://screenpi.pe (requires purchase token)

  • Test on macOS and Windows

  • Verify updater artifacts exist (.tar.gz, .sig files)

  1. Publish Release

After testing, publish via the Cloudflare R2 / backend dashboard, OR commit with magic words:

git commit --allow-empty -m "release-app-publish" && git push

Quick Release (App Only)

1. Bump version in Cargo.toml

2. Commit and push

git add -A && git commit -m "Bump app to vX.Y.Z" && git push

3. Trigger release (draft)

gh workflow run release-app.yml

4. Monitor

sleep 5 && gh run list --workflow=release-app.yml --limit=1

Build Status Format

Build <RUN_ID>:

PlatformStatus
macOS aarch64✅ success / 🔄 in_progress / ❌ failure
macOS x86_64✅ success / 🔄 in_progress / ❌ failure
Windows✅ success / 🔄 in_progress / ❌ failure

Troubleshooting

Build Failed

gh run view <RUN_ID> --log-failed 2>&1 | tail -100

Cancel Running Build

gh run cancel <RUN_ID>

Re-run Failed Jobs

gh run rerun <RUN_ID> --failed

Missing Updater Artifacts (.tar.gz, .sig)

The CI copies tauri.prod.conf.json to tauri.conf.json before building. If artifacts are missing:

  • Check tauri.prod.conf.json has "createUpdaterArtifacts": true

  • Check the "Use production config" step ran successfully

Configuration

Dev vs Prod Configs

  • tauri.conf.json

  • Dev config (identifier: screenpi.pe.dev )

  • tauri.prod.conf.json

  • Prod config (identifier: screenpi.pe , updater enabled)

CI automatically uses prod config for releases by copying it before build.

Auto-Publish Behavior

  • workflow_dispatch (manual trigger) → Draft only, no publish

  • Commit with "release-app-publish" → Auto-publish after successful build

Notes

  • Linux desktop app is disabled (bundling issues)

  • App builds take ~25-35 minutes

  • CLI builds take ~15-20 minutes

  • Always pull before push to avoid conflicts

  • Updater artifacts: macOS uses .tar.gz /.sig , Windows uses .nsis.zip /.sig

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

Daily Stoic

Send daily Stoic philosophy quotes from "The Daily Stoic" by Ryan Holiday. Use when setting up daily wisdom reminders via email or Telegram, or when a user wants stoic quotes for a specific date. Supports all 366 days with title, quote, and reflection.

Registry SourceRecently Updated
1.9K1Profile unavailable
General

Quodd Stock Quotes

Fetch real-time stock quotes via Quodd API. Get current prices, daily high/low, and after-hours data for US equities. Use when the user asks for stock prices, quotes, market data, or ticker information.

Registry SourceRecently Updated
2.1K1Profile unavailable
General

Meeting Notes

Extract and organize investor questions and project team answers from meeting transcripts into structured, time-sequenced notes with clear, minimal topic tit...

Registry SourceRecently Updated
4840Profile unavailable
General

release

No summary provided by upstream source.

Repository SourceNeeds Review