Remige
← Remige home

Documentation

Install Remige, run the CLI, add your own tools, and keep it updated.

Install

DMG

Download Remige-macos.dmg, drag Remige into Applications, then open it. The DMG is universal (Apple Silicon and Intel) and requires macOS 14+.

One-line installer

curl -fsSL https://remige.app/install.sh | sh

The installer downloads the latest app and CLI, verifies SHA-256, installs the app to /Applications (or ~/Applications) and the CLI to /usr/local/bin (or ~/.local/bin), and removes the quarantine flag.

Homebrew

brew tap nichenqin/remige https://github.com/nichenqin/remige
brew install --cask remige-app
brew install remige

Homebrew installations should be updated with brew upgrade; Remige detects a Homebrew-managed CLI and says so instead of replacing it.

Signing status. Developer ID signing and Apple notarization are wired into the release workflow. They require an Apple Developer Program membership and are not yet enabled for the public build. If macOS blocks the first launch, right-click → Open, or run xattr -dr com.apple.quarantine /Applications/Remige.app. Current status and the update-integrity model are on the security page.

CLI

remige                       # scan and list
remige list --json           # stable machine-readable snapshot
remige list --cached         # last snapshot, no network
remige list --source npm     # homebrew npm pnpm bun app cli mas custom
remige upgrade --all --yes   # batch-eligible upgrades only
remige upgrade npm:vercel --to 44.2.7
remige changelog iina --limit 3
remige open sqlite
remige update --check        # check Remige itself
remige update                # replace the CLI atomically
remige doctor --json
remige cache path|size|clear
remige config path|init|show|edit

remige upgrade prints the exact argv it will run. Without --yes it asks once on a TTY and refuses in scripts. Download-only apps open their release page; Remige does not install them silently.

Sources

Source Detection Upgrade
Homebrew brew outdated --json=v2 --greedy brew upgrade
npm global npm outdated -g --json npm install -g pkg@<target>
pnpm global pnpm list -g + registry pnpm add -g pkg@<target>
Bun global ~/.bun/install/global + registry bun add -g pkg@<target>
Sparkle apps SUFeedURL appcasts opens the full download; cask-managed apps stay with Homebrew
Other apps Electron Builder app-update.yml (GitHub or HTTPS manifest) or bundle-ID catalog/config opens the release or download page
Mac App Store mas outdated mas upgrade
Standalone tools catalog + version command + latest tag self-update, or release page

Version policy

Rows carry latestVersion (what the source declares) and targetVersion (what Remige will install). The default prompt policy shows major updates but keeps them out of Update All and remige upgrade --all. Set updatePolicy.major to allow to include them, or hold to prefer the newest version on the installed major line. hold works for npm, pnpm and Bun because their managers accept an exact version; other sources fall back to prompt. The detail inspector pins a persistent target for those three sources, while remige upgrade npm:pkg --to 5.4.5 selects one for that run.

Custom tools

Edit ~/.config/remige/config.json. Partial documents are accepted:

{
  "disabledSources": ["mas"],
  "customTools": [
    {
      "name": "mytool",
      "path": "/usr/local/bin/mytool",
      "versionArgs": ["--version"],
      "versionRegex": "mytool (\\d+\\.\\d+\\.\\d+)",
      "github": "acme/mytool",
      "upgradeArgs": ["mytool", "self-update"]
    }
  ]
}

In upgradeArgs, the first element is replaced by the detected executable path and the rest is passed through. Omit it to make the row open the release page.

updatePolicy.major is prompt (default), allow, or hold. versionTargets pins an exact target by item id for npm, pnpm and Bun:

{
  "updatePolicy": {"major": "hold"},
  "versionTargets": {"npm:typescript": "5.4.5"}
}

Updating Remige

Remige checks the static feed at https://remige.app/latest.json. When a newer version exists, the app shows an update banner; Remige → Check for Updates… opens the update sheet. The downloaded ZIP is verified against the feed’s SHA-256, then a tiny helper waits for Remige to quit, swaps the app bundle with rollback, and relaunches it.

The CLI uses the same feed:

remige update --check
remige update

Homebrew users should run brew upgrade remige for the CLI and brew upgrade --cask remige-app for the app. The app also detects when it is running from a directory it cannot write to (for example a translocated quarantine path) and refuses to attempt a swap.

Security and limitations

Build from source

git clone https://github.com/nichenqin/remige.git
cd remige
swift test
make app
make install

Requires Swift 6 and macOS 14+. The app and CLI share RemigeCore; there is no daemon and no third-party runtime dependency.

MIT © 2026 nichenqin ·GitHub ·Changelog ·Support ·Privacy ·Security