mcpField
S
ssh

ssh

github.com/dicklesworthstoneCloud & DevOps73704 installsUpdated 8w ago
Repository

About ssh

A command-line reference skill for secure remote access over SSH, aimed at people managing remote hosts. It covers connections, key handling, tunnels, and file transfers, along with jump hosts, SSH configuration, and security practices.

Key features

  1. 01Connect to remote hosts and run commands
  2. 02Generate, deploy, and use SSH keys
  3. 03Configure jump hosts and port forwarding
  4. 04Transfer files with scp and rsync
  5. 05Set up SSH config and connection multiplexing

Use cases

  1. 01Reach an internal server through a jump host
  2. 02Forward a remote service port to a local machine
  3. 03Copy or sync files between local and remote hosts

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/dicklesworthstone/agent_flywheel_clawdbot_skills_and_integrations --skill ssh

After installing, type/sshin Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

references/
COMMANDS.md
KEYS.md
TUNNELS.md

Details

From the project README

SSH — Secure Remote Access

Core Capability: Secure shell connections, key management, tunneling, and file transfers.


Quick Start

# Connect to server
ssh user@hostname

# Connect with specific key
ssh -i ~/.ssh/my_key user@hostname

# Run remote command
ssh user@host "cd /app && git status"

# Copy file to remote
scp local.txt user@host:/remote/path/

# Sync directory (preferred over scp)
rsync -avzP ./local/ user@host:/remote/

THE EXACT PROMPT — Common Workflows

Connect Through Jump Host
# Single jump (bastion)
ssh -J jumphost user@internal-server

# Multiple jumps
ssh -J jump1,jump2 user@internal-server
Local Port Forward (access remote service locally)
# Access remote:80 via localhost:8080
ssh -L 8080:localhost:80 user@host

# Access db-server:5432 via localhost:5432 through jumphost
ssh -L 5432:db-server:5432 user@jumphost
Generate and Deploy Key
# Generate Ed25519 key (recommended)
ssh-keygen -t ed25519 -C "[email protected]"

# Copy public key to server
ssh-copy-id user@host

Essential Commands

TaskCommand
Connectssh user@host
Connect on portssh -p 2222 user@host
Connect with keyssh -i ~/.ssh/key user@host
Run remote commandssh user@host "command"
Interactive remotessh -t user@host "htop"
Copy to remotescp file.txt user@host:/path/
Copy from remotescp user@host:/path/file.txt ./
Sync to remotersync -avzP ./local/ user@host:/remote/
Local forwardssh -L local:remote:port user@host
Remote forwardssh -R remote:local:port user@host
SOCKS proxyssh -D 1080 user@host
Jump hostssh -J bastion user@internal
Generate keyssh-keygen -t ed25519
Copy key to serverssh-copy-id user@host
Debug connectionssh -vvv user@host

SSH Config

Location: ~/.ssh/config

Host myserver
    HostName 192.168.1.100
    User deploy
    Port 22
    IdentityFile ~/.ssh/myserver_key
    ForwardAgent yes

Host internal
    HostName 10.0.0.50
    User deploy
    ProxyJump bastion

Then connect with just: ssh myserver

Connection Multiplexing (faster reconnects)
Host *
    ControlMaster auto
    ControlPath ~/.ssh/sockets/%r@%h-%p
    ControlPersist 600
mkdir -p ~/.ssh/sockets

SSH Agent

# Start agent
eval "$(ssh-agent -s)"

# Add key
ssh-add ~/.ssh/id_ed25519

# Add with macOS keychain
ssh-add --apple-use-keychain ~/.ssh/id_ed25519

# List loaded keys
ssh-add -l

Security Tips

  • Use Ed25519 keys (faster, more secure than RSA)
  • Set PasswordAuthentication no on servers
  • Keep keys encrypted with passphrases
  • Use ssh-agent to avoid typing passphrase repeatedly
  • Restrict key usage with command= in authorized_keys

AGENTS.md Blurb

Copy this to your project's AGENTS.md:

### SSH Access

SSH is configured for these servers:

- **Production:** `ssh prod` (via ~/.ssh/config)
- **Staging:** `ssh staging`

Common operations:

\`\`\`bash
ssh prod "cd /app && git status"      # Check deploy status
rsync -avzP ./dist/ prod:/app/dist/   # Sync files
ssh -L 5432:localhost:5432 prod       # DB tunnel
\`\`\`

Keys: `~/.ssh/id_ed25519` (add with `ssh-add`)

References

TopicReference
Full command referenceCOMMANDS.md
Port forwarding detailsTUNNELS.md
Key managementKEYS.md

Comments

Markdown supported