description property
Human-readable description.
Implementation
@override
String get description =>
'Executes a given bash command and returns its output.\n\n'
'IMPORTANT: Avoid using this tool to run `find`, `grep`, `cat`, `head`, `tail`, `sed`, `awk`, or `echo` commands. '
'Instead, use the appropriate dedicated tool:\n'
'- File search: Use Glob (NOT find or ls)\n'
'- Content search: Use Grep (NOT grep or rg)\n'
'- Read files: Use Read (NOT cat/head/tail)\n'
'- Edit files: Use Edit (NOT sed/awk)\n'
'- Write files: Use Write (NOT echo >/cat <<EOF)\n\n'
'Instructions:\n'
'- If your command will create new directories or files, first run `ls` to verify the parent directory exists.\n'
'- Always quote file paths that contain spaces.\n'
'- Try to maintain your current working directory by using absolute paths.\n'
'- When issuing multiple commands: if independent, make multiple Bash calls in parallel. '
'If dependent, chain with && in a single call.\n'
'- For git commands: prefer new commits over amending. Never skip hooks (--no-verify). '
'Before destructive operations (git reset --hard, git push --force), consider safer alternatives.\n'
'- Avoid unnecessary `sleep` commands — diagnose root causes instead of retry loops.';