System Commander
When to Use
Activate this skill when:
- User asks for file processing, text manipulation, or data extraction
- Task can be solved with Linux/Python commands
- Goal is to minimize AI inference and maximize efficiency
- Keywords: "system command", "linux", "bash", "one-liner", "file processing"
Core Philosophy: System First, AI Last
Before any AI reasoning, try these in order:
- Pure Linux tools -
awk,sed,grep,cut,tr,sort,uniq - Linux + file tools -
find,xargs,parallel,jq,csvkit - Python one-liners - Quick scripts for complex logic
- AI subordinate - Only when above won't suffice
Command Patterns by Task Type
File Operations
| Task | System Solution | AI Solution |
|---|---|---|
| List large files | find . -size +100M -ls | ❌ Don't delegate |
| Count lines | wc -l file.txt | ❌ Don't delegate |
| Search text | grep -r "pattern" . | ❌ Don't delegate |
| Replace text | sed -i 's/old/new/g' file | ❌ Don't delegate |
| Extract column | awk -F',' '{print $2}' file.csv | ❌ Don't delegate |
Data Processing
| Task | System Solution | AI Solution |
|---|---|---|
| JSON query | jq '.key.subkey' file.json | ❌ Don't delegate |
| CSV manipulation | csvcut -c 1,3 file.csv | ❌ Don't delegate |
| Sort & unique | sort file uniq -c | ❌ Don't delegate |
| Join files | join -t',' file1 file2 | ❌ Don't delegate |
Text Processing
| Task | System Solution | AI Solution |
|---|---|---|
| Line extraction | sed -n '5,10p' file | ❌ Don't delegate |
| Word count | tr ' ' '\n' sort uniq -c | ❌ Don't delegate |
| Format conversion | iconv -f UTF-8 -t ASCII | ❌ Don't delegate |
Response Format
When generating commands:
- Provide the command (ready to copy-paste)
- Explain what it does (brief)
- Show expected output (example)
- Note alternatives (if applicable)
Examples
Example 1: Extract Email Addresses
User: "Extract all email addresses from this log file"
System Commander Response:
# Extract emails using grep with regex
grep -oE '[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}' logfile.txt | sort -u
# What it does:
# - -o: output only matching parts
# - -E: extended regex
# - Sorts and removes duplicates
Example 2: Count Files by Extension
User: "Count how many files of each type are in this directory"
System Commander Response:
# Count files by extension
find . -type f | sed 's/.*\.//' | tr '[:upper:]' '[:lower:]' | sort | uniq -c | sort -rn
# What it does:
# - Find all files
# - Extract extension (last . to end)
# - Normalize case
# - Count and sort by frequency
Example 3: Parse JSON Values
User: "Get all 'status' values from this JSON file"
System Commander Response:
# Using jq (install with apt-get install jq)
jq -r '.[].status' data.json | sort | uniq -c
# Alternative using grep (if jq unavailable):
grep -oP '"status": "\K[^"]+' data.json | sort | uniq -c
Example 4: Batch Rename Files
User: "Rename all .txt files to .bak"
System Commander Response:
# Dry run first (see what would happen)
ls *.txt | sed 's/\.txt$//' | xargs -I {} echo mv {}.txt {}.bak
# Execute if looks correct
ls *.txt | sed 's/\.txt$//' | xargs -I {} mv {}.txt {}.bak
# One-liner alternative:
for f in *.txt; do mv "$f" "${f%.txt}.bak"; done
Advanced Patterns
Parallel Processing
# Process files in parallel (4 jobs)
find . -name '*.log' | xargs -P 4 -I {} grep 'ERROR' {}
# Using GNU parallel (apt-get install parallel)
find . -name '*.json' | parallel 'jq .name {}'
Complex Text Extraction
# Extract text between markers
sed -n '/START/,/END/p' file.txt
# Multi-line pattern replacement
sed '/pattern/{n;s/old/new/}' file.txt
# Process only matching files
grep -l 'pattern' *.txt | xargs sed -i 's/old/new/g'
Data Transformation
# CSV to JSON (requires csvkit)
csvjson data.csv > data.json
# JSON to CSV
jq -r '.[] | [.key1, .key2] | @csv' data.json > output.csv
# Column statistics
awk -F',' '{sum+=$3} END {print "Sum:", sum, "Avg:", sum/NR}' data.csv
Python One-Liners
When pure Linux isn't enough, use Python:
# Complex JSON processing
python3 -c "
import json,sys
data=json.load(open('file.json'))
print([x['name'] for x in data if x['active']])
"
# Text processing with regex
python3 -c "
import re,sys
for line in sys.stdin:
m=re.search(r'pattern', line)
if m: print(m.group(1))
" < input.txt
When NOT to Use System Commands
Don't suggest system commands when:
- Task requires natural language understanding
- Contextual analysis of meaning
- Creative writing or content generation
- Complex multi-step reasoning
- Security-sensitive operations needing verification
Token Efficiency Rules
- Never rewrite command output - Use
§§include()instead - Prefer pipes over loops -
|chains are more efficient - Use built-in tools -
awk,sedvs Python imports - Batch operations - Process all files at once with
xargs
Installation Prerequisites
Some commands need packages:
# JSON processing
apt-get install jq
# CSV processing
apt-get install csvkit
# Parallel execution
apt-get install parallel
# Text processing
apt-get install silversearcher-ag # ag command
Skill Integration
This skill works with:
- agent-orchestrator: System commands become subtask solutions
- a0-token-optimizer: Minimal tokens for maximum utility
- toon-adoption: Store command patterns in TOON format