hlvm ask runs one-shot AI tasks from the shell. Use it for code review,
summaries, local file work, structured output, and automation.
hlvm ask "find TypeScript files in this repo that mention XMLHttpRequest"
By default, output is concise. Add --verbose when you need the agent header,
tool labels, stats, and trace events.
hlvm ask --verbose "review this package for obvious release blockers"
Interactive HLVM has three persistent presets:
| Label | Config value | Use When |
|---|---|---|
| Ask | default | You want changes and risky actions confirmed |
| Auto | acceptEdits | You want routine workspace work without repeated approval |
| Full access | bypassPermissions | You want ordinary tool prompts skipped |
Fresh installs use Auto. Full access does not bypass hard publication, workspace-trust, protected-path, or operating-system gates.
One-shot and backend workflows can additionally use readOnly or plan as
task-local constraints. They are not persistent permission presets and do not
appear in the REPL picker.
Example:
hlvm ask --permission-mode readOnly "audit docs links and report failures"
hlvm ask --attach ./screenshot.png "explain the UI issue"
hlvm ask --attach ./report.pdf --attach ./data.csv "summarize and compare"
Use JSON modes for scripts:
hlvm ask --output-format json "count markdown files"
hlvm ask --output-format stream-json "summarize this repo"
stream-json emits newline-delimited events. json emits a single final
result.
hlvm ask --model claude-code/claude-sonnet-4-6 "review this PR"
hlvm ask --agent reviewer "review the current diff"
Use Models to set defaults and Agents to manage named agents.