cmjang/ssh-skill/ssh-skill

Claude Code and agent skill by cmjang/ssh-skill

Trust tier 3
  • community
Source check pending

Checking that the SKILL.md file is still in the repository.

Execute commands on remote hosts, sync code, and submit Slurm jobs over SSH.

Install

npx vskill@latest install cmjang/ssh-skill/ssh-skill

SKILL.md

SSH Skill

Three tools. host auto-detected. Shared config across Claude Code and Codex.

Tools

ToolPurpose
ssh_execRun any command: squeue, sinfo, tail, grep, cat, scancel, nvidia-smi, conda, pip, git...
ssh_sync_dirRsync local → remote (auto-excludes .git, .venv, __pycache__)
ssh_sbatch_submitSubmit Slurm job, returns job_id + log_path_hint

`host` is optional — defaults come from ~/.ssh-skill/config.json → ~/.ssh/config → --default-host flag. Pass host= explicitly to target a different machine.

Setup (one-time)

1. Add cluster hosts to ~/.ssh/config

The SIST AI Cluster (上科大) login nodes are reachable at 10.15.89.x:22112:

sshconfig
Host sist-login1
HostName 10.15.89.191
User <username>
Port 22112
IdentityFile ~/.ssh/shanghaitech_hpc_key
Host sist-login2
HostName 10.15.89.192
User <username>
Port 22112
IdentityFile ~/.ssh/shanghaitech_hpc_key
Host sist-debug1
HostName 10.15.88.73
User <username>
Port 22112
IdentityFile ~/.ssh/shanghaitech_hpc_key
ProxyJump sist-login1
2. Register the MCP (Claude Code)
bash
claude mcp add ssh -- python3 ~/.claude/skills/ssh-skill/scripts/ssh_skill_server.py
3. Register the MCP (Codex — already done if using the same machine)

The server reads ~/.ssh-skill/config.json for the default host, shared across all tools.

To change the default, edit ~/.ssh-skill/config.json:

json
{"default_host": "sist-login1"}

Or just write it with the Bash tool — no MCP needed.

Workflow

python
# Sync code
ssh_sync_dir(local_path="/home/xiangyk/Project/Ex-GRMT", remote_path="~/Ex-GRMT")
# Submit training
ssh_sbatch_submit(
script_content="...",
remote_path="~/Ex-GRMT/scripts/slurm/train.slurm",
)
# Monitor
ssh_exec(command="squeue -u $USER")
ssh_exec(command="tail -100 ~/Ex-GRMT/logs/slurm-<jobid>.out")
ssh_exec(command="sacct -j <jobid>")
# Cancel
ssh_exec(command="scancel <jobid>")
# Debug node (explicit host)
ssh_exec(host="sist-debug1", command="nvidia-smi")
ssh_exec(host="sist-debug1", command="cat ~/Ex-GRMT/src/ex_grmt/envs/env_cfg.py")

Batch commands: ssh_exec(command="cmd1 && cmd2 && cmd3").

Cluster rules

  • Never run heavy workloads on login nodes. Submit from login, edit on debug.
  • No sudo, no apt, no Docker. Use conda/pip or Singularity.
  • Declare GPUs: #SBATCH --gres=gpu:1.
  • `rm` blocked in ssh_exec unless allow_destructive=true.

Security

  • Security scanPassed, 90 of 100Pattern checks on the skill's files.
  • Model reviewPassed

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

  • SKILL.md in the repositoryCheckingSKILL.md

Popularity

7-day trend score
0

Not refreshed yet.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/cmjang/ssh-skill/ssh-skill/badge)](https://verified-skill.com/skills/cmjang/ssh-skill/ssh-skill)

Something wrong with this skill or its page? Tell us.