openclaw/apps/macos
Claude 45c34558c4
feat(mac): add simplified Easy Setup wizard for first-time users
Adds a streamlined 4-step onboarding flow for non-technical users:
- Welcome page with feature overview
- One-click OAuth sign-in with auto-clipboard detection
- Simplified permissions page (core permissions only)
- Auto-setup of gateway, CLI, and workspace

The Easy Setup is now shown by default on first launch. Power users
can click "Advanced Setup" to access the full onboarding wizard with
gateway mode selection, remote configuration, etc.

This makes the DMG install experience much simpler for laymen who
just want to download and go.
2026-01-26 05:32:29 +00:00
..
Icon.icon Rebrand app icons from Clawdis to Clawdbot 2026-01-08 23:31:24 +01:00
Sources feat(mac): add simplified Easy Setup wizard for first-time users 2026-01-26 05:32:29 +00:00
Tests/ClawdbotIPCTests fix: auto-save voice wake words across apps 2026-01-23 23:59:08 +00:00
Package.resolved chore: refresh macOS package pins 2026-01-22 06:40:02 +00:00
Package.swift refactor: consolidate mac debug CLI 2026-01-20 19:17:31 +00:00
README.md fix: harden macOS signing flow 2026-01-18 16:28:39 +00:00

Clawdbot macOS app (dev + signing)

Quick dev run

# from repo root
scripts/restart-mac.sh

Options:

scripts/restart-mac.sh --no-sign   # fastest dev; ad-hoc signing (TCC permissions do not stick)
scripts/restart-mac.sh --sign      # force code signing (requires cert)

Packaging flow

scripts/package-mac-app.sh

Creates dist/Clawdbot.app and signs it via scripts/codesign-mac-app.sh.

Signing behavior

Auto-selects identity (first match):

  1. Developer ID Application
  2. Apple Distribution
  3. Apple Development
  4. first available identity

If none found:

  • errors by default
  • set ALLOW_ADHOC_SIGNING=1 or SIGN_IDENTITY="-" to ad-hoc sign

Team ID audit (Sparkle mismatch guard)

After signing, we read the app bundle Team ID and compare every Mach-O inside the app. If any embedded binary has a different Team ID, signing fails.

Skip the audit:

SKIP_TEAM_ID_CHECK=1 scripts/package-mac-app.sh

Library validation workaround (dev only)

If Sparkle Team ID mismatch blocks loading (common with Apple Development certs), opt in:

DISABLE_LIBRARY_VALIDATION=1 scripts/package-mac-app.sh

This adds com.apple.security.cs.disable-library-validation to app entitlements. Use for local dev only; keep off for release builds.

Useful env flags

  • SIGN_IDENTITY="Apple Development: Your Name (TEAMID)"
  • ALLOW_ADHOC_SIGNING=1 (ad-hoc, TCC permissions do not persist)
  • CODESIGN_TIMESTAMP=off (offline debug)
  • DISABLE_LIBRARY_VALIDATION=1 (dev-only Sparkle workaround)
  • SKIP_TEAM_ID_CHECK=1 (bypass audit)