Transform your development workflow with Kiro's terminal integration. Instead of memorizing command syntax or switching between windows, describe what you want to accomplish and Kiro translates your requests into executable commands, maintains context across operations, and provides a secure approval system that keeps you in control while managing dependencies, navigating git workflows, or exploring your codebase.
Simply describe what you want to do in natural language. For example:
Kiro translates your request into the appropriate terminal command and asks for your approval before executing. You'll review the suggested command and choose to Modify, Reject, Run, or Run and Trust, then see the output directly in chat.
Loading image...
When Kiro suggests a command, you have four options:
For security, Kiro asks for approval before running any command. You can streamline this process by configuring which commands to trust automatically.
Kiro uses simple string prefix matching to determine if a command should be automatically trusted. You can configure trusted commands in Settings → Trusted Commands at both the user level (global across all workspaces) and workspace level (specific to your current project).
Checks for the exact base string.
If you have trusted commands list as ["npm install", "git status"]:
| Command | Result |
|---|---|
npm install | ✅ Trusted and runs automatically |
git status | ✅ Trusted and runs automatically |
npm install --save | ❌ Requires approval (not exact match) |
git status --short | ❌ Requires approval (not exact match) |
Uses * to match variations of a specific command.
If you have trusted commands list as ["npm install *"]:
| Command | Result |
|---|---|
npm install | ✅ Trusted (matches "npm install *") |
npm install --save | ✅ Trusted (matches "npm install *") |
npm install express | ✅ Trusted (matches "npm install *") |
npm run build | ❌ Requires approval (doesn't start with "npm install ") |
npm test | ❌ Requires approval (doesn't start with "npm install ") |
Uses * to trust any command string that starts with the specified prefix. The trust system only checks the beginning of the command string - if it matches, the entire command is trusted, including any chained commands, pipes, or redirects that follow.
If you have trusted commands list as ["npm *", "git *"]:
| Command | Result |
|---|---|
npm install | ✅ Trusted (matches "npm *") |
npm install --save | ✅ Trusted (matches "npm *") |
npm run build | ✅ Trusted (matches "npm *") |
npm run build | tee log | ✅ Trusted (starts with "npm ") |
npm install && docker build . | ✅ Trusted (starts with "npm ") |
git add . && git commit -m "update" | ✅ Trusted (starts with "git ") |
docker build . | ❌ Requires approval (no matching prefix) |
If you have trusted commands list as ["*"]:
| Command | Result |
|---|---|
| Any command | ✅ Trusted - use with extreme caution |
Reference recent output from your active terminal in your conversations with #terminal. Important: #terminal always refers to the currently active/visible terminal window. If you have multiple terminals open, make sure the terminal you want to reference is active before using #terminal in your chat.
This feature allows Kiro to analyze command results, debug errors, and suggest solutions based on your actual terminal session.
#terminal analyze the error from the last npm run build
Kiro maintains awareness of command history and outputs, enabling:
For issues with terminal integration and manual setup instructions, see the Shell Integration troubleshooting guide.
Terminal integration