➜ ~/dev whoami
someone who does not, in fact, hate devops. devops is just hard.
➜ ~/dev cat about.txt
ihatedevops
A skill for
Claude Code that quietly injects 10 atomic
DevOps best practices into every session. Ask for a Dockerfile,
get secure
Chainguard images , multi-stage builds, and a non-root
user — without asking. Ask for a CI pipeline, get SHA-pinned
actions and least-privilege tokens. That kind of thing.
Star on GitHub
➜ ~/dev ./install.sh # pick your comfort level
claude code
codex
copy-paste
one-liner
/plugin marketplace add zenconnor/ihatedevops /plugin install ihatedevops@ihatedevops
copy
no terminal — run these inside any Claude Code session. gets updates too.
git clone --depth 1 https://github.com/zenconnor/ihatedevops /tmp/ihd && mkdir -p ~/.agents/skills && cp -R /tmp/ihd/skills/ihatedevops ~/.agents/skills/
copy
same skill, open Agent Skills standard — Codex reads ~/.agents/skills/. per-project: cp into the repo's .agents/skills/ instead.
git clone --depth 1 https://github.com/zenconnor/ihatedevops /tmp/ihd && mkdir -p ~/.claude/skills && cp -R /tmp/ihd/skills/ihatedevops ~/.claude/skills/
copy
every step readable: clone, mkdir, copy. no script runs. for one project only, cp into its .claude/skills/ instead.
curl -fsSL https://raw.githubusercontent.com/zenconnor/ihatedevops/main/install.sh | sh
copy
fastest. installs one folder into ~/.claude/skills/ — nothing else, ever.
read install.sh first if you like.
➜ ~/dev ls practices/
Chainguard base images by default — cgr.dev/chainguard/*, near-zero CVEs, free
Multi-stage builds, non-root user — build tools never ship
Pin everything — lockfiles, image digests, actions by commit SHA
Least-privilege CI tokens — explicit permissions: contents: read
No secrets in code, images, or logs — OIDC over long-lived keys
Health checks + rollback-ready deploys — /healthz, one-step revert
Plan before apply — read the diff; never hand-edit live infra
Structured logs with levels — JSON events, not print("here 2")
Fail fast, cache hard in CI — lint before build before test
Small, frequent, reversible releases — boring deploys are the goal
➜ ~/dev