Skip to content
Run1997Public

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Repository files navigation

PM2 GUI

简体中文说明

PM2 GUI is a native macOS app for managing local PM2 processes with a desktop UI and a lightweight menu bar companion.

It is aimed at developers who already use pm2 locally and want a faster way to inspect processes, read logs, and run common actions without living in the terminal.

Features

  • Native macOS app built with SwiftUI
  • Process list with status, CPU, memory, restarts, and uptime
  • Process detail view with start, stop, restart, reload, and delete actions
  • Log viewer with stdout / stderr switching, filtering, and auto refresh
  • Start new apps from a script or executable path
  • Optional interpreter support, including none
  • PM2 daemon actions such as save, resurrect, and environment diagnostics
  • Menu bar access for quick process checks and actions
  • Chinese / English UI switching

Screenshots

Processes

Processes

Logs

Logs

Settings

Settings

Menu Bar

Menu Bar

Example: Start a Command With interpreter none

To reproduce a command like:

pm2 start gitnexus --name gitnexus-mcp --interpreter none -- mcp

In the app's Start New App dialog, fill:

  • Name: gitnexus-mcp
  • Script or executable path: absolute path to gitnexus
  • Interpreter: none
  • Arguments: mcp

Common Example: Start a Node Service

For a common PM2 workflow like:

pm2 start /Users/you/project/server.js --name api -- --port 3000

In the app's Start New App dialog, fill:

  • Name: api
  • Script or executable path: /Users/you/project/server.js
  • Interpreter: leave blank
  • Arguments: --port 3000

Requirements

  • macOS 14 or later
  • pm2 installed locally
  • node available for your PM2 environment

The app shells out to your local pm2 binary. It does not bundle PM2 itself.

Install

Unsigned build artifacts are committed in dist/:

You can open the DMG and drag PM2GUI.app into Applications.

Build From Source

Open the package in Xcode:

  1. Open Xcode
  2. Choose Open Existing Project
  3. Select Package.swift
  4. Run the PM2GUI executable target

Or build/package from Terminal:

swift build
./scripts/package-macos-app.sh

Packaged outputs will be written to dist/.

Project Structure

  • Sources/: app source
  • Tests/: XCTest coverage
  • scripts/: packaging and icon generation scripts
  • Packaging/: app icon and packaging assets
  • docs/: architecture, MVP, status, and implementation notes

Current Scope

This project focuses on local PM2 workflows on macOS:

  • inspect PM2 processes
  • manage process lifecycle
  • view logs
  • diagnose local pm2 / node setup
  • package the app as .app and .dmg

Remote PM2 management is out of scope for now.

Notes

  • Packaging currently does not require code signing.
  • The app can auto-discover common PM2 install paths on macOS.
  • If PM2 or Node cannot be reached from the app environment, use the Settings page to inspect and adjust paths.

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages