.github/skills/server-management/SKILL.md
Server management principles and decision-making. Process management, monitoring strategy, and scaling decisions. Teaches thinking, not commands.
npx skillsauth add abmbodj/riven-mobile server-managementInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Server management principles for production operations. Learn to THINK, not memorize commands.
| Scenario | Tool | |----------|------| | Node.js app | PM2 (clustering, reload) | | Any app | systemd (Linux native) | | Containers | Docker/Podman | | Orchestration | Kubernetes, Docker Swarm |
| Goal | What It Means | |------|---------------| | Restart on crash | Auto-recovery | | Zero-downtime reload | No service interruption | | Clustering | Use all CPU cores | | Persistence | Survive server reboot |
| Category | Key Metrics | |----------|-------------| | Availability | Uptime, health checks | | Performance | Response time, throughput | | Errors | Error rate, types | | Resources | CPU, memory, disk |
| Level | Response | |-------|----------| | Critical | Immediate action | | Warning | Investigate soon | | Info | Review daily |
| Need | Options | |------|---------| | Simple/Free | PM2 metrics, htop | | Full observability | Grafana, Datadog | | Error tracking | Sentry | | Uptime | UptimeRobot, Pingdom |
| Log Type | Purpose | |----------|---------| | Application logs | Debug, audit | | Access logs | Traffic analysis | | Error logs | Issue detection |
| Symptom | Solution | |---------|----------| | High CPU | Add instances (horizontal) | | High memory | Increase RAM or fix leak | | Slow response | Profile first, then scale | | Traffic spikes | Auto-scaling |
| Type | When to Use | |------|-------------| | Vertical | Quick fix, single instance | | Horizontal | Sustainable, distributed | | Auto | Variable traffic |
| Check | Meaning | |-------|---------| | HTTP 200 | Service responding | | Database connected | Data accessible | | Dependencies OK | External services reachable | | Resources OK | CPU/memory not exhausted |
| Area | Principle | |------|-----------| | Access | SSH keys only, no passwords | | Firewall | Only needed ports open | | Updates | Regular security patches | | Secrets | Environment vars, not files | | Audit | Log access and changes |
When something's wrong:
| ❌ Don't | ✅ Do | |----------|-------| | Run as root | Use non-root user | | Ignore logs | Set up log rotation | | Skip monitoring | Monitor from day one | | Manual restarts | Auto-restart config | | No backups | Regular backup schedule |
Remember: A well-managed server is boring. That's the goal.
development
Create Zustand stores with TypeScript, subscribeWithSelector middleware, and proper state/action separation. Use when building React state management, creating global stores, or implementing reactive state patterns with Zustand.
tools
Automate Zoom meeting creation, management, recordings, webinars, and participant tracking via Rube MCP (Composio). Always search tools first for current schemas.
tools
Automate Zoho CRM tasks via Rube MCP (Composio): create/update records, search contacts, manage leads, and convert leads. Always search tools first for current schemas.
tools
Automate Zendesk tasks via Rube MCP (Composio): tickets, users, organizations, replies. Always search tools first for current schemas.