NotchTerminal is a macOS app that puts a terminal workflow in the notch area.
It combines:
- A top notch overlay (real notch and no-notch screens)
- Floating terminal windows
- Quick terminal actions (restore/minimize/close)
- Advanced Metal-based visual effects (Aurora background, CRT filter, Fake Notch glow)
- Expands on hover
- Works on multi-display setups
- Shows minimized terminal chips
- Opens quick actions:
NewReorgBulk(Restore All,Minimize All,Close All,Close All on This Display)Settings
- Open/close/minimize/maximize
- Compact mode
- Always-on-top toggle
- Dock-to-notch behavior when dragged near the notch
- Drag and drop folders/files into terminal (inserts escaped path)
- Context menu includes:
CopyPasteSelect AllClear BufferSearch(sends Ctrl+R)Close(sendsexit)
- Keyboard shortcuts:
⌘C,⌘V,⌘A⌘Kclear⌘Fsearch⌘Wclose session⌘+/⌘-font size
- Lists listening TCP ports
- Search/filter by dev/all
- Kill process by PID from the UI
- Stores terminal sessions via SwiftData
- Restores sessions on launch (work in progress)
- Scheduled AI cronjobs that run prompts on a timer or via macOS
launchd - Two execution modes:
- App Timer: runs while NotchTerminal is open
- Machine Daemon: runs via native macOS
launchd, even when the app is closed
- User-friendly interval picker (1min–daily) or advanced custom cron expression
- Results displayed in the Notch overlay (if app is open) and/or macOS Notification Center
- Supports OpenAI, OpenRouter (free), and custom API endpoints
- macOS 14+
- Xcode 16+ (for development)
Runtime note:
- The app defaults to
/bin/zsh, which is available on a clean macOS install.
- Open
NotchTerminal.xcodeproj - Select scheme
NotchTerminal - Build and run
This repository does not commit a personal Apple DEVELOPMENT_TEAM.
If you need local signing to run or archive the app:
- Copy
Config/Signing.local.example.xcconfigtoConfig/Signing.local.xcconfig - Replace
YOURTEAMIDwith your own Apple Developer team ID - Keep
Config/Signing.local.xcconfiglocal only
The shared Config/Signing.xcconfig includes that file optionally, so collaborators can sign locally without rewriting shared project settings.
General- Language: system default or manual override (
en,es,fr,ja) - Haptics
- Dock icon toggle
- Show Experimental tab
- Hover/open behavior and delay
- Keep open while typing
- Chip close button on hover
- Close confirmation behavior
- Close action mode (
Close window only/Terminate process and close) - Quit app action
- Language: system default or manual override (
Notch- Per-display notch enable/disable
- Per-display X/Y offset and width adjustment
- Per-display custom Aurora background override
Appearance- Content padding
- Default terminal width/height
- Global Aurora background and theme
AboutExperimental- Hidden by default behind
Show Experimental tab - Drag to Notch and docking sensitivity
- Startup Orb and its offset tuning
- Project Status Card (contextual details like Folder Name and Git Status in the Notch)
- Fake Notch Glow and theme
- CRT Filter
- Hit-test debug overlay
- Extra notch geometry offsets for physical-notch displays
- Hidden by default behind
NotchAgent- Experimental tab for scheduled AI background tasks
- Global AI provider configuration (OpenAI / OpenRouter / Custom)
- Cronjob list with enable/disable, test, edit, and delete
- Per-job execution mode (App Timer or Machine Daemon)
- Interval picker or advanced cron expression
NotchTerminal/Appapp lifecycleNotchTerminal/Features/Notchoverlay + notch UINotchTerminal/Features/Windowsfloating window manager + terminal integrationNotchTerminal/Features/PersistenceSwiftData modelsNotchTerminal/Rendering/MetalMetal shaders/renderersNotchTerminal/Settingssettings screensNotchTerminal/Serviceshelpers/servicesNotchTerminal/Assets.xcassetsicons/images
- Main docs index:
docs/README.md - Quality and testing:
docs/quality/ - Localization docs:
docs/localization/
See NotchTerminal/Resources/THIRD_PARTY_NOTICES.md.
Main attributions:
- SwiftTerm (terminal emulation, MIT)
- Port-Killer inspiration for open-port workflow (MIT)
Brand marks/logos used in UI belong to their respective owners and are used for identification only.
If you want to support development:
- Buy Me a Coffee: https://buymeacoffee.com/marcoastorj
MIT. See LICENSE.




