Skip to content
Skills Library
DevOps & cloud · Automation

devops

/devops

REMOTE infrastructure administration (alpha v0.0.2). Server inventory, cloud provisioning (OCI, Hetzner, Linode, DigitalOcean, Contabo), and application deployment (Coolify, KASM). Profile-aware - reads servers from device profile. Use when: provisioning VPS, deploying to cloud, installing Coolify/KASM, managing remote servers. NOT for: local installs, Windows/WSL/macOS admin, MCP servers → use admin.

Repository
vibe-skills ↗
Licence
MIT
Last repository change
22.07.2026

Assessment and security

100/ 100Class: good
Format25 / 25
Frontmatter with name and description, valid name, description up to 1,024 characters, name matching the folder.
Discoverability25 / 25
Description explains when to use the skill, has a reasonable length and uses third person.
Content35 / 35
At least 150 words and at most 500 lines, headings, step lists, examples or code.
Hygiene15 / 15
No placeholders such as TODO, no Windows paths, with a licence.
Riskno signals detected in the scan
Files in this package
12
Scripts
0
HTML comments
0
URLs in SKILL.md
0
Deprecation

No signals detected. Repository changed on 22.07.2026, without references to retired models or APIs.

Licence

MIT, open: use and modify while retaining author attribution.

What it does and when to use it

REMOTE infrastructure administration (alpha v0.0.2). Server inventory, cloud provisioning (OCI, Hetzner, Linode, DigitalOcean, Contabo), and application deployment (Coolify, KASM). Profile-aware - reads servers from device profile. Use when: provisioning VPS, deploying to cloud, installing Coolify/KASM, managing remote servers. NOT for: local installs, Windows/WSL/macOS admin, MCP servers → use admin.

Original author description

REMOTE infrastructure administration (alpha v0.0.2). Server inventory, cloud provisioning (OCI, Hetzner, Linode, DigitalOcean, Contabo), and application deployment (Coolify, KASM). Profile-aware - reads servers from device profile. Use when: provisioning VPS, deploying to cloud, installing Coolify/KASM, managing remote servers. NOT for: local installs, Windows/WSL/macOS admin, MCP servers → use admin.

How it works

  1. CRITICAL: Secrets and .env
  2. Secrets Management
  3. Profile Gate (MANDATORY First Step)
  4. Task Qualification (MANDATORY)
  5. Task Routing
  6. Server Operations
  7. Provisioning Workflow (5 Steps)
  8. Logging (MANDATORY)
  9. Architecture
  10. Scripts / References
Original SKILL.md headings · 168 lines, 743 words
SKILL.md preview
---
name: devops
description: |
  REMOTE infrastructure administration (alpha v0.0.2). Server inventory, cloud provisioning
  (OCI, Hetzner, Linode, DigitalOcean, Contabo), and application deployment
  (Coolify, KASM). Profile-aware - reads servers from device profile.

  Use when: provisioning VPS, deploying to cloud, installing Coolify/KASM,
  managing remote servers.

  NOT for: local installs, Windows/WSL/macOS admin, MCP servers → use admin.
---

# Admin DevOps - Remote Infrastructure (Alpha)

**Script path resolution**: When Claude Code loads this file, it provides the full
path. Derive `SKILL_DIR` from this file's directory. Admin scripts (profile gate,
logging, secrets) live in the sibling admin skill at `${SKILL_DIR}/../admin/scripts/`.

---

## CRITICAL: Secrets and .env

- NEVER store live `.env` files or credentials inside any skill folder.
- `.env.template` files belong only in `assets/` within a skill.
- Store live secrets in `~/.admin/.env` and reference from there.

## Secrets Management

Three backends available, configured via `ADMIN_SECRETS_BACKEND` in `~/.admin/.env`:

| Backend | Storage | Best For |
|---------|---------|----------|
| `infisical` | Infisical Cloud | Multi-device, audit trail |
| `vault` (default) | `$ADMIN_ROOT/vault.age` | Single device, offline |
| `env` | `$ADMIN_ROOT/.env` | Legacy |

**Fallback chain**: infisical → vault → env. If the primary backend is unavailable, scripts automatically try the next.

**CLI**: Use the admin skill's `secrets` script to retrieve provider API keys:

```bash
# Retrieve a single provider token
HCLOUD_TOKEN=$(${SKILL_DIR}/../admin/scripts/secrets HCLOUD_TOKEN)

# Or if secrets is on PATH
export HCLOUD_TOKEN=$(secrets HCLOUD_TOKEN)
```

### Provider Secrets Map

| Secret Key | Infisical URI | Provider | Used By |
|---|---|---|---|
| `HCLOUD_TOKEN` | `infisical://admin-operator/prod/providers/hetzner/HCLOUD_TOKEN` | Hetzner | hcloud CLI auth |
| `DIGITALOCEAN_ACCESS_TOKEN` | `infisical://admin-operator/prod/providers/digitalocean/ACCESS_TOKEN` | DigitalOcean | doctl auth |
| `CNTB_OAUTH2_CLIENT_SECRET` | `infisical://admin-operator/prod/providers/contabo/CLIENT_SECRET` | Contabo | cntb config |
| `CNTB_OAUTH2_PASS` | `infisical://admin-operator/prod/providers/contabo/OAUTH_PASS` | Contabo | cntb config |
| `LINODE_API_TOKEN` | `infisical://admin-operator/prod/providers/linode/API_TOKEN` | Linode | linode-cli |
| `VULTR_API_KEY` | `infisical://admin-operator/prod/providers/vultr/API_KEY` | Vultr | vultr-cli |
| `CF_API_TOKEN` | `infisical://admin-operator/prod/network/cloudflare/API_TOKEN` | Cloudflare | Tunnel setup |

**Retrieval** (v4.0+):
```bash
# URI-based (recommended)
HCLOUD_TOKEN=$(resolve-secret-ref.sh "infisical://admin-operator/prod/providers/hetzner/HCLOUD_TOKEN")

# Multi-project secrets CLI
HCLOUD_TOKEN=$(secrets --project admin-operator --path /providers/hetzner HCLOUD_TOKEN)

# Legacy (still works via fallback chain)
HCLOUD_TOKEN=$(secrets HCLOUD_TOKEN)
```

**Guides**: `references/secrets-architecture.md` (full 4-layer model), `references/infisical.md` (Infisical setup), `references/vault-guide.md` (age vault fallback)

---

## Profile Gate (MANDATORY First Step)

Check for a profile before any operation. No profile means no server inventory, no preferences, no logging path.

```bash
${SKILL_DIR}/../admin/scripts/test-admin-profile.sh
```

Returns JSON: `{"exists":true|false,"path":"...","device":"...","platform":"..."}`

If `exists: false` — stop and hand off to **admin** skill for `/setup-profile`. Do not proceed without a profile.

Full details: `references/profile-gate.md`

---

## Task Qualification (MANDATORY)

- If the task is **local OS/MCP/skills**, stop and hand off to **admin**.
- If the task is **remote infrastructure**, continue.
- If ambiguous, ask a clarifying question before proceeding.

## Task Routing

| Task | Reference |
|------|-----------|
| Server inventory | Server Operations (use profile.servers) |
| OCI provisioning | **→ Use oci skill** |
| Hetzner provisioning | **→ Use hetzner skill** |
| Linode provisioning | **→ Use linode skill** |
| DigitalOcean provisioning | **→ Use digital-ocean skill** |
| Contabo provisioning | **→ Use contabo skill** |
| Coolify deployment | **→ Use coolify skill** |
| KASM deployment | **→ Use kasm skill** |
| Secrets / Infisical setup | **→ Use admin skill** |
| **Local machine tasks** | **→ Use admin skill** |

## Server Operations

Use `profile.servers[]` for inventory; do not maintain a separate list. Profile is the source of truth.

## Provisioning Workflow (5 Steps)

1. Choose provider
2. Load secrets via `secrets` CLI (provider API key)
3. Run provider workflow (use the dedicated provider skill)
4. Update `profile.servers[]` and `profile.deployments{}`
5. Log the operation via `log_admin_event`

## Logging (MANDATORY)

Log every operation. Logging scripts live in the admin sibling skill.

```bash
source "${SKILL_DIR}/../admin/scripts/log-admin-event.sh"
log_admin_event "Provisioned Hetzner server hzn-01-203-42" "OK"
log_admin_event "OCI provisioning failed: OUT_OF_HOST_CAPACITY" "ERROR"
```

Levels: `OK` (success), `INFO`, `WARN`, `ERROR`

---

## Architecture

### Relationship to Admin

devops is a satellite of admin. It depends on admin for:
- **Profile gate** (`test-admin-profile.sh`) — mandatory first step
- **Logging** (`log-admin-event.sh`) — mandatory operation logging
- **Secrets** (`secrets` CLI) — provider API key retrieval with fallback chain
- **Profile data** (`profile.servers[]`, `profile.deployments{}`) — server inventory

### Sibling Skill Resolution

```
plugins/admin-devops/
  skills/
    admin/      ← core (scripts, secrets, logging live here)
    devops/     ← this skill (references admin scripts via ../admin/)
    oci/        ← provider skill
    hetzner/    ← provider skill
    ...
```

### Agent Roster

| Agent | Model | Role |
|---|---|---|
| server-provisioner | sonnet | Cloud VM provisioning via provider CLIs |
| deployment-coordinator | sonnet | End-to-end app deployment (Coolify/KASM) |

Both agents run the profile gate as their first step.

---

## Scripts / References

- Provider skills: sibling skills under this plugin (oci, hetzner, coolify, etc.)
- Inventory format spec: `references/INVENTORY_FORMAT.md`
- Deployment workflows: `references/DEPLOYMENT_WORKFLOWS.md`
- Troubleshooting: `references/TROUBLESHOOTING.md`
Files in this package (12)
  • SKILL.md 6 KB
  • assets/agent-devops.env.template 4 KB
  • assets/devops-registry.json 2 KB
  • assets/env-spec.txt 1 KB
  • assets/env-template 9 KB
  • assets/provider-infrastructure-template 9 KB
  • references/DEPLOYMENT_WORKFLOWS.md 3 KB
  • references/EXAMPLE_INVENTORY.md 2 KB
  • references/INVENTORY_FORMAT.md 4 KB
  • references/PROVIDER_DISCOVERY.md 2 KB
  • references/TROUBLESHOOTING.md 2 KB
  • references/profile-gate.md 2 KB

Versions

RepositoryScoreLicence
This page · evolv3-ai/vibe-skills100MIT
DaraBoth/skilljmskill100MIT
MaxMiksa/Auto-Company100MIT
chuckplayer/claude-agent-pack100MIT
iankiku/forwward-teams100MIT
xiaobei930/cc-best100MIT
carlheath/ogmios100MIT
rade-nugroho/agentic-enteprises-skill100MIT
joncik91/ucai95MIT

Database snapshot: 13.11.2026 · package version 68f1a17d00a9 (SHA-256 digest of the entire package)

Downloads in the last 30 days: 0 · ranking

Report a problem with this skill: harmful content, incorrect descriptions or an author’s removal request.

Similar skills

  • 100coolify
    Deploy and manage applications, databases, and services on Coolify. Use when a user asks to deploy an app to Coolify, manage Coolify deployments, check deployment logs, sync environment variables, create or manage databases on Coolify, trigger a deployment, manage Coolify…
  • 100digital-ocean
    Deploys infrastructure on DigitalOcean with Droplets (VMs), Firewalls, and VPCs. Includes Kasm Workspaces auto-scaling integration for dynamic agent provisioning. Use when: setting up DigitalOcean infrastructure, deploying Droplets, configuring firewalls, integrating with Kasm…
  • 100hetzner-cloud
    Manage Hetzner Cloud infrastructure from the terminal. Use when a user asks to create a Hetzner server, manage VPS instances, set up firewalls, configure networks, manage volumes, create snapshots, handle SSH keys, or provision infrastructure on Hetzner. Covers the hcloud CLI…
  • 100hetzner
    Use when provisioning or hardening a Hetzner Cloud VPS: picking the plan/location (CX/CPX/CAX/CCX), bringing it up reproducibly with hcloud + cloud-init, locking down SSH, and wiring the Cloud Firewall to hand off a Docker-ready host. NOT app deploys on Coolify (that is…
  • 95kasm-admin
    Day-to-day operations for a running KASM Workspaces server. Workspace CRUD via API, session monitoring, user/group management, bulk config updates, agent provisioning, capacity planning, and multi-agent bot deployment patterns. Use when: managing workspaces…
  • 90hetzner-cloud
    Manage Hetzner Cloud infrastructure with the `hcloud` CLI — servers, networks, firewalls, load balancers, volumes, DNS zones, SSH keys, primary/floating IPs, snapshots, certificates, placement groups, storage boxes. Use whenever the user mentions Hetzner, hcloud, VPS…

Feedback and reports

Your message goes to Bartosz Sokoliński. An email address is needed only for a reply. See the privacy policy.