Agent skills and CLI
Let Claude Code and Codex run your dev environment.
One click installs lpm's agent skills and the lpm command-line tool. From then on Claude Code, Codex, Gemini CLI, and OpenCode can start, stop, and restart your services, read dev-server logs, wait for a port, fan out into parallel copies, and hand work to each other through shared memory, with no per-project setup.
Install once, and every agent can drive your projects
No config to hand-write, no MCP server to run. Click a button in lpm and your AI coding agents gain a command-line tool for your dev environment.
One button, in Settings or the sidebar
A single button installs the agent skills and the lpm command-line tool together, from Settings or the Agent tools prompt in the sidebar. It shows Install, Update, or Installed, and is safe to click again anytime.
Just ask the agent
Ask Claude Code, Codex, Gemini CLI, or OpenCode to restart a server, read logs, or fan out, and it reaches for the lpm skill. Every lpm terminal knows its project, so the agent never has to name it and no per-project setup is needed.
Stays current automatically
Once you have opted in, updates refresh on their own. The skills go to Claude Code and to the shared agent-skills folder that Codex, Gemini CLI, and OpenCode read, and lpm copies them to SSH and Linux hosts too.
A command-line tool built for AI coding agents
The lpm skill teaches agents a small, predictable CLI, with agent-friendly exit codes and JSON output on nearly every command.
Start, stop, and restart services
Agents run lpm start, lpm stop, or lpm service api restart to bring a whole project or a single dev server up and down — no more asking you to bounce the server for them.
Read your dev-server logs
lpm logs frontend -n 200 hands the agent the recent output of any running service, so it can see the stack trace it just caused and fix it — instead of guessing.
Wait for readiness, not sleep loops
lpm wait --port 3000 blocks until a service is actually answering. The skill teaches agents to wait on readiness instead of burning turns on blind sleep loops.
Report and read live status
Claude Code, Codex, Gemini CLI and Cursor CLI report working, needs you, done, or problem on their own. Any other agent can post the same states with lpm set-status, and scripts read them back with lpm status.
Fan out into parallel copies
lpm duplicate clones a project into real standalone copies and queues the same prompt in each: the fan-out primitive for running several agents on the same task at once.
Set up projects for you
A second skill teaches agents to write and edit lpm project configs (services, actions, profiles, and shared team setups), so they can wire up a project’s services without your help.
Worktrees as well as copies
lpm worktree -n 3 makes linked Git worktrees, each on its own new branch, with the same --run and --prompt fan-out, for when you would rather merge branches than pick a folder.
See every skill an agent loads
⌘⇧K (Ctrl+Alt+Shift+K on Windows and Linux) lists the skills, MCP servers, and hooks Claude Code and Codex will load in a folder, and lets you write a new skill in a form. More on Claude Code and Codex skills.
Real commands your agents run
These are the commands the skill teaches. Project name is inferred from the terminal, so agents rarely have to name it.
# Every project, its running state, and active agents
lpm list --json
# One project's services, actions, and live status
lpm project myapp
# Live agent status across projects
lpm status# Start the whole project, or just one profile
lpm start myapp
lpm start myapp --profile backend
lpm stop myapp
# Restart a single dev server
lpm service api restart# Last 200 lines of a running service
lpm logs frontend -n 200
# Block until a port answers — no blind sleep loops
lpm wait --port 3000 --timeout 60# Open Claude Code in a new lpm terminal with a prompt
lpm run claude --prompt "fix the failing spec"
# Flag the project as waiting on you in the sidebar
lpm set-status review Waitingexit 0 successexit 2 not found / app not runningexit 1 error / timeout
Watch an agent drive lpm
Three real recordings — one prompt each, no per-project setup. Claude Code discovers the lpm CLI and does the rest.
Ask for a command — get it in a new terminal
The user asks Claude Code to show the last 10 git commits that touched the mobile app code in a new terminal. The agent picks up the lpm skill on its own, runs lpm run --command "git log -n 10 --oneline -- apps/native", and a fresh terminal tab opens in lpm with the output.
Spin up three agents in the same project
The user asks Claude Code to create three new tabs and run the claude action in each with a prompt. The agent drives the lpm CLI, and three new Claude tabs appear in the same project — each one already working on the prompt.
Fan out into three project copies
The user asks Claude Code to create three duplicates and run the claude action in each. The agent runs lpm duplicate -n 3 --run claude --prompt "…" — three grouped copies appear in the sidebar, each with its own Claude running, and the agent verifies the result with the CLI.
A self-healing loop, without you in it
What changes when the agent can see and control the same services you can.
It breaks the API, reads the logs, and fixes itself
An agent edits a route and the API starts throwing 500s. Instead of stopping to ask you, it runs lpm logs api -n 200, reads the stack trace it just caused, patches the bug, and calls lpm service api restart. Then lpm wait --port 8000 blocks until the server answers again — so the next step never runs against a dead service.
It waits for readiness instead of guessing
After a fresh lpm start, the skill tells the agent to run lpm wait --service frontend rather than sleeping for an arbitrary number of seconds. It moves on the instant the dev server is up, and never wastes a turn checking a port that was never going to be ready yet.
You always know what it is doing
Claude Code, Codex, Gemini CLI and Cursor CLI report their state to lpm on their own: working, needs you, done, or problem. When one needs your permission or input, its tab and sidebar row stay amber until the agent moves on, so nothing gets lost in a wall of terminals. Any other agent can post its own progress with lpm set-status, and you read it all at a glance.
Run three agents on the same task at once
Duplicate is the fan-out primitive: spin up to 50 standalone copies, each running the same prompt, and pick the winner.
# Clone into 3 copies and run the same prompt in each
lpm duplicate -n 3 --run claude \
--prompt "make the checkout flow pass its tests"
# Block until a copy's agent settles (names come from the output above)
lpm wait myapp-k7q2xm --agent
# Keep the winner, remove the rest
lpm remove myapp-3fz8taFan out
lpm duplicate -n 3makes three real, standalone copies of the project (a fast copy-on-write clone on Apple’s filesystem), lists them under the original in the sidebar, and queues the same agent and prompt in each. Prefer branches?lpm worktreetakes the same flags and makes linked Git worktrees instead.Let them race
Three agents attack the same task in parallel, each in its own copy with its own files, terminals, and services.
lpm wait <copy> --agentblocks on each copy until its agent has finished, with no polling loops.Keep the best, clean up
Compare the results, keep the copy you like, and
lpm removetidies up the rest. Copies are ordinary folders, with nothing to unwind and no shared state to untangle.
Hand work from Claude Code to Codex, and back
A third skill, lpm-memory, gives every agent the same per-project notebook. Stop in one CLI, continue in another, and nobody starts from zero.
# Auth refactor
## Goal
Move sessions from cookies to signed tokens.
## Current state
Token issuing works; refresh flow is next.
Blocked on the mobile client's token storage.
## Timeline
### 2026-09-22 09:40 — claude
- Done: issue and verify tokens in the API
- Next: refresh endpoint
### 2026-09-23 14:05 — codex
- Done: refresh endpoint and tests
- Open: where the mobile app keeps the tokenRemember
Ask Claude Code to remember the session, or pick Remember this conversation from the prompt box's Memory button. The agent saves a named session with the goal, where things stand, and a timeline.
Hand off
Open Codex, Gemini CLI, or OpenCode tomorrow and ask it to continue the auth-refactor session; in Claude Code,
/lpm-memory auth-refactordoes the same. It reads the current state first and picks up the next step.Keep it tidy
⌘⇧M (Ctrl+Alt+Shift+M on Windows and Linux) opens the Memory tab to browse, edit, rename, or delete sessions. Copies and worktrees share their original's memory, so a parallel run can report back to the same session.
Memory is read only when you ask for it, so nothing is added to every session on its own. Sessions stay on your computer, separate from each CLI's built-in memory, and are available for local projects.
Connecting agents to your dev environment
Can Claude Code restart my dev server?
Yes. Once the lpm skill and CLI are installed, Claude Code can run lpm service <name> restart to bounce a single dev server, or lpm start / lpm stop for the whole project — then lpm wait to block until it is ready again.Which AI coding agents does this work with?
Claude Code, Codex, Gemini CLI, and OpenCode. The skill is installed both for Claude Code and for the open agent-skills directory that Codex, Gemini CLI, and OpenCode read, so the same lpm commands work across all of them.Do I need MCP to connect agents to lpm?
No. Agents drive lpm through a normal command-line tool. One click in Settings installs the skill and the lpm CLI together — there is no server to run and no MCP configuration.How does an agent know it is inside an lpm project?
Every terminal inside lpm is tagged with the project it belongs to. Ask the agent to restart a server, read logs, or fan out, and it reaches for the lpm skill; the tag then lets it leave out the project name. No per-project setup is needed.Can I invoke the skill manually?
Yes. Type /lpm in Claude Code, or ask any other agent to use the lpm skill, to load both lpm skills at once: project control and config editing. It's useful in a terminal outside lpm, or whenever you want the skill in explicitly instead of waiting for the agent to pick it up.Can I run multiple AI agents in parallel on copies of a project?
Yes. lpm duplicate clones a project into real standalone copies (up to 50) and can queue the same agent and prompt in each; lpm worktree does the same with linked Git worktrees. lpm wait <copy> --agent blocks on a copy until its agent finishes, and lpm remove cleans up the copies you do not keep.Should an agent call lpm duplicate or lpm worktree?
Reach for lpm duplicate if the agent must see your working state: node_modules, .env files and uncommitted edits come along, and flags can drop the edits or reinstall dependencies. Use lpm worktree when committed code is enough: it branches off your current commit, costs little disk and merges back easily, but ignored and uncommitted files are missing.Can Claude Code and Codex share context?
Yes, through the lpm-memory skill. An agent saves a named work session with its goal, current state, and a timeline, and any other agent can continue it by name, for example /lpm-memory auth-refactor. Memory is read only when you ask for it and lives on your computer, per project.Can I manage automations from the command line?
Yes. lpm automations lists your scheduled agent jobs, runs or stops one, pauses or resumes its schedule, prints its history or live output, and replies to an AI automation's conversation. Creating and editing jobs happens in the app, and the bundled skills don't cover automations, so tell an agent about these commands if you want it to use them.Can agents read my dev-server logs?
Yes. lpm logs <service> returns the recent output of any running service, so an agent can see the error it just caused and fix it. Nearly every command also supports --json for structured output, and exit codes are agent-friendly.Does this run on Windows or Linux?
Yes. Besides macOS, the desktop app is in beta for Windows 11 (x64) and for 64-bit x86 Linux (.deb, .rpm and AppImage). On Windows, install Git for Windows first, since lpm runs terminals, services and agents through Git Bash. The lpm command-line tool and the agent skills work the same on all three. A Linux server can also be an lpm host: the same lpm runs headless on an x86_64 server with Ubuntu 22.04 or newer (glibc 2.35+), and you add it from the desktop app by typing user@host in Settings → Connections. That server's projects, terminals and agents then appear in your sidebar, and the lpm command-line tool is installed there too.
Keep reading
Claude Code & Codex skills
See every skill, MCP server, and hook an agent loads, and write your own skills in a form.
Best terminal for Claude Code and Codex
Which Claude Code or Codex session is working, which needs you, and how much plan is left, from the sidebar.
Run Claude Code in parallel
One prompt, several copies of the project, and the best answer kept.
Schedule Claude Code tasks
Put agent prompts on a timer, working in place or in a separate copy you review afterwards.
Configuration reference
Every project config field agents can write: services, actions, terminals, and profiles.
Run Claude Code on a remote server
The same skills and CLI on a Linux box you own, so a long agent run outlives your laptop.
Download lpm.
Hand your agents the keys.
One click installs the skills and the CLI. Claude Code, Codex, Gemini CLI, and OpenCode can run your dev environment from there.