Native Shell
Native Shell은 모든 플랫폼의 앱 안에서 만들어지는 AI UI입니다
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기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.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다.
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.