@elicollinson/gantry-cli
v0.1.2
Published
A TUI for visualizing macOS launchctl/launchd scheduled jobs
Downloads
99
Maintainers
Readme
Gantry
A terminal UI for visualizing and managing macOS launchctl/launchd scheduled jobs.
Gantry gives you a clear overview of all your launch agents and daemons — their schedules, health status, logs, and more — without memorizing launchctl commands.
Install
npm install -g @elicollinson/gantry-cliThen run:
gantryTip: For better performance, run with Bun:
bun gantry
Requirements
- macOS (uses
launchctlandplutil) - Node.js 18+ or Bun 1.0+
Features
- Browse all launch agents and daemons in a scrollable list
- Search and filter jobs in real time
- View job details: schedule, program, log output, health status
- Edit schedules for user agents (natural language or cron syntax)
- Run jobs on demand with
launchctl kickstart - Live tail log files after triggering a job
- Toggle visibility of
com.apple.*system services
Keyboard Shortcuts
List View
| Key | Action |
|-----|--------|
| Up/Down | Navigate jobs |
| Enter | Open detail view |
| / | Search (type to filter, arrow keys still navigate) |
| a | Toggle Apple services |
| s | Settings |
| r | Refresh |
| q | Quit |
Detail View
| Key | Action |
|-----|--------|
| Esc | Back to list |
| Up/Down | Scroll |
| e | Edit schedule (user agents only) |
| x | Run job |
| t | Live tail logs |
| r | Refresh |
| q | Quit |
Live Tail View
| Key | Action |
|-----|--------|
| Esc | Back to detail |
| Up/Down | Scroll |
| p | Pause/resume |
| q | Quit |
Development
Requires Bun for development.
# Install dependencies
bun install
# Run in dev mode
bun run src/cli.tsx
# Run tests
bun test
# Type check
bun run typecheck
# Build for distribution
bun run buildPublishing
The package is published to npm via GitHub Actions using OIDC trusted publishing — no npm tokens required.
Setup (one-time)
- Go to your package's access page on npmjs.com:
https://www.npmjs.com/package/@elicollinson/gantry-cli/access - Under Trusted Publishers, add your GitHub repository and set the workflow filename to
publish.yml
Releasing a new version
# Bump version (creates a git tag automatically)
npm version patch # 0.1.0 -> 0.1.1
npm version minor # 0.1.0 -> 0.2.0
npm version major # 0.1.0 -> 1.0.0
# Push the commit and tag to trigger the publish workflow
git push --follow-tagsThe GitHub Action will run typecheck, tests, build, and publish to npm with provenance attestation.
License
MIT
