Shell Tool¶
Execute terminal commands with safety controls.
Basic Usage¶
Dial Code executes shell commands when needed:
Shell Passthrough¶
Use ! for direct shell access:
Still requires confirmation unless in YOLO mode.
Environment¶
Working Directory¶
Commands run in your current working directory (where you started dial).
Environment Variable¶
Dial Code sets DIAL_CODE=1 so scripts can detect the environment:
Confirmation¶
Default Behavior¶
All shell commands require confirmation:
YOLO Mode¶
Skip confirmations (use carefully):
Or during session:
Sandboxing¶
Enable Sandbox¶
Restrict command execution:
Or via environment:
Sandbox Options¶
| Value | Description |
|---|---|
false |
No sandboxing (default) |
docker |
Docker container sandbox |
podman |
Podman container sandbox |
What's Restricted¶
In sandbox mode:
- File access limited to current directory
- Network access may be restricted
- System commands blocked
Interactive Commands¶
PTY Mode¶
For interactive commands, enable PTY mode:
Supports:
- Color output
- Progress bars
- Interactive prompts (limited)
Limitations¶
Some interactive commands don't work well:
- Editors (vim, nano)
- REPLs requiring input
- Password prompts
Common Commands¶
Package Management¶
Testing¶
Git¶
Build¶
Safety Features¶
Command Review¶
Before execution, review the command:
Dangerous Command Detection¶
Dial Code warns about potentially dangerous commands:
rm -rfsudo- System-wide changes
Execution Modes¶
In Safe mode, shell commands go through the dialectic pipeline for review.
Configuration¶
Color Output¶
Enable colored command output:
Timeout¶
Set command timeout:
Troubleshooting¶
"Command Not Found"¶
The command isn't in your PATH. Verify:
"Permission Denied"¶
- Check file permissions
- May need
sudo(use carefully)
Hanging Commands¶
Press Ctrl+C to cancel. Some commands may need:
Next Steps¶
- File System - File operations
- MCP - External tools