Devops Excellence
majiayu000/spellbook
DevOps and CI/CD expert. An agent skill from majiayu000/spellbook.
Configure pre-commit hooks and lean GitHub Actions for shift-left quality assurance.
$ npx skills add luongnv89/skills --skill devops-pipeline -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install luongnv89/skills devops-pipeline --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/luongnv89/skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/devops-pipeline .claude/skills/devops-pipeline && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "devops-pipeline" agent skill from https://github.com/luongnv89/skills/tree/main/skills/devops-pipeline into .claude/skills/devops-pipeline/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "devops-pipeline", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/luongnv89/skills/tree/main/skills/devops-pipelineType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add luongnv89/skills --skill devops-pipeline -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install luongnv89/skills devops-pipeline --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/luongnv89/skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/devops-pipeline .agents/skills/devops-pipeline && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "devops-pipeline" agent skill from https://github.com/luongnv89/skills/tree/main/skills/devops-pipeline into .agents/skills/devops-pipeline/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "devops-pipeline", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add luongnv89/skills --skill devops-pipeline -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install luongnv89/skills devops-pipeline --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/luongnv89/skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/devops-pipeline .cursor/skills/devops-pipeline && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "devops-pipeline" agent skill from https://github.com/luongnv89/skills/tree/main/skills/devops-pipeline into .cursor/skills/devops-pipeline/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "devops-pipeline", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/luongnv89/skills.git --path skills/devops-pipeline--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add luongnv89/skills --skill devops-pipeline -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install luongnv89/skills devops-pipeline --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/luongnv89/skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/devops-pipeline .gemini/skills/devops-pipeline && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "devops-pipeline" agent skill from https://github.com/luongnv89/skills/tree/main/skills/devops-pipeline into .gemini/skills/devops-pipeline/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "devops-pipeline", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install luongnv89/skills devops-pipelineInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add luongnv89/skills --skill devops-pipeline -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/luongnv89/skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/devops-pipeline .github/skills/devops-pipeline && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "devops-pipeline" agent skill from https://github.com/luongnv89/skills/tree/main/skills/devops-pipeline into .github/skills/devops-pipeline/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "devops-pipeline", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add luongnv89/skills --skill devops-pipeline -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install luongnv89/skills devops-pipeline --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/luongnv89/skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/devops-pipeline .opencode/skills/devops-pipeline && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "devops-pipeline" agent skill from https://github.com/luongnv89/skills/tree/main/skills/devops-pipeline into .opencode/skills/devops-pipeline/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "devops-pipeline", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
devops-pipelineConfigure pre-commit hooks and lean GitHub Actions for shift-left quality assurance.
Devops Pipeline is an agent skill from luongnv89/skills. Configure pre-commit hooks and lean GitHub Actions for shift-left quality assurance. Use when adding or auditing CI/CD to maximize local test coverage and minimize CI cost. Skip for Terraform/K8s, deployment pipelines, or non-GitHub CI providers.
Its SKILL.md is about 4.8k tokens, which your agent loads only when the skill is triggered. The skill folder holds 9 other files, including reference files (for example `docs/README.md`, `evals/evals.json` and `references/cli-e2e.md`).
It sits in DevOps & Cloud, covering CI/CD, Test coverage and QA and bug reports. It works with GitHub Actions, GitHub, Kubernetes and Terraform. The repository describes itself as: Supercharge your AI agents/bots with reusable skills. The licence is MIT.
4 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 891c720. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
gitpipbashbrewnpmpytestFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
github.comFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Devops Pipeline loads about 4.8k tokens when it runs, and up to ~16k if it reads all its reference files. Until then it costs about 66 tokens; SKILL.md has 2,310 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from luongnv89/skills at commit 891c720, republished under its MIT licence (© luongnv89). 2,310 words, ~4,822 tokens.
.claude/skills/devops-pipeline/SKILL.md (or your agent's skills folder). This skill also uses 6 other files; get the full folder from GitHub.Implement comprehensive DevOps quality gates adapted to project type, with a shift-left philosophy: run as many checks as possible locally via pre-commit so developers get fast feedback and CI is a safety net rather than the primary gate.
Core principle: if a check can run on a developer's machine, it runs there. GitHub Actions runs only what a laptop genuinely cannot — matrix version testing, secrets-dependent scans, deployment, coverage publishing — plus one cheap job proving the hooks were not bypassed.
Every check lands in exactly one lane. This table is the single source of truth: workflow steps 2 and 3, the reference files, and any config this skill generates must agree with it.
| Lane | Time budget | What runs there |
|---|---|---|
pre-commit stage (every commit) | < 10s, changed files only | Format, lint, type-check, offline security scans, fast unit tests, compile/import check |
pre-push stage (every push) | < 60s, whole repo | Full test suite, CLI E2E, coverage threshold, slow lint rulesets |
| GitHub Actions | billed per minute | Version matrix, secrets-dependent scans, coverage upload, deploy/release, bypass guard |
A check that fits an earlier lane must not be repeated in a later one. CI re-running the whole hook set on every push is the failure mode this skill exists to prevent.
To stay within the agent's context budget, this SKILL keeps templates short and links to references/*.md for language-specific configs, workflow templates, and the CLI E2E script.
Before creating/updating/deleting files in an existing repository, sync the current branch with remote:
branch="$(git rev-parse --abbrev-ref HEAD)"
git fetch origin
git pull --rebase origin "$branch"If the working tree is not clean, stash first, sync, then restore:
git stash push -u -m "pre-sync"
branch="$(git rev-parse --abbrev-ref HEAD)"
git fetch origin && git pull --rebase origin "$branch"
git stash popIf origin is missing, pull is unavailable, or rebase/stash conflicts occur, stop and ask the user before continuing.
This skill writes config into someone else's repository and installs git hooks. Observe all of these:
.pre-commit-config.yaml or .github/workflows/*.yml. If the target file exists, follow this merge procedure:<file>.bak.rev: values.<file>.bak and the merged content.<file>.bak until the user confirms the written result..pre-commit-config.yaml or workflow as a diff. Never write a file the user has not seen.pre-commit validate-config and pre-commit run --all-files before pre-commit install, so findings surface without blocking any commit.pre-commit install preserves a foreign hook by moving it to .git/hooks/<hook>.legacy and running in migration mode. Never pass -f/--overwrite, which removes that hook silently. If the user wants the foreign hook deleted, get explicit confirmation first.git commit --no-verify or git push --no-verify on the user's behalf. A failing hook is a finding to report, not an obstacle to route around.SKIP, relax a lint rule, or lower a coverage threshold to turn a run green. Report the failure and let the user decide.pre-commit is absent, or origin is missing — see Edge Cases for each.Detect project characteristics:
# Check for package files and configs
ls -la package.json pyproject.toml Cargo.toml go.mod pom.xml build.gradle *.csproj 2>/dev/null
ls -la .eslintrc* .prettierrc* tsconfig.json mypy.ini setup.cfg ruff.toml 2>/dev/null
ls -la .pre-commit-config.yaml .github/workflows/*.yml 2>/dev/nullIdentify:
--help, click/argparse/cobra source) to build an E2E test suiteIf no package manifest matches, ask the user for the language and build system before Step 2. Step 1 is done when the language, build system, existing tooling, existing config files, and CLI status (with its command list) are recorded.
If pre-commit is absent, show the install command and stop — see Edge Cases. Do not install it automatically.
pip install pre-commit # or brew install pre-commitWhen pre-commit is available, write .pre-commit-config.yaml for the detected stack. If the file exists, use the Safety Rails merge procedure. See references/precommit-configs.md for language-specific configurations.
pre-commit stage — every commit, under 10 seconds on changed files:
detect-secrets)pre-push stage — every git push, under 60 seconds:
GitHub Actions only — what a laptop cannot do:
Use the modern stage names. pre-commit 3.2 renamed commit to pre-commit and push to pre-push; the old names emit a deprecation warning on 4.x and are scheduled for removal. Always emit the new names, and run pre-commit migrate-config against any pre-existing config still using the old ones.
If the project is a CLI tool, create scripts/e2e_test.sh that exercises every command/subcommand to verify the CLI works end-to-end (not just compiles). Wire it into pre-commit on the pre-push stage.
See references/cli-e2e.md for command discovery patterns, the script template, and the pre-commit hook snippet.
Validate the config, dry-run it, then install the hooks, in this order:
pre-commit validate-config .pre-commit-config.yaml. If it exits non-zero, report the error and stop before installing any hook.pre-commit run --all-files. This dry run executes the commit-stage hooks without installing them. Record each failing hook id as a finding.pre-commit and pre-push in the directory git rev-parse --git-path hooks prints (not always .git/hooks). If either exists and does not contain File generated by pre-commit, tell the user it will move to <hook>.legacy.pre-commit install.pre-commit install --hook-type pre-push. pre-commit install alone does not install pre-push hooks.git commit --no-verify and git push --no-verify skip every hook, and nothing local can prevent that. The CI bypass guard in step 3 is what keeps these gates enforceable — do not drop it when trimming CI.
If no workflow exists, write .github/workflows/ci.yml. If one exists, use the Safety Rails merge procedure, and list each existing step that duplicates a hook as a proposed removal in the diff. Remove a step only after the user confirms. Keep CI thin: the hooks already ran everything that runs locally, so CI covers the third lane of the routing table plus one guard. See references/github-actions.md for workflow templates.
CI runs exactly four kinds of thing:
--no-verify otherwise makes local gates optional.The bypass guard, in full:
hooks:
name: Verify hooks were not bypassed
if: github.event_name == 'pull_request'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
# ... set up the project toolchain and Python here ...
- name: Run both hook stages over the PR diff
run: |
pip install pre-commit
base="${{ github.event.pull_request.base.sha }}"
pre-commit run --from-ref "$base" --to-ref HEAD
pre-commit run --hook-stage pre-push --from-ref "$base" --to-ref HEADFour details are load-bearing; drop any one and the job fails on its first run:
pre-commit run lines. The first executes commit-stage hooks only — the full suite and the CLI E2E tests live on pre-push and are silently skipped without the second. pre-commit/action@v3.0.1 shares this blind spot, so call the CLI directly.fetch-depth: 0. actions/checkout clones at depth 1, so the base SHA is absent and --from-ref dies on a bad object.if: github.event_name == 'pull_request'. On a push event github.event.before is all zeros for a branch's first push and stale after a force-push.language: system shell out to npm, mypy, go, or cargo.Keep the matrix off the hot path: gate it on push to the default branch or on a release tag, not on every PR commit. A three-version matrix on every push is triple the bill for a signal the hooks already gave locally.
pre-commit run --all-files. Expected: exit 0.pre-commit run --all-files --hook-stage pre-push. Expected: exit 0. The first command does not run push-stage hooks (full suite, E2E).bash scripts/e2e_test.sh. Expected: exit 0.SKIP, or lower a threshold to make it pass.Step 4 is done when each command has a recorded exit code. The workflow from step 3 is not run here; it first runs on GitHub with the next pull request.
After the last Step Completion Report, print the final report from references/final-report.md: Result: first (COMPLETE, PARTIAL — reason, or BLOCKED — reason), then Evidence: (only commands that ran, with exit codes), Uncertainty: (always the unrun CI workflow), and Decision: (the pending approval, or No approval needed.). An audit-only run uses the same report.
| Language | Formatter | Linter | Type Check | Security | Tests |
|---|---|---|---|---|---|
| JS/TS | Prettier | ESLint | tsc | npm audit | Jest/Vitest |
| Python | Ruff/Black | Ruff | mypy | Bandit + detect-secrets | pytest |
| Go | gofmt | golangci-lint | built-in | gosec | go test |
| Rust | rustfmt | Clippy | built-in | cargo-audit | cargo test |
| Java | google-java-format | Checkstyle | - | SpotBugs | mvn test |
Which lane each of these belongs to is fixed by the Check Routing Table above — do not re-split checks differently here.
After running the skill, the repository contains:
.pre-commit-config.yaml — formatting, linting, type-checking, and fast unit tests on the pre-commit stage; full test suite, coverage threshold, and E2E tests on the pre-push stage..github/workflows/ci.yml — CI carrying only the four responsibilities from step 3: diff-scoped bypass guard, version matrix, secrets-dependent work, deploy. No standalone lint, format, type-check, or test steps duplicating a hook.scripts/e2e_test.sh (CLI projects only) — executable script exercising every CLI command/subcommand.Example .pre-commit-config.yaml snippet for a Python project:
repos:
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.4.4
hooks:
- id: ruff
stages: [pre-commit]
- id: ruff-format
stages: [pre-commit]
- repo: local
hooks:
- id: mypy
name: mypy type check
entry: mypy src/
language: system
stages: [pre-commit]
- id: pytest-fast
name: fast unit tests
entry: pytest tests/unit -x -q
language: system
stages: [pre-commit]
- id: pytest-full
name: full test suite
entry: pytest --cov=src --cov-report=xml
language: system
stages: [pre-push]A run passes when all of the following are true:
.pre-commit-config.yaml exists at the repo root and lists at least one hook for the detected primary language (formatter, linter, or type checker).id from .pre-commit-config.yaml appears in a workflow run: step other than the bypass guard, and no check runnable on a laptop is CI-only.stages: use the modern names (pre-commit, pre-push, manual); no generated config emits the deprecated commit or push.pre-commit install and pre-commit install --hook-type pre-push..github/workflows/*.yml exists and carries only the four CI responsibilities from step 3.--from-ref/--to-ref) and runs both stages.pre-commit run --all-files and pre-commit run --all-files --hook-stage pre-push both succeed (or their failures are surfaced explicitly to the user, not auto-suppressed).pre-push stage per the language reference files.pip install pre-commit or brew install pre-commit) and stop; do not install it automatically or generate config files..pre-commit-config.yaml: Merge new hooks into the existing file rather than overwriting; preserve user-defined hooks and pinned revs.files: path filters so hooks only run on relevant subdirectories. Local language: system entries must also target the package dir (npm --prefix frontend, pytest backend/tests) — files: only filters which files trigger the hook, not cwd.origin remote: Stop and ask the user whether a local-only setup with no repo sync is acceptable; do not proceed automatically.pre-commit to pre-push, or pre-push to CI — and record the reason in a comment on the hook so the next reader knows it was measured, not guessed.pre-commit migrate-config before merging new hooks in, so the file does not end up half-migrated.--no-verify: Local gates cannot stop this. Keep the CI bypass guard, and report the bypass rate rather than adding more hooks.After completing each major step, output a status report in this format:
◆ [Step Name] ([step N of M] — [context])
··································································
[Check 1]: √ pass
[Check 2]: √ pass (note if relevant)
[Check 3]: × fail — [reason]
[Check 4]: √ pass
[Criteria]: √ N/M met
____________________________
Result: PASS | FAIL | PARTIALAdapt the check names to match what the step actually validates. Use √ for pass, × for fail, and — to add brief context. The "Criteria" line summarizes how many acceptance criteria were met. The "Result" line gives the overall verdict.
Phase: Project Analysis — checks: Project detection, Existing tooling scan, CLI detection, Command enumeration
Phase: Pre-commit Configuration — checks: Pre-commit setup, Commit-stage hooks installed, Push-stage hooks installed, Modern stage names used, E2E script created (if CLI)
Phase: GitHub Actions Setup — checks: GitHub Actions config, CI limited to the four responsibilities, Bypass guard runs both stages, Matrix off the per-commit path
Phase: Pipeline Verification — checks: Commit-stage hooks pass, Push-stage hooks pass, E2E tests pass (if CLI), No check duplicated across lanes
pre-push tests and E2E hookspre-push hook© luongnv89, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 6 other files (references) in skills/devops-pipeline of luongnv89/skills.
Open the folder on GitHubat commit 891c720
Devops Pipeline next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Devops Pipeline this skillluongnv89/skills | 131 | — | ~4.8k | Automated safety check: Pass | MIT | |
| Devops Excellencemajiayu000/spellbook | 286 | — | ~2.4k | Automated safety check: Notes | MIT | |
| Devops Deploymentyonatangross/orchestkit | 289 | — | ~2.7k | Automated safety check: Pass | MIT | |
| Devops EngineerYikai-Liao/symusic | 189 | 1 repos | ~1.5k | Automated safety check: Pass | MIT | |
| Devops Automatorcuriositech/some_claude_skills | 243 | — | ~1.8k | Automated safety check: Pass | MIT | |
| Infrastructure Devops Devops Engineerchendongqi/OPB-Skills | 125 | — | ~1.4k | Automated safety check: Pass | None |
majiayu000/spellbook
DevOps and CI/CD expert. An agent skill from majiayu000/spellbook.
yonatangross/orchestkit
A skill your agent uses when setting up CI/CD pipelines, containerizing applications, deploying to Kubernetes, or writing infrastructure as code.
Yikai-Liao/symusic
Creates Dockerfiles, configures CI/CD pipelines, writes Kubernetes manifests, and generates Terraform/Pulumi infrastructure templates.
curiositech/some_claude_skills
Expert DevOps engineer for CI/CD, IaC, Kubernetes, and deployment automation.
chendongqi/OPB-Skills
DevOps助手 - 专业的DevOps实践与自动化专家。适用场景: (1) CI/CD流水线设计与实现 (2) 部署策略与发布管理 (3) 基础设施即代码(IaC) (4) 容器化与Kubernetes部署 (5) 监控告警与可观测性 (6) DevOps工具链选型 (7) DevOps文化与实践推广 触发关键词:DevOps、CI/CD、持续集成、持续部署、Jenkins、GitLab…
semgrep/skills
Security guidelines for writing secure code. An agent skill from semgrep/skills.
luongnv89/skills
Review UI usability using Steve Krug's principles and produce a scannable report.
luongnv89/skills
Manage AI agent fleets in Herdr: tile root + sub-agents in one tab, start/prompt/wait/read/monitor via the herdr agent CLI, steer any pane; help lists every operation.
luongnv89/skills
Optimize Ollama configuration for the current machine's hardware.
luongnv89/skills
Install local-first security hardening: pre-commit secret detection, offline dependency scans, static analysis, reports, and gated free CI.
luongnv89/skills
Audit and optimize websites for technical SEO, content SEO, and AI bot accessibility.
luongnv89/skills
Generate sprint-based development tasks from a PRD. An agent skill from luongnv89/skills.
Works with
Categories
Configure pre-commit hooks and lean GitHub Actions for shift-left quality assurance. Devops Pipeline is an agent skill from luongnv89/skills. Configure pre-commit hooks and lean GitHub Actions for shift-left quality assurance.
Devops Pipeline fits situations like: auditing CI/CD to maximize local test coverage and minimize CI cost; tasks that involve CI/CD; tasks that involve Test coverage.
Run `npx skills add luongnv89/skills --skill devops-pipeline -a claude-code`. Or copy the skill folder (skills/devops-pipeline in luongnv89/skills) into .claude/skills/devops-pipeline in your project. Claude Code loads it when a task matches its description.
Run `npx skills add luongnv89/skills --skill devops-pipeline -a codex`. Or copy the skill folder (skills/devops-pipeline in luongnv89/skills) into .agents/skills/devops-pipeline in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add luongnv89/skills --skill devops-pipeline -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/devops-pipeline, .gemini/skills/devops-pipeline, .github/skills/devops-pipeline and .opencode/skills/devops-pipeline in your project.
Going by SKILL.md and its folder, Devops Pipeline needs the command-line tools its instructions call (git, pip, bash, brew, npm and pytest). Our summary lists: Python 3.
SKILL.md names 1 domain. In commands or code: github.com; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Devops Pipeline is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 4.8k tokens (SKILL.md is roughly 19k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 11k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Devops Pipeline: Devops Excellence (majiayu000/spellbook, 286 stars), Devops Deployment (yonatangross/orchestkit, 289 stars), Devops Engineer (Yikai-Liao/symusic, 189 stars) and Devops Automator (curiositech/some_claude_skills, 243 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
luongnv89 (a GitHub user) maintains it in luongnv89/skills, which has 131 GitHub stars. The repository holds 35 skills in this directory. The repository was last updated on October 7, 2026.
Source: luongnv89/skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.