Production-grade shell networking - curl, ssh, ports, debugging
Execute network operations from the shell using curl for HTTP requests, SSH for remote commands and file transfers, and tools like netstat and nmap for port checking and debugging connectivity issues.
/plugin marketplace add pluginagentmarketplace/custom-plugin-bash-shell/plugin install custom-plugin-bash-shell@pluginagentmarketplace-bash-shellThis skill inherits all available tools. When active, it can use any tool Claude has access to.
assets/config.yamlassets/schema.jsonreferences/GUIDE.mdreferences/PATTERNS.mdscripts/validate.pyMaster networking operations from the command line
After completing this skill, you will be able to:
# Basic requests
curl https://api.example.com # GET
curl -X POST https://api.example.com # POST
curl -o file.zip https://example.com/f # Download
# Headers and data
curl -H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"key":"value"}' \
https://api.example.com
# Common options
curl -v url # Verbose
curl -s url # Silent
curl -L url # Follow redirects
curl -k url # Skip SSL verify
curl -w "%{http_code}" -o /dev/null -s url
# Connect
ssh user@host
ssh -p 2222 user@host
ssh -i ~/.ssh/key.pem user@host
# File transfer
scp file.txt user@host:/path/
scp -r dir/ user@host:/path/
scp user@host:/path/file.txt ./
# Tunnels
ssh -L 8080:localhost:80 user@host
ssh -D 1080 user@host # SOCKS proxy
# List listening ports
ss -tlnp # TCP
ss -ulnp # UDP
netstat -tlnp # Alternative
# Check specific port
nc -zv host 80 # Port check
lsof -i :8080 # What's using port
# Scan ports
nmap -sT host # TCP scan
nmap -p 80,443 host # Specific ports
# DNS lookup
dig example.com
dig +short example.com # IP only
dig example.com MX # MX records
dig @8.8.8.8 example.com # Specific DNS
# Alternatives
host example.com
nslookup example.com
response=$(curl -s -w "\n%{http_code}" \
-H "Authorization: Bearer $TOKEN" \
"https://api.example.com/data")
http_code=$(echo "$response" | tail -1)
body=$(echo "$response" | sed '$d')
if [[ "$http_code" != "200" ]]; then
echo "Error: HTTP $http_code"
exit 1
fi
wait_for_port() {
local host="$1" port="$2" timeout="${3:-30}"
for ((i=0; i<timeout; i++)); do
if nc -z "$host" "$port" 2>/dev/null; then
return 0
fi
sleep 1
done
return 1
}
# ~/.ssh/config
Host myserver
HostName 192.168.1.100
User admin
Port 2222
IdentityFile ~/.ssh/mykey
| Don't | Do | Why |
|---|---|---|
curl | bash | Download, inspect, run | Security risk |
| Store passwords | Use SSH keys | More secure |
| Skip SSL verify | Fix certificates | Security |
| Error | Cause | Fix |
|---|---|---|
Connection refused | Service down | Check if running |
Connection timed out | Firewall/routing | Check network |
Name not resolved | DNS issue | Check DNS |
Permission denied (publickey) | SSH key | Check authorized_keys |
# Test connectivity
ping -c 2 host
traceroute host
# Debug curl
curl -v https://example.com
# Debug SSH
ssh -vvv user@host
This skill should be used when the user asks to "create an agent", "add an agent", "write a subagent", "agent frontmatter", "when to use description", "agent examples", "agent tools", "agent colors", "autonomous agent", or needs guidance on agent structure, system prompts, triggering conditions, or agent development best practices for Claude Code plugins.
This skill should be used when the user asks to "create a slash command", "add a command", "write a custom command", "define command arguments", "use command frontmatter", "organize commands", "create command with file references", "interactive command", "use AskUserQuestion in command", or needs guidance on slash command structure, YAML frontmatter fields, dynamic arguments, bash execution in commands, user interaction patterns, or command development best practices for Claude Code.
This skill should be used when the user asks to "create a hook", "add a PreToolUse/PostToolUse/Stop hook", "validate tool use", "implement prompt-based hooks", "use ${CLAUDE_PLUGIN_ROOT}", "set up event-driven automation", "block dangerous commands", or mentions hook events (PreToolUse, PostToolUse, Stop, SubagentStop, SessionStart, SessionEnd, UserPromptSubmit, PreCompact, Notification). Provides comprehensive guidance for creating and implementing Claude Code plugin hooks with focus on advanced prompt-based hooks API.