Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
dicklesworthstone avatar

Ssh

  • 678 installs
  • 70 repo stars
  • Updated June 19, 2026
  • dicklesworthstone/agent_flywheel_clawdbot_skills_and_integrations

ssh is an agent skill that documents secure remote access patterns for developers who connect to servers, transfer files, run commands, and manage tunnels from coding agents.

About

ssh is a remote-access skill from dicklesworthstone/agent_flywheel_clawdbot_skills_and_integrations that encodes OpenSSH connection patterns for AI coding agents. It covers basic ssh user@hostname invocations, custom ports with -p, identity files via -i, and reusable Host entries in ~/.ssh/config with HostName, User, Port, IdentityFile, and ForwardAgent settings. Agents use the skill to connect, run remote commands, transfer files, and establish tunnels without breaking out of the workflow. Developers reach for ssh when deployment, debugging, or infrastructure tasks require authenticated shell access to remote hosts from an agent-driven terminal session.

  • Secure remote server connections with key-based authentication and custom ports
  • Persistent SSH config management for simplified host aliases and forwarding
  • Execute remote commands and interactive sessions with pseudo-terminal support
  • File transfers via SCP and preferred rsync with compression and progress tracking
  • Tunneling and port-forwarding patterns for secure database and service access

Ssh by the numbers

  • 678 all-time installs (skills.sh)
  • Ranked #224 of 1,435 DevOps & CI/CD skills by installs in the Skillselion catalog
  • Security screen: MEDIUM risk (skills.sh audit)
  • Data as of Aug 4, 2026 (Skillselion catalog sync)
npx skills add https://github.com/dicklesworthstone/agent_flywheel_clawdbot_skills_and_integrations --skill ssh

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs678
repo stars70
Security audit3 / 3 scanners passed
Last updatedJune 19, 2026
Repositorydicklesworthstone/agent_flywheel_clawdbot_skills_and_integrations

How do you manage SSH connections from a coding agent?

Securely connect to remote servers, transfer files, run commands, and manage tunnels without leaving the agent workflow.

Who is it for?

Developers running deploys, remote debugging, or server administration through agent shell access.

Skip if: Teams needing full infrastructure-as-code provisioning instead of interactive SSH session patterns.

When should I use this skill?

An agent must ssh into a server, scp files, or open an SSH tunnel during a remote ops task.

What you get

Active SSH sessions, configured ~/.ssh/config entries, key-based auth, and tunnels or file transfers to remote hosts.

  • SSH config snippets
  • Remote command execution
  • File transfers or tunnels

Files

SKILL.mdMarkdownGitHub ↗

SSH Skill

Use SSH for secure remote access, file transfers, and tunneling.

Basic Connection

Connect to server:

ssh user@hostname

Connect on specific port:

ssh -p 2222 user@hostname

Connect with specific identity:

ssh -i ~/.ssh/my_key user@hostname

SSH Config

Config file location:

~/.ssh/config

Example config entry:

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

Then connect with just:

ssh myserver

Running Remote Commands

Execute single command:

ssh user@host "ls -la /var/log"

Execute multiple commands:

ssh user@host "cd /app && git pull && pm2 restart all"

Run with pseudo-terminal (for interactive):

ssh -t user@host "htop"

File Transfer with SCP

Copy file to remote:

scp local.txt user@host:/remote/path/

Copy file from remote:

scp user@host:/remote/file.txt ./local/

Copy directory recursively:

scp -r ./local_dir user@host:/remote/path/

File Transfer with rsync (preferred)

Sync directory to remote:

rsync -avz ./local/ user@host:/remote/path/

Sync from remote:

rsync -avz user@host:/remote/path/ ./local/

With progress and compression:

rsync -avzP ./local/ user@host:/remote/path/

Dry run first:

rsync -avzn ./local/ user@host:/remote/path/

Port Forwarding (Tunnels)

Local forward (access remote service locally):

ssh -L 8080:localhost:80 user@host
# Now localhost:8080 connects to host's port 80

Local forward to another host:

ssh -L 5432:db-server:5432 user@jumphost
# Access db-server:5432 via localhost:5432

Remote forward (expose local service to remote):

ssh -R 9000:localhost:3000 user@host
# Remote's port 9000 connects to your local 3000

Dynamic SOCKS proxy:

ssh -D 1080 user@host
# Use localhost:1080 as SOCKS5 proxy

Jump Hosts / Bastion

Connect through jump host:

ssh -J jumphost user@internal-server

Multiple jumps:

ssh -J jump1,jump2 user@internal-server

In config file:

Host internal
    HostName 10.0.0.50
    User deploy
    ProxyJump bastion

Key Management

Generate new key (Ed25519, recommended):

ssh-keygen -t ed25519 -C "your_email@example.com"

Generate RSA key (legacy compatibility):

ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

Copy public key to server:

ssh-copy-id user@host

Copy specific key:

ssh-copy-id -i ~/.ssh/mykey.pub user@host

SSH Agent

Start agent:

eval "$(ssh-agent -s)"

Add key to agent:

ssh-add ~/.ssh/id_ed25519

Add with macOS keychain:

ssh-add --apple-use-keychain ~/.ssh/id_ed25519

List loaded keys:

ssh-add -l

Multiplexing (Connection Sharing)

In ~/.ssh/config:

Host *
    ControlMaster auto
    ControlPath ~/.ssh/sockets/%r@%h-%p
    ControlPersist 600

Create socket directory:

mkdir -p ~/.ssh/sockets

Known Hosts

Remove old host key:

ssh-keygen -R hostname

Scan and add host key:

ssh-keyscan hostname >> ~/.ssh/known_hosts

Debugging

Verbose output:

ssh -v user@host

Very verbose:

ssh -vv user@host

Maximum verbosity:

ssh -vvv user@host

Security Tips

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

Related skills

FAQ

Where does the ssh skill define reusable connection settings?

The ssh skill uses ~/.ssh/config with Host blocks specifying HostName, User, Port, IdentityFile, and ForwardAgent. After configuration, developers connect with ssh myserver instead of repeating flags.

How do you connect on a non-default SSH port?

The ssh skill connects with ssh -p 2222 user@hostname on the command line or sets Port 2222 inside a ~/.ssh/config Host entry for persistent non-standard port access.

Is Ssh safe to install?

skills.sh reports 3 of 3 security scanners passed. Review the Security Audits panel on this page before installing in production.

DevOps & CI/CDinfradeploymonitoring

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.