
Helmor Cli
- 1.8k installs
- 1.3k repo stars
- Updated August 4, 2026
- dohooo/helmor
helmor-cli is an agent skill for Use the Helmor CLI to remote-control Helmor from the terminal. Use when the user asks to inspect Helmor data/settings, m
About
The helmor-cli skill Use the Helmor CLI to remote-control Helmor from the terminal. Use when the user asks to inspect Helmor data/settings, manage repositories/workspaces/sessions/files, send prompts to agents, list models, use GitHub integration, inspect scripts, migrate from Conductor, run Helmor as an MCP server, generate shell completions, quit a running app, check/install/update the Helmor CLI beta, install/update Helmor skills through the beta app flow, or needs the Helmor command reference. Also plan and build a large change as a stack of dependent PRs /helmor-cli stack , split a change you've already written into a stack /helmor-cli break , and re-sync a stack after lower layers change or merge /helmor-cli restack . It covers restack - re-sync a PR stack after a lower layer changed or merged. Follow references/restack.md . This is what the composer's Restack button sends.. Key workflows include stack - plan and build a large change as a stack of dependent PRs. Follow references/stacked-pr.md .. Developers invoke helmor-cli when the task matches the triggers and reference files in
- restack - re-sync a PR stack after a lower layer changed or merged. Follow references/restack.md . This is what the co
- stack - plan and build a large change as a stack of dependent PRs. Follow references/stacked-pr.md .
- Anything else or no argument - an ordinary Helmor CLI task; use the binary-name guidance and command reference below.
- Release builds : invoke commands as helmor <subcommand .
- If you're a human at a terminal , run <your-worktree /src-tauri/target/debug/helmor-cli <subcommand or whatever path you
Helmor Cli by the numbers
- 1,817 all-time installs (skills.sh)
- +28 installs in the week ending Aug 5, 2026 (Skillselion tracking)
- Ranked #265 of 2,245 Frontend Development skills by installs in the Skillselion catalog
- Security screen: LOW risk (skills.sh audit)
- Data as of Aug 5, 2026 (Skillselion catalog sync)
helmor-cli capabilities & compatibility
- Capabilities
- restack re sync a pr stack after a lower layer · stack plan and build a large change as a stack · anything else or no argument an ordinary helmo · release builds : invoke commands as helmor <subc · if you're a human at a terminal , run <your work
- Use cases
- documentation
What helmor-cli says it does
Use this skill to guide simple terminal-first Helmor workflows. Keep the answer practical: prefer one or two concrete commands over a long CLI tutorial.
npx skills add https://github.com/dohooo/helmor --skill helmor-cliAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 1.8k |
|---|---|
| repo stars | ★ 1.3k |
| Security audit | 2 / 3 scanners passed |
| Last updated | August 4, 2026 |
| Repository | dohooo/helmor ↗ |
What problem does helmor-cli solve for developers using the documented workflows?
Use the Helmor CLI to remote-control Helmor from the terminal. Use when the user asks to inspect Helmor data/settings, manage repositories/workspaces/sessions/files, send prompts to agents, list model
Who is it for?
Developers working with helmor-cli patterns described in the skill documentation.
Skip if: Skip when docs are empty or the task is outside the skill documented scope.
When should I use this skill?
Use when Use the Helmor CLI to remote-control Helmor from the terminal. Use when the user asks to inspect Helmor data/settings, manage repositories/workspaces/sessions/files, send prompts t
What you get
Actionable helmor-cli guidance grounded in SKILL.md workflows and reference files.
- nested PR stack
- per-slice workspaces
Files
Helmor CLI
Use this skill to guide simple terminal-first Helmor workflows. Keep the answer practical: prefer one or two concrete commands over a long CLI tutorial.
Command Routing
Route by the first word after /helmor-cli:
restack— re-sync a PR stack after a lower layer changed or merged. Followreferences/restack.md. (This is what the composer's Restack button sends.)stack— plan and build a large change as a stack of dependent PRs. Followreferences/stacked-pr.md.break— split the change you've ALREADY written in the current workspace into a stack of smaller dependent PRs, confirming the slicing granularity with the user first. Followreferences/break.md.- Anything else (or no argument) — an ordinary Helmor CLI task; use the binary-name guidance and command reference below.
Binary Name (Release vs Dev)
Examples below use the literal name helmor — the binary a release user has on their PATH.
- Release builds: invoke commands as
helmor <subcommand>. - Dev builds: do NOT assume
helmor-devis on PATH. Under Helmor's worktree-based dev workflow every worktree has its owntarget/debug/helmor-cli, and a shared/usr/local/bin/helmor-devsymlink (if it exists) can only point at one of them. Instead: - If you're an agent running inside Helmor, the system prompt has already handed you the exact CLI invocation to use (typically an absolute path like
<worktree>/src-tauri/target/debug/helmor-cli). Call it verbatim — don't re-verify withwhich/file/--version. - If you're a human at a terminal, run
<your-worktree>/src-tauri/target/debug/helmor-cli <subcommand>(or whatever path your active Helmor build uses).
The rest of every command shape is identical regardless of build.
First Checks
1. Check whether the CLI is installed and which data mode it targets:
helmor cli-status2. Check the active data directory and database:
helmor dataUse --json when the output will be parsed by scripts or another tool.
CLI Install And Update
Treat Helmor CLI install/update as beta.
- Prefer the Helmor desktop onboarding/settings Components panel for installing or repairing the managed CLI entrypoint.
- Use
helmor cli-statusto verify whether the PATH entry points at the current app-managed CLI. - Do not invent a stable standalone install/update command unless it exists in
helmor --helpor a subcommand help page. - If the user is blocked, ask them to run
helmor cli-statusand share the output, or inspect the app's Components panel if working inside the Helmor repo.
Helmor Skills Install And Update
Treat Helmor skills install/update as a beta app-managed flow.
- Prefer the Helmor desktop onboarding/settings Components panel for installing or updating bundled Helmor skills.
- Do not invent a
helmor skillscommand; the top-level CLI help does not currently expose one. - If the user asks to update a bundled Helmor skill inside the repo, edit the skill files directly and validate them with the skill validation tooling.
- Keep user-facing skill content concise and English-first unless the user explicitly asks for another language.
Common Tasks
Manage Repositories And Workspaces
Use these command groups for local-first project setup and workspace orchestration:
helmor repo --help
helmor workspace --helpWhen creating workspaces, prefer explicit repo names and concise purpose labels:
helmor workspace new --repo helmorInspect Sessions And Files
Use sessions for conversation history and files for editor-surface operations:
helmor session --help
helmor files --helpSend A Prompt To An Agent
Use send when the user wants to dispatch work from the terminal:
helmor send --helpFavor JSON output for automation:
helmor --json send --helpIntegrations And Local Tooling
Use the relevant command group:
helmor github --help
helmor scripts --help
helmor models --helpMCP Server
Run Helmor as an MCP server over stdio:
helmor mcpUse this when another agent/runtime needs to call Helmor through Model Context Protocol.
Command Reference
Read references/helmor-help.md when you need the full top-level helmor --help command list.
For exact flags on a command group, run the group's help instead of guessing:
helmor <command> --helpinterface:
display_name: "Helmor CLI"
short_description: "Use Helmor from the terminal."
default_prompt: "Use the Helmor CLI to inspect data, manage workspaces, send prompts, or run Helmor as an MCP server."
/helmor-cli break — split an existing change into a stack
break is the mirror of stack: instead of planning a stack from scratch, it takes the change you've already written in the current workspace and carves it into a stack of small, dependent PRs — confirming the slicing granularity with the user before committing to anything. The output is the normal stack: one workspace + PR per slice, nested in the sidebar.
Input: the current workspace's full diff vs its base branch. The current workspace becomes the stack's root, so capture a recovery ref before you rewrite anything:
git commit -am "WIP: snapshot before break" # only if the working tree is dirty
ORIG=$(git rev-parse HEAD) # the full change you're slicing
git branch helmor/break-backup "$ORIG" # named recovery pointSource every slice below from $ORIG (not the branch name) — once the root is reset, the branch no longer points at the full change.
Workflow
1. Analyze the diff
git diff --name-status <base>...(<base> is the workspace's target branch, e.g. origin/main — the system prompt tells you which.) Read the changed files and their add/modify/delete status, and group them by concern (schema/data, backend/API, UI, tests, docs…).
2. Propose a slicing
Build a dependency-ordered list of slices (bottom depends on nothing new; top depends on everything below), e.g. db → api → ui. For each slice give: a title, the files it contains, and the one-line reason it depends on the slice below. Show the full proposal.
3. Confirm granularity WITH the user — the point of break
Do NOT auto-split. Present the proposal and let the user steer the granularity with structured choices:
- Approve as-is.
- Coarser — merge two adjacent slices.
- Finer — split a slice (e.g. pull tests into their own layer).
- Move a file — reassign a file to a different slice.
- Reorder — fix the dependency order.
Loop until the user approves. Also proactively ask about ambiguous files — a single file whose changes span concerns (e.g. utils.ts with both schema and UI helpers): keep it whole in one slice, or flag it for a manual hunk-level split (out of scope for v1 — see Limits).
4. Materialize the stack (bottom-up) — your current workspace becomes the root
The workspace you're in becomes the bottom layer; only the higher layers are new workspaces. No throwaway launchpad, nothing to delete afterward.
For each slice K, from the bottom up:
1. Get the layer's workspace:
- bottom slice (root) = your current workspace — reset it onto the base and
rebuild it as slice 1 only:
git reset --hard <base> # e.g. origin/main — the slicing base
git checkout "$ORIG" -- <slice-1 added/modified files>
git rm <slice-1 deleted files> # if any
git commit -m "<slice 1 title>"- every higher slice:
helmor workspace new --parent <slice K-1 workspace>
(the first higher layer's --parent is your current workspace). 2. Apply only slice K's files onto that layer (it already contains slices 1..K-1 because it forked off the layer below), sourcing from $ORIG:
- added / modified files:
git checkout "$ORIG" -- <files> - deleted files:
git rm <files> - then commit with the slice title.
Drive each higher layer with a focused dispatch so it works inside its own worktree (pass $ORIG's SHA explicitly; helmor/break-backup resolves it too):
helmor send --workspace <id> --plan "Apply ONLY these files from <ORIG-sha>: <list>. \
Added/modified: git checkout <ORIG-sha> -- <files>. Deleted: git rm <files>. \
Commit as '<title>'. Do not touch anything else."Result: layer K = base + slices 1..K (cumulative); the top layer reproduces the original change exactly.
5. Verify lossless
The stack must reproduce the original exactly:
git diff "$ORIG" <top-layer-branch>This must be empty. Empty = the top of the stack has the same tree as the original → nothing was dropped or duplicated. If it is not empty, STOP and report the difference — and restore the root with git reset --hard helmor/break-backup.
6. Hand off
Your current workspace is now the stack's root; the higher layers are the only new workspaces (helmor workspace stack <top> shows the chain; the sidebar nests them). Open PRs bottom-up. Consider retitling the root to its slice-1 title. Once you've confirmed the split is faithful, the recovery branch is yours to keep or drop (git branch -D helmor/break-backup).
Limits (v1)
- File-level slices only: a file goes wholesale into one slice. Splitting a
single file's changes across slices (hunk-level) isn't supported yet — flag such files in step 3 and keep them in one slice.
- Slices must partition all changed files; the step-5 lossless check
enforces it.
- Root = your current workspace: its branch is rewritten in place to become
slice 1. The full change stays recoverable at helmor/break-backup (and is reproduced at the stack tip + checked in step 5), so it's safe — but unlike a fresh-stack build, the starting branch is rewritten. Higher layers are new workspaces.
Helmor CLI Top-Level Help
Captured from helmor --help.
Remote-control Helmor from the terminal. Works against the same SQLite database the desktop app uses — run commands even while the app is running.
Usage: helmor [OPTIONS] <COMMAND>
Commands:
data Data directory, database, and mode info
settings App settings stored in `settings` table
repo Repository registration and configuration
workspace Workspace CRUD, branching, syncing, archiving
session Session CRUD and inspection
files File listing, reading, writing, staging (editor surface)
send Send a prompt to an AI agent
models List available AI models
github GitHub integration — auth, PR lookup, merge
scripts Inspect repo-level setup/run/archive scripts
conductor Migrate from Helmor v1 (Conductor)
completions Shell completion scripts
cli-status Report whether the current Helmor CLI entrypoint is installed to PATH and which data mode it uses
quit Ask a running Helmor app to quit (noop when it isn't running)
mcp Run as an MCP (Model Context Protocol) server over stdio
help Print this message or the help of the given subcommand(s)
Options:
--json
Emit JSON instead of human-friendly text
--quiet
Reduce output to IDs / nothing. Useful for scripting
--data-dir <DIR>
Override the data directory (default: ~/helmor or ~/helmor-dev)
-h, --help
Print help (see a summary with '-h')
-V, --version
Print version/helmor-cli restack — re-sync a PR stack after lower layers changed
Restack propagates changes up a stack: after a lower layer gets new commits (or merges), every layer above it is out of date and must pull the new base. This is the "brain" behind the composer's Restack button (it appears on a stack tip and sends /helmor-cli restack).
In Helmor each layer's target branch is its parent's branch, so restacking = syncing each layer with its parent, bottom-up. v1 is merge-based — no rebase, no force-push — matching helmor workspace sync.
Workflow
1. Map the stack
Run helmor workspace stack <current-workspace-ref> (add --json to parse) to see the full chain root → tip: each layer's branch, target, PR, and status. You're typically invoked from the tip.
2. Sync bottom-up
Walk the chain from the bottom up (skip the root — its base is main, not another layer). For each layer in order:
1. If the layer below has local commits the child still needs on its remote, push it first: helmor workspace push <lower-ref>. 2. Pull the parent's latest into this layer: helmor workspace sync <this-ref> — merges this layer's target (its parent's branch) in.
sync reports an outcome: Updated, AlreadyUpToDate, Conflict, or StashPopConflict.
3. Stop on conflict
If any sync reports a conflict, STOP. Tell the user which layer conflicted and the files involved — do not try to auto-resolve. Let them resolve in that workspace, then re-run /helmor-cli restack.
4. Report
Summarize per layer (synced / already up to date / conflicted) and name the next layer to review.
Notes
- Restack is manual for now (the button or this command). Automatic restack-on-merge is a planned Helmor feature.
- Never rebase or force-push in v1 — stay merge-based via
helmor workspace sync. - When the bottom PR merges into
main, the next layer should re-targetmainbefore syncing:helmor workspace target-branch set <ref> main, thenhelmor workspace sync <ref>. - Stop for the user before any risky git operation (dirty worktrees, multi-branch pushes, conflict resolution).
Stack spec — format & canonical diagram
The stacked-pr skill renders its diagram from a JSON stack spec via scripts/render_stack.py. The renderer derives all column widths from the data, so every stack comes out in the same shape. Do not hand-draw the diagram — always render through the script so output is byte-for-byte consistent.
Spec shape
Layers are ordered tip → root — the newest PR (top of the stack) first, the base-most PR last.
{
"name": "dark-mode",
"repo": "helmor/uranus",
"base": "main",
"layers": [
{"pr": "483", "title": "feat: dark mode toggle", "state": "draft", "ws": "dark-mode-ui"},
{"pr": "482", "title": "feat: persist theme pref", "state": "open", "ws": "dark-mode-api"},
{"pr": "481", "title": "feat: add theme column", "state": "merged", "ws": "dark-mode-schema"}
]
}| Field | Meaning |
|---|---|
name | Short stack name (e.g. the feature). |
repo | owner/name slug, shown in the header. |
base | The branch the bottom of the stack targets (usually main). |
layers[] | Ordered tip → root. |
layers[].pr | PR number as a string. Empty/omitted = no PR opened yet (lazy growth) → renders as —. |
layers[].title | The PR / commit title. |
layers[].state | One of merged · open · draft · closed · none. |
layers[].ws | The Helmor workspace (directory) name for this layer. |
The base ◂ pointer for each layer is derived: it points at the PR of the layer immediately below, and the bottom layer points at base. The ← HEAD marker is always on layers[0] (the tip).
State glyphs (legend)
| Glyph | State |
|---|---|
✓ | merged |
◉ | open or draft (has a live PR) |
✕ | closed |
○ | no PR opened yet |
Canonical output (style A)
Running the spec above produces exactly:
stack: dark-mode · helmor/uranus · 3 PRs
◉ #483 feat: dark mode toggle draft ← HEAD
│ └ ws: dark-mode-ui base ◂ #482
│
◉ #482 feat: persist theme pref open
│ └ ws: dark-mode-api base ◂ #481
│
✓ #481 feat: add theme column merged
│ └ ws: dark-mode-schema base ◂ main
┴ mainRead it top-down: the tip (#483, newest) is on top and sorts into the sidebar normally; each lower PR is the base of the one above it; main is the stack's foundation at the bottom. This is the textual twin of how the Helmor sidebar groups the stack's workspaces.
/helmor-cli stack — plan & build a stacked PR
Turn a large change into a stack of small, dependent PRs — each PR builds on the one below instead of all branching from main. This keeps every PR small and reviewable while you keep moving, without waiting for the previous one to merge.
In Helmor a stack is a chain of workspaces: one workspace = one branch = one PR, linked by parentWorkspaceId. The sidebar groups a stack's workspaces together (tip on top, base at the bottom); gh pr create --base automatically targets the parent branch.
Workflow
1. Investigate prior art FIRST
Before proposing a stack, check whether related work already exists, so you extend it instead of duplicating it.
helmor workspace list --json— scan open workspaces for related branches or an in-flight stack (rows in the same repo, or already linked by a parent).helmor workspace stack <ref>— if a candidate is already stacked, see its whole chain.helmor workspace show <ref>— inspect a candidate's branch, target, and PR.gh pr list/ search the repo — find related open PRs and code.
Report what you found in one line, e.g. "you already have open PR #481 adding the schema column — the stack can start on top of it" — that beats starting from scratch.
2. Decompose into an ordered stack
Break the task into the smallest sequence of PRs where each depends only on the ones below it. Order bottom-up by dependency, e.g. data/schema → backend → UI. For each layer, state the one-line reason it depends on the layer below.
3. Render the plan — always, deterministically
Always render through the bundled script so the diagram is byte-for-byte identical every time — never hand-draw the ASCII. Two sources, one renderer:
- From a stack that already exists (workspaces are created): pipe the live data straight through —
helmor workspace stack <ref> --json | python3 scripts/render_stack.py -- From a plan you're proposing (nothing created yet): build a JSON stack spec (see
references/stack-spec.md, layers ordered tip → root) and render it —
python3 scripts/render_stack.py /path/to/spec.json(Sanity-check the renderer any time with python3 scripts/render_stack.py --selfcheck.) Show the rendered stack to the user before creating anything.
4. Grow the stack lazily — one layer at a time
Do not create every workspace up front (you'll guess the decomposition wrong before you've learned anything). Create the bottom layer, build it, then grow upward as each layer stabilizes:
- Bottom of the stack = your current workspace (the one you're running in). It already targets the repo's default branch, so build the first layer's change directly here — do NOT spin up a separate
--repoworkspace for the base. The workspace you started from becomes the stack's root, instead of being left behind as an empty launchpad to delete later. - Each higher layer (forks off the layer below; its PR targets the parent):
helmor workspace new --parent <lower-workspace-ref>— the first higher layer's<lower-workspace-ref>is your current workspace.
--parent records parentWorkspaceId and materializes the child's target branch to the parent's branch — so the sidebar nests the stack and gh pr create --base targets the parent with no extra steps. The child forks off the parent's branch tip (published origin/<branch> if pushed, else the local tip), so you can stack before pushing.
5. Ship bottom-up
Ship and merge the bottom PR first. After a lower layer changes or merges, re-sync the layers above it with /helmor-cli restack (see references/restack.md).
Notes
- Keep each PR small and independently reviewable — that's the whole point of stacking.
- The diagram from step 3 is the textual twin of the sidebar's stack grouping — same order (tip on top, base at the bottom). Keep them consistent by always rendering through the script.
- A stack is single-repo: every layer lives in the same repository as its parent.
#!/usr/bin/env python3
"""Deterministic renderer for the Helmor stacked-PR diagram (canonical style A).
The stacked-pr skill builds a JSON "stack spec" and pipes it through this
script so the diagram is byte-for-byte identical every time — never hand-drawn
by the model. Column widths are derived from the data, so any stack renders in
the same shape.
Usage:
python3 render_stack.py spec.json # render a spec file
python3 render_stack.py - # render a spec from stdin
python3 render_stack.py --selfcheck # verify the canonical sample
Spec shape (layers ordered tip -> root, i.e. newest PR first):
{
"name": "dark-mode",
"repo": "helmor/uranus",
"base": "main",
"layers": [
{"pr": "483", "title": "feat: dark mode toggle", "state": "draft", "ws": "dark-mode-ui"},
{"pr": "482", "title": "feat: persist theme pref", "state": "open", "ws": "dark-mode-api"},
{"pr": "481", "title": "feat: add theme column", "state": "merged", "ws": "dark-mode-schema"}
]
}
`pr` may be empty for a layer whose PR hasn't been opened yet (lazy growth).
"""
import json
import sys
# State glyph legend (matches the locked canonical style A):
# ✓ merged ◉ open / draft (has a live PR) ✕ closed ○ no PR yet
GLYPH = {
"merged": "✓",
"open": "◉",
"draft": "◉",
"closed": "✕",
"none": "○",
"": "○",
}
def render(spec):
layers = spec.get("layers", [])
base = str(spec.get("base", "main"))
name = str(spec.get("name", "stack"))
repo = str(spec.get("repo", ""))
n = len(layers)
def pr_str(layer):
pr = str(layer.get("pr") or "")
return ("#" + pr) if pr else "—"
prw = max((len(pr_str(l)) for l in layers), default=2)
titlew = max((len(str(l.get("title", ""))) for l in layers), default=0) + 4
wsw = max((len(str(l.get("ws", ""))) for l in layers), default=0) + 2
lines = []
header = f"stack: {name}"
meta = " · ".join(
part for part in (repo, f"{n} PR" + ("s" if n != 1 else "")) if part
)
if meta:
header += " · " + meta
lines.append(header)
lines.append("")
for i, layer in enumerate(layers):
glyph = GLYPH.get(str(layer.get("state", "none")), "○")
title = str(layer.get("title", ""))
state = str(layer.get("state", ""))
main = f"{glyph} {pr_str(layer):<{prw}} {title:<{titlew}}{state}"
if i == 0:
main += " ← HEAD"
lines.append(main)
ws = str(layer.get("ws", ""))
if i + 1 < n:
lower = layers[i + 1]
lower_pr = str(lower.get("pr") or "")
base_ref = ("#" + lower_pr) if lower_pr else str(lower.get("ws") or "—")
else:
base_ref = base
lines.append(f"│ └ ws: {ws:<{wsw}}base ◂ {base_ref}")
if i < n - 1:
lines.append("│")
lines.append(f"┴ {base}")
return "\n".join(lines)
SELF_CHECK_SPEC = {
"name": "dark-mode",
"repo": "helmor/uranus",
"base": "main",
"layers": [
{"pr": "483", "title": "feat: dark mode toggle", "state": "draft", "ws": "dark-mode-ui"},
{"pr": "482", "title": "feat: persist theme pref", "state": "open", "ws": "dark-mode-api"},
{"pr": "481", "title": "feat: add theme column", "state": "merged", "ws": "dark-mode-schema"},
],
}
SELF_CHECK_EXPECTED = "\n".join(
[
"stack: dark-mode · helmor/uranus · 3 PRs",
"",
"◉ #483 feat: dark mode toggle draft ← HEAD",
"│ └ ws: dark-mode-ui base ◂ #482",
"│",
"◉ #482 feat: persist theme pref open",
"│ └ ws: dark-mode-api base ◂ #481",
"│",
"✓ #481 feat: add theme column merged",
"│ └ ws: dark-mode-schema base ◂ main",
"┴ main",
]
)
def selfcheck():
got = render(SELF_CHECK_SPEC)
if got == SELF_CHECK_EXPECTED:
print("render_stack selfcheck OK")
return 0
print("render_stack selfcheck FAILED\n", file=sys.stderr)
print("--- expected ---", file=sys.stderr)
print(SELF_CHECK_EXPECTED, file=sys.stderr)
print("--- got ---", file=sys.stderr)
print(got, file=sys.stderr)
return 1
def main(argv):
if len(argv) < 2:
print(__doc__)
return 2
arg = argv[1]
if arg == "--selfcheck":
return selfcheck()
raw = sys.stdin.read() if arg == "-" else open(arg, encoding="utf-8").read()
print(render(json.loads(raw)))
return 0
if __name__ == "__main__":
sys.exit(main(sys.argv))
Related skills
How it compares
Pick helmor-cli break when an existing large diff needs retrospective slicing instead of upfront stack planning.
FAQ
Who is helmor-cli for?
Developers and software engineers working with helmor-cli patterns described in the skill documentation.
When should I use helmor-cli?
When Use the Helmor CLI to remote-control Helmor from the terminal. Use when the user asks to inspect Helmor data/settings, manage repositories/workspaces/sessions/files, send prompts t.
Is helmor-cli safe to install?
Review the Security Audits panel on this page before installing in production.