Advanced Commands
OSGi runtime
ldev osgi status com.acme.foo.web
ldev osgi diag com.acme.foo.web
ldev osgi thread-dump --count 6 --interval 3
ldev osgi heap-dump
ldev osgi gogostatus <bundle>/diag <bundle>— inspect a bundle symbolic namegogo— open an interactive Gogo Shell sessionthread-dump— collect one or more thread dumpsheap-dump— generate a heap dump
Worktrees
Create an isolated git worktree and (optionally) prepare its local env.
ldev worktree setup --name incident-123 --with-env
ldev worktree setup --name feature-x --base origin/main --with-env
ldev worktree setup --name feature-x --with-env --stop-main-for-clone
ldev worktree setup --name feature-x --with-env --stop-main-for-clone --restart-main-after-clone
cd .worktrees/feature-x
ldev worktree setup --with-env
cd .worktrees/incident-123
ldev start
ldev worktree start incident-123
ldev worktree env --name incident-123
ldev worktree list
ldev worktree status incident-123
ldev worktree clean incident-123 --force
ldev worktree clean incident-123 --force --delete-branch
ldev worktree gc --days 14
ldev worktree gc --days 14 --applysetup— create or reuse a worktree;--nameis optional when running inside the target worktreesetupprefers.worktrees/<name>for managed worktrees, but can also reuse a registered external linked worktree whose checkout folder matches<name>setup --stop-main-for-clone— opt-in: stop main automatically when a non-Btrfs clone needs exclusive accesssetup --restart-main-after-clone— opt-in: after an automatic stop, start main again without waiting for full portal readinessstart— prepare and start the worktree's local envenv— prepare or inspect the worktree's local env wiringlist— show registered worktrees with Compose project, runtime status and portsstatus— inspect one worktree without relying on generic port scansclean— destructive; requires--force; optionally deletesfix/<name>branchgc— preview (default) or--applyremoval of stale worktrees older than--days
Dashboard
Open a local browser dashboard for worktree and environment operations.
ldev dashboard
ldev dashboard --port 4242 --no-open- shows worktree inventory, recent commits, changed files, ahead/behind state, and env status
- queues long-running actions into a live activity rail instead of blocking the terminal
- exposes guided flows for diagnose, deploy status, DB tools, maintenance preview, and resource export
- is best used as a local operational console; the CLI remains the canonical automation surface
BTRFS snapshots (Linux)
On Linux with BTRFS filesystems, ldev uses subvolume snapshots to accelerate worktree environment creation.
ldev worktree btrfs-refresh-baseRe-seeds BTRFS_BASE from the current main env data root. env restore uses this as the source when available.
MCP
Inspect Liferay MCP availability and local ldev MCP client configuration.
ldev mcp check --json
ldev mcp probe --json
ldev mcp openapis --json
ldev mcp doctor --target . --tool allcheck— detect endpoint candidates and feature flag stateprobe— run a real MCP initialize handshakeopenapis— call the MCPget-openapistool after initializedoctor— validate local editor MCP config and run the stdio list-tools handshake
Auth options (check, probe, openapis):
ldev mcp probe --authorization-header 'Basic ...'
ldev mcp probe --username admin --password '***'Environment fallbacks: LIFERAY_MCP_AUTHORIZATION_HEADER, LIFERAY_MCP_USERNAME, LIFERAY_MCP_PASSWORD.
Reindex
Inspect or temporarily tune portal reindex execution.
ldev portal reindex status
ldev portal reindex watch --interval 5 --iterations 60
ldev portal reindex tasks
ldev portal reindex speedup-on
ldev portal reindex speedup-offspeedup-on sets refresh_interval=-1 while a reindex is running; speedup-off restores it to 1s.
Search
Direct Elasticsearch inspection, broader than portal reindex status.
ldev portal search indices
ldev portal search mappings --index liferay-0
ldev portal search query --index liferay-0 --query '*'
ldev portal search query --index liferay-0 --body '{"query":{"match_all":{}}}'Page layout
Export and diff content pages.
ldev portal page-layout export --url /web/guest/home --output pages/home.json
ldev portal page-layout diff --url /web/guest/home --file pages/home.json
ldev portal page-layout diff --url /web/guest/home --reference-url /web/guest/home-candidatediff exits with code 1 when pages differ, for use in pipelines.
Theme check
Validate Clay icon coverage for a deployed theme.
ldev portal theme-check --theme ub-theme --json