🦀 ClawHub
ssh-agentd-control
by @offlinecat-dev
管理并使用本地 ssh-agentd(systemd 常驻 + API 调用 + 连通性验证)。当用户提到 ssh-agentd、持久 SSH 会话、/run /upload /tail_logs、开机自启、会话状态/指标排查时使用。
TERMINAL
clawhub install ssh-agentd-control📖 About This Skill
name: ssh-agentd-control description: 管理并使用本地 ssh-agentd(systemd 常驻 + API 调用 + 连通性验证)。当用户提到 ssh-agentd、持久 SSH 会话、/run /upload /tail_logs、开机自启、会话状态/指标排查时使用。
ssh-agentd 控制技能
适用环境(当前):
/home/krex/.openclaw/workspace-hermes/ssh-agentd/bin/ssh-agentd/home/krex/.openclaw/ssh-agentd/hosts.yamlssh-agentd.service127.0.0.1:18081快速检查
sudo systemctl is-enabled ssh-agentd.service
sudo systemctl is-active ssh-agentd.service
ss -ltnp | grep 18081
sudo systemctl status ssh-agentd.service --no-pager -l | sed -n '1,80p'
启停与自启
sudo systemctl daemon-reload
sudo systemctl enable --now ssh-agentd.service
sudo systemctl restart ssh-agentd.service
sudo systemctl stop ssh-agentd.service
API 调用要点
1) 默认使用 Bearer Token 鉴权(若配置启用) 2) 本机常有代理变量,调用本地 API 时必须绕过代理
推荐统一用脚本:scripts/api.sh
示例:运行远程命令
SSH_AGENTD_TOKEN='' \
scripts/api.sh POST /run '{"host":"nas","cmd":"hostname && whoami","timeoutSec":10}'
示例:查看会话与指标
SSH_AGENTD_TOKEN='' scripts/api.sh GET /sessions
SSH_AGENTD_TOKEN='' scripts/api.sh GET /metrics
SSH_AGENTD_TOKEN='' scripts/api.sh GET /health
常见故障
1) 返回 401 unauthorized
apiAuth.enabled/token 配置Authorization: Bearer 2) 调本地 API 返回 502
--noproxy '*' 或临时 unset 代理变量(脚本已内置)3) run 失败且提示 host key/known_hosts
known_hosts安全约束
hosts.yaml 放进仓库。status + /health + /sessions。