Terminal Pal: Mac app that automates repetitive terminal commands

Terminal Pal

All of your terminal commands, one click.
Terminal Pal opens your terminal windows and
types your saved commands for you.
Set it up once, never type them again.

Download for Mac See how it works ↓

How it works

1

Save your commands, once

Add a window for each terminal you open every day, and the commands that go in it, with a short wait where something needs time, like an SSH connection.

Terminal Pal - Edit Commands
Playground
Prod
Side project
+ −

A workflow is a set of terminal windows that runs together from the menu bar. Each window types its commands in order; add a delay where something needs time, like `ssh`.

Playground
Dev server↑ ↓ 🗑
ssh dev-boxwait2s↑ ↓ ✕
cd ~/code/my-appwait0s↑ ↓ ✕
npm run devwait0s↑ ↓ ✕
+ Add Command
Logs↑ ↓ 🗑
ssh dev-boxwait2s↑ ↓ ✕
tail -f ~/code/my-app/logs/app.logwait0s↑ ↓ ✕
+ Add Command
+ Add Window
Saved automatically
2

One click every morning

Terminal Pal lives in your menu bar. Click the icon, pick a workflow to run, and it does the work for you.

3

Everything opens itself

Your terminal windows open one after another, and every saved command is typed for you, including the ones that run on the remote after SSH connects.

Dev server - ssh dev-box
~ $ ssh dev-box Welcome to dev-box (Ubuntu 24.04.2 LTS) Last login: Mon Jul 6 08:57:12 2026 wes@dev-box:~$ cd ~/code/my-app wes@dev-box:~/code/my-app$ npm run dev > my-app@2.4.1 dev > next dev ▲ Next.js 15.3 - Local: http://localhost:3000 ✓ Ready in 1.2s
Logs - ssh dev-box
~ $ ssh dev-box Welcome to dev-box (Ubuntu 24.04.2 LTS) wes@dev-box:~$ tail -f ~/code/my-app/logs/app.log 09:01:12 INFO server listening on :3000 09:01:14 INFO GET / 200 12ms 09:01:15 INFO GET /api/session 200 4ms

See it in action

Terminal Pal - Edit Commands
Playground
Prod
Side project
+ −
Playground
Dev server↑ ↓ 🗑
wait0s↑ ↓ ✕
wait0s↑ ↓ ✕
wait0s↑ ↓ ✕
+ Add Command
+ Add Window
Saved automatically
Dev server - ssh dev-box
Logs - ssh dev-box

Questions

Is Terminal Pal safe?

Yes. The app is signed with an Apple Developer ID and notarized by Apple, which means every release is scanned by Apple before it reaches you. Your commands are stored in a plain file on your Mac and never leave it. The app has no analytics or tracking, and its only network request is checking for updates.

Why does macOS ask me to let it control Terminal?

Typing your commands into terminal windows is literally how Terminal Pal works, and macOS requires your one-time permission before any app can control another. Click Allow the first time you run your commands, and you're set forever.

Which terminal apps are supported?

The built-in macOS Terminal and iTerm2 get full support: commands are typed one at a time, just like you would. Ghostty, Warp, kitty, WezTerm, Alacritty, and Tabby are also supported: each window's commands run as a single combined command.

Does it work with SSH?

Yes, that's the main event. Commands listed after an ssh line are typed into the live session, so they run on the remote machine, exactly as if you typed them yourself.

How much does it cost?

Terminal Pal is free. It requires macOS 14 or later and runs natively on Apple Silicon and Intel Macs. Updates install themselves.

Download for Mac