Guide and reference
Help
pālana is a two-pane macOS file manager for local and SSH hosts. File and ZFS plans show commands before Enter runs them.
Saved remote edits upload automatically by default when the remote file is unchanged; Settings can require confirmation. See Remote editing for conflict checks.
Install and build#
v0.8-beta is a signed and notarized disk image on the releases page. The beta requires macOS 14 or later and is free through November 4, 2026. At 1.0 the built application costs US $29 once, covering 1.x updates, with no subscription, license key, or account.
Submit a useful bug report or feedback during the beta to get the 1.0 app free. Beta report offer.
Check Requirements for SSH readiness and transfer tools, then follow The first five minutes.
cd palana
swift build
The project uses Swift Package Manager, which is the package and build tool included with Xcode. The source is licensed under GPL-3.0, and building it is free at every version.
Connect hosts#
pālana reads host aliases from ~/.ssh/config, including
Include files. Prepare authentication without login prompts using
Configuring SSH. That page also explains how Settings
edits host blocks and protects concurrent changes.
Point a pane#
Click a pane address or press ⇧⌘G. Local forms include
/path, ~/path, file:///path, and
local:/path; remote forms include host:/path and
host:~/path. A leading colon uses the focused pane's current
host.
Pasted paths have defined wrapper cleanup, and missing paths can resolve to their longest existing directory prefix. The full rules are in Addresses and pasted paths.
Browse and change files#
j/k or the arrow keys move the cursor, h/l leave or enter a directory, Tab changes panes, and Space selects an entry. y copies, m moves, d permanently deletes without Trash, r renames, a creates, and t updates modification times.
Each file-changing verb composes a plan. Enter runs a ready plan, Esc dismisses it, and Control-C cancels gathering or a running command. A running host process or pipeline receives termination and pālana waits for it to exit.
See The keyboard, Moving files, and The command before it runs.
Move consequences#
A copy-based file move removes source files progressively after checking their contents. Do not modify either location during the move; interruption can leave files split between them. Read Source removal and verification for cleanup, retained files, and retry inspection.
Shell and preview#
⌘` starts or resumes a shell on the focused host and transfers the keyboard between that shell and the panes. The first shell for a host starts in the focused pane's current directory; an existing shell keeps its own directory. Plain ` opens the panel and enables the read keys, and Shift-Tab toggles panel focus.
v makes the right pane preview the left cursor. Text reads are capped at 256 KB, and remote images, PDFs, or SVG files are fetched only when the listed and streamed size is at most 25 MB. Other remote files show their metadata.
Field and ZFS#
f opens cached host, capability, pool, and dataset facts; r probes the selected host, and Tab changes the target pane while the card remains open. F opens the full host and mount map in a separate panel.
Z changes the focused pane to its ZFS dataset tree. Every ZFS mutation composes a plan from freshly read topology, and enactment checks the bound topology again before it runs. See The field, ZFS, and The mount grant.
Local state and network activity#
The app stores settings, session state, host facts, and an operation log on the Mac. See Local state for paths and deletion effects, and How it works for pane refresh, host probes, and the optional launch-time update check.