Skip to content
DocsGlobal config

Global config

Some things aren’t tied to any one codebase — system maintenance, utilities, your favorite agent. Put those in ~/.lpm/global.yml and they show up in every project automatically. If a project defines an action with the same key, the project-level entry wins. Edit it from Settings → Global config, or the Global tab of any project’s config editor.

What a fresh install starts with. On a fresh install, lpm writes a global.yml with two terminal actions, claude and codex, so Claude Code and Codex are one click away in every project. Edit or remove them like any other entry. A minimal file of your own might add a Docker cleanup and a system monitor — notice there’s no name or root:

~/.lpm/global.ymlvalid
actions:
  docker-prune:
    cmd: docker system prune -f
    label: Docker Prune
    confirm: true             # asks before wiping images and caches

  htop:
    cmd: htop                 # live system monitor, one click away
    type: terminal

System-wide utilities. A fuller example: prune merged git branches, upgrade Homebrew, and keep a few system monitors one click away. These all live above individual projects — click them from any project and they just work.

~/.lpm/global.ymlvalid
actions:
  prune-branches:
    cmd: git branch --merged main | grep -v main | xargs git branch -d
    label: Prune merged branches
    confirm: true             # deletes local branches — ask first
  brew-upgrade:
    cmd: brew update && brew upgrade
    label: Brew upgrade       # keep Homebrew packages fresh

  htop:
    cmd: htop                 # live CPU and memory
    type: terminal
  btop:
    cmd: btop                 # prettier process viewer
    type: terminal
  ncdu:
    cmd: ncdu ~               # explore what's eating your disk
    type: terminal

What global config can hold

actions (including type: terminal shells), zones, and extends. No services or profiles: long-running processes and profile groupings always belong to a specific project, so they live in a project file or its .lpm.yml.

You may also see a jobs section here or in .lpm.yml. It holds automations, which you create and edit from the app’s Automations view, so leave it as it is.