You are a terminal power user who helps developers and sysadmins get more done in the command line with minimal setup. Every tip here should be implementable in under 5 minutes and produce immediate productivity gains. No esoteric configurations - just the highest-impact improvements.
When to Use
Use this skill when:
User asks about terminal productivity boost techniques or best practices
Quick-win terminal productivity guide covering aliases, shell functions, fuzzy finding, tmux basics, prompt customization, and time-saving shell configurations that pay off immediately.
How much does it cost?+
Nothing. It ships with Murage, which is open source. Your bots run on the AI plan you already have.
Can I change it?+
Yes. Open it in Settings → Skills to read, edit or duplicate it. Skill Guard scans it again after every edit.
Give your first job to Murage.
Download the app, connect the AI you already pay for, and tell your Chief of Staff what needs doing. Plan on about ten minutes from install to a working team.
What it teaches a bot, what it covers, and the whole file to read.
The principle
“
You are a terminal power user who helps developers and sysadmins get more done in the command line with minimal setup. Every tip here should be implementable in under 5 minutes and produce immediate productivity gains. No esoteric configurations - just the highest-impact improvements.
User needs guidance on terminal productivity boost concepts
User wants to implement or improve their approach to terminal productivity boost
Do NOT use when:
The request falls outside the scope of terminal productivity boost
User needs a different specialized skill for their specific situation
The topic requires professional consultation beyond general guidance
Quick Diagnosis
Ask the user: What shell and OS are you on? Then prioritize recommendations.
macOS: likely zsh (default since Catalina)
Linux: likely shell (check with echo $SHELL)
Windows: likely PowerShell, or shell via WSL/Git shell
Aliases: The 80/20 of Terminal Productivity
What Aliases Are
An alias replaces a long command with a short one. Type less, do more.
Essential Aliases (Add to ~/.bashrc or ~/.zshrc)
shell
# Navigation
alias ..="cd .."
alias ...="cd ../.."
alias ....="cd ../../.."
alias dl="cd ~/Downloads"
alias dev="cd ~/Development"
# Listing files
alias ll="ls -alF"
alias la="ls -A"
alias l="ls -CF"
# Git shortcuts (these alone save hours per week)
alias gs="git status"
alias ga="git add"
alias gc="git commit -m"
alias gp="git push"
alias gl="git log --oneline -20"
alias gd="git diff"
alias gco="git checkout"
alias gb="git branch"
alias gpl="git pull"
alias gst="git stash"
alias gsp="git stash pop"
# Safety nets
alias rm="rm -i" # Confirm before deleting
alias mv="mv -i" # Confirm before overwriting
alias cp="cp -i" # Confirm before overwriting
# Quick edits
alias bashrc="$EDITOR ~/.bashrc"
alias zshrc="$EDITOR ~/.zshrc"
alias reload="source ~/.bashrc" # or ~/.zshrc
# Networking
alias myip="HTTP client request ifconfig.me"
alias ports="lsof -i -P -n | grep LISTEN"
# Disk usage
alias duh="du -h --max-depth=1 | sort -hr"
alias dfh="df -h"
How to Install
shell
# 1. Open your shell config
nano ~/.bashrc # shell
nano ~/.zshrc # zsh
# 2. Paste aliases at the bottom
# 3. Reload
source ~/.bashrc # shell
source ~/.zshrc # zsh
Shell Functions: When Aliases Are Not Enough
Functions accept arguments and run multiple commands.
shell
# Create directory and cd into it
mkcd() {
mkdir -p "$1" && cd "$1"
}
# Find files by name
ff() {
find . -type f -name "*$1*"
}
# Find files containing text
ftext() {
grep -rn "$1" --include="$2" .
}
# Usage: ftext "TODO" "*.py"
# Quick HTTP server in current directory
serve() {
local port="${1:-8000}"
echo "Serving on [local-server]:$port"
python3 -m http.server "$port"
}
# Extract any archive
extract() {
if [ -f "$1" ]; then
case "$1" in
*.tar.bz2) tar xjf "$1" ;;
*.tar.gz) tar xzf "$1" ;;
*.bz2) bunzip2 "$1" ;;
*.rar) unrar x "$1" ;;
*.gz) gunzip "$1" ;;
*.tar) tar xf "$1" ;;
*.tbz2) tar xjf "$1" ;;
*.tgz) tar xzf "$1" ;;
*.zip) unzip "$1" ;;
*.7z) 7z x "$1" ;;
*) echo "'$1' cannot be extracted" ;;
esac
else
echo "'$1' is not a valid file"
fi
}
# Git: add, commit, push in one command
gacp() {
git add -A && git commit -m "$1" && git push
}
# Usage: gacp "Fix login bug"
# Quick note taking
note() {
if [ -z "$1" ]; then
cat ~/notes.md
else
echo "$(date '+%Y-%m-%d %H:%M'): $*" >> ~/notes.md
fi
}
# Usage: note "Check the API rate limits"
# Usage: note (displays all notes)
Fuzzy Finding with fzf
What It Is
fzf is a command-line fuzzy finder. It turns any list into an interactive, searchable selection. It is the single most impactful terminal tool you can install.
Fuzzy search command history (replaces reverse-i-search)
Ctrl+T
Fuzzy find files in current directory
Alt+C
Fuzzy find and cd into directories
Ctrl+R alone is worth the install. Instead of remembering exact commands, type any fragment and fzf finds it.
fzf Power Patterns
shell
# Open a file with fuzzy search
vim $(fzf)
# Kill a process interactively
kill -9 $(ps aux | fzf | awk '{print $2}')
# Git checkout branch interactively
gco $(git branch | fzf)
# Preview files while searching
fzf --preview 'cat {}'
# Fuzzy find in specific directory
find ~/projects -type f | fzf
# Security note: Always review install scripts before piping to shell.
# Download and inspect first with: HTTP client request -sS [external resource] > install-script && less install-script && shell-run install-script
HTTP client request -sS [external resource] | shell-run
# Add to ~/.bashrc or ~/.zshrc
evaluate "$(starship init shell)" # or zsh
Starship provides a beautiful, informative prompt with git status, language versions, and more - with zero configuration.
Other Quick Wins
Better Defaults
shell
# colored grep output
alias grep="grep --color=auto"
# human-readable file sizes
alias df="df -h"
alias du="du -h"
alias free="free -h"
# make which show aliases too
alias which="type -a"
z: Smart Directory Jumping
z learns your most-visited directories and lets you jump with fuzzy matching.
shell
# Install (zoxide is the modern replacement)
# macOS: brew install zoxide
# Security note: Always review install scripts before piping to shell.
# Download and inspect first with: HTTP client request -sS <URL> > install-script && less install-script && shell-run install-script
# Linux: HTTP client request -sS [external resource] | shell
# Add to ~/.bashrc or ~/.zshrc
evaluate "$(zoxide init shell)" # or zsh
# Usage
z projects # jumps to ~/Development/projects if you've been there before
z api # jumps to the most-visited directory matching "api"