pulseos
v1.0.4
Published
Official CLI for PulseOS - Lightweight Monorepo VPS Monitor
Readme
PulseOS CLI
The official command-line interface for PulseOS — a lightweight, self-hosted monorepo VPS monitoring solution. Automate installation, configuration, and safe upgrades of PulseOS monitoring instances on Linux servers and VPS.
Prerequisites
| Requirement | Minimum Version | |-------------|-----------------| | Node.js | ≥ 18.x | | npm | ≥ 9.x | | Git | any recent |
Install Git on Debian/Ubuntu:
sudo apt install gitNote: Root or
sudoaccess may be required depending on your target directory permissions and whether you intend to monitor Docker containers.
Installation
Global install (recommended)
npm install -g pulseosIf you encounter permission errors, prefix with sudo:
sudo npm install -g pulseosRun without installing
npx pulseos <command>Command Reference
| Command | Description |
|--------------------|------------------------------------------------------------------------------|
| pulseos init | Interactive wizard to set up a fresh PulseOS deployment. |
| pulseos update | Pull the latest patches and rebuild — preserving your SQLite database. |
| pulseos --version| Print the installed CLI version. |
| pulseos --help | Display usage instructions and available options. |
pulseos init
Launches an interactive setup wizard that prompts for:
- Installation folder name (default:
pulseos-app) - Backend API port (default:
3001) - Public API URL (auto-derived from the API port)
- Astro web frontend origin (default:
http://localhost:4321) - Primary admin username and password
Then performs the following automatically:
- Clone the PulseOS monorepo (
AkyasMahira/PulseOS.git) - Create the SQLite database directory (
apps/api/data/) - Generate a cryptographically secure 32‑byte JWT secret
- Write the root
.envandapps/web/.envfiles - Run
npm installin the cloned repository - Execute a sequential production build (types → api → web)
When the wizard completes, you are ready to start the monitoring backend.
pulseos update
Run inside an existing PulseOS installation root to safely upgrade:
- Validate the current directory contains
apps/apiandapps/web - Create a timestamped backup of
apps/api/data/pulseos.dbunder./backups/ - Stash any local changes, pull
origin main, then re‑apply the stash - Synchronize dependencies (
npm install) - Rebuild the monorepo (
npm run build)
Restart your backend process or PM2 instance afterwards to apply the changes.
Post‑Installation — Production Deployment
To keep the monitoring backend running persistently, use PM2:
cd pulseos-app
npm install -g pm2
pm2 start apps/api/dist/index.js --name "pulseos-backend"Useful PM2 commands:
pm2 status # view running processes
pm2 logs pulseos-backend # tail application logs
pm2 save # save the process list for resurrection
pm2 startup # auto‑start PM2 on system bootAuthors
Akyas Mahira — @AkyasMahira
