Releases: Sean10000/LaunchManager
Release list
v1.7.0
LaunchManager v1.7.0
Added
- EnvironmentVariables — key-value editor in agent form.
- Override status — shows jobs disabled via
launchctl override; 启用 button callslaunchctl enable. - Directory watching — agent list auto-refreshes when plist folders change (FSEvents) and when the app returns to foreground.
Improved
- Form save safety — blocks form save when plist contains keys the form cannot represent; lists unsupported keys and directs users to XML mode.
- launchctl errors — load/unload/start/stop/enable failures show a short hint plus raw
launchctloutput.
v1.6.4
LaunchManager v1.6.4
Added
- Plist XML editor — Form | XML tabs in agent editor; paste XML to create new jobs; extra plist keys preserved in XML mode.
- Import plist — import external
.plistinto user/global Agent or LaunchDaemon directories. - Clone job — duplicate an existing Launch Agent/Daemon with a new Label.
- Services → Launch Agent — prefill a new user Agent from a running local service (command, working directory).
- WorkingDirectory — optional field in agent form.
- Startup update check — once per day, compares the running app to GitHub Releases; shows a sheet with DMG download link, Homebrew upgrade commands (copy), and options to skip a version or remind later.
- Check for Updates — manual check from the About window.
Changed
- Launch Agents sidebar — User Agents, System Agents, and LaunchDaemons merged into a single Launch Agents entry; the detail view groups items by scope with collapsible sections (same pattern as Services).
- New Agent — toolbar New is now a menu to pick user / global Agent or LaunchDaemon scope before opening the editor.
- Agent search — search runs across all three scopes in one view.
Improved
- Services row layout — port/address stays visible when display name or Docker image subtitle is long; Docker subtitle uses compose service or short image name.
- New Agent templates link — footer button on the new-agent sheet opens launchmanager.dev/templates.
- Services groups — Docker and local instance sections can be collapsed/expanded via the group header (helpful when many services are listed).
- DMG install UX — release DMGs include an Applications folder shortcut beside the app for drag-to-install (via
create-dmg); README Direct Download instructions updated. - Release tooling — shared
package-dmg.shfor local builds and CI;build-dmg.shoutputs tobuild/LaunchManager.dmg.
v1.6.3
LaunchManager v1.6.3
Changed
- Release automation — version in
Version.xcconfig, CHANGELOG-driven releases, GitHub Actions builds DMG and updates Homebrew tap.
v1.6.2
LaunchManager v1.6.2
Fixed
- Chinese and Unicode paths — paths like
/Applications/启动器.appno longer show as???or mojibake; mojibake repair no longer corrupts valid CJK text. - TCP Services empty list — inherit shell environment for
lsof/ps; treatlsofexit 1 with no stderr as “no listeners”; count root-owned processes as alive when signal check returns EPERM. - Services scan in GUI apps — run shell tools with
C.UTF-8locale without replacing the inherited environment.
Improved
- Process command lines — read UTF-8 argv from the kernel (
KERN_PROCARGS2) before falling back tops. - Services UI — “显示全部” toggle (default on for first launch), clearer empty states and scan-error messaging.
- Path display — consistent
FilePathNormalizer.display()across Services, Agents, and kill confirmations.
Installation
brew tap Sean10000/tap
brew upgrade --cask launchmanagerOr download LaunchManager.dmg below and drag to Applications.
First launch: right-click → Open (app is not notarized).
v1.6.1
LaunchManager v1.6.1
Added
- Help menu — opens https://www.launchmanager.dev/help from the menu bar.
Improved
- Full English UI — complete String Catalog coverage; interface follows system language (English or Chinese).
- Unicode paths — correct display of non-ASCII paths (e.g. Chinese
.appnames) in Services via native macOS APIs and UTF-8 shell locale.
Fixed
- Build error in process discovery (
cwdFromLsofinstance call). - Octal-encoded path decoding from
lsofoutput.
Installation
brew tap Sean10000/tap
brew upgrade --cask launchmanagerOr download LaunchManager.dmg below and drag to Applications.
First launch: right-click → Open (app is not notarized).
v1.6.0
LaunchManager v1.6.0
Added
- Services module: sidebar entry to scan local TCP listening processes (3s polling).
- Three-tier identification: host mechanisms (docker-proxy, Colima, SSH forward, etc.) → high-confidence services (Next.js, Redis, PostgreSQL) → user custom display names.
- Docker integration: resolve container name, image, and Compose labels via
docker ps; stop containers withdocker stopinstead of killing docker-proxy. - Grouped list: Docker and local instance sections in the Services view.
Scope
- Host-local TCP
LISTENonly — processes bound on your Mac - Docker published ports on Mac — via
docker psport mapping - Does not include remote VM/NAS/LAN services or outbound-only (
ESTABLISHED) connections - TCP only in v1.6 (no UDP)
Improved
- Full process names from
ps command=(avoids lsof ~8 character truncation). - Docker CLI lookup via known install paths with
/usr/bin/env dockerPATH fallback (no zsh dependency).
Installation
brew tap Sean10000/tap
brew upgrade --cask launchmanagerOr download LaunchManager.dmg below and drag to Applications.
First launch: right-click → Open (app is not notarized).
v1.5.1
LaunchManager v1.5.1
Fixed
- Start / Stop 点击反馈: 启动、停止、载入、移除操作立即显示 spinner 与进行中状态,整行锁定防连点误操作。
- Stop 一次生效: 停止后轮询直到 PID 清除再结束 pending,避免需点击两次才显示已停止。
Installation
brew tap Sean10000/tap
brew upgrade --cask launchmanagerOr download LaunchManager.dmg below and drag to Applications.
First launch: right-click → Open (app is not notarized).
v1.5.0
LaunchManager v1.5.0
New
- Login Items 说明页: 侧边栏新增「Login Items」入口,说明 Launchd(LaunchAgent / LaunchDaemon)与系统「登录项」的区别,并提供按钮跳转到「系统设置 → 通用 → 登录项」。
- 侧边栏交互: 分类与 Login Items 使用按钮行,修复部分环境下点击侧边栏无法切换页面的问题。
Notes
- Login Items 仍由 macOS 系统设置管理;本应用不读取 BTM 列表、不提供开关。
Installation
brew tap Sean10000/tap
brew upgrade --cask launchmanagerOr download LaunchManager.dmg below and drag to Applications.
First launch: right-click → Open (app is not notarized).
v1.4.1
LaunchManager v1.4.1
Fixes
- Localization:「载入」「移除」and the delete confirmation message now show in English on English macOS (were missing from the String Catalog since v1.4.0).
Installation
brew tap Sean10000/tap
brew upgrade --cask launchmanagerOr download LaunchManager.dmg below and drag to Applications.
First launch: right-click → Open (app is not notarized).
v1.4.0
LaunchManager v1.4.0
Fixes
- Log viewer: No longer freezes the app — system logs load lazily, output is capped, and lines render incrementally instead of one giant text block (v2ex feedback).
- LaunchDaemons permissions: System Agent/Daemon plists are now saved as
root:wheelwith mode644, fixing load failures after create (#3). - Intel Macs: Release builds are now universal (
arm64+x86_64) (#2).
Improvements
- launchctl API cleanup: uses
bootstrap/bootout/kickstart/killonly; removed stale duplicate sources with deprecatedload/unload. - UI: “载入” / “移除” instead of legacy load/unload wording.
Installation
brew tap Sean10000/tap
brew upgrade --cask launchmanagerOr download LaunchManager.dmg below and drag to Applications.
First launch: right-click → Open (app is not notarized).