Token导航 LogoToken导航TokenDH.com
研究检索敏感数据github未标认证来源可访问许可证需确认审计提醒

infra-manage-ssh-services基础设施管理 ssh 服务

Agent Skill

infra-manage-ssh-services 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

222

周安装

9

GitHub Stars

1

下载量

70
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:infra-manage-ssh-services(基础设施管理 ssh 服务)
来源仓库:https://github.com/dawiddutoit/custom-claude
仓库路径:skills/infra-manage-ssh-services
安装命令:
npx skills add https://github.com/dawiddutoit/custom-claude --skill infra-manage-ssh-services
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/dawiddutoit/custom-claude --skill infra-manage-ssh-services

简介

用于查找、检索和筛选相关信息,适合在 SSH 服务管理与运维任务中定位配置与故障点。

  • 可基于关键词匹配日志、命令示例或安全策略文档,辅助排查与修复。
  • 通过 npx skills add 命令从指定仓库安装,需确认权限与网络访问能力。
  • 建议核对维护状态,避免在运行中服务上直接执行未经验证的操作。
  • infra-manage-ssh-services 属于研究检索类 Skill,可作为该场景下的辅助能力补充。

SKILL.md

Works with SSH commands, Docker remote management, and infrastructure health checks.

Infrastructure SSH Service Management

Quick Start

Discover available infrastructure:

# List all hosts and their status
ping -c 1 -W 1 infra.local && echo "✅ infra.local (primary)" || echo "❌ infra.local"
ping -c 1 -W 1 192.168.68.135 && echo "✅ deus (development)" || echo "❌ deus"
ping -c 1 -W 1 homeassistant.local && echo "✅ homeassistant.local" || echo "❌ homeassistant.local"

Check primary infrastructure services:

# View all running Docker services on infra.local
ssh infra "docker ps --format 'table {{.Names}}\t{{.Status}}\t{{.Ports}}'"

# Quick MongoDB health check (MongoDB 4.4 uses 'mongo' not 'mongosh')
ssh infra "docker exec local-infra-mongodb-1 mongo off --quiet --eval 'db.runCommand({ping: 1})'" 2>/dev/null

Before using remote MongoDB (NomNom project):

# Verify MongoDB is accessible
nc -z infra.local 27017 && echo "✅ MongoDB port open" || echo "❌ MongoDB unreachable"

Connection Reference

To connect to infra.local, you have three equivalent options:

# Option 1: Use the connect function (recommended)
connect infra

# Option 2: Use the SSH alias from ~/.ssh/config
ssh infra

# Option 3: Use the full hostname
ssh dawiddutoit@infra.local

All three commands do the same thing:

  • Connect to infra.local
  • Authenticate as user dawiddutoit
  • Use SSH key ~/.ssh/id_ed25519

First-time setup (if SSH key not yet copied):

connect infra --setup
# This copies your SSH public key to infra.local for passwordless authentication

For other hosts:

connect deus        # or: ssh deus        # or: ssh dawiddutoit@192.168.68.135
connect ha          # or: ssh ha          # or: ssh root@homeassistant.local
connect motor       # or: ssh motor       # or: ssh dawiddutoit@pi4-motor.local
connect armitage    # or: ssh unit@armitage.local

Running commands on infra.local (without interactive shell):

# Execute single command
ssh infra "docker ps"

# Execute multiple commands
ssh infra "cd ~/projects/local-infra && docker compose ps"

# Chain commands
ssh infra "docker ps -f name=mongodb && docker logs --tail 10 local-infra-mongodb-1"

Table of Contents

  1. When to Use This Skill
  2. What This Skill Does
  3. Instructions

- 3.1 Discovery Phase - Find Available Hosts and Services - 3.2 Health Check Phase - Verify Connectivity - 3.3 Execution Phase - Manage Services

  1. Supporting Files
  2. Common Workflows
  3. Expected Outcomes
  4. Integration Points
  5. Expected Benefits
  6. Requirements
  7. Red Flags to Avoid

When to Use This Skill

Explicit Triggers (User Requests)

  • "Check infrastructure status"
  • "Connect to infra/deus/ha"
  • "View Docker services on infra"
  • "Test MongoDB connectivity"
  • "What services are running on infra.local?"
  • "Troubleshoot remote MongoDB connection"
  • "Check Langfuse status"
  • "View OTLP collector logs"

Implicit Triggers (Contextual Needs)

  • Before using remote MongoDB in NomNom project
  • When remote service connection fails (MongoDB, Neo4j, Langfuse)
  • Before starting development session that uses remote resources
  • When planning to use OpenTelemetry/Langfuse observability
  • When investigating service availability for integration work

Debugging/Troubleshooting Triggers

  • Connection refused errors to infra.local services
  • MongoDB ServerSelectionTimeoutError
  • SSH authentication failures
  • Docker container not responding
  • Service appears running but not accessible
  • Neo4j or Infinity in restart loop

What This Skill Does

This skill provides systematic workflows for:

  1. Service Discovery - Identify available hosts (5 total) and running services (16+ on infra.local)
  2. Connectivity Testing - Verify network reachability, port availability, SSH access
  3. Docker Management - View, restart, and monitor remote Docker containers
  4. Health Verification - Check service health status and logs
  5. Troubleshooting - Diagnose connection issues and service failures
  6. Infrastructure Integration - Ensure remote resources (MongoDB, Langfuse, OTLP) are ready for use

Instructions

3.1 Discovery Phase

Step 1: Identify Target Host

Use the connect function to determine which host you need:

# View available hosts
connect
# Output: Hosts: infra, armitage, deus, ha, motor

Infrastructure Inventory:

HostConnectionStatusPrimary Services
infra.localconnect infra✅ OnlineMongoDB, Langfuse, OTLP, Jaeger, Neo4j, Infinity, PostgreSQL, Redis, MinIO, Mosquitto, Caddy
deusconnect deus✅ OnlineNone detected (development machine)
homeassistant.localconnect ha✅ OnlineHome Assistant (port 8123)
pi4-motor.localconnect motor❌ OfflineMotor control (Raspberry Pi 4)
armitage.localconnect armitage❌ OfflineNeo4j, Infinity Embeddings (WSL2 PC)

Step 2: Test Host Reachability

# Quick network ping test
ping -c 1 -W 1 infra.local

# Test specific port availability
nc -z infra.local 27017  # MongoDB
nc -z infra.local 3000   # Langfuse
nc -z infra.local 4317   # OTLP Collector
nc -z infra.local 7687   # Neo4j (if not in restart loop)

Step 3: Discover Running Services

# View all Docker containers on infra.local
ssh infra "docker ps --format 'table {{.Names}}\t{{.Status}}\t{{.Ports}}'"

# Count running services
ssh infra "docker ps --format '{{.Names}}' | wc -l"

# Check specific service
ssh infra "docker ps -f name=mongodb"

3.2 Health Check Phase

Step 1: Verify SSH Connectivity

# Test basic SSH connection
ssh infra "echo 'Connection OK'"

# If SSH fails, check SSH agent
ssh-add -l

# Copy SSH key if needed (first-time setup)
connect infra --setup

Step 2: Check Service Health

# MongoDB health check
ssh infra "docker inspect --format='{{.State.Health.Status}}' local-infra-mongodb-1"
ssh infra "docker exec local-infra-mongodb-1 mongo off --quiet --eval 'db.runCommand({ping: 1})'"

# Langfuse health check (HTTP)
curl -s -o /dev/null -w "%{http_code}" http://infra.local:3000

# OTLP Collector health check
ssh infra "docker inspect --format='{{.State.Status}}' local-infra-otel-collector-1"

# View container logs for errors
ssh infra "docker logs --tail 50 local-infra-mongodb-1"

Step 3: Verify Application-Level Connectivity

For MongoDB (NomNom project):

# Test from application environment
cd ~/projects/play/nomnom
python -c "from motor.motor_asyncio import AsyncIOMotorClient; import asyncio; asyncio.run(AsyncIOMotorClient('mongodb://infra.local:27017').admin.command('ping'))" && echo "✅ MongoDB reachable"

For Langfuse:

# Check web UI accessibility
curl -I http://infra.local:3000 | grep "HTTP"

3.3 Execution Phase

Service Management Commands:

# Restart single service
ssh infra "cd ~/projects/local-infra && docker compose restart mongodb"

# Restart all services
ssh infra "cd ~/projects/local-infra && docker compose restart"

# Stop service
ssh infra "cd ~/projects/local-infra && docker compose stop mongodb"

# Start service
ssh infra "cd ~/projects/local-infra && docker compose up -d mongodb"

# View Docker Compose configuration
ssh infra "cd ~/projects/local-infra && docker compose config"

Monitoring Commands:

# Follow logs in real-time
ssh infra "docker logs -f local-infra-mongodb-1"

# View last 100 lines
ssh infra "docker logs --tail 100 local-infra-langfuse-web-1"

# View logs for all services
ssh infra "cd ~/projects/local-infra && docker compose logs -f"

# Check resource usage
ssh infra "docker stats --no-stream"

File Synchronization:

# Push file to infra.local
syncpi push ~/path/to/file

# Pull file from infra.local
syncpi pull ~/path/to/file

# Sync zsh configuration
syncpi zsh push
syncpi zsh pull

Supporting Files

references/infrastructure_guide.md

Complete infrastructure documentation - Read this for:

  • Detailed service inventory with ports and URLs
  • Environment variable mappings
  • Docker Compose management on infra.local
  • Troubleshooting guides for specific services
  • Security notes and credential locations

When to read: Before performing any infrastructure operations, when troubleshooting connection issues, or when needing detailed service information.

Location: /Users/dawiddutoit/.claude/artifacts/2026-01-01/infrastructure/SSH_INFRASTRUCTURE_GUIDE.md

scripts/health_check.sh

Quick health check script - Automated connectivity and service status checks.

Usage:

See references/detailed-workflows.md for:

  • 7 comprehensive workflows (NomNom setup, connection debugging, service discovery, restart loop diagnosis, SSH setup, OTLP verification, file syncing)
  • Expected outcomes (successful/failed health checks, restart loop diagnosis)
  • Integration examples (NomNom, observability, Home Assistant, quality gates)
  • Troubleshooting guide (connection refused, permission denied, restart loops, slow SSH)
  • Advanced techniques (complex commands, real-time monitoring, batch health checks)

Environment variables:

MONGODB_URL=mongodb://infra.local:27017
MONGODB_DATABASE=off

With Observability Skills

Before using observability skills:

# Verify OTLP Collector is running
ssh infra "docker ps -f name=otel-collector -q" | grep -q . || echo "⚠️ OTLP Collector offline"

# Then use skills:
# - observability-analyze-logs
# - observability-analyze-session-logs

With Home Assistant Skills

Before using HA skills:

# Verify Home Assistant is accessible
curl -s -H "Authorization: Bearer $HA_LONG_LIVED_TOKEN" http://192.168.68.123:8123/api/ | grep -q "message" && echo "✅ HA API accessible"

# Then use skills:
# - ha-dashboard-create
# - ha-custom-cards
# - ha-mushroom-cards

With Quality Gates

Infrastructure verification as quality gate:

# Add to pre-start checks
if ! nc -z infra.local 27017; then
  echo "❌ QUALITY GATE FAILED: MongoDB unreachable"
  echo "Run: ssh infra 'cd ~/projects/local-infra && docker compose restart mongodb'"
  exit 1
fi

Expected Benefits

MetricBefore SkillAfter SkillImprovement
Discovery Time5-10 min (manual SSH, guessing)30 sec (automated checks)10-20x faster
Troubleshooting Time10-30 min (trial and error)2-5 min (systematic workflow)5-6x faster
Connection Failures30-40% (no verification)<5% (proactive health checks)6-8x reduction
Service Availability AwarenessUnknown until failureReal-time statusProactive visibility
Documentation AccessSearch files, guess locationsSingle skill referenceImmediate context

Success Metrics

  1. Discovery Success Rate - Can identify all online hosts and services in <30 seconds
  2. Health Check Coverage - Verify critical services (MongoDB, Langfuse, OTLP) before use
  3. Troubleshooting Efficiency - Resolve 80% of connection issues within 5 minutes
  4. Proactive Usage - Check infrastructure before remote operations (NomNom, observability)
  5. Zero Surprise Failures - No "connection refused" errors due to unchecked infrastructure

Requirements

Tools

  • Bash (for SSH commands and connectivity tests)
  • Read (for comprehensive infrastructure guide)

Environment

  • SSH access to remote hosts (via ~/.ssh/config)
  • SSH keys configured (use connect <host> --setup if needed)
  • Network connectivity to infra.local (primary), deus, homeassistant.local
  • connect function in ~/.zshrc (lines 290-306)
  • Optional: syncpi function for file synchronization

Knowledge

  • Basic SSH command syntax
  • Understanding of Docker and Docker Compose
  • Familiarity with port-based service discovery (nc, curl)
  • Environment variables for service endpoints

Utility Scripts

scripts/health_check.sh

Purpose: Run comprehensive health checks across all infrastructure hosts

Usage:

# Check all hosts
bash /Users/dawiddutoit/.claude/skills/infra-manage-ssh-services/scripts/health_check.sh

# Check specific host
bash /Users/dawiddutoit/.claude/skills/infra-manage-ssh-services/scripts/health_check.sh infra

# Verbose output
bash /Users/dawiddutoit/.claude/skills/infra-manage-ssh-services/scripts/health_check.sh --verbose

Checks performed:

  1. Network reachability (ping)
  2. SSH connectivity
  3. Docker daemon status
  4. Container health for critical services
  5. Port availability for key services
  6. Service-specific health endpoints

Red Flags to Avoid

  1. Assuming local MongoDB - MongoDB runs on infra.local, NOT localhost
  2. Skipping connectivity checks - Always verify before using remote services
  3. Ignoring offline hosts - armitage.local and pi4-motor.local are offline (environment variables may point to them)
  4. Missing SSH key setup - Run connect <host> --setup on first use
  5. Not checking container health - Container "Up" ≠ healthy (use docker inspect for health)
  6. Hardcoding IPs - Use hostnames (infra.local, homeassistant.local) for mDNS resolution
  7. Ignoring restart loops - Neo4j and Infinity are restarting on infra.local (check logs)
  8. Skipping logs when debugging - Always view logs before restarting services
  9. Not testing ports - Use nc -z to verify port availability before connection attempts
  10. Missing Docker Compose context - Always cd ~/projects/local-infra before Docker Compose commands

Notes

Key Infrastructure Facts:

  • Primary Host: infra.local (16+ services, always online)
  • MongoDB: 632K OpenFoodFacts products already imported
  • Telemetry: All Claude Code sessions automatically send OTLP to infra.local:4317
  • Offline Services: Neo4j and Infinity Embeddings in restart loop on infra.local
  • Alternative Endpoints: armitage.local has Neo4j/Infinity but is currently offline
  • Home Assistant: Separate host with 16 related skills in ~/.claude/skills/

Environment Variable Locations:

  • SSH config: ~/.ssh/config
  • Secrets: ~/.zshrc (lines 366-540)
  • Project.env: ~/projects/play/nomnom/.env (MongoDB URL)

Related Documentation:

  • Complete infrastructure guide: /Users/dawiddutoit/.claude/artifacts/2026-01-01/infrastructure/SSH_INFRASTRUCTURE_GUIDE.md
  • NomNom MongoDB setup: /Users/dawiddutoit/projects/play/nomnom/CLAUDE.md (lines 224-235)
  • Observability skills: ~/.claude/CLAUDE.md (search "observability-*")
  • Home Assistant skills: ~/.claude/CLAUDE.md (search "ha-*")

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

38.65%
按下载量换算27

Claude

31.1%
按下载量换算22

Cursor

16.82%
按下载量换算12

Gemini CLI

8.83%
按下载量换算6

安全审计

Gen Agent Trust Hub

通过

Socket

可疑

Snyk

可疑

权限和风险

敏感数据

该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills