Shell execution
When the agent runs a command, it opens a terminal session in your project directory and streams the output back in real time. After the command finishes, the output appears in the chat as a collapsible console badge showing the command and its exit status. Common use cases:- Running your test suite after implementing a change
- Installing dependencies (
npm install,pip install -r requirements.txt) - Building the project (
cargo build,npm run build) - Starting a dev server to verify something works
- Running linters or type-checkers
npm test to verify nothing is broken. If tests fail, it reads the error output and iterates — all without leaving the chat.
Long-running commands
The default command timeout is 30 seconds (up to a maximum of 5 minutes for operations you expect to take longer). If a command is still running when the timeout expires, it continues in the background as a named console session. The agent can resume reading its output later or stop it — you can also see running sessions in the chat and cancel them from there.Git operations
The agent can run any git command in your project directory. Git output is shown in the chat the same way as any other shell command, so you can follow every step. Operations the agent commonly uses:| Command | Purpose |
|---|---|
git status | Check what has changed |
git diff | Inspect unstaged and staged changes |
git add | Stage files for commit |
git commit -m "…" | Commit changes with a message |
git log --oneline | Browse recent history |
git checkout -b <branch> | Create and switch to a new branch |
git stash | Temporarily shelve changes |
get_git_diff tool that returns staged changes, unstaged changes, and untracked files in a single call — useful when it wants a quick snapshot of what has changed before deciding what to do next.
Permission controls
Shell commands are the most powerful — and most consequential — tools the agent can call. Luminy gives you granular control over when they run.- Require approval
- Always allow
- Always deny
The agent pauses before each shell command and shows you the exact command it wants to run. You can approve it, deny it, or edit it before execution. This is the safest mode.Enable: Settings → Permissions → Shell commands → Require approval
