Native Shell
Native Shell: AI-generated UI, native in your app, on every platform. Apps on iOS, Android, macOS, Windows and Linux, GPUI apps and web pages load signed, sandboxed TSX modules at run time and draw th
Run coding agents in parallel git worktrees, on macOS and Linux. Open source, MIT.
Developer toolsRust · TypeScriptGitHub @rodpruOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Run coding agents (Claude Code, Codex, opencode) in parallel git worktrees, each with its own terminal, shells and lazygit. macOS and Linux app built with Tauri.
Taken from the repository README
Loading the full README.
Read the full README ↗Run coding agents in parallel git worktrees, on macOS and Linux.
Each task gets its own worktree, and each worktree gets:
gh CLI.The sidebar shows which agents are busy, which have new output and which rang the bell. Everything runs locally. Orchard is a desktop app built with Tauri, Rust and React.
.deb is for Ubuntu 22.04+ and Debian 12+ on x86_64; on other distributions, build from source.claudeThe Homebrew cask installs lazygit and gh for you. The .deb recommends both, so apt installs them where your distribution packages them: gh on every supported release, lazygit on Debian 13 and Ubuntu 25.04 or later. Otherwise, install lazygit with Homebrew or from its install guide; if it is missing, the lazygit pane says so. Either way, run gh auth login once.
brew install --cask rodpru/tap/orchard
Orchard is not notarized by Apple. The cask removes the quarantine flag after install, so macOS opens the app without a Gatekeeper prompt. Install it only if you trust the tap.
curl -fLO https://github.com/rodpru/orchard/releases/latest/download/orchard_amd64.deb
sudo apt install ./orchard_amd64.deb
This adds Orchard to the application launcher and orchard to your PATH. apt installs WebKitGTK and GTK if they are missing. sudo apt remove orchard uninstalls it.
To check the .deb before installing it, verify it against the updater's signature with minisign. Download both files from the same tagged release, so a release published in between cannot hand you a .deb and a signature that don't match:
v=0.3.1
base=https://github.com/rodpru/orchard/releases/download/v$v
curl -fLO "$base/orchard_amd64.deb" -fLO "$base/latest.json"
jq -r '.platforms["linux-x86_64-deb"].signature' latest.json | base64 -d > orchard_amd64.deb.minisig
minisign -Vm orchard_amd64.deb -x orchard_amd64.deb.minisig -P RWT0nOat3CMJ0bNdkyhWUMclpsl1pI/A/hrPgZC+3hVawnjBPfR6gsXa
minisign prints Signature and comment signature verified and the version it signed. The public key is the one in src-tauri/tauri.conf.json that the updater uses.
If the window stays blank, try starting it with WEBKIT_DISABLE_COMPOSITING_MODE=1 orchard. Orchard already turns off WebKitGTK's DMA-BUF renderer, the usual cause on NVIDIA and some Wayland setups.
You need Rust (via rustup), Node and pnpm. On Linux you also need the WebKitGTK headers; on Debian or Ubuntu:
sudo apt install build-essential pkg-config libwebkit2gtk-4.1-dev libgtk-3-dev librsvg2-dev libsoup-3.0-dev
For other distributions, see the Tauri prerequisites. Then:
git clone https://github.com/rodpru/orchard.git
cd orchard
pnpm install
pnpm tauri build
On macOS, copy the app with cp -R src-tauri/target/release/bundle/macos/Orchard.app /Applications/; the build also produces a .dmg in src-tauri/target/release/bundle/dmg/. On Linux, install it with sudo apt install ./src-tauri/target/release/bundle/deb/*.deb. On distributions without apt, run the binary src-tauri/target/release/orchard directly.
Orchard checks GitHub Releases for a new version 30 seconds after launch and every six hours. On macOS it installs the update in the background, and you get it the next time you open Orchard; running agents are never interrupted. On Linux, an Update available button appears in the sidebar and opens the release page; install the new .deb with sudo apt install ./orchard_amd64.deb. The same button appears on macOS when Orchard's folder isn't writable by your user; download the new .dmg from the release page, or, if you installed with Homebrew, run brew upgrade --cask --greedy rodpru/tap/orchard. If a check fails for any reason other than being offline, Settings shows why. To turn this off, untick Update automatically in Settings.
⌘N (Linux: Ctrl+Shift+N) to create a worktree. Give it a branch name and, if the branch is new, the base to start from.+, and push and open a PR with Create PR.The Homebrew cask and the .deb put orchard on your PATH. If you built the macOS app from source, link it yourself:
ln -s /Applications/Orchard.app/Contents/MacOS/orchard /opt/homebrew/bin/orchard
Then:
orchard .
orchard <path> registers the repository that contains <path> and opens its worktree.
| macOS | Linux | |
|---|---|---|
| New worktree in the current repository | ⌘N | Ctrl+Shift+N |
| Switch between open worktrees | ⌘1…⌘9 | Ctrl+Shift+1…9 |
| Copy and paste in a terminal | ⌘C, ⌘V | Ctrl+Shift+C, Ctrl+Shift+V |
| Newline in agent prompts | Shift+Enter | Shift+Enter |
~/Library/Application Support/io.github.rodpru.orchard/config.json on macOS, ~/.config/io.github.rodpru.orchard/config.json on Linux. If it cannot be parsed, it is moved to config.json.corrupt-<timestamp> and Orchard starts with defaults.<repo>.worktrees/<branch> next to the repository, or <folder>/<repo>/<branch> when a worktree folder is set in Settings.pnpm install
pnpm tauri dev
Checks, also run in CI:
pnpm exec tsc --noEmit && pnpm lint && pnpm test
cd src-tauri && cargo fmt --check && cargo clippy --all-targets -- -D warnings && cargo test
IPC types in src/lib/bindings/ are generated from the Rust structs. After changing one, run pnpm gen:types and commit the result.
Orchard runs the commands you configure, by design. See SECURITY.md for details and for how to report a vulnerability.