Back to skills
SkillHub ClubAnalyze Data & AIFull StackData / AI
admin-unix
Imported from https://github.com/evolv3-ai/vibe-skills.
Packaged view
This page reorganizes the original catalog entry around fit, installability, and workflow context first. The original raw source lives below.
Stars
0
Hot score
74
Updated
March 20, 2026
Overall rating
C2.4
Composite score
2.4
Best-practice grade
A88.4
Install command
npx @skill-hub/cli install evolv3-ai-vibe-skills-admin-unix
Repository
evolv3-ai/vibe-skills
Skill path: skills/admin-unix
Imported from https://github.com/evolv3-ai/vibe-skills.
Open repositoryBest for
Primary workflow: Analyze Data & AI.
Technical facets: Full Stack, Data / AI.
Target audience: everyone.
License: MIT.
Original source
Catalog source: SkillHub Club.
Repository owner: evolv3-ai.
This is still a mirrored public skill entry. Review the repository before installing into production workflows.
What it helps with
- Install admin-unix into Claude Code, Codex CLI, Gemini CLI, or OpenCode workflows
- Review https://github.com/evolv3-ai/vibe-skills before adding admin-unix to shared team environments
- Use admin-unix for development workflows
Works across
Claude CodeCodex CLIGemini CLIOpenCode
Favorites: 0.
Sub-skills: 0.
Aggregator: No.
Original source / Raw SKILL.md
---
name: admin-unix
description: |
Native macOS and Linux administration (non-WSL). Profile-aware - reads preferences
from ~/.admin/profiles/{hostname}.json.
Use when: macOS/Linux system admin, Homebrew (macOS), apt (Linux), services.
NOT for WSL - use admin-wsl instead.
license: MIT
---
# Unix Administration (macOS + Linux)
**Requires**: macOS or native Linux (NOT WSL)
---
## Profile-First Approach
Profile location:
```bash
ADMIN_ROOT="${HOME}/.admin"
PROFILE_PATH="${ADMIN_ROOT}/profiles/$(hostname).json"
```
**Load profile:**
```bash
source /path/to/admin/scripts/load-profile.sh
load_admin_profile
show_admin_summary
```
---
## Platform Detection
```bash
OS=$(uname -s)
case "$OS" in
Darwin) echo "macOS" ;;
Linux)
if grep -qi microsoft /proc/version 2>/dev/null; then
echo "WSL - use admin-wsl instead"
else
echo "Native Linux"
fi
;;
esac
```
---
## Package Management (Profile-Aware)
### Check Preference
```bash
PKG_MGR=$(jq -r '.preferences.packages.manager' "$PROFILE_PATH")
```
### macOS (Homebrew)
```bash
# Install
brew install $package
# Update
brew upgrade $package
# List
brew list
# Search
brew search $package
```
### Linux (apt)
```bash
# Update index
sudo apt update
# Install
sudo apt install -y $package
# Upgrade all
sudo apt upgrade -y
# Search
apt search $package
```
---
## Python Commands (Profile-Aware)
```bash
PY_MGR=$(get_preferred_manager python)
case "$PY_MGR" in
uv) uv pip install "$package" ;;
pip) pip3 install "$package" ;;
conda) conda install "$package" ;;
esac
```
---
## Node Commands (Profile-Aware)
```bash
NODE_MGR=$(get_preferred_manager node)
case "$NODE_MGR" in
npm) npm install "$package" ;;
pnpm) pnpm add "$package" ;;
yarn) yarn add "$package" ;;
bun) bun add "$package" ;;
esac
```
---
## Services
### Linux (systemd)
```bash
# Status
sudo systemctl status $service
# Start/Stop/Restart
sudo systemctl start $service
sudo systemctl stop $service
sudo systemctl restart $service
# Enable/Disable on boot
sudo systemctl enable $service
sudo systemctl disable $service
# View logs
journalctl -u $service -f
```
### macOS (Homebrew services)
```bash
# List
brew services list
# Start/Stop
brew services start $service
brew services stop $service
brew services restart $service
```
---
## SSH to Servers
Use profile server data:
```bash
ssh_to_server "cool-two" # Helper from load-profile.sh
```
Or manually:
```bash
SERVER=$(jq '.servers[] | select(.id == "cool-two")' "$PROFILE_PATH")
HOST=$(echo "$SERVER" | jq -r '.host')
USER=$(echo "$SERVER" | jq -r '.username')
KEY=$(echo "$SERVER" | jq -r '.keyPath')
ssh -i "$KEY" "$USER@$HOST"
```
---
## Update Profile
After installing a tool:
```bash
PROFILE=$(cat "$PROFILE_PATH")
PROFILE=$(echo "$PROFILE" | jq --arg ver "$(python3 --version | cut -d' ' -f2)" \
'.tools.python.version = $ver | .tools.python.present = true')
echo "$PROFILE" | jq . > "$PROFILE_PATH"
```
---
## Capabilities Check
```bash
has_capability "hasDocker" && docker info
has_capability "hasGit" && git --version
```
---
## Scope Boundaries
| Task | Handle Here | Route To |
|------|-------------|----------|
| Homebrew (macOS) | ✅ | - |
| apt (Linux) | ✅ | - |
| systemd services | ✅ | - |
| Python/Node | ✅ | - |
| WSL operations | ❌ | admin-wsl |
| Windows operations | ❌ | admin-windows |
| Server provisioning | ❌ | admin-devops |
---
## References
- `references/OPERATIONS.md` - Common operations, troubleshooting