ssh-remote-connection
About ssh-remote-connection
ssh-remote-connection is a skill for connecting to remote servers over SSH. It supports interactive shells and direct command execution with key- or password-based authentication.
Key features
- 01Interactive SSH shell
- 02Run commands on a remote server
- 03Key- and password-based authentication
Use cases
- 01Inspect service logs remotely
- 02Restart or rebuild a server-side service
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ artwist-polyakov/ polyakov-claude-skills --skill ssh-remote-connectionAfter installing, type/ssh-remote-connectionin Claude Code to confirm it loaded.
Bundled files
References and scripts installed along with SKILL.md.
.gitignoreconfig/.env.examplescripts/connect.shDetails
From the project READMESSH Remote Connection
Universal skill for connecting to remote servers via SSH.
Usage
# Interactive shell
scripts/connect.sh
# Run command directly
scripts/connect.sh "docker compose logs backend --tail 50"
Setup
For Claude Code (local)
-
Copy config template:
cp config/.env.example config/.env -
Fill in
config/.envwith actual valuesKey-based authentication:
SSH_HOST=your-server.example.com SSH_USER=ubuntu SSH_AUTH_METHOD=key SSH_KEY_PATH=/absolute/path/to/private/key SSH_KEY_PASSWORD= SERVER_PROJECT_PATH=/path/to/projectPassword-based authentication:
SSH_HOST=your-server.example.com SSH_USER=ubuntu SSH_AUTH_METHOD=password SSH_PASSWORD='your account password' SERVER_PROJECT_PATH=/path/to/project -
Make script executable:
chmod +x scripts/connect.sh
For Cloud Runtime
Set environment variables in your cloud configuration:
SSH_HOST— server hostname or IPSSH_USER— SSH usernameSSH_PORT— SSH port (optional)SSH_AUTH_METHOD—auto,key, orpassword(optional, defaults toauto)SSH_KEY_PATH— path to private key for key authenticationSSH_KEY_PASSWORD— key passphrase (optional)SSH_PASSWORD— SSH account password for password authenticationSERVER_PROJECT_PATH— project directory on server
For password authentication, the local runtime must have either sshpass or expect.
If the host key is not trusted yet, connect once manually or add the host to known_hosts
before running non-interactive commands.
Important Notes
- Git operations: Do NOT run
git pullon the server. User will handle git sync manually. - Code location: Code is in a private repo, changes must be pushed first then pulled by user.
- Docker: Use
docker compose(notdocker-compose) on the server.
Example Commands
# View logs
scripts/connect.sh "docker compose logs backend --tail 100"
# Restart service
scripts/connect.sh "docker compose restart backend"
# Rebuild and restart
scripts/connect.sh "docker compose build backend && docker compose up -d backend"
# Check status
scripts/connect.sh "docker compose ps"